Creatures 3 Injector V1.3
=========================

This program allows you to execute CAOS commands within a running
Creatures 3 program. Commands are entered in the top edit
window, press Inject with the mouse and the results will appear in the
bottom edit window. The results may be copied via the clipboard to
other applications.

Note that some CAOS commands may take some time to return the results
due to the large amounts of data. This is due to the way I copy the
data from the Creatures 3 buffer, not a problem with C3
itself. In particular the 'DBGL: HTML 1' command can take 3-4 minutes.

The syntax for executing CAOS commands is:

  'execute
   <command>'

Note that you must have a line break between 'execute' and the CAOS 
command. As an example:

  execute
  outv 99

Will output '99'. 

To install scripts instead of executing commands the following is
the syntax:

  scrp 2 2 2 6
  outs "Hi"

This example will install a script for the class (family, genus, etc)
'2 2 2 6'. It will return 'OK'. You can confirm that it was installed
by retrieving the text of the script with:

  execute
  outs sorc 2 2 2 6

Note that there must be a new line (line break) after the 'scrp 2 2 2 6'
command as well. Obviously you need to replace '2 2 2 6' with your own
class information.

So with this utility you can now run CAOS commands and inject scripts, 
making COBS possible.

Some sample commands you can try to test the installation:

execute
OUTV 99
  Outputs the value '99'.

execute
OUTS "Hello World!"
  Outputs the string 'Hello World!'.

execute
OUTS SORC 2 2 2 6
  Outputs the text of the script for class '2 2 2 6'.

execute
DBG: HTML 0
  Returns an HTML page containing the CAOS documentation. You can copy
  this and paste it into a file with the extension .html and load it
  in your web browser.

scrp 2 2 2 12
dbg: outs "Adding a script..."
  Adds a script for the eat event of 2/2/2. When run it will display the
  message 'Adding a script...' to the debug output stream.

Runtime Library
===============

You must have the Functional Developer 2.0 runtime library installed for
this program to run. You can get this from:

http://www.double.co.nz/creatures/programs/fdrund3.exe

Running the setup program for the runtime library will install some
.DLL files onto your computer and add an entry into your path. You may
need to reboot for this path entry to be updated. Once this has been
done you can run this program or any other program written using the
Functional Developer development tools. More details on Functional
Developer can be found at:

http://www.double.co.nz/dylan

Usage
=====

1. Install the Functional Developer runtime library if required.

2. Extract all the files into a directory of your choice.

3. Make sure Creatures 3 is running.

4. Run c3-injector.exe.

Legal Stuff 
=========== 

This program is Copyright (c) 1999, Chris Double. All Rights Reserved.

This application and the associated dynamic link libraries may not be
redistributed without my (me being Chris Double) permission.

Troubleshooting
===============

Q. I enter a CAOS command, press inject and nothing happens.
A. Make sure the first line is 'execute' or 'scrp x x x x' where
   the 'x' is replaced by the correct class information.

History
=======
V1.3 = Re-compiled under Functional Developer 2.0.
V1.2 = Added checking of Creatures 3 mutex to ensure that the injector
       works nicely with other programs that communicate with C3.
V1.1 = Added ability to install scripts into the scriptorium, which
       required changing the syntax from 1.0, making the 'execute' 
       string necessary.
V1.0 = Initial Release.

Notes
=====
This program is most useful when running Creatures 3 in windowed mode.
To switch between windowed and full screen mode, press Shift+Alt+Enter
when C3 is running.

And Finally...
==============
Any questions, comments or suggestions can be addressed to the Author:

Chris Double
http://www.double.co.nz/creatures
chris@double.co.nz
--
21 May 2000
Chris Double