home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-03-06 | 37.1 KB | 1,115 lines |
- Short: Graphic Adventure Authoring Language 2.0
- Author: pethu@hotmail.com
- Uploader: pethu@hotmail.com
- Version: 2.0
- Type: game/role
- Replaces: game/role/Graal2a.lha
- Requires: 1.5 MB of free RAM, WB 2.0 or above, amigaguide.library
- Action: PAL
-
-
- GRAAL 2.0 - Disk A
-
- GRAAL_2 driver program and first part of demo adventure
-
- !! !!
- !! QUICK-START FOR OLD USERS CHANGED SINCE THE LAST BETA RELEASE - READ IT !!
- !! !!
-
-
- ============
- GRAAL 2.0
- ============
-
-
- Contents:
-
- INTRODUCTION
- GRAAL REGISTRATION
- DISTRIBUTION
- QUICK-START FOR OLD USERS
- NEW FEATURES SINCE 1.2
- CHANGES IN BEHAVIOUR SINCE 1.2
- CHANGES SINCE 2.0 BETA 1
- BUG FIXES FROM 1.2
- BUG FIXES FROM 2.0 BETA 1
- BUGS LEFT IN
- FUTURE ENHANCEMENTS
-
-
-
- INTRODUCTION
- ============
-
- GRAAL is a script-based Graphic Adventure Authoring Language, delivered to
- your electronic doorstep complete with an editor and other development
- tools, a demo adventure, and more documentation than you can shake a
- pair of strong eye-glasses at.
-
- And here it is at last - The OFFICIAL GRAAL 2.0 release. That's right, no
- more beta versions for a while!
-
- To keep all you faithful, patient (and registered) people happy, I've also
- thrown in a couple of new goodies for ya since last time around (and thus,
- I may have introduced a whole new set of bugs to replace the ones taken
- out. Oh well...)
-
- * Compression/encryption routines for ALL game files are in place.
- (Only for registered users, though...)
-
- * Flipping images doesn't have to involve hexadecimal maths anymore.
-
- * A new EXEC command makes it possible to trigger external programs from
- within GRAAL.
-
- How's that for a worthwhile bunch of improvements? Read more about it
- under "CHANGES..."!
-
- COPYRIGHT NOTICE
- ================
-
- GRAAL 2.0 is shareware and copyright (c) 1997 Per Thulin.
-
- This package may be freely distributed, as long as nothing except
- distribution costs are charged.
-
- All files must be kept together, either in the original, unaltered
- archives, or as a proper disk installation done with the installer.
-
- The GRAAL_2 driver program may be distributed on its own and for free
- as part of your own adventure, even commercially. There is no license
- fee - however, you should register (see below).
-
- The registered user's personal key file, graal.key, must no longer be copied
- or re-distributed in any way. (This is a change from earlier versions,
- which required the keyfile to be delivered as part of an encrypted game.
- This is no longer necessary - the only program using the keyfile is GPRO.)
-
- You are specifically forbidden to use any of the example material -
- characters, story, graphics or sound - in your own adventures.
-
-
-
- GRAAL REGISTRATION
- ==================
-
- The shareware version of GRAAL is not crippled in any way.
-
- However, if you want to distribute your adventures, you will probably
- want the following:
-
- * A way to copy the delivery files to a test directory for final tests.
-
- * A way to compress the data to be able to put more on each floppy.
-
- * A way to encrypt all scripts, graphics, and sound files to prevent
- people from finding the solution to the game too easily.
-
- If you register, you will receive a personal keyfile which enables you
- to use the GPRO program to do all of the above. It also enables you to
- switch off certain developer functions in the version of GRAAL you
- distribute to make it even safer - and harder to crack.
-
- As an added bonus, your name appears in lights on the loading screen,
- from which it cannot be removed - an extra copyright protection, you
- might say.
-
- ----------------------------------------------------------
-
- NOTE: Whenever you use GPRO to compress and encrypt games,
- you must use the GRAAL driver version that matches the
- GPRO version. GPRO 2.0-treated games will only run using
- the GRAAL 2.0 driver!
-
- ----------------------------------------------------------
-
-
- The keyfile will continue to work with any new versions uploaded
- to the Aminet. Updates are thus easily accessible and free of charge.
-
- You are also put on a mailing list, and will receive an e-mail GRAAL
- newsletter from time to time (provided you are connected to the 'net).
-
- Registering is as easy as sending 150 SEK (swedish crowns), or the
- equivalent of £ 15 (British pounds), in cash to me:
-
-
- Per Thulin
- Malmtorgsgatan 18
- S-653 40 KARLSTAD
- SWEDEN
-
-
-
-
- DISTRIBUTION
- ============
-
- The system is now delivered on 4 disks.
-
- The aminet archives should be unpacked to a common drawer on HD or in RAM,
- or to floppies named as follows:
-
- graal2a.lha --> "GRAAL 2.0 - Disk A"
- graal2b.lha --> "GRAAL 2.0 - Disk B"
- graal2c.lha --> "GRAAL 2.0 - Disk C"
- graal2d.lha --> "GRAAL 2.0 - Disk D"
-
- Anyone equipped with the C= installer program can then use the "HD_Install"
- icon found on Disk A to install the system to hard disk, or to update an
- existing development directory.
-
-
-
-
- QUICK-START FOR OLD USERS
- =========================
-
- Just want to update and go on typing on your own adventure? OK.
-
- 1) Copy the new GRAAL_2, GRAAL_Editor, GRAAL.guide, GPRO, and GDC to
- your development directory.
-
- If you have Commodore's installer program, use the HD_Install
- script supplied on disk A to do this!
-
- Delete any old, renamed GRAAL driver programs floating around...
-
- 2) To use the GRAAL editor, make sure amigaguide.library is in your
- LIBS: drawer.
-
- 3) If you have a VERB_TEXT: 10;... statement in your graal.main script,
- change it to VERB_TEXT: 999;...
-
- 4) If you have used DACT: statements in section scripts with GRAAL 1,
- refer to the appropriate section below.
-
- 5) Consider putting in a MAX_DLG: statement in graal.main. See graal.guide
- for details on how and why...
-
- 6) Registered users: Go through the diskinfo.graal file(s) and put a space
- and an asterisk after the following file entries:
-
- - The driver program (GRAAL_2 or the renamed copy)
- - diskinfo.graal
- - FONTS
- - all user documentation files
- - all icon (.info) files
-
- This stops GPRO from compressing and encrypting these files.
- Read more in "prod.text".
-
- 7) Continue with your work. (That wasn't too bad, was it? :)
-
- 8) Read the rest of this file when you feel up to it!
-
-
-
-
- NEW FEATURES SINCE 1.2
- ======================
-
- For detailed descriptions, see the on-line reference. In the overviews
- of statements, commands and conditions, all new or significantly
- enhanced things have been marked with the text *NEW* next to the brief
- description.
-
- Below, most new statements and commands are shown in parentheses.
-
- By the way, thanks to David Putzier and Evert-Jan Slypen for some good
- suggestions (without which GRAAL 2 would have been smaller and out much
- sooner ;)
-
-
-
- EHB Mode
- --------
-
- * Use 64 colour graphics in the scene area with the EHB (Extra Halfbrite)
- mode. (N.B.: AGA modes still not supported. Although it wasn't stated
- in the documentation for GRAAL 1, you may also use HAM6 for TITLE screens
- - you probably noticed this possibility in the demo adventure.)
-
-
-
- Command and dialogue area layout
- --------------------------------
-
- Everything in the graphics of the player interface is now customisable:
-
- * The sizes of the scene and command/dialogue areas can be changed, and
- also the method GRAAL uses when switching between them.
-
- ( SWITCH_MODE:, AREA_SIZES: )
-
- * The number, placement and meanings of verbs.
-
- ( N_VERBS:, VERB_TEXT:, VERB_ZONE: )
-
- * The size and number of rows and columns of the inventory display,
- and whether to display inventory as text or icons.
-
- ( INV_LAYOUT: )
-
- * The placement and size of the sentence area.
-
- ( SENTENCE_LAYOUT: )
-
- * The size and number of rows in the dialogue lines list.
-
- ( DLG_LAYOUT: )
-
- * The size, position and appearance of list scroll arrows.
-
- ( INV_UP:, INV_DOWN:, DLG_UP:, DLG_DOWN: )
-
- * The size, position and appearance of the cutscene indicator.
-
- ( CUTSCENE_LAYOUT: )
-
- * The fonts used - any font should go for anything, as long as the
- layout is altered to make room for what you have in mind.
-
- NOTE: This does not mean you can use more fonts simultaneously -
- just that the four fonts defined in GRAAL can be any fonts you like.
-
- * The mouse pointer shapes.
-
- ( ARROW_CURSOR:, CROSSHAIR_CURSOR: )
-
-
-
- Requesters
- ----------
-
- * The system messages shown to the player can be changed. Now there
- shouldn't be a scrap of text anywhere which cannot be translated into
- a foreign language. (Foreign? What am I talking about? It's English
- that's foreign to me...)
-
- ( SYSTEM_TEXT: )
-
-
-
- Calendar and clock
- ------------------
-
- * Dates and times can be set and advanced.
-
- ( SETTIME, SETDATE, ADDTIME, SAVETIME, RESTORETIME )
-
- * A number of different formats for dates and times are available -
- basically, you design your own formats.
-
- ( DATE_FORMAT:, TIME_FORMAT: )
-
- * Dates and times can be displayed either with a SAY, THINK, RESP or TEXT
- command, or permanently in the command area using graal.main statements.
-
- ( #DATE, #TIME, DATE_LAYOUT:, TIME_LAYOUT: )
-
- * GRAAL can draw analogue clock hands for you in the command area. (You
- still have to draw the rest of the clock's face and casing, though... :)
-
- * You can test the date and time
-
- ( IFTIME, IFTIME )
-
-
-
- Timed events
- ------------
-
- * You can have events occuring and recurring at a specified time interval,
- For example, you may use a timer to advance the time (see above). The
- "events" are actually normal ACTION: statements, so there are no
- restrictions as to what they may contain!
-
- Up to 3 timers may be active at the same time. The time intervals may
- also be randomized.
-
- ( DOAFTER, CANCEL )
-
- * One of the timers keeps track of how long the player has been inactive.
-
-
-
- Object Default Command
- ----------------------
-
- * For each object, a default verb can be specified, executed directly
- when the player clicks the right mouse button.
-
-
-
- Direct Commands
- ---------------
-
- * Using the VERB_TEXT: statement, verbs can be defined that do not use
- objects. Instead, they are executed immediately when the player clicks
- the verb in the command area. This can be used for special functions
- such as QUIT, RESTART, or calling some sort of menu or map room.
-
-
-
- Dialogues
- ---------
-
- * Dialogues (LINE: and LACT: statements) can now be defined in a
- .section script. Can't think of a use for it? Don't worry, you will.
- At least, I have!
-
- * Number of dialogues, lines per dialogue and actions (LACT:s) per
- dialogue can now all be changed to suit your needs (within the
- restraints of the internal 128K buffer memory, of course)
-
-
-
- Object Icons
- ------------
-
- * For each object, an icon for use in the inventory can be defined and
- altered with the ICON command at any time.
-
-
-
- Flags
- -----
-
- * A flag can be set to the value of another flag.
-
- * The following logical operators can now be used to test flags:
- =, <, >, <>, <=, >=
-
- * A flag can be tested against the value of another flag.
-
- * A flag can be set to the value of the current "in-game date" or
- "in-game time".
-
- * A flag value can be added to another flag.
-
-
-
- Movement paths
- --------------
-
- * Floors no longer need to overlap: Paths can be defined
- for movement between them.
-
- ( PATH: )
-
- * Paths can twist and turn, but there are restrictions in the movement
- control they allow - read the on-line reference. Floors should still
- overlap as much as possible in most cases for the most flexible
- character movement.
-
-
-
- Macros
- ------
-
- * You can record a sequence of player actions as a macro, store it in a
- file, and later play it back - great for automating long, tedious test
- runs.
-
- ("R" and "P" keyboard keys in developer mode.)
-
-
-
- Miscellaneous
- -------------
-
- * Improved HANDLE command - You can use the various HANDLE positions
- without referring to an object.
-
- (HANDLE LOW, HANDLE MID, HANDLE HIGH)
-
-
- * New IFCBOB condition. This could be useful to initiate different
- animations depending on the previous character position - coding
- your own TALK_MAP or HANDLE_MAP-like constructs, as it were. Can
- be used in conjunction with the "player inactive" timer to program
- stall anims in the graal.main file.
-
- ( IFCBOB )
-
- * Alter the default length of time a sentence or text is displayed.
-
- ( NORMAL_WAIT: )
-
- * PAUSE key. This was unnecessary in GRAAL 1, because
- nothing ever happened that was important when the player left the
- mouse alone! However, GRAAL 2 is (or can be) a whole different kettle
- of fish in that respect (what? Halibut?)
-
- ( SPACE bar )
-
- * Nice, "transparent icons" for NewIcons 3 (as well as the old MagicWB
- ones) for GRAAL, the Editor and the on-line reference! Not quite
- necessary, but a nice touch all the same :)
-
- * New condition to check which floor the main character is on.
-
- ( IFFLOOR )
-
- * New statement can disable the "q" quit key and force the
- user to use a "QUIT" button/verb provided by you. (Your own "quit"
- sequence must end with the QUIT command, new in 1.1.)
-
- ( DISABLE_QUIT: )
-
-
-
- THE GRAAL EDITOR
- ----------------
-
- The GRAAL Editor has had a serious overhaul:
-
- * The HELP key now opens GRAAL.guide to show the help for the current
- command or statement.
-
- * ALL statements and commands can now be edited using a window showing
- the parameters (a major feat in reverse engineering :-).
-
- * All parameters that define areas, points, object or image positions,
- etc. can now be edited graphically against the proper background
- picture.
-
- * Switching to the proper background picture is automatic in most cases.
-
- * All parameters that can only be set in a limited number of ways
- have a "cycle" button in the parameter editor.
-
- * When the backdrop picture is a scene area backdrop, all objects with
- starting positions defined for that room are also shown, making relative
- positioning of things a lot easier.
-
- * As a result of all of the above, the object editing window is actually
- less neat than it used to be. You have to take the bad with the good...
-
- * "Quick search" buttons have been added for OBJECT:, DACT:, ACTION:, and
- LINE: statements to find the first statement of the desired type in the
- file.
-
-
-
-
- THE DISKINFO.GRAAL FILE, GDC AND GPRO PROGRAMS
- ----------------------------------------------
-
- * You can insert empty lines or comment lines in between entries.
-
- * There is no longer a need to keep track of the number of entries
- in the diskinfo.graal file on line 3. There must still be a line
- here, making the actual entries start below line 3, but you can
- make it a comment line or an empty line if you wish.
-
- * The gpro and gdc programs now check that the diskette specifications
- are sorted alphabetically, which they must be in order for gdc to
- work properly.
-
- * The gpro program now needs your personal keyfile in the development
- directory to work, and is distributed along with the rest of the
- shareware version.
-
- * The gpro program can select any file name for the diskinfo file -
- it will be renamed to "diskinfo.graal" in the test directory. This
- means that you can copy different versions of the game from the same
- development directory to different test directories with ease.
-
- * The gpro program can now encrypt and compress ALL game files.
-
- * The gpro and gdc programs have a significantly better error checking.
-
-
-
-
- CHANGES IN BEHAVIOUR SINCE 1.2:
- ===============================
-
- The philosophy has been to make all new statements optional and provide
- default values for them that are in keeping with the old GRAAL 1 player
- interface. If you are content with sticking to that, it means you don't
- really have to learn a lot about the new statements. In fact, although
- there are heaps of new graal.main statements, not a single one of them
- is mandatory!
-
- This text describes the alterations you may still need to do when running
- GRAAL 1 scripts under GRAAL 2. There are also some minor changes to the
- behaviour of GRAAL which can't be avoided, but at least you get to know
- about them here. They are all fairly obvious improvements, so you shouldn't
- get too upset, i hope :)
-
-
-
- Size
- ----
-
- The GRAAL program itself has grown by around 60K. In addition, the buffer
- memory (the place where GRAAL keeps all your in-game variables, actions
- and dialogue data) has been bumped up from 88K to 128K to make room for
- possible larger dialogues, more detailed load/save routines, the
- customisable player interface data, and so on.
-
- All in all, about 250K more may be needed to run GRAAL 2 than GRAAL 1.
- However, my statements about memory consumption for GRAAL 1 contained
- a healthy margin, and 1.5 M should still be enough for playing most games...
-
-
-
- Changes in .section DACT: execution
- -----------------------------------
-
- In GRAAL 1, section DACT: statements were only executed upon loading
- a new .section file. This was never of much use, I thought - there was
- a bigger need for a set of DACT:s that were executed for every room,
- saving a lot of re-typing of commands and conditions needed everywhere.
-
- Thus, from now on, GRAAL executes all section DACT:s are before the room
- DACT:s for each and every room in the section.
-
- Check through any old section DACT:s you have - if you want them to be
- performed only upon loading the section script, you can use a room flag
- for each section in the game to only execute them once upon loading in,
- the old style.
-
- Example:
-
- You have three sections. The following could be the setup in the script for
- section 2 - similar DACT:s should be present in sections 1 and 3, each
- checking its own flag and re-setting the others!
-
- /* This makes sections 1 and 3 execute their statements if returned to
- DACT: SETRF 0,1=0;SETRF 0,3=0
- /* If this is the first visit, or if some other section has reset
- /* section 2's flag, execute the commands!
- DACT: IFRF 0,2=0;... these commands only done once ...;SETRF 0,2=1;EXIT
-
-
-
- Enhancement to the save/load game routines
- ------------------------------------------
-
- GRAAL 1 was not too precise when loading saved games.
-
- Basically, it loaded the data for the main character, the inventory,
- and all flags. It then trusted upon the room's DACT:s to set the rest
- of the stuff up using flags to determine what the scene should look like.
- This was far from perfect and yielded some unwanted results from time
- to time. (In addition, the room flags for room 0 were not handled properly.)
-
- GRAAL 2 accurately recreates all aspects of the saved game (well, unless
- some bugs say otherwise!). In fact, when the saved position has been
- loaded, the DACT:s are now completely skipped.
-
- However, there are some things that may require some "looking after"
- after a saved position has been loaded:
-
- Mostnotably, the current set of global BOB images are not saved with the
- game. Therefore, after a game has been loaded, GRAAL searches for and
- executes all ACTIONs starting with the special verb number "-2". In such
- statements you may put whatever needs to be done after a "load game" or
- RESUME command.
-
- All this means GRAAL 2 may behave somewhat differently after loading a
- saved game, but all the better for it!
-
- In GRAAL 1, there were also some major bugs concerning loading a saved
- game that meant switching between sections after loading sometimes caused
- problems. Especially the section objects got a fair old beating from that,
- and often did some very strange things.
-
- One final point: All saved games, both disk and ram: files, are now always
- encrypted. Despite this, saving and loading is also significantly quicker
- than before.
-
-
-
- Enhancement / change in MARK and RESUME operations
- --------------------------------------------------
-
- MARK and RESUME did a poor job in GRAAL 1, and have been completely
- re-coded.
-
- * A MARK without a number saves exactly the same things
- as the "save game" function to GRAALs internal memory.
-
- * A MARK with a number does a "save game to RAM:", which actually
- creates a saved game file in RAM:. (This command takes some time.)
-
- If memory permits, you can MARK any number of positions for later use.
- (Just remember that each MARK with a different identification number
- creates a file in RAM: of anything from 10K upwards, which remains for
- the duration of the game.)
-
- Note that doing a RESUME resets ALL variables and even timers to their
- values and behaviours at the point the MARK command was given. You will
- have to think about this when using them for cutscenes - the cutscene should
- not itself set any value that you want to keep after the RESUME.
-
- In the previous example adventure, I used MARK and RESUME to "refresh"
- the display of the main character after having loaded a new set of
- global BOB images. This no longer works. However, this new form of the
- SHOW command will perform exactly the same thing in a much neater way:
-
- SHOW 0, , ,
-
- shows the main character in the same place with the same image number...
- ...only if the image has been re-loaded will there be any difference!
-
- (I have a feeling this should only be used before LIGHTS ON, though...)
-
-
-
- Enhancement to the inventory scrolling
- --------------------------------------
-
- The inventory is now scrolled a row/column at a time - easier for the
- player to keep track of objects that way.
-
-
-
- Enhancement to the frame updating routines
- ------------------------------------------
-
- The UPDATE statement controlling frame update rates have been extended
- to provide full control over the frame updating rates for all rooms.
-
- You may want to amend your old UPDATE statements: The default for
- "no background scrolling" is now 1, not 3, so if you want to keep
- things exactly as they were, add ";3" at the back of all your old
- UPDATE statements.
-
- However, I recommend you try the new defaults first and see how it goes.
- If your machine can cope, they look better...:
-
-
-
- Changes to font spacing
- -----------------------
-
- All commands dealing with fonts now use the font's baseline to determine
- where to place the text. In most cases, if a row of text is meant to
- occupy the space from position x1,y1 (upper left corner), the first
- character's base will be placed at x1+2,y1+2+Base Line.
-
- What this means to you is that some texts may shift slightly from where they
- were in the previous version of GRAAL. However, it also means that any
- correctly defined bitmap font may now be used for any function, and it
- should not be too difficult to place text neatly on the screen.
-
-
-
- Change in the VERB_TEXT: statement for the preposition text
- -----------------------------------------------------------
-
- To change the preposition text, one must now use
-
- VERB_TEXT: 999;...
-
- instead of
-
- VERB_TEXT: 10;...
-
- The reason being that you can now have more than 9 verbs in which case
- VERB_TEXT: 10;... is needed for other things. However, I trust that
- no-one will EVER define 999 of them...!
-
-
-
- Change in OBJECT parameters
- ---------------------------
-
- The two previously unused parameters (15 and 16) have now been assigned
- the tasks of keeping track of the inventory icon image and the object
- default command.
-
- The "visible" parameter should now be VIS or NVIS for "visible" and
- "not visible". The old values (-1 and 0) also work, though.
-
- Same thing with the "pickable" parameter: From now on, use PICK or
- NPICK for that one.
-
-
-
- New SHOWEXIT and HIDEEXIT commands
- ----------------------------------
-
- These came about because the syntax of the old versions (SHOW EXIT,...
- and HIDE EXIT,...) caused trouble in the parameter parsing of the
- new GRAAL Editor.
-
- The old versions still work, but they are not supported by the editor
- and will produce error messages during the syntax check, prompting you
- to switch to the new syntax.
-
-
-
- DELETED FEATURES
- ================
-
- No more in-game help text when pressing "Help" or "H". Too much text
- needed, too much localizing, too slow on 68000 machines... I hope you
- won't miss it too much.
-
-
- CHANGES SINCE 2.0 BETA 1
- ========================
-
- Driver
- ------
-
- * I finally did something about the cumbersome way to define flipped
- BOB images. They can now be specified by prefixing the image number
- with "//" instead of specifying a hex value "$8000+number". That is,
-
- //14
-
- means the same as
-
- $800E ( = $8000+14 )
-
- This method of specifying flipped images can be used for all types of
- BOBs everywhere, and also for HANDLE_MAP:, TALK_MAP: and IFCBOB. See
- the demo adventure's graal.main script.
-
- "//RBOB1" means "RBOB1, flipped"
-
- "IFCBOB //12" checks if the current character image is 12, flipped.
-
- The old way can still be used, but I bet I know which one you will
- prefer in the future :)
-
- * MAX_DLG: statement in graal.main now sets the total number of dialogues
- in a game.
-
- DLG: statements just define speaking partners for RESP commands.
- Speaking partners can now also be room and section objects.
- (Default is 30 dialogues.)
-
- * Moving the mouse cursor over the inventory makes the object name
- show up in the sentence box.
-
- * New IFNOTSAVEDISK, IFEXISTS, SAVE, LOAD makes it possible to code
- save/load screens (rooms) in any style you like.
-
- * New DISABLE_SAVE: statement to go with the above, forcing the player to
- use your new save/load screen.
-
- * New "$" prefix in dialogue lines disables the automatic SAYing of the
- line when it is selected. Makes the dialogue use less character-dependent.
-
- * TYPE can now handle text variables and special formatting like
- the TEXT and SAY comands.
-
- * New statement parameter: Use "SECTION: SAME" for "subroutine rooms"
- like load/save rooms. Prevents rooms belonging to "all" sections from
- messing with the section data...
-
- * Playing from write-protected disk makes GRAAL automatically ask for
- diskette for saved games - mainly for use with CD-ROM distribution.
-
- * TYPE, PBOB, CLPART, BOBS and HOTSP commands are now "remembered" in
- save/load/resume operations as well as the current position and image
- or animation pattern for each object present.
-
- Note: You still may have to use ACTION: -2 statements occasionally,
- because all GRAAL remembers are the commands that took place in the
- room that was MARKed/saved, not anything that may have happened in
- previous rooms... But, in most cases, you shouldn't need ACTION: -2;
- statements.
-
- * There is a new DEBUG: statement making it possible to use the monitor
- and abort keys while testing the final delivery diskette layout. This
- also means you get to see the "looking for file ..." information in the
- diskette swapping requester to help out when you have messed up ;)
-
- * GRAAL_2 no longer asks for the keyfile when reading an encrypted game.
- From now on, your peronal graal.key file should NEVER be distributed to
- other users.
-
-
- Editor
- ------
-
- Major user-friendliness overhaul:
-
- * The Editor now handles editing of PATH: lines.
-
- * Asking to load a specific script type now brings up a list requester
- showing all the existing scripts of that type, including short
- descriptions of each file (both WB 2 and WB 3). (The short descriptions
- are in fact the beginning of the first line, which should be a comment
- line!)
-
- * Asking to create a new script of a specific type now automatically
- suggests a suitable, unused script number and lets you enter a
- description (which is inserted in the first script line).
-
- * Using "Edit parameters" on an empty line now brings up a list requester
- showing all the available statements and lets you insert one.
-
- * Using "Edit parameters" with the cursor on anything but a statement
- or command name in a statement line brings up a list requester showing
- all the available commands and conditions, and lets you insert one.
-
- * More keyboard shortcuts: [F1]-[F6] triggers the "graphics editing buttons"
- in the parameter editor, [Tab] activates next input string gadget.
-
- * The floors are shown when editing a starting position or a path.
-
-
- GPRO
- ----
-
- GPRO now compresses and encrypts almost all files. The only files that
- should never be compressed by GPRO are:
-
- * the driver program
- * the diskinfo file
- * documentation and icon files.
-
- Mark these files with an asterisk after the file name in the diskinfo.graal
- file to prevent them from being compressed. See prod.text for more detailed
- information.
-
- The compression routine puts the emphasis on speed rather than efficiency.
- On average, 30% less space is used by a compressed adventure, not counting
- the GRAAL_2 program, which cannot be compressed by GPRO. However, you can
- make a self-decrompressing executable of GRAAL_2 with a suitable utility
- (powerpacker or crunchmania, for example), saving more space on diskette A.
-
- The percentage gained varies greatly with the structure and complexity
- of the files. Some examples:
-
- 120K tracker module ---> gained 42%
- 24K complex bg picture ---> gained 20%
- 12K simple clipart picture ---> gained 54%
- 24K script file ---> gained 50%
- 48K IFF sample ---> gained 38%
-
- NOTE: Only registered users can use GPRO!!!
-
-
- Installer
- ---------
-
- The HD_install script can now install to hd from an arbitrary directory
- containing all the files (like RAM:).
-
-
-
-
- BUG FIXES FROM 1.2:
- ===================
-
- * Text references to room flags > 6, e.g. #R#1#8#, were not accepted.
-
- * Text references to section objects, e.g. #O#SOBJ3#4#, were not resolved
- correctly.
-
- * GRAAL crashed on start-up if there was not at least one global OBJECT:
- statement.
-
- * Improved error handling when looking for section files.
-
- * Room 0 flags were not saved in saved games.
-
- * OMOVE with blank x and y parameters sometimes messed the object's
- position up later in the game.
-
- * Lots of other stuff!
-
-
- BUG FIXES FROM 2.0 BETA 1:
- ==========================
-
-
- Note: A lot of these bugs were fixed in the beta 2 release included with
- The GRAAL Herald 1.
-
-
- Driver
- ------
-
- * Crash when REMOVEing last inventory object.
-
- * Monitor can't handle room 0 flags.
-
- * Mouse hit on object belonging to previous room, if the same BOB number
- is used for a STATIC: or ANIM: object, and there were no objects in the
- next room...
-
- * Loading and resume does not remember CHAR ON / CHAR OFF properly.
-
- * Indicator for sentence speed (when altered with the I or D keyboard key)
- does not compute and display correctly if NORMAL_WAIT: in graal.main is
- anything but the default value.
-
- * LOAD and RESUME works better still, because GRAAL can keep track of
- more changes (hotspots, BOBs coming and going) without the need for
- ACTION: -2 statements.
-
-
-
- Editor
- ------
-
- * Editing OMOVE with an anim cut the anim at the , after A 0, ...
- (All commands with an animation string as last parameter had this problem.)
-
- * Re-sized the inital area frame when editing new ...BOBS: statements.
- (Previously, it was initially very small and off the screen.)
-
- * BOBON without all parameters set, and on its own line in a cutscene,
- doesn't get all parameters when exiting the parameter window.
-
- * If you don't reload graphics data when editing a FLOOR or EXIT area, the
- room objects don't show up on the backdrop.
-
- * Invalid CLPART or BG_IFF: file name crashed the editor.
-
- * ink and area editing in TIME_LAYOUT: with ANALOGUE doesn't work too
- well...
-
- * Trying to position a large image (PBOB, BOBON) often crashed the editor.
-
- * A statement with optional last parameter(s) gave a syntax check error
- if the last (optional) parameter was missing (e.g. PATH: with only start
- and end coordinates).
-
- * Colours 32-63 were not in the "palette" when editing colour numbers for
- EHB pictures.
-
- * Lines 4 and 5 in script templates created with the "New" command behaved
- oddly until you had messed around with the file contents for a while.
- All sorted out now!
-
- * The .scene script loader now handles long file names (didn't in beta 2).
-
- * Editing the position of an object now uses the room backdrop for the room
- specified as the object's starting position.
-
- * Sometimes the last floor wasn't shown when editing a path.
-
- * Character position goes relative old object position - should read start
- values from the string gadgets instead!!
-
- * "Array subscript out of range" in the list selection window when number
- of selectable items was less than number of displayed rows and you clicked
- outside the name of an item...
-
- * The editor now warns you if you try to build a line longer than 256
- characters using the parameter editor window.
-
-
- Gpro
- ----
-
- * The FONTS: drawer was not properly replaced when running GPRO several
- times with the same destination directory.
-
-
-
- BUGS LEFT IN
- ============
-
- * It seems to me some global objects are not where I last SHOWed or
- OMOVEd them when I later return to the room where they are. Easy to get
- around by setting them up again upon re-entry to the room. This is also
- good coding practice, because the placement is then visible in the
- .room script DACT: statements at a glance.
-
- Note: The problem does not exist for room objects, because changes to
- them must always be re-done with DACT: statements anyway.
-
- Not fixed because I haven't been able to pin it down yet (shame on me).
-
- * The monitor doesn't use proper GET and REMOVE routines for the PICK and
- DROP buttons. The Dialogue section of the monitor is also a mess.
- I'll leave this for now because I will completely redo the monitor in
- the next release anyway...
-
-
-
-
-
- FUTURE ENHANCEMENTS:
- ====================
-
- * New monitor and error tracing facilities.
-
- * Enhanced sound support.
-
- * Editor functions to cross-reference game files, catch more errors and
- set a number of graal.main parameters automatically to make sure
- only the minimum workspace is allocated.
-
- * ...some other really nice bits & pieces, if I manage to pull them off!
-
-
-
- *************************************************************************
- * *
- * *
- * T-T-THAT'S ALL, FOLKS! *
- * *
- * *
- *************************************************************************
-
-
- ============================= Archive contents =============================
-
- Original Packed Ratio Date Time Name
- -------- ------- ----- --------- -------- -------------
- 419 212 49.4% 11-Feb-97 21:59:20 0.scene
- 124760 66825 46.4% 11-Feb-97 21:59:36 0.track
- 5377 2247 58.2% 11-Feb-97 21:58:48 1.section
- 1371 626 54.3% 11-Feb-97 21:58:44 18.room
- 22782 16265 28.6% 11-Feb-97 21:58:52 18BG.IFF
- 7410 3461 53.2% 11-Feb-97 21:58:54 18FG.IFF
- 1380 617 55.2% 11-Feb-97 21:58:46 19.room
- 15592 7180 53.9% 11-Feb-97 21:58:58 19BG.IFF
- 12508 3473 72.2% 11-Feb-97 21:59:00 19FG.IFF
- 3043 834 72.5% 11-Feb-97 21:59:22 29.scene
- 4499 1414 68.5% 07-Aug-96 04:41:08 Disk.info
- 3304 1344 59.3% 11-Feb-97 21:58:16 Diskinfo.graal
- 264 29 89.0% 11-Feb-97 21:57:28 +dpaint.font
- 3316 1919 42.1% 11-Feb-97 21:57:28 +8
- 264 29 89.0% 11-Feb-97 21:57:30 +emerald.font
- 6988 3647 47.8% 11-Feb-97 21:57:30 +20
- 264 29 89.0% 11-Feb-97 21:57:18 +garnet.font
- 3732 2426 34.9% 11-Feb-97 21:57:18 +9
- 784 49 93.7% 11-Feb-97 21:57:20 +hires-5a.font
- 1800 1079 40.0% 11-Feb-97 21:57:18 +6
- 1904 1164 38.8% 11-Feb-97 21:57:18 +7
- 2040 1222 40.0% 11-Feb-97 21:57:18 +8
- 524 41 92.1% 11-Feb-97 21:57:26 +olaf.font
- 4780 1691 64.6% 11-Feb-97 21:57:26 +24
- 5096 1897 62.7% 11-Feb-97 21:57:24 +27
- 264 29 89.0% 11-Feb-97 21:57:22 +times.font
- 3892 2110 45.7% 11-Feb-97 21:57:22 +14
- 22939 8004 65.1% 11-Feb-97 21:58:22 graal.main
- 344984 166958 51.6% 11-Feb-97 21:58:08 GRAAL_2
- 2817 1359 51.7% 07-Aug-96 04:41:06 GRAAL_2.info
- 11836 2265 80.8% 14-Feb-97 00:10:00 HD_Install
- 1939 1279 34.0% 07-Aug-96 04:41:04 HD_Install.info
- 2890 206 92.8% 11-Feb-97 21:59:08 NTITLE0.IFF
- 5020 1456 70.9% 11-Feb-97 21:59:10 NTITLE1.IFF
- 4328 867 79.9% 11-Feb-97 21:59:12 NTITLE2.IFF
- 6094 1787 70.6% 11-Feb-97 21:59:14 NTITLE3.IFF
- 3314 350 89.4% 11-Feb-97 21:59:16 NTITLE4.IFF
- 6276 1623 74.1% 11-Feb-97 21:59:18 NTITLE5.IFF
- 1386 265 80.8% 11-Feb-97 21:58:42 olaf_cursors.iff
- 15040 2095 86.0% 11-Feb-97 21:58:36 olaf_extras.iff
- 21782 5133 76.4% 11-Feb-97 21:58:32 olaf_original.iff
- 20882 5608 73.1% 11-Feb-97 21:58:40 olaf_symbols.iff
- 9672 2565 73.4% 11-Feb-97 21:58:24 olafcomm.iff
- 11692 4964 57.5% 11-Feb-97 21:59:40 Olafdemo.guide
- 8412 1380 83.5% 07-Aug-96 04:41:02 Olafdemo.guide.info
- 3364 560 83.3% 11-Feb-97 21:58:26 olafdlg.iff
- 17782 13116 26.2% 11-Feb-97 21:59:04 PS_Logo_ham6.iff
- 13340 6693 49.8% 11-Feb-97 21:58:30 wood.rsb
- -------- ------- ----- --------- --------
- 774146 350392 54.7% 20-Feb-97 11:19:56 48 files
-