Значок ресурса

Adventure Builder System

Нет прав на скачивание
Автор: Tom D. Frost
Год: 1986
Издатели: Tartan Software
Производитель: Tartan Software
Языки: 🇬🇧 Английский
Формат: 📼 TZX лента
Требования: 🖥️ ZX Spectrum 48K

Ссылки:
Страница на ZXArt
Страница на Virtual TR-DOS
Страница на World Of Spectrum
Страница на Spectrum Computing

Скриншоты:
576390.png
576391.png
576392.png

AdventureBuilderSystem.png


Описание:
Adventure Builder System (ABS) — это программный инструмент, разработанный компанией Tartan Software в 1986 году, предназначенный для повышения скорости и эффективности приключенческих игр, написанных на BASIC для ZX Spectrum 48K. Он решает проблему медленных реакций, характерных для программ на BASIC, за счет использования генератора кода, оптимизирующего процедуры анализа и распознавания слов.

ABS состоит из двух основных компонентов: генератора кода и основной программы на BASIC. Генератор кода создает необходимый машинный код, а программа на BASIC использует этот код для управления логикой игры. Пользователям рекомендуется заранее детально планировать свои приключенческие игры, включая создание карт локаций и объектов.

Система поддерживает различные команды, такие как GET, DROP, LOOK, EXAMINE и INVENTORY, что делает ее универсальной для создания текстовых приключений. Также предусмотрена возможность настройки глаголов и существительных, что расширяет возможности проектирования игр. ABS предоставляет демонстрационное приключение, чтобы помочь пользователям понять его возможности.

В целом, Adventure Builder System предназначена для любителей и разработчиков, интересующихся созданием интерактивной литературы на ZX Spectrum. Ее акцент на оптимизацию кода BASIC для повышения производительности делает ее ценным инструментом для энтузиастов разработки ретро-игр.

THE ADVENTURE BUILDER SYSTEM



An adventure written entirely in BASIC has reaction times which

compare very badly with machine coded programs. The slow sections are

readily identifiable as the parsing routine, word recognition through

long FOR ... NEXT loops or through large numbers of IF ... THEN lines,

and identifying which few objects should appear at a location or in

the player's INVENTORY.



The ADVENTURE BUILDER SYSTEM (ABS) can substantially decrease the

above delays such that an adventure written predominantly in BASIC can

operate at a speed approaching that of machine code.



The ABS consists of two programs ... one to generate the required CODE

with the other being a short BASIC core program which will utilise

this CODE.



Before using the system it is advisable for the adventure to be

outlined to a reasonably advanced stage. The map should be constructed

with each location and all objects well identified as to description

and starting location. Details on how to use the system will make

reference to the short demonstration adventure for which the DATA and

map are provided.



The BASIC adventure program follows the convention of:



a) PRINTs location description (plus graphics, if included).



b) PRINTs any objects visible at this location.



c) Asks "What next?" and awaits input.



d) Accepts input from keyboard and PRINTs on screen.



e) Analyses input (usually into VERB and NOUN).



f) Sends control of program to a sub-routine specific to that VERB.



The CODE GENERATOR program includes the DATA for movement input (GO

NORTH or N etc) and also for commonly used VERBS:



GET (or TAKE)

DROP

LOOK (or L or R)

EXAMINE

QUIT (or STOP)

INVENTORY (or I or LIST)

SAVE

LOAD



METHOD OF OPERATION



1. Prepare a tape for copy of CODE GENERATOR with DATA for the

adventure with loader program:



10 CLEAR 52000

20 LOAD ""CODE

25 LOAD ""

30 SAVE "loader" LINE 10



2. LOAD the CODE GENERATOR program, add your adventure DATA then SAVE

on to the above tape by GOTO 9990 (Tape A).



3. Make a copy of the BASIC adventure core program. "VERIFY" as a

direct command and do NOT rewind. (Tape B).



4. LOAD Tape A and supply the information required by the on screen

prompts then SAVE the DATA on Tape B. Make a note of the CLEAR

number.



5. Enter as a direct command: CLEAR number: LOAD"" and LOAD Tape B.

Stop the tape when prompted, delete line 9949 then GOTO 9950 and

re-start the tape.



6. "BREAK" and alter line 9991 to:



9991 SAVE "SYSTEM"CODE save,len



7. Add the remainder of the BASIC program (VERB sub-routines and

screen display DATA etc).



8. SAVE at the start of a blank tape (by GOTO 30) the following

loader:



10 CLEAR number

20 LOAD""

30 SAVE "LOADER" LINE 10



9. SAVE the adventure after this loader (by GOTO 9990).



N.B. The enclosed tape contains two copies of each of the following

programs:



DEMONSTRATION ADVENTURE (with BLACK or WHITE background)

Blank CODE GENERATOR

Blank BASIC core program



CODE GENERATOR with the DATA used for the two DEMONSTRATION

ADVENTURES.



In order to use the ABS, the DATA for the adventure must be added to

the CODE GENERATOR program and the on screen prompts satisfied in the

following manner. Responses for the demonstration adventure are

indicated after each section heading, and they refer to the version

with BLACK background.



A) HOW MANY VERBS (17)

The DATA for these is entered in lines 1003 to 1999 in the format:



DATA "OPEN",9,"UNLOCK",10



ie. The VERB (in full), followed by the assigned number. As the verb

numbers (vb) 0 to 8 are already assigned the first additional verb

takes the value 9. Synonymous verbs (e.g. SHUT and CLOSE) are

allocated the same number but count as separate entries when

responding to HOW MANY VERBS.



B) VERB LENGTH CHECK (5)

The ABS offers a choice (between 3 and 7) for the number of leading

letters which will be used to determine a match between input and

database. The selection of 4 or 5 is usual. If 3 is selected confusion

could arise between such inputs as FEED and FEEL, both of which would

be considered as FEE.



C) HOW MANY OBJECTS (9)

This refers to the objects which could be included in the INVENTORY of

the adventurer.

(For DATA entry DETAILS, see section E).



D) MAXIMUM LENGTH OF OBJECT DESCRIPTION (22)

Enter here the number of characters in the longest object description.



E) HOW MANY OBJECTS WHICH CAN HAVE AN ALTERED DESCRIPTION (2)

This refers to items such as "A small TORCH" and "A lit TORCH". The

DATA for these objects is entered in lines 2000 2018 in the following

format:



DATA "COAT",1,"A tartan COAT","A tartan COAT (worn)".

DATA "TORCH",2,"A small TORCH","A lit TORCH".



i.e. The word which would be typed, the assigned number, the original

description, the changed description.



The description of objects is held in the string array o (x,y), where

x is the total number of objects and y is the character length of the

longest description. These objects which can alter during the course

of the adventure must be allocated the first and last numbers of the

string array. See list of DATA for demonstration program where "A

tartan COAT" and "A small TORCH" are objects 1 and 2 while their

corresponding changed versions are objects 8 and 9.

The DATA for the remaining objects (from section C) is entered in

lines 2020 to 2188 in the format:



DATA "BOX",3,"A wooden BOX","SPADE",4,"A short SPADE",...etc.



F) NOUN LENGTH CHECK (5)

This is similar to VERB LENGTH CHECK... select between 3 and 7. The

value can be different from that chosen for VERBS.



G) OTHER WORDS (13)

The first assigned number for these words (DOOR, STAIRS, etc) is

calculated as follows:



Total number objects + 7 (i.e. 9+7=16 for demo adventure)



The DATA is entered in lines 2190 to 2988 in the format:



DATA "DOOR",16,"CUPBOARD",17,...etc.



H) MAXIMUM INVENTORY (3)

Enter here the maximum number of items which the adventurer is

allowed to carry at any one time.



I) NUMBER OF LOCATION (15)

Enter here the total number of locations in the adventure.



J) SCROLL ROUTINE (B)

The ABS contains a split-screen technique which can be used in two

ways.

1) If it is required that the top x number of lines remain on

screen, then an entry here of C, followed by x, will scroll

"behind" these lines when the screen is full.



2) However if the number of lines required to remain on

screen is variable (i.e. after HERE YOU CAN SEE section) then

this can be achieved by entering B as this response.



If the normal SPECTRUM full screen scroll is required then select

here.



K) STARTING LOCATION (7)

Enter here the number of the location at which the adventure

commences.



L) MOVEMENT DATA

The DATA to control movement is entered in lines 3000 to 3998 as 7

numbers for each location as follows:



DATA 7,3,13,8,6,0,0



The first number is the location number, followed by the number of the

six locations which would be reached by entering N,S,E,W,U,D

respectively. An entry of 0 indicates no exit in that direction.



The DATA entered here should take no account of the need to remove

obstacles or unlock doors, etc, as such restrictions can be

accommodated by the BASIC program, in lines 1005 to 1089.



See example in demonstration adventure at lines 1005 and 1010.



A different approach is detailed later.



M) OBJECT STATUS TABLE

Each object will at any one time have one of the following numbers

allocated to it:



a) 0.................the object is 'invisible'

b) 99................the object is in the player's INVENTORY

c) Location number...the object currently resides at this

location and will appear on screen after

HERE YOU CAN SEE when that location is

visited.



The DATA for start-up positions is entered in lines 4000 onwards in

the format:



DATA 4,10,0,1 etc



This indicates that object 1 is at location 4, object 2 is at location

10 etc.



An entry must be made for each object.



These values are then altered as necessary by the BASIC program as the

adventure proceeds.



N) SAVE AND LOAD ROUTINES

These routines can be used on a temporary basis effecting a SAVE into

and a LOAD from RAM or as a permanent measure as usual, to tape.



0) LOCATION DESCRIPTIONS

The DATA is entered in line 5001 and onwards in the following format:



5001 DATA 6, "You are in a very tidy BARN. The farmer who runs

this farm is obviously very proud of his work Or is he?"



The number immediately after DATA refers to the INK colour for the

text following. This number may be kept constant for all locations,

but for special emphasis at some key locations a change of

presentation can be effectively used as a highlight. The text within

the quotes should be carefully constructed with regard to spaces and

punctuation.



P) HERE YOU CAN SEE and INVENTORY

The phrases for these are entered in lines 6040 and 6254 for the

former and in 6080 and 6254 for the latter, preceded by the PAPER, INK

and BRIGHT values for that phrase, e.g.



6040 DATA 5, 0, 1, "Here you can see:- "

6254 DATA 5, 0, 1, "Nothing of interest"



The PAPER, INK and BRIGHT values for each OBJECT are entered

(in order) in line 6140. A set of values MUST be entered for each

object. If the choice of PAPER is not the same as the normal screen

colour, then add spaces to the HERE YOU CAN SEE etc phrases to match

the length of the longest OBJECT description.



Q) CENTRALISATION OF PRINT

The printing of HERE YOU CAN SEE and YOU HAVE WITH YOU followed by the

relevant list of OBJECTS can be located in the centre of the screen or

at the left of the screen...select either 0 or 1 when prompted.



R) RESPONSES from within the M/C system (1) (6)

The DATA for these (in numerical order) is entered in line 7090 and

onwards as follows:



7090 DATA 6,"You really need some light in here!"



with the number again referring to the INK colour, and the text being

arranged for tidy printing to screen.



Three types of responses are considered ....



STANDARD ...in lines 7090 to 7098

TERMINAL ...entered in line 7100 onwards

ROUTINE.....entered in line 7150 onwards



but they are numbered in sequence without regard for type.



Hence, in the DATA for the DEMONSTRATION ADVENTURE as there are 9

STANDARD responses, 1 TERMINAL response and 6 ROUTINE responses the

reference number for the first ROUTINE response is 11 and for the only

TERMINAL response it is 10. Any response which is identified as a

TERMINAL response will automatically be followed on screen by the "Do

you want to try again?" phrase.



S) BRIGHT VALUE (1)

Enter here the BRIGHT value of the main screen.



T) PERMANENT BACKGROUND COLOUR (0)

Enter here the colour value of PAPER for main screen.



DEFINED VARIABLES



The following variables have been used in the CODE GENERATOR listing

and may prove useful to replace numbers and so obtain the maximum

benefit from the program.



0=n 1=j 2=a 3=w 4=aa

5=ab 6=ac 7=ad 8=b 9=ae

10=af 11=ag 12=ah 13=ai 14=aj

15=ak 16=c 17=al 18=am 19=an

20=ao 22=ap 23=aq 24=ar 31=as

32=d 33=e 35=f 40=g 42=at

48=au 50=av 54=h 58=i 60=k

61=l 62=m 70=ax 79=ay 92=az

99=bj



100=ba 115=bb 126=bc 137=bd 184=be

190=bf 200=bg 201=o 202=p 205=q

215=u 250=v 251=bi 254=r 255=s

400=t







The following sections explain how the system works and how it may be

used to write your own adventure.



ANALYSER ROUTINE



The ABS allows a maximum input of 30 characters as upper case letters

or numbers. The analyser routine examines the input and returns to

BASIC with an allocated number for VERB(vb) and NOUN (no) which the

BASIC program can utilise. Any unrecognised word returns a value of

200 for VERB and 201 for NOUN. This information can be used in various

ways by the BASIC program but in the demonstration adventure, either

situation produces the all-purpose cop-out of "You can't do that"!!



Possible single word inputs require some explanation. The parser

routine analyses the input by considering the first word as the VERB

and the last word as the NOUN so that "DROP THE SPADE"or"DROP THE

SHORT SPADE" produces the same response as "DROP SPADE".



However, the one word input of, for example, LOOK gives both a VERB

and NOUN of "LOOK" with values of vb=4 and no=201. This would produce

a response of "You can't do that" due to the value of no=201. Such an

outcome is prevented by including LOOK in the list of NOUNS and

assigning it a default value of 99.



Any additional VERBS which could be used as single word inputs should

be included in both VERB and NOUN lists in a similar manner.



Alternatively, the NOUN number could be a true assigned number for use

by the BASIC program. In the demonstration program such an approach

has been used for DIG where it has been assigned the same NOUN number

as HOLE as an input of "DIG" implies "DIG A HOLE".



NUMBER OF LOCATIONS



If your adventure contains more than 65 locations then line 7665

should be altered to 7005+(10xnumber of locations).





CONTROL OF THE ADVENTURE



The adventure is controlled in the BASIC program by the following:



Variable vb (the VERB number)

Variable no (the NOUN number)

The OBJECT STATUS TABLE

The FLAG STATUS TABLE



All other controls are operated by the generated CODE.



a) OBJECT STATUS TABLE (OST)

Fifty entries are available in this TABLE and each object has at all

times an entry here in the position identified by the number of the

object.



e.g. Status of object number x is found by PEEK (o + X) and a change

in status is effected by POKE (o + X), Y where Y indicates the

new status.



b) FLAG STATUS TABLE (FST)

100 entries are provided by this TABLE with a few being reserved for

specific uses.



FLAG (f+99) is used to control size of INVENTORY.

FLAG (f+98) is used by the GRAPHICS AID program.

FLAG (f+0) contains number of current location.



The first X entries are reserved for use by X objects which change

description during the course of the adventure.



All other FLAGS are available for use by the BASIC program.



A FLAG may also be used as a counter to a maximum count value of 255.



A FLAG status is determined by PEEK (f+X) and a change in status is

effected by POKE (f+X), Z where Z indicates the new status and X

indicates the FLAG number.



As the adventure progresses the BASIC program will be required to

update the values in OST and FST.



At start up all FLAGS (except f) have the value of 0.



e.g. In the demonstration adventure, the FLAGS (f+1) and (f+2) are

altered to the value 1 when the COAT is worn and the TORCH is lit

respectively, also (f+3) is altered to 1 when the CUPBOARD is

open.



COMPLETION OF THE

BASIC PROGRAM



1) VERB SUBROUTINES



100 lines are available for each subroutine commencing at lines 1000 +

(vb x 100). If guidance on how to construct these is required then

consult paragraph 5 of this section.



2) PRINTING OF RESPONSES



As it is most likely that a split-screen presentation will be

selected, it is necessary to check for the need to scroll before each

response is printed on screen. To remove the need to include such a

check before each PRINT statement the responses MAY be identified as

r$(1), r$(2), r$(3), and r$(4) which are then printed by the PRINT

routine at line 50.



e.g.......LET r$(1) = "OK":GOTO 50



It is useful to employ this PRINT routine while testing and de-bugging

sections of the adventure. However, the printing of responses can be

incorporated into the machine code system by replacing the statement

... LET r$ ( ) =" ":GOTO 50 ... with ... LET r=x:GOTO 30 ...

where x=the response number held in the machine code system (see

section R).



Seven responses in the DEMONSTRATION ADVENTURE have been incorporated

into the machine code system ... those in lines 208, 1092, 1100, 1105,

1110, 1915, 7070 and 7150. The difference in effect can be observed by

comparing the response to OPEN CUPBOARD (in FRONT HALL) with DIG HOLE

(in the GARDEN).



3) VARIABLES USED BY THE BASIC PROGRAM



Variables assigned in the core BASIC program are:



vb, no, f, o, MAX, SAVE, LEN, DMOV,

TRNO, PRIN, PRCAR, PRMS, PRHY,

SYS, SA, LO and QUIT.

r$(4,32)



4) LINE NUMBERS



It is important that lines 100 and 195 are retained in the BASIC

program as is (except for alteration of the detail in line 100). These

lines are on occasions pointed to by the machine code system and any

change could be disastrous!



5) The method of construction of the VERB sub-routines can be observed

by studying lines 1000 to 3300 of the DEMONSTRATION ADVENTURE.

However, for a detailed examination (by way of an example) consider

the input of LIGHT TORCH.



This will return a vb value of 12 and no. value of either 2 or 9

depending on whether the TORCH is lit or not (this check will have

been automatically made by the code).



For a vb value of 12 control of the program will be directed to line

2200 (i.e. 1000 +( 12 x 100) as calculated in line 235).



Translation into ENGLISH of this section is as follows:



Line 2200

IF PEEK (o+9)=99 ... If lit TORCH is being carried

AND no=9 ... and NOUN = lit TORCH

THEN LET r$(1) = "It's already lit!" ....

formulate response and PRINT it.



Line 2205

IF no=2 ... If NOUN = a small TORCH

AND PEEK f<>11 ... location is NOT 11 (Cellar)

AND PEEK (o+2)=99 .. small TORCH is in INVENTORY

THEN POKE (o + 2),0 ... remove TORCH from INVENTORY

POKE (o+9),99 ... place a lit TORCH in INVENTORY

POKE (f+2),1 ... set flag for TORCH is lit LET r$(1)="OK ... TORCH now

lit" ... formulate response and PRINT it.



Line 2210

Similar to line 2205 but player must be in CELLAR this time, so send

program to line 100 to print full description as the player is now

carrying a lit TORCH.



Line 2215

Any other situation produces the cop-out response!

An improvement would be to include a response for the situation where

the player did not have the TORCH in his/her possession.



VERBS AND NOUNS INCLUDED





VERB vb NOUN no

No. No.



GO 0 N 1

N 0 NORTH 1

S 0 S 2

E 0 SOUTH 2

W 0 E 3

U 0 EAST 3

D 0 W 4

GET 1 WEST 4

TAKE 1 U 5

DROP 2 UP 5

EXAMINE 3 D 6

LOOK 4 DOWN 6

L 4 LOOK 99

R 4 L 99

INVENTORY 5 R 99

I 5 INVENTORY 99

LIST 5 I 99

QUIT 6 LIST 99

STOP 6 QUIT 99

SAVE 7 STOP 99

LOAD 8 SAVE 99

LOAD 99



The following verb sub-routines are included in the core BASIC

adventure listing:



LOOK..........line 1400

INVENTORY.....line 1500

QUIT..........line 1600

SAVE..........line 1700

LOAD..........line 1800



The MOVEMENT sub-routine is partially completed only, starting at line

1000. It remains to insert any lines to account for temporary blocks

such as closed doors or removal of guarding monsters!!





DEMONSTRATION ADVENTURE



[1 BARN]

�spade



[ 2 LOFT ] [3 FARMYARD] [4 LIVING ROOM] [5 DINING ROOM]

�-� � � coat �

�-� � � �

�-� � � �

[6 STABLE]--[7 FIELD]--[8 DOOR]--[9 FRONT HALL]--[10 KITCHEN]

�-� � � torch

[11 CELLAR] � �

(box) � �

� �

[12 DEAD END]--[13 E W ROAD]------[14 GATE]------[15 GARDEN]

(key)



NUMBER OBJECT (o$) DATA STARTING

LOCATION



1 A tartan Coat COAT 4

2 A small TORCH TORCH 10

3 A wooden BOX BOX 0

4 A short SPADE SPADE 1

5 A bronze KEY KEY 0

6 Splinters of WOOD WOOD 0

7 A large DIAMOND DIAMOND 0

8 A tartan COAT(worn) COAT 0

9 A lit TORCH TORCH 0



NUMBER OTHER NOUNS NUMBER OTHER NOUNS



16 DOOR 23 GARDEN

17 CUPBOARD 24 FIELD

18 LAWN 25 SAFE

19 STAIRS 26 PATCH

20 LADDER 27 JUMP

21 GATE 22 DIG

22 HOLE





DEMONSTRATION ADVENTURE



vb nun VERB MOVEMENT DATA

location N S E W U D





9 OPEN 1 0 3 0 0 0 0

10 UNLOCK 2 0 0 0 0 0 6

11 DIG 3 1 7 0 0 0 0

12 LIGHT 4 0 9 5 0 0 0

13 EXTINGUISH 5 0 10 0 4 0 0

14 CLIMB 6 0 0 7 0 2 11

15 DESCEND 7 3 13 8 6 0 0

16 CLOSE 8 0 0 9 7 0 0

17 TOSS 9 4 0 10 7 0 0

18 FILL 10 5 15 0 9 0 0

19 LOCK 11 0 0 0 0 6 0

20 WEAR 12 0 0 13 0 0 0

21 REMOVE 13 7 0 14 12 0 0

14 ASCEND 14 0 0 15 13 0 0

16 SHUT 15 10 0 0 14 0 0

22 JUMP

23 USE



FLAG STATUS TABLE .... ASSIGNED VALUES



FLAG NUMBER CONDITION FOR VALE=1



1 COAT worn (fixed allocation)

2 TORCH lit (fixed allocation)

3 CUPBOARD open

4 DOOR open

5 HOLE in field

6 HOLE in garden

7 GATE open

8 SAFE unlocked

9 Found BOX

10 Found KEY

11 First CUPBOARD OPEN

.

.

.

99 INVENTORY (fixed allocation)







OTHER CONSIDERATIONS....

RESPONSE TIME AND MEMORY



1) VARIABLES

When memory becomes a problem, the first consideration is usually to

replace frequently used numbers with a variable. For example 0 and 1

abound in many BASIC adventure listings and the use of:



LET n = 0

LET j = 1



followed by the replacement in the listing of each of these numbers by

n or j can effect a considerable saving of memory. Such an approach,

when applied to an extreme extent can have an adverse effect on

response time. It is therefore necessary to strike a considered

balance between speed and memory-saving. When the variables have been

finally defined then all lines such as 9960 can be removed to increase

the available memory.



2) SUB-ROUTINE STRUCTURE

The length of each sub-routine will affect the response time if the

program is required to plough through a vast number of lines before

reaching a conclusion. Careful construction can minimise this effect.



a) The "EXAMINE" sub-routine.

This is likely to be one of the longest in terms of number of lines

but acceptable response times can be achieved by dividing the

sub-routine into several sections.



The EXAMINE command in the first instance can be considered with

two groups of objects .... those which can be carried (e.g. KEY)

and those which are included in the location text (e.g. DOOR). A

line such as 1300 in the demonstration adventure effectively

produces two shorter "EXAMINE" sub-routines, each of which could be

further divided if required.



b) The "MOVEMENT" sub-routine

This routine requires to be of almost instant response but can be

slowed down if there are many considerations of locked doors etc to

be evaluated by the BASIC program. This does not apply to the

demonstration adventure as there are only two such lines. Removal

of such lines, however, can be achieved by the following

modifications.



On return from RANDOMIZE USR 65005 the maximum value of PEEK 64115

will be the number of locations in the adventure (in this case, 15).

Also, if the DOOR IS CLOSED then that response is required for an EAST

move from location 8 and a WEST move from location 9. Currently in the

MOVEMENT DATA, EAST from 8 has a value of 9 and WEST from 9 has a

value of 7. Change both of these values to 16 in the DATA lines of the

CODE GENERATOR program, or as a short cut the changes can be effected

by the direct commands: POKE ((DMOV-7) +59), 16 and

POKE ((DMOV-7) +67), 16 . Now make the following alterations to the

BASIC listings:



1) Remove lines 1005, 1816, 7080, 7081



2) Add the following lines:



1820 IF PEEK (f + 4)=1 THEN POKE ((DMOV-7+59),9:POKE ((DMOV-7)+67),7

1825 GOTO 100

1600 POKE ((DMOV-7)+59),16:POKE ((DMOV-7)+67,16



Renumber 1090 as 1050 then delete 1090

Renumber 1092 as 1052 then delete 1092



1055 IF PEEK 64115<16 THEN GOTO 1060

1058 LET r$(1)=n$ (PEEK64115-15) :GOTO50

9972 DIM n$(2,9)

9973 LET n$(1)="The DOOR is closed !"

9974 LET n$(2)="The GATE is closed!"



3) Alter the following lines:



1900 after POKE(f+4),1 : add-



POKE ((DMOV-7)+59),9:POKE ((DMOV-7)+67),7



2600 after POKE(f+4),0 : add-



POKE ((DMOV-7)+59),16:POKE ((DMOV-7)+67,16



N.B. The calculation ((DMOV-71+59) locates the position in the

MOVEMENT DATA for the entry for an EAST movement from location 8.



The value 59 is found by (location number(8) x 7) + direction

value, where N=1, S=2, E=3, W=4, U=5, D=6.



i.e. (8x7)+3=59



As an exercise, similar changes should be made to permit the removal

of line 1010.

When the program is complete then all expressions such as

((DMOV�7)+59) should be replaced by their numerical value.





PERSONALISATION



Certain features incorporated into the ADVENTURE BUILDER SYSTEM can be

readily altered to provide characteristics of your own choice.



A) STANDARD PHRASES

The STANDARD phrase (e.g."HERE YOU CAN SEE") can simply be altered by

changing the DATA in the CODE GENERATOR. The only restriction would be

to use a phrase no longer than the longest OBJECT description, for

"HERE YOU CAN SEE.. etc, particularly if printing was centralised

and/or a change in PAPER colour had been selected.



B) INPUT PROMPT AND BEEPS

By poking different values into the following locations it is possible

to "personalise" your adventure.



LOCATION CURRENT RESULT

64510 62 Prints)

64528 42 Prints*

64633 50)

64634 0)

64636 200)

64637 1).. Input keyboard BEEP

64049 5)

64050 1)

64052 125)

64053 1) BEEP for wrong keypress



C) SCREEN PRESENTATION

An adventure with good puzzles and story line can be effectively

ruined by poor screen presentation so considerable care should be

taken to provide a good impression.

It appears that it has become almost universally acceptable that

BORDER and PAPER are set to the same colour. This in turn affects the

BRIGHT feature as the use of this provides a poor effect with

background colours other than BLACK and to a lesser extent, BLUE. The

value of BRIGHT is required by the ABS in order that the printing

effected by the machine code system can provide an acceptable

presentation.



GRAPHIC AID

for

THE ADVENTURE BUILDER SYSTEM





Also available from ALPHA OMEGA SOFTWARE ... a simple to use program

which will incorporate INSTANT part-screen graphics into your

masterpieces.





For use ONLY with the ADVENTURE BUILDER SYSTEM, and only �2.50 from



ALPHA OMEGA SOFTWARE

CRL HOUSE 9 KINGS YARD

CARPENTERS ROAD

LONDON E152HD

01-985 6877
Автор
Verter_bot
Загрузки
0
Просмотры
14
Расширение
zip
Размер
14.7 КБ
Хэш
eb40b5178abb45cbcf16e67836d581da
Первый выпуск
Последнее обновление

Оценки

0.00 звезд(ы) 0 оценок
Назад
Вверх