From: linet2@mentor.cc.purdue.edu (Lord Eugster)
Newsgroups: comp.sys.ibm.pc.games
Subject: Re: Adventure Construction Set
Date: 24 Jul 92 15:28:42 GMT
Organization: Purdue University Computing Center

There have been several articles talking about Adventure Construction Set (ACS)
and its complexity.  While I can see that ACS can be complex to use, my two
biggest gripes about the Commodore 64 version of the program were:  Too slow,
too simple.  The "Too slow" factor can be attributed to the limited abilities
of the C-64 (especially its 1541 disk drive).  But I wish ACS could be more
complex.

I haven't seen an IBM version of ACS, but here's a list of what I would want
in the version:

1> Dedicated MCGA/VGA 320x200 - 256 color (only).  Only supporting one video
   mode will allow the program to increase its speed dramatically.  Many
   people have VGA, but not super VGA.  Also, you don't have to worry about
   what video mode an adventure was created in and try to convert the game to
   a lesser video mode when someone else plays your adventure.
2> Roland MT-32 + SoundBlaster support.  Has a built-in (but limited) MIDI
   sequencer to allow construction/modification of sounds.  Sequencer allows
   you to add notes, but also has option to allow you to send any MIDI bytes
   during playback, and can import standard MIDI files.  ACS can play any
   standard SoundBlaster digitized/recorded file formats.
3> Dedicated script language for program effects (much like LPC for those of
   you who play LP-MUD).  Script language includes commands such as
   DrawTile(x,y,Tile), etc.  Built-in "master object" has all the standard
   ACS functions, but master object is editable, so you can change the combat
   system, spell system, character system (for things such as character 
   classes), etc.  Other useful script commands allow you to play music,
   in the background, manipulate a character's statistics, use the timer for
   animation, etc.  The user can make a customized toolkit for such things
   as popping a window to display information, parsing the player's input
   during conversations, scroll the screen, etc.  To increase speed, graphics
   belong to one of these classes to be manipulated:  block(8x8), tile (16x16),
   sprite (any constant size), or screen (320x200).  By using blocks or tiles
   rather than "sprite" graphics, you can increase execution speed.  This isn't
   a generic game construction set, but it specialized in creating "ultima-
   style" adventures.  If you wanted 3-D perspective (such as in Underworld),
   you can conceivably code it in this system, but it would probably be very
   slow.
4> Run-time module + "Optimizing Compiler" to allow you to distribute .EXE
   files of your adventures.  "Optimizing" means don't include code you don't
   need (such as:  Don't include MIDI code if you don't have MIDI sounds).
   The .EXE file will go on an "Adventure Disk" (much like the old ACS) which
   also contains all your maps, etc.
5> Built-in tile/sprite/graphics editor.  The graphics editor should be able
   to import, scale, and crop images in TIFF, PCX, GIF, and other popular
   formats.  A feature of the sprite editor is # of frames per object, so
   you can create animated pictures (the old ACS defaulted to 1 frame/object)
6> Support for XMS memory, DOS 5.0 + EMM386 + HIMEM.SYS compability.
7> Definitely need to be able to quickly modify and test an adventure.
   Unlike the old ACS, you should be able to hit something like F10 and 
   test the game.  Everytime you hit F10, your test character begins where
   you left off the previous time you tested the adventure.

This small list is a very tall order (by no means an easy project).  Most of
the advanced things are coded in by the script langauge (having to learn a
"language" may turn off many people, but given the many benefits of a good
script language, I think it is well worth it).  You can, for example,
design an adventure where the combats are "arcade-action" rather than role-
playing (like Ultima) style.  I am sure such a system as this is feasible.

Just my thoughts of what a really great ACS should have.  Maybe it should be
called "Advanced ACS"?

Eugster