sdb:wumpus
Differences
This shows you the differences between two versions of the page.
| sdb:wumpus [2026/02/19 11:35] – created appledog | sdb:wumpus [2026/02/19 11:36] (current) – removed appledog | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | = WUMPUS Game | ||
| - | == About | ||
| - | * Originally written by Neo on a C128 simulator when he was 11, as homework for his programming class. | ||
| - | * Ported to Stellar BASIC 1.0 in 2026. | ||
| - | |||
| - | == Program Listing | ||
| - | <codify BASIC> | ||
| - | 10 PRINT "" | ||
| - | 20 PRINT " | ||
| - | 30 PRINT "BY NEO (C) 2019" | ||
| - | 40 PRINT "" | ||
| - | 50 PRINT "THERE IS A WUMPUS IN THE ROOM." | ||
| - | 60 PRINT "FIND THE ESCAPE DOOR OR DIE." | ||
| - | 70 PRINT "WHEN THE WUMPUS MOVES, YOU WILL KNOW." | ||
| - | 80 PRINT "0 IS NORTH, 1 IS EAST, 2 IS SOUTH, 3 IS WEST." | ||
| - | 90 PRINT "GOOD LUCK" | ||
| - | 100 LET A = RAND(16) | ||
| - | 110 IF A = 8 GOTO 100 | ||
| - | 120 LET B = RAND(16) | ||
| - | 130 IF B = 8 GOTO 120 | ||
| - | 140 LET C = RAND(16) | ||
| - | 150 LET D = RAND(16) | ||
| - | 160 LET E = 8 | ||
| - | 170 LET F = 8 | ||
| - | 180 LET G = 0 | ||
| - | |||
| - | 200 PRINT "" | ||
| - | 210 PRINT "YOU ARE AT: "E,F | ||
| - | 215 GOTO 6000 | ||
| - | 220 INPUT "MOVE WHERE? ", G | ||
| - | 230 IF G = 0 THEN LET F = F + 1 | ||
| - | 240 IF G = 0 THEN PRINT "YOU MOVE NORTH." | ||
| - | 250 IF G = 1 THEN LET E = E + 1 | ||
| - | 260 IF G = 1 THEN PRINT "YOU MOVE EAST." | ||
| - | 270 IF G = 2 THEN LET F = F - 1 | ||
| - | 280 IF G = 2 THEN PRINT "YOU MOVE SOUTH." | ||
| - | 290 IF G = 3 THEN LET E = E - 1 | ||
| - | 300 IF G = 3 THEN PRINT "YOU MOVE WEST." | ||
| - | |||
| - | 310 IF E > 100 THEN GOTO 5000 | ||
| - | 320 IF E > 15 THEN GOTO 5100 | ||
| - | 330 IF F > 100 THEN GOTO 5200 | ||
| - | 340 IF F > 15 THEN GOTO 5300 | ||
| - | |||
| - | 350 IF E = A THEN GOTO 1000 | ||
| - | 360 IF E = C THEN GOTO 2000 | ||
| - | |||
| - | 370 LET W = RAND(3) | ||
| - | 380 IF W = 1 THEN GOTO 500 | ||
| - | 390 GOTO 200 | ||
| - | |||
| - | 500 LET Z = RAND(10) | ||
| - | 510 IF Z > 4 THEN GOTO 550 | ||
| - | |||
| - | 520 IF A < E THEN LET A = A + 1 | ||
| - | 530 IF A > E THEN LET A = A - 1 | ||
| - | 540 GOTO 570 | ||
| - | |||
| - | 550 IF B < F THEN LET B = B + 1 | ||
| - | 560 IF B > F THEN LET B = B - 1 | ||
| - | |||
| - | 570 PRINT "THE WUMPUS MOVES CLOSER..." | ||
| - | 580 IF E = A THEN GOTO 1000 | ||
| - | 590 GOTO 200 | ||
| - | |||
| - | 1000 IF F = B THEN GOTO 3000 | ||
| - | 1010 GOTO 200 | ||
| - | |||
| - | 2000 IF F = D THEN GOTO 4000 | ||
| - | 2010 GOTO 200 | ||
| - | |||
| - | 3000 PRINT "OH NO! THE WUMPUS ATE YOU!!!" | ||
| - | 3010 GOTO 4010 | ||
| - | |||
| - | 4000 PRINT " | ||
| - | 4010 PRINT "GAME END" | ||
| - | 4020 GOTO 9001 | ||
| - | |||
| - | 5000 PRINT "THERE IS A WALL TO THE WEST." | ||
| - | 5010 LET E = 0 | ||
| - | 5020 GOTO 350 | ||
| - | |||
| - | 5100 PRINT "THERE IS A WALL TO THE EAST." | ||
| - | 5110 LET E = 15 | ||
| - | 5120 GOTO 350 | ||
| - | |||
| - | 5200 PRINT "THERE IS A WALL TO THE SOUTH." | ||
| - | 5210 LET F = 0 | ||
| - | 5220 GOTO 350 | ||
| - | |||
| - | 5300 PRINT "THERE IS A WALL TO THE NORTH." | ||
| - | 5310 LET F = 15 | ||
| - | 5320 GOTO 350 | ||
| - | |||
| - | 6000 REM WUMPUS WARNING -- MOD BY APPLEDOG | ||
| - | 6010 LET I = E - A | ||
| - | 6020 LET J = F - B | ||
| - | 6030 IF I > 100 THEN LET I = A - E | ||
| - | 6040 IF J > 100 THEN LET J = B - F | ||
| - | 6050 IF I = 0 THEN PRINT "YOU HEAR A STRANGE GROWLING!" | ||
| - | 6060 IF J = 0 THEN PRINT "YOU HEAR A STRANGE GROWLING!" | ||
| - | 6070 GOTO 220 | ||
| - | |||
| - | 9001 REM END | ||
| - | </ | ||
sdb/wumpus.1771500923.txt.gz · Last modified: by appledog
