G
Guest
Guest
Archived from groups: rec.games.video.classic,alt.lang.basic (More info?)
Here's a short text adventure I wrote in BALLY BASIC.
BALLY BASIC has around 1,800 bytes, so I don't know
if this will fit (haven't not tested it out on a
real Bally or a Bally emulator).
But...if Bally tokenizes text like I think it
might, it just might fit. And I am assuming
the "@(X)" array works the same way in Tiny BASIC
as it does in Bally BASIC.
Here's the listing for CASTLE BALLY. It's a simple, 6-room
text adventure with multiple objects and a few monsters. I
haven't bug tested it yet, so it might be filled with
SYNTAX ERRORS.
Anyways...check it out, try it out and suggest code modifications
to me at: dunric@yahoo.com
If it works, awesome...if not, please offer suggestions on how
I can make this small text adventure fit into either BALLY BASIC or
ASTROCADE BASIC.
Here's the listing of "CASTLE BALLY":
1 CLEAR;X=0;PRINT "CASTLE BALLY"
5 PRINT "BY PAUL PANKS";PRINT
6 R=1;T=R;I=0;O=1;S=6;H=4;W=2;M=5;D=1;P=100
10 IF R=1GOSUB 100
11 IF R=2GOSUB 102
12 IF R=3GOSUB 104
13 IF R=4GOSUB 106
14 IF R=5GOSUB 108
15 IF R=6GOSUB 110
20 PRINT "<YOU SEE>"
21 IF O=R PRINT "COIL OF ROPE"
22 IF S=R PRINT "SWORD OF FIRE"
23 IF H=R PRINT "SHIELD OF ANG"
24 IF W=R PRINT "FIERY WEREWOLF"
25 IF M=R PRINT "MORDIMAR"
30 R=T;PRINT "OK"
31 Y=RND (6)+1;GOSUB 314
32 PRINT "1.GO 2.GET 3.DROP 4.USE"
33 PRINT "5.INVENTORY 6.QUIT"
34 INPUT "WHAT NOW> " X
40 IF X=1 GOTO 50
41 IF X=2 GOTO 62
42 IF X=3 GOTO 70
43 IF X=4 GOTO 80
44 IF X=5 T=R;R=99;GOTO 21
45 IF X=6 GOTO 99
48 GOSUB 112;GOTO 30
50 PRINT "<WHICH WAY>"
51 PRINT "1> N 2> S 3> E 4> W"
52 PRINT "5> U 6> D"
53 INPUT "CHOOSE 1 TO 6>" X
54 IF R=1 GOSUB 201
55 IF R=2 GOSUB 202
56 IF R=3 GOSUB 203
57 IF R=4 GOSUB 204
58 IF R=5 GOSUB 205
59 IF R=6 GOSUB 206
60 IF @(X)=0 GOSUB 112;GOTO 30
61 R=@(X);T=R;GOTO 10
62 IF O=R O=99;GOTO 30
63 IF S=R S=99;GOTO 30
64 IF H=R H=99;GOTO 30
65 GOTO 48
70 IF O=99 O=R;GOTO 30
71 IF S=99 S=R;GOTO 30
72 IF H=99 H=R;GOTO 30
73 GOTO 48
80 PRINT "<WHAT>"
81 IF O=99 PRINT "1. ROPE"
82 IF S=99 PRINT "2. SWORD"
83 IF H=99 PRINT "3. SHIELD"
84 INPUT "CHOOSE 1 TO 3> " X
85 IF X=1 GOSUB 301;GOTO 30
86 IF X=2 GOSUB 305;GOTO 30
87 IF X=3 GOSUB 312;GOTO 30
88 GOTO 48
99 END
100 PRINT "YOU ARE BY THE VILLAGE"
101 PRINT "NEAR A WELL. <SOUTH>";RETURN
102 PRINT "YOU ARE STANDING IN A "
103 PRINT "FOREST OF TREES. <N S E W>";RETURN
104 PRINT "YOU ARE FACING A LARGE"
105 PRINT "OAK TREE. <WEST,UP>";RETURN
106 PRINT "YOU ARE IN A VAST VALLEY"
107 PRINT "NEAR A POND. <EAST>";RETURN
108 PRINT "YOU ARE WITHIN A CASTLE"
109 PRINT "BY A THRONE. <NORTH>";RETURN
110 PRINT "YOU ARE UPON A BRANCH "
111 PRINT "ABOVE THE TREES. <DOWN>";RETURN
112 PRINT "YOU CAN'T SEE A WAY.";RETURN
201 @(1)=0;@(2)=2;@(3)=0;@(4)=0;@(5)=0;@(6)=0;RETURN
202 @(1)=1;@(2)=5;@(3)=3;@(4)=4;@(5)=0;@(6)=0;RETURN
203 @(1)=0;@(2)=0;@(3)=0;@(4)=2;@(5)=6;@(6)=0;RETURN
204 @(1)=0;@(2)=0;@(3)=2;@(4)=0;@(5)=0;@(6)=0;RETURN
205 @(1)=2;@(2)=0;@(3)=0;@(4)=0;@(5)=0;@(6)=0;RETURN
206 @(1)=0;@(2)=0;@(3)=0;@(4)=0;@(5)=0;@(6)=3;RETURN
301 IF O=99 GOTO 303
302 RETURN
303 IF R=3 R=6
304 RETURN
305 IF S=99 GOTO 307
306 RETURN
307 IF W=R W=98;PRINT "SLASH. IT DIES."
308 IF M=R M=98;PRINT "YOU KILLED MORDIMAR"
309 IF M=98 PRINT "YOU'VE WON!"
310 IF M=98 GOTO 99
311 RETURN
312 IF H=99 GOTO 314
313 RETURN
314 IF M=R GOTO 316
315 RETURN
316 IF Y<4 PRINT "MORDIMAR ATTACKS YOU!";GOTO 320
317 PRINT "THE SHIELD BLOCKS MORDIMAR"
318 PRINT "FROM ATTACKING YOU..."
319 RETURN
320 IF Y=2 PRINT "HE STRUCK A MORTAL BLOW!";GOTO 99
321 PRINT "HE MISSED YOU..."
322 RETURN
Paul
Here's a short text adventure I wrote in BALLY BASIC.
BALLY BASIC has around 1,800 bytes, so I don't know
if this will fit (haven't not tested it out on a
real Bally or a Bally emulator).
But...if Bally tokenizes text like I think it
might, it just might fit. And I am assuming
the "@(X)" array works the same way in Tiny BASIC
as it does in Bally BASIC.
Here's the listing for CASTLE BALLY. It's a simple, 6-room
text adventure with multiple objects and a few monsters. I
haven't bug tested it yet, so it might be filled with
SYNTAX ERRORS.
Anyways...check it out, try it out and suggest code modifications
to me at: dunric@yahoo.com
If it works, awesome...if not, please offer suggestions on how
I can make this small text adventure fit into either BALLY BASIC or
ASTROCADE BASIC.
Here's the listing of "CASTLE BALLY":
1 CLEAR;X=0;PRINT "CASTLE BALLY"
5 PRINT "BY PAUL PANKS";PRINT
6 R=1;T=R;I=0;O=1;S=6;H=4;W=2;M=5;D=1;P=100
10 IF R=1GOSUB 100
11 IF R=2GOSUB 102
12 IF R=3GOSUB 104
13 IF R=4GOSUB 106
14 IF R=5GOSUB 108
15 IF R=6GOSUB 110
20 PRINT "<YOU SEE>"
21 IF O=R PRINT "COIL OF ROPE"
22 IF S=R PRINT "SWORD OF FIRE"
23 IF H=R PRINT "SHIELD OF ANG"
24 IF W=R PRINT "FIERY WEREWOLF"
25 IF M=R PRINT "MORDIMAR"
30 R=T;PRINT "OK"
31 Y=RND (6)+1;GOSUB 314
32 PRINT "1.GO 2.GET 3.DROP 4.USE"
33 PRINT "5.INVENTORY 6.QUIT"
34 INPUT "WHAT NOW> " X
40 IF X=1 GOTO 50
41 IF X=2 GOTO 62
42 IF X=3 GOTO 70
43 IF X=4 GOTO 80
44 IF X=5 T=R;R=99;GOTO 21
45 IF X=6 GOTO 99
48 GOSUB 112;GOTO 30
50 PRINT "<WHICH WAY>"
51 PRINT "1> N 2> S 3> E 4> W"
52 PRINT "5> U 6> D"
53 INPUT "CHOOSE 1 TO 6>" X
54 IF R=1 GOSUB 201
55 IF R=2 GOSUB 202
56 IF R=3 GOSUB 203
57 IF R=4 GOSUB 204
58 IF R=5 GOSUB 205
59 IF R=6 GOSUB 206
60 IF @(X)=0 GOSUB 112;GOTO 30
61 R=@(X);T=R;GOTO 10
62 IF O=R O=99;GOTO 30
63 IF S=R S=99;GOTO 30
64 IF H=R H=99;GOTO 30
65 GOTO 48
70 IF O=99 O=R;GOTO 30
71 IF S=99 S=R;GOTO 30
72 IF H=99 H=R;GOTO 30
73 GOTO 48
80 PRINT "<WHAT>"
81 IF O=99 PRINT "1. ROPE"
82 IF S=99 PRINT "2. SWORD"
83 IF H=99 PRINT "3. SHIELD"
84 INPUT "CHOOSE 1 TO 3> " X
85 IF X=1 GOSUB 301;GOTO 30
86 IF X=2 GOSUB 305;GOTO 30
87 IF X=3 GOSUB 312;GOTO 30
88 GOTO 48
99 END
100 PRINT "YOU ARE BY THE VILLAGE"
101 PRINT "NEAR A WELL. <SOUTH>";RETURN
102 PRINT "YOU ARE STANDING IN A "
103 PRINT "FOREST OF TREES. <N S E W>";RETURN
104 PRINT "YOU ARE FACING A LARGE"
105 PRINT "OAK TREE. <WEST,UP>";RETURN
106 PRINT "YOU ARE IN A VAST VALLEY"
107 PRINT "NEAR A POND. <EAST>";RETURN
108 PRINT "YOU ARE WITHIN A CASTLE"
109 PRINT "BY A THRONE. <NORTH>";RETURN
110 PRINT "YOU ARE UPON A BRANCH "
111 PRINT "ABOVE THE TREES. <DOWN>";RETURN
112 PRINT "YOU CAN'T SEE A WAY.";RETURN
201 @(1)=0;@(2)=2;@(3)=0;@(4)=0;@(5)=0;@(6)=0;RETURN
202 @(1)=1;@(2)=5;@(3)=3;@(4)=4;@(5)=0;@(6)=0;RETURN
203 @(1)=0;@(2)=0;@(3)=0;@(4)=2;@(5)=6;@(6)=0;RETURN
204 @(1)=0;@(2)=0;@(3)=2;@(4)=0;@(5)=0;@(6)=0;RETURN
205 @(1)=2;@(2)=0;@(3)=0;@(4)=0;@(5)=0;@(6)=0;RETURN
206 @(1)=0;@(2)=0;@(3)=0;@(4)=0;@(5)=0;@(6)=3;RETURN
301 IF O=99 GOTO 303
302 RETURN
303 IF R=3 R=6
304 RETURN
305 IF S=99 GOTO 307
306 RETURN
307 IF W=R W=98;PRINT "SLASH. IT DIES."
308 IF M=R M=98;PRINT "YOU KILLED MORDIMAR"
309 IF M=98 PRINT "YOU'VE WON!"
310 IF M=98 GOTO 99
311 RETURN
312 IF H=99 GOTO 314
313 RETURN
314 IF M=R GOTO 316
315 RETURN
316 IF Y<4 PRINT "MORDIMAR ATTACKS YOU!";GOTO 320
317 PRINT "THE SHIELD BLOCKS MORDIMAR"
318 PRINT "FROM ATTACKING YOU..."
319 RETURN
320 IF Y=2 PRINT "HE STRUCK A MORTAL BLOW!";GOTO 99
321 PRINT "HE MISSED YOU..."
322 RETURN
Paul