Computer Gamer
1st December 1985Two adventure creation programs for the Amstrad CPC 464/664 show two differing approaches to the same problem.
GAC/Genisii
Adventures are really mind games and the secret of success is to get onto the same wavelength as the author. This means that some adventures will appear easy to one person but highly challenging, if not impossible, to another. Many ardent adventurers soon want to try their hand at writing their own game but this is usually limited to a Basic mish-mash which eats up memory and limits the complexity of the game.
Adventure creators allow access to the kind of system used by professional programmers to create their games, employing a specific language tailored to the needs of adventure game logic.
Incentive Software's Graphic Adventure Creator (GAC) was written by Sean Ellis, a nineteen year old undergraduate in Cybernetics and Computer Science at Reading University. The creator uses a high level language which incorporates keywords for specific functions and variables whch may be used in conjunction with them.
The manual which accompanies the program is clear, concise and amusing. Not only does it describe the syntax of the GAC but it also gives a simple worked example to get the beginner started. This example starts from the very basics of planning an adventure showing how to break down the structure into a form which can be accommodated by the GAC leading up to how this is translated into a program.
The heart of the program is the menu screen which allows the entry of the textual components such as nouns, verbs and 'adverbs'; room descriptions; objects and related messages. Then, using these as lookup tables, the game can be structured using the user-friendly language. For example, a line such as "IF (VERB 8) MESS 6 LIST WITH END" would result in the use of verb number 8 (which is 'inventory') causing MESSage 6 (You are carrying:) to be printed followed by a LIST of all the objects you have WITH you. END merely tells the computer that this action is over and causes the program to wait for another command to be input by the player.
Player commands can be complex. One such as: "Get the gold, examine it carefully, put it into the chest and lock it and then go north". So it is not limited to mere two word, verb-noun responses and words are fully checked so that confusion is avoided between similar words like 'rat', 'rate' and 'rateable'.
So far I've not mentioned the graphics facilities. A window is provided which can display static graphic scenes. The screen designer within the GAC allows sufficient freedom for any image to be constructed from straight lines, ellipses, boxes or dots. Screens can be edited or even merged to speed up the design of similar screens. One nice touch is the ability to choose shading in two colours, thus extending the range of available colours per screen from four to ten.
During development, the game can be saved as a file for later use but, on completion, the game can be saved as a normally loading program which could be marketed with no royalty payments to the Creator's creator. There's a real "incentive" if ever I heard of one. The only stipulation made is that you give a credit where credit is due to the system upon which your game was developed.
The quality of the games produced on this system should easily compare with, and probably exceed, the Hobbit. It all depends on your planning abilities.
Genesis is a very sophisticated adventure creator, which I would not recommend for a beginner. Developed by Camel Micros and distributed by CRL, the program offers great flexibility and consequently the user-friendliness of the system suffers slightly.
The manual is not very easy to follow and only gives the bare minimum of instruction on program creation and very few hints and tips on program design. An alphabetical index of available keywords would also have been useful because of the range and almost mnemonic nature of the commands. This would probably mean a thicker manual and a higher overall price for a generator of this quality and complexity it would still mean value for money.
An example program line would look like this: COPY 1;OBST(CARRY,OB1):CALL39:FINISH:;
Meaning that a carryable object has been picked up and would be displayed on the amended inventory list by calling subroutine 39. FINISH denotes the end of the instruction.
The example adventure which comes with the package helps to show how a program is constructed, and a range of possibilities using graphics and text windows. Sound effects and music are also within the realms of this generator's range giving the finished program a very professional appearance.
A Genesis adventure is created by using a range of menus and sub-menus which permit the design to have a text area and a general graphics area. This may further be enhanced by adding extra graphics windows displaying icons for carried objects or for icons representing useful items which are lying about the current room.
Special numbered subroutines, or procedures, may be written so that common actions can be sculpted to fit the current needs of the latest adventure. These would cover such things as picking up objects, examining them, asking for help, giving an inventory, dropping objects, etc.
Any screen mode can be specified for use in the adventure and the graphic designer is easy to use. There is even a routine which allows the programmer to redesign text characters for special purposes.
Particularly worthy of note is the sound generator which depicts envelope shapes in graphical form and then displays a keyboard which allows the user to hear the sound created. There is also a composer section for creating multi-voice music or just for constructing sound effects which may then be called up by the program when needed.
The final result is a program of very high quality and sophistication, assuming that you have debugged the logic pathways correctly. The only major limitation to the game being your own creative abilities.
The finished adventure is loaded using a program called Cloner which is followed by two files. There is no indication in the documentation whether programs created on this system are free from copyright or if royalties would need to be paid. The fact that the files can be picked up by the master program generator, bypassing Cloner, indicates that the finished product would be unprotected against unscrupulous cheats and pirates. This could dissuade some from wishing to lay bare their subtle programming techniques to all and sundry.
These two adventure generators offer the same sort of service to the user but differ in their method of approach. One gives you the building block and the other allows you to hew your own out of the raw materials. The final decision of which to buy as always lies with the consumer. For my money, Incentive's program is ideal for those learning the ropes of adventure design, but it limited by its lack of visual impact, though it's no worse than 80% of the adventures which are around at the moment.
Genesis is for the more experienced programmer who revels in complexity and minutiae. Whichever is your final choice, you won't be disappointed.