Computer Gamer


The Professional Adventure Writing System
By Gilsoft
Spectrum 48K/128K

 
Published in Computer Gamer #25

Gilsoft brags that its new system will beat any adventure creation program on the market. Nigel Brooks of Smart Egg Software gets his professional paws on a copy.

The Professional Adventure Writing System

In the beginning was the word and immediately God started ordering the universe. Millennia later, we have small worlds created by adventure writers which must be given form. In the beginning, software houses wrote their own generators, and then the Quill was born.

With The Quill, Gilsoft brought adventure writing to the masses, updated it with The Illustrator and then Incentive declared war with The Graphic Adventure Creator. Now Gilsoft re-enter the battle for the ultimate, commercial adventure system with The Professional Adventure Writer.

Tim Gilbert, who led the programming team behind PAW, started out by looking at the adventure market and studying the techniques authors were using in their programs. He has tried to give PAW users every feature they're likely to want - text compression, an editor with word wrap, the potential to create independent characters, real-time situations and so on. He has also recognised the need every author has to personalise his offerings. The on-screen presentation is flexible, allowing text only adventures, split screen graphics and even independently scrolling windows.

Tim went back to basics to develop his sophisticated parser. He spoke to an English teacher, studied books on grammar and even made trips to the local library! He was helped by the fact that the 'command' has one of the simplest forms in the English language. For instance, haven't you noticed that, whatever the adventure and however complex the parser, most of your input ends up as verb-noun. It's also why verb-noun has served so many computer authors so well in the past.

PAW 'understands' commands such as 'put all the magazines except Computer Gamer in the large shredder and then turn it on immediately' or, more simply, 'unlock the north door with gold key'. The first thing it does is to separate the command into 'logical sentences' by recognising punctuation and conjugations (e.g.: and, then). Words in the vocabulary - PAW reads the first five letters of each - are classed according to the part of speech they belong to. It puts the first adverb with the first verb, the first adjective with the first noun and, in this fashion, boils the most complex of commands into standard verb-noun format. This saves the writer from having to anticipate every possible way that the player will type in his responses, but don't imagine it makes things too easy!

PAW has been developed from The Quill and shares the same underlying principles. In fact, it is possible to type a Quill database into PAW virtually unmodified, so being familiar with The Quill should be a distinct advantage.

At PAW's core are some fairly basic assumptions about how an adventure should work. The author creates an imaginary world. This is based on a series of interlocking locations, with features such as independent characters, objects to manipulate and problems to solve. The Response Table is where the write anticipates the player's commands. The Process Tables - up to 253 of them - are where the player's on-going status and matters such as whether it is light or dark are recorded and checked. Process Table 1 is scanned each time a location is described, Process Table 2 is similar to the Status Table in The Quill and is scanned between turns. Each of these tables can call up a further Process Table which becomes an extension of the table that called it, effectively providing a powerful subroutine system.

An example of how a response table should look is:

UNLOCK DOOR   ADJECTI NORTH
PREP WITH
NOUN2 KEY
ADJECT2 GOLD

As you can see, PAW's language is simple and nearly entirely in the form of IF, THEN, AND type statements. GAC, which has its faults, by comparison has OR and XOR commands which the writer can use to make programming statements such as 'if the player is carrying the lamp or the torch then describe the location'. PAW would require two separate entries to say this. On occasion, this can be frustrating, although it must be said that almost any desired result can be achieved.

PAW is based upon sound principles and has the potential to create sophisticated adventures but, for PAW to succeed, writers must be able to get on with the job quickly and easily. It is a 'utility' and it must be usable. With that in mind, here are some of PAW's more general features. It has a system of memory overlays in both 48K and 128K modes to gain maximum free memory. As an example, PAW has a font designer with which you can create or modify your own character sets (though 22 are provided with PAW). Once the adventure has been written this code becomes redundant, so if memory starts to get tight, new 'adventure' data overwrites the font designer. At this point, if the writer wants to use the designer again, he must load it back from tape. Even the game test facility can be overwritten in this way, leaving an interpreter just 4K long for the completed adventure! In 48K mode, several features must be pulled off tape in this fashion right from the start, making 128K mode, which is otherwise identical, a little more friendly and convenient.

If you've used The Quill by now, you may be asking how does PAW compare? Here are a few titbits to help you decide. There are 256 flags available. New conditions include 'is an object at/not at a given location?' and flags can be manipulated in just about any way imaginable - add one to another, subtract it and so on. Objects can be weighted and put into one another. New commands include GETALL, DROPALL, RAMSAVE and RAMLOAD. Diagonostics has an error trapping feature, so if the game ever crashes during testing, you can find out exactly what went wrong. Finally, there is an EXTERN command to call up personal machine code routines for any programmer still not satisfied with what PAW offers.

Now for the graphics. They are drawn "Illustrator-style" on the screen in the same fashion as old Level 9 or GAC games. This is not as quick or elegant as flashed on-screen, art-package style graphics, but the draw routines and, in particular, the fill routines are fast. The package is simplicity itself to use with many useful features such as rubber banding and subroutine calls. It's economical and, what's more, I have already seen some excellent results achieved with it.

New users will enjoy the results they can achieve with PAW but, as with any utility, it will take time to master. Anyone who has grappled with a new word-processor or art package will appreciate this fact. PAW represents the state-of-the-art of adventure programming in 1987, although there has been a degree of compromise in producing a utility that just about anyone can use to good effect. Adventures written with it will not, by definition, be breaking new ground but I don't think that this is important.

Probably no more than one in 100 users will ever take PAW to its limits in any case. I suspect that what people want in an adventure, or piece of interactive fiction, as Infocom would have it, is a believable world, created with imagination and possibly a touch of humour, with well-structured problems and, of course, good presentation. A writer can achieve all this and much more with PAW.

The two manuals which accompany PAW cover the all-important details on how to use the package. The technical manual is clear and concise, amply covering all aspects of PAW in just 40 pages. For beginners to adventure writing systems, the second manual contains worked examples of simple adventures which cover the important facilities provided by the suite of programs. There is also an essential lesson in English grammar to enable the user to distinguish between verbs, adverbs, prepositions and all of the other parts of speech which the parser must be able to recognise.

Initially released at £22.95 for the Spectrum 48K/128K machines, the Commodore 64 conversion is expected within the next few months and future plans include an Atari ST PAW and a CP/M version for the Amstrad PCW. Gilsoft is also considering the Amiga and IBM PC as worthy contenders for future developments.

PAW is a well thought out, polished utility written by people who genuinely care as much about the amateur writer as they do about the professional, but what you get is only the start. What you achieve with it will depend entirely upon your own imagination and dedication...

Nigel Brooks