@database "Abuse.guide"
@author "Hans-Jörg Frieden"
@remark "$VER: Abuse Guide 1.0 (18. Juni 1998)"
@remark "$Id: Abuse.guide,v 1.2 1998/06/22 21:16:24 nobody Exp $"
@wordwrap
@node MAIN "Welcome to Abuse"
@{FG shine}Prepare to be abused...@{FG text}

From the folks that brought you @{FG shine}ADescent@{FG text} comes another PC Game port:


-------------> A b u s e <-------------------------------------------------------

	  @{"Introduction          " link INTRO   }       What is this thing, anyway?
	  @{"Disclaimer            " link LEGAL   }       The usual legal stuff
	  @{"Requirements          " link REQUIRE }       What you need to start
	  @{"Obtaining the files   " link OBTAIN  }       How to obtain the data files
	  @{"Installation          " link INSTALL }       How to install the files
	  @{"Starting Abuse        " link START   }       How you get the thing going
	  @{"Playing Abuse         " link PLAY    }       How to play the game
	  @{"Net Abuse             " link NETABUSE}       How to play Abuse over the InterNet
	  @{"The Abuse Editor      " link EDITOR  }       How the editor works
	  @{"The Abuse Amiga FAQ   " link FAQ     }       FAQs about the Amiga version

@endnode
@node FAQ "The Abuse FAQ"
(Note: As this is the first release, there is not much to say in this section. More may come in the future.)

@{b}About these weird effects in the ECS version...@{ub}
Yes, I can see it too, there was nothing unusual in your last cigarette. The ECS version has a problem with the C2P stuff. It may be fixed later...

@{b}How do I report a bug in Abuse ?@{ub}
Have a look at the @{"Disclaimer" link LEGAL} section for our email addresses.

@{b}Where do I get the files needed to play ? @{ub}
Instructions on how to get the required files are available @{"here" link OBTAIN}. If you`ve got them, look @{"here" link INSTALL} for installation instructions.

@{b}Is there any place where I can download the registered files ? Any Warez/Pirate sites ? @{ub}
(Yes, this IS frequently asked). We will not send pirated files, so don`t even bother to ask. And, we do not know where to get a pirated copy. Period.

@{b}Why is there both RtgMaster and CyberGfx/AGA in it ?@{ub}
The EGCS compiler used to compile Abuse has some problems with RtgMaster. This will be fixed later. We suggest you use RtgMaster, as it supports double buffering and custom C2P code. Additionally, it supports playing in a Workbench window, which isn`t possible on CyberGfx due to a bug in the library.

@endnode
@node PLAY "Playing Abuse"

This page lists the Amiga specific changes. For more general information, refer to the README, included in the @{b}abuse200.zip@{ub} archive.

The Keyboard layout has been changed to match the Amiga keyboard. Running and jumping is done with the cursor keys, while cursor down activates lifts and teleporters.

The Del and Help keys switch weapons. Note that this is different from the PC version, which used CTRL and INS. The number keys on the top row may also be used to select the weapon. Additionally, F6 toggles lightning effects. Note, though, that lighting is also automatically disabled whenever the frame rate drops too low.

Speaking of the frame rate, it is automatically limited to 15 fps to keep speed constant. To turn off this limiter, press F7. Finally, to get a guess at the frame rate, press F8 to show it in the top left corner. The number on the top is the frame rate ×10, while the next three numbers are some debug info.

@endnode
@node INTRO "Introduction"

Welcome to Abuse Amiga...

  If you still remember Obliterator from Psygnosis, you're very close to what Abuse looks like. But under the hood, there's @{b}much@{ub} more...

  Basically, Abuse is a Jump-and-run game for the high-level machine. This means that the requirements to run Abuse are a bit higher than usual for a game of that type, but that's mostly due to the amount of special effects the game features.

  Plus, Abuse is almost ridiculously extendible. Since almost the entire game workings are programmed in Common Lisp (with a few additional functions), it is very easy to add new objects, new aliens, and basically everything you can think of. With the Abuse engine, it is quite possible to "re-build" such games as @{i}Another World@{ui} or @{i}Flashback@{ui} as well as things like @{i}Turrican@{ui}. All you need is a bit of graphics and programming skills.

A word about the graphics systems.

  Abuse uses as it`s primary graphics system the rtgmaster system, written by Steffen Haueser. As a secondary option, it also supports CyberGraphX and AGA native. These options are only to compensate for difficulties with the egcs-compiler used for Abuse. RtgMaster gives you double buffering, customizable C2P and Workbench window support. However, if you run into trouble with it, try -aga/-cgx. These problems will be fixed later.

Features include:
  - @{b}Dynamic light effects@{ub}. Every level is lightsourced in real-time, allowing such nice
	effects like explosions and gunfire.
  - @{b}Network play@{ub}. Up to 8 players via TCP/IP in Deathmatch Mode.
  - @{b}Level Editor@{ub}. Build your own levels, fill them with monsters, then blast them to
	pieces.

And, new for the Amiga version:
  - @{b}Network code actually works@{ub}. The original version had a bug that, when using media
	with small MTU, trashed files that where transfered.
  - @{b}Stereo sound@{ub}. The original had only mono.

@endnode
@node README "Original README file"
@{FG shine}NOTE: This is the original README file as distributed with the source code.@{FG text}

Crack dot Com is hereby releasing the source code to Abuse to the
public domain.

Ownership:

  The following are statements of Crack dot Com's ownership.  These
  items are NOT being submitted to the public domain.

	Crack dot Com retains ownership of the Abuse trademark.
	Crack dot Com retains ownership of the Crack dot Com trademark.
	Crack dot Com retains ownership of the Abuse "retail" data set.
	Crack dot Com retains ownership of the Abuse "registered" data set.

  The "retail" and "registered" data sets are defined as the levels,
  sound effects, music, artwork and other data which are NOT common to the
  "shareware" release of the game.

Licenses and Third Party Owners:

  Crack licensed the DOS Abuse rights to Electronic Arts and the Mac Abuse
  rights to Bungie.  Crack is therefore NOT releasing the full data set to
  the public domain to protect EA's and Bungie's investments in the product.

  Sound effects found in the shareware release of Abuse are the copyright of
  Bobby Prince and are not being submitted to the public domain.

Disclaimer of Waranty:

  As with most public domain software, no warranty is made or implied
  by Crack dot Com or Jonathan Clark.

Examples of What you CAN Do:

  Make another game and sell it commercially using the Abuse source code.
  Use pieces of the source code or shareware data (excluding the WAV's-
	you must speak to Bobby Prince) however you see fit.
  Learn how to make a better game.
  Port Abuse to any system you like.

A note from Jonathan Clark:

  I'm busy coding Golgotha so I don't have time to answer many questions.
  If you e-mail me, I'll read it (unless it's really long), but I may
  not answer.  If you are making a game with the code, I would like to
  hear about that sort of thing.

A note from Dave Taylor:

  I didn't write a line of the Abuse source code, but I'm proud to have
  footed the bill.  If any adventurous coders are interested, I would
  love to someday see a version which runs a lot faster, draws interpolated
  frames between the 15 Hz (i believe) updates, and runs under Win32.  I
  believe in the released versions, we didn't include a line of assembly,
  and we've identified several areas that can be optimized.

  Also enclosed is the Mac Abuse source tree.  We decided to split
  the Mac version from the main source tree.  The Mac version features
  several updates to the Abuse engine and is designed primarily for a
  640x480 resolution.  We do not know if the Mac Abuse source tree
  compiles these days, so it's certainly wiser for the novice to stick
  with the main abuse and imlib directories instead of the macabuse/abuse
  and macabuse/imlib directories.

  Many thanks to Jason Merrill at Cygnus who fitted the Abuse source to
  use configure and fixed several bugs.  The following are exerpts from
  his e-mail to us detailing some of those changes:

	"You'll need to remove abuse/lnx_sdrv and abuse/keydrv before building so
	 make doesn't rebuild them in the source directory.

	 Some crashes fixed.  Curiously, building the 'opt' target instead of
	 'debug' produces a program that doesn't crash in mid-game, though it does
	 occasionally say "jfree: bad pointer".  I haven't checked whether this is
	 because of optimization or -DNO_CHECK.

	 ABUSE_PATH should work now, but it's useless without ABUSE_SAVE_PATH,
	 which would be harder to fix.  The 'abuse' script just makes symlinks
	 to the installed data files.

	 keydrv now works and cleans up after itself.

	 Changed SVGA mouse init to be run before vga_init so it only needs to be
	 suid root, not run as root.  Use vga_getmousetype() instead of checking
	 MOUSE_TYPE.

	 The patch uses automake, but stock FSF automake won't work.  I had to
	 tweak it to accommodate your source layout.  Avoid rebuilding
	 Makefile.in.

	 This should work for non-linux UNIX targets as well, but I haven't tested
	 it yet.

	 Fixes another couple of crashes and fixes support for sparc-sun-solaris2,
	 mips-sgi-irix5, powerpc-ibm-aix4.1, and probably others I haven't tried.
	 I haven't tested the AIX sound driver."


Have fun,

  Jonathan Clark                 Dave Taylor
  Lead Programmer/Founder        President/Founder
  Crack dot Com                  Crack dot Com
@endnode
@node LEGAL "The Legal Stuff"
Abuse was written by Jonathan Clark and is

(C) 1995 CRACK DOT COM

Please read the original @{"README" link README} file for details about the source code release.

Amiga Version by
	Thomas Frieden      <tfrieden@uni-trier.de>
			- and -
	Hans-Jörg Frieden   <hfrieden@uni-trier.de>

Abuse Amiga uses
 o C2P code by Peter McGavin
 o RTGMaster.library by Steffen Haeuser
 o AHI Sound System by Martin Blom
 o CyberGraphX/Picasso96 in selected Cinemas

This port is freeware. We cannot be held responsible for any damage that arises from the use or abuse of this port, including but not limited to, frying parts of your system, killing your cat, molesting your dog, etc. ad nauseam.

To contact us email to:

Hans-Jörg Frieden           Thomas Frieden
hfrieden@uni-trier.de       tfrieden@uni-trier.de

			Schloßstraße 176
			54293 Trier
			Germany

			0651/66410
			(not after midnight, please)

The latest version can always be found on our web site at @{FG shine}http://www.informatik.uni-trier.de/CIP/tfrieden/ @{FG text}


... And don't forget to salt the fries (waiting for the System Shock source code to be released... Come on, guys)...

Thank you, and good night.
@endnode
@node REQUIRE "Requirements"

For playing Abuse, you will need to have the following:
 o an Amiga computer with at least a 68020 CPU. A 040 is recommended.
 o about 4 Megs of memory (exact number unknown).
 o about 8 Megs of harddisk space (no floppies)
 o @{i}any@{ui} display hardware, including AGA, Graphic Cards, and (limited) ECS
 o AHI V4 or better.
 o ixemul.library 47.3 or better
 o ixnet.library 47.3 or better (for internet playing, included in the ixemul archive).
 o a GG/ixemul-compatible TCP stack (AmiTCP, AS-255. Miami should do, too)
 o for Graphics Cards, either RTGMaster installed, or a CyberGraphX compatible
   graphics system (CyberGraphX, Picasso96, ProBench).
 o a set of Version 2.0 compatible data files. These can be downloaded at
   various sites, see @{"Obtaining the files" link OBTAIN}. Contrary to Descent,
   the @{i}Shareware@{ui} files will do perfectly, although you will only have
   four levels to play instead of 18...

Recommended:
 o an 68060 for optimal lighting effects
 o lots of memory
 o lots of harddisk space for addon levels and graphics
 o a graphics board is not really required. The AGA version is as
   fast as the graphics card version.
 o sorry, no ViRGE version :-)

If you have ever successfully run ADescent, you should already have most of the stuff... :-)

ECS users note:
  The game also runs on ECS machines in EHB mode. Note however, that the EHB stuff is not really usable right now. Everytime the player gets hurt, there is weird color flickering on the screen. We haven`t been able to trace this bug yet, but we might remove it in the future if we get enough requests for it (if nobody uses the EHB mode, there`s no point in fixing it.)

@endnode
@node OBTAIN "Obtaining the files"
  For Abuse to run, you need ixemul.library, version 47.3 is recommended. It`s available from ftp.ninemoons.com, or, if you don`t want to get the large archive, there`s a library only version on our website. Also, grab the rtgmaster archive from AmiNet.

  Abuse Amiga works with both the Shareware and the registered files. The shareware version resides in a file @{b}@{u}abuse200.zip@{uu}@{ub} and can be retrieved from many FTP servers around the world. To download it directly, go to @{FG shine}http://www.crack.com/@{FG text} and follow the Abuse links to the download page. A link to the file is also on our homepage (see @{"here" link LEGAL}).

  Make absolutely sure you get the 2.0 files. There's also a file @{b}@{u}abuse200r.zip@{uu}@{ub}, which is only an upgrade patch for earlier versions. Best use the link on our page, or use FTP Search (@{FG shine}http://ftpsearch.ntnu.no/ftpsearch @{FG text}).

  See @{"Installation" link INSTALL} for a piece of advice on how to unpack and install the files.
@endnode
@node INSTALL "Installation"
First of all, if you haven`t already done so, install the rtgmaster user archive. Refer to the docs in the archive for instructions.

When installing, you will most likely have the Abuse Amiga archive already unpacked (or you would not be reading this). Unzip the @{b}@{u}abuse200.zip@{uu}@{ub} archive to a neutral place, for example RAM: if you have enough memory. Now look for the files @{b}@{u}DISK1.DAT@{uu}@{ub}, @{b}@{u}DISK2.DAT@{uu}@{ub} and @{b}@{u}DISK3.DAT@{uu}@{ub}. These are self-extracting PC LHA Archives, so you'll need the LHA program to unpack them.

  On the shell, type the following:

> lha x DISK1.DAT
...
> lha x DISK2.DAT
...
> lha x DISK3.DAT

ignoring any messages about "skipping corrupt data" (that's part of the PC exec stuff). Now delete the zip archive and the @{FG text}DISK?.DAT@{FG text} files and copy everything else to where you unpacked the Amiga Abuse archive.

In this directory, you should now have some files and subdirectories, most notably

ART (dir)       ADDON (dir)     MUSIC (dir)     SFX (dir)
LEVELS (dir)    LISP (dir)

plus a number of #?.LSP files. Everything that ends in .LSP is a lisp file, and basically represents the game flow. SFX contains the sound effects (WAV format), ART contains the graphics in a special format. LISP is the main directory where the biggest part of the .LSP files reside.

  The ADDON directory contains "plugins", that is, external add-ons. Most of the additional files you'll find on the net go here.

  Two absolute must-have addons are @{b}@{u}aliens.zip@{uu}@{ub} and @{b}@{u}claudio.zip@{uu}@{ub}. The first one adds (you guessed it) Aliens graphics and sound effects, while the second is a more general expansion of useful graphics, sounds and add-on objects for custom level editing. Links to both archives can be found on our web page.

@endnode
@node START "Starting Abuse"
  There are two ways to start Abuse. The normal way is to double click the Start icon from Workbench. The other way is to type "Abuse" from a shell. This section explains shell startup.

  If you run from shell, make sure you`ve got your stack at least at 50000, or you may run into trouble. Abuse accepts a number of command-line options. Here's an overview of the most common options:

@{b}@{u}Sound options:@{uu}@{ub}

-nosound
	Disables sound completely (default: Use sound)

-ahimode
	Specifies the (decimal) AHI audio mode to use. (default: Preferences Setup)

-ahifreq
	Specifies the mixing frequency used by AHI. (default: Preferences Setup)

-ahichan
	Specifes the number of channels to use. (default: 8)

-ahiboost
	Specifies a volume boost if the sound it too low. (default: 2)


@{b}@{u}Video options:@{uu}@{ub}

-nocc
	Do not change colors when running in a Workbench window. Default is on.
	This option is only available with rtgmaster, and only if running in
	a window. This prevents changing of screen colors, otherwise the
	Workbench will hardly be readable.

-cgx
	Use CyberGraphX instead of RTGMaster. (default: Use RTGMaster)
	(using RTGMaster is recommended, because of double buffering and
	workbench window support)

-aga
	Forces the use of an AGA native screenmode. (default: Use RTGMaster)

-ehb
	Forces the use of an EHB native screenmode. (default: Use RTGMaster)

-vdirect
	Only usable with native/CyberGraphX. Does direct WriteChunkyPixels calls instead
	of buffering in fastram. Requires Kickstart 3.1

-dbuf
	Only usable with RTGMaster. Uses double buffering for less flicker.
	(default: use single buffer)

-compat
	Only usable with RTGMaster. Forces the use of standard functions
	WriteRTGPixelArray instead of direct memory writes. Use this
	with CV64 when you encounter the "half screen" effect.
	(default: direct memory access)

-modereq
	Only usable with native/CyberGraphX display. Opens a screenmode
	requester instead of assuming 320x200. Any size is allowed, must
	be 8 bit deep. (default: RTGMaster uses internal request. -cgx
	uses best available mode).

-resolution <w> <h>
	Only usable with native/CyberGraphX display. Opens a screen <w>
	pixels wide and <h> pixels high without asking for a mode.
	(default: 320 x 200)

-320x240
-320x200
-320x256
-640x480
	Only usable with native/CyberGraphX display. Has the same effect
	as specifying -resolution <w> <h> with predefined resolutions.
	(default: -320x200)

@{b}@{u}Misc. options:@{uu}@{ub}

-lsf <file>
	Use alternative startup file instead of abuse.lsp
	(default: -lsf abuse.lsp)

-a <file>
	Shortcut for -lsf ADDON/<file>/<file>.lsp
	(default: none)

-edit
	Do not start the game; instead go directly into the editor.
	(default: start game)

-f <file>
	Instead of going into the first level on game startup, load <file>
	and start the game there. Useful for testing levels or playing
	add-on levels.

-lisp
	go directly into the CLIVE lisp interpreter without starting the game.

-net <hostname>
	try to connect to an active Abuse server and join a netgame. <hostname>
	is the name of the server machine. See also @{"Net Abuse" link NETABUSE}.
	(default: play locally)

-nonet
	Disable internet support.
	(default: internet support enabled)

@endnode
@node NETABUSE "Net Abuse - Playing Abuse over the 'net"
@{u}@{FG shine}Starting a net game:@{FG text}@{uu}
  Abuse has an integrated network capability that can be used to play a game over the internet. The Amiga version also has this feature. To use it, you'll need an active internet connection (or a local area network running TCP/IP) and a compatible TCP/IP stack, as well as the ixnet.library.
  Abuse is a client-server system. This means that there must be exactly one Abuse server per game, and up to 7 clients. The server must be started first, and must be running before the game can start.
  To start a server for the first time, start Abuse normally, then select "Network" from the main menu. Click on the "Start new Netgame" button and adjust the parameters to your liking. Once you're done, press the red check mark to start the server.
  A window will appear telling you that Abuse is waiting for <n> additional players to connect. Your clients should now start Abuse on their local machines with the command line "@{FG shine}abuse -net <yourhost>@{FG text}", where <yourhost> is the name of the machine where the server is running (i.e. your machine). After a while of rumbling and a few net transfers, the game will start. This might take some time, especially if many participate in the game, so have patience.
  When you want to re-start the server, you might take a shorter route by entering "@{FG shine}abuse -a DEATHMAT@{FG text}" from the command line. This will automatically launch deathmatch mode with the parameters of your last game.

@{u}@{FG shine}In play:@{FG text}@{uu}
  Eveything is the same in deathmatch mode, except of course that you encounter real-life players instead of monsters. Pressing the 'c' key during the game will bring up an IRC-style chat window where messages are displayed with the handle in front of every line. Use this to tease your opponents. ;-)
  The player list in the top left corner shows the kill statistics for each player. Once a player has reached the Max. Kill number specified in the "new net game" dialog, the game will continue in the next level.

@{u}@{FG shine}Addons:@{FG text}@{uu}
  For the DeathMatch, you'll need the DEATHMAT/ directory (with contents) in your ADDON directory, as well as the netlevel/ directory. The netlevel directory is not included in the abuse200.zip file, but in the source code distribution. Therefore, we included them in the Amiga Abuse archive.
  There are a number of additional (although not as violent) net games written in LISP floating around the internet, so you might want to keep your eyes open.

@endnode
@node EDITOR "How the Abuse Editor works"

This node is yet to be written.

For a short introduction, look at abuse.doc.
Read the part about making links. Links always have to go from activated-object-->activator.

A list of lisp commands can be found at @{FG shine}http://www.fortunecity.com/tattooine/carpenter/42/lispedit.txt@{FG text}

I will write a few words about the editor as soon as possible. It's really powerful, and as such is a bit hard to get to know it, but once you know what is about, you can do almost @{b}anything@{ub} with it. Really.

@endnode

