********************************
MULTIMOD COMPATIBLE MOD CREATION
********************************


INTRODUCTION
************
Previously the only easy way for a scripted mod to be
activated in the single player game was to have its
initialisation function in the scripts.ini file, but this
meant that only one scripted mod could easily be used at
a time.

The Multimod mod allows multiple Edge Of Chaos scripted
mods to run simultaneously.


HOW IT WORKS
************
Multimod uses a special Pog script and a customised
scripts.ini file to initialise multiple scripted user
mods.

Each mod compatible with Multimod must have a mod ini
file, as described in the Pog scripting SDK. Multimod
looks for special entries in the mod ini file to work out
which script functions to call and when.


MULTIMOD INI FILE ENTRIES
*************************
Each Multimod compatible mod must have at least one of
the following entries defined in a [Multimod] section of
the mod ini file:

     start_new_game
     start_session
     end_session
     enter_base
     exit_base
     enter_space
     final_setup
     exit_space
     enter_system
     exit_system
     
     
Each of the entries is corresponds to an entry type in
the script.ini file. It should be obvious which entry
corresponds to which.

Each entry can contain a function name that you wish to
call when the event that entry represents happens. Any
functions specified must include the package name,
return no values, and use no arguments. E.g.:

     enter_space =  iMyMod.Initialise
     
     
Note that the script functions are run 'atomically',
so you will need to spawn tasks from your functions if
you want to use multitasking. For information on Atomic
scripts and multitasking, please see the Pog Scripting
SDK.
     

EXAMPLE MULTIMOD COMPATIBLE INI FILE
************************************
Here is an example INI file for a Multimod compatible
mod:


     [Info]
     display_name = "My Mod"
     
     [Multimod]
     start_new_game =
     start_session =
     end_session =
     enter_base =  iMyMod.BaseStuff
     exit_base =
     enter_space =  iMyMod.Initialise
     final_setup =
     exit_space =
     enter_system =
     exit_system =
     
     
Note that you can specify only the entries with
valid functions if you wish, E.g.:

     [Multimod]
     enter_base =  iMyMod.BaseStuff
     enter_space =  iMyMod.Initialise


IMPORTANT
*********
Do not modify the scripts.ini file and/or include a
custom version of the scripts.ini file in your mod
or Multimod will not work.


MULTIMOD NOTIFICATION
*********************

So that users realise your mod needs Multimod to work
your mod should state at the top of its html readme
file, under the mod title, something like:

REQUIRES MULTIMOD.

In addition it's recommended the mod has _multimod appended to its filename, e.g.:

location_finder_multimod.zip


EOF