Akalabeth: World of Doom (DOS, 1996)
|Akalabeth: World of Doom|
Akalabeth: World of Doom is the precursor to the Ultima series. Originally released for the Apple II Basic, the game remained mostly unknown until being unofficially ported to the PC by Finire Dragon (being compiled in Microsoft QBasic) in 1996. An official PC port was released in 1998 as an enhanced remake and is included in the Ultima Collection.
This page describes the unofficial Black & White port, which is the main version of the game distributed on GOG.com (the official port is placed as an extra download instead).
In this port, Lord British doesn't recognize any quest progress. This technically makes the game unwinnable, but the most that gets missed is a +1 boost to all stats (marginal compared to becoming a Lizard Man) and receiving the lord title (which can be added on your first visit to the castle).
As the Black & White version from GOG.com includes the basic source code, one can spot the affected lines directly.
7500 IF ta > 0 THEN PRINT : PRINT : PRINT pn$; " WHY HAST THOU RETURNED?": PRINT "THOU MUST KILL A(N) "; m$(ta) PRINT "GO NOW AND COMPLETE THY QUEST!": PRINT : PRINT " PRESS -SPACE- TO CONT."; : DO: q$ = INKEY$: LOOP WHILE q$ = "": CLS : GOTO 1090 7510 PRINT : PRINT : PRINT : PRINT "AAHH!!....."; pn$: PRINT : PRINT "THOU HAST ACOMPLISHED THY QUEST!": IF ABS(ta) = 10 THEN 7900 7520 PRINT "UNFORTUNATELY, THIS IS NOT ENOUGH TO": PRINT "BECOME A KNIGHT.": ta = ABS(ta) + 1: PRINT : PRINT "NOW THOU MUST KILL A(N) "; m$(ta) 7530 GOTO 7060 7900 SCREEN 1: VIEW PRINT: CLS : PRINT : PRINT : PRINT : pn$ = "LORD " + pn$: PRINT " "; pn$; "," 7910 PRINT " THOU HAST PROVED THYSELF WORTHY": PRINT "OF KNIGHTHOOD, CONTINUE PLAY IF THOU": PRINT "DOTH WISH, BUT THOU HAST ACOMPLISHED": PRINT "THE MAIN OBJECTIVE OF THIS GAME..." 7920 IF lp = 10 THEN 7950 7930 PRINT : PRINT " NOW MAYBE THOU ART FOOLHEARTY": PRINT "ENOUGH TOTRY DIFFICULTY LEVEL "; lp + 1 7940 GOTO 7070 7950 PRINT : PRINT "...CALL CALIFORNIA PACIFIC COMPUTER": PRINT "AT (415)-569-9126 TO REPORT THIS": PRINT "AMAZING FEAT!" 7990 GOTO 7070
The cause is code line 7500 - since there's a hard return at the end of the line, the following indented line is treated as a separate line of code as opposed to being part of the if statement.