Randomitems Command (Treasure List Control)
------------------------------------------

The treasure list is defined in the file "treasures" which can
be found in /arch folder (for a server it is copied to /server/lib).
Read the file "treasurelists" in the /doc folder.

To use such a treasure, just add "randomitems <list>" the the settings of a object.
Random treasure will then be generated whenever such a monster is 
generated by a generator/spawn point, or when a map containing that
object is loaded for the first time. 

A randomitems command can have a list of treasurelists names.
The format is:

randomitems <list1>;<list2>;<list3>;...

The list "none" is a special maker list.
Command "randomitems none" will skip a possible default arch 
randomitems setting and generate no items for that object.

A <list> entry is the name of a treasure list inside the "treasures" file.

"randomitems weapon_misc" will generate a weapon (or nothing)
"randomitems weapon_misc;armour_misc" will generate a weapon and a armour piece (or nothing)

A <list> entry can have parameters, which controls the treasure list called.
A <paramter> has a single char as command marker and a value. 

The format is:
<ID><value> = "a100" or "s1"

Its called in this way:

<list_name>&<paramter1>,<parameter2>,...;<list_name>&<parameter1>,...

A <parameter> ends with a ',' (it follows another paramter), a ';' or a EOL.
There can be any number of lists attached to a "randomitems" command.

Example:

randomitems weapon_misc&s1,a100;armour_misc&s1

This will generate a weapon with s = t_style 1 and a artifact chance of 100. So, IF a weapon
is generated, it will be in 100% of all cases a fire related artifact weapon.
The armour will be also fire related, but the artifact chance is normal. But when a artifact
is generated, it will be always from style fire.

The commands are the same as descriped in the treasure lists docs if not described different.

NOTE: The "one char" identifier will allows fast parsing, as the whole structure of this system.
      This is a real-time issue - parsing of this list and creation of a linked list structure
      will happen everytime when a object/map is loaded and saved. So, performance is critical
      here because this is done in a bottleneck part (parsing objects, maps and loading/saving).

      To avoid errors when creating this lists, we should use a editor interface, so map makers 
      don't touch the cryptic strings itself.

The paramter commands are:

m<value>: set "magic"
M<value>: set "magic_chance"
x<value>: set "difficulty"
a<value>: set "artifact_chance"
s<value>: set "t_style"
r<value>: set "item_race"
i<value>: set (items) "material_real"
c<value>: set "material_quality"
C<value>: set "material_range"
q<value>: set "quality"
Q<value>: set "quality_range"

d<value>: Drop chance 1/d. This will do a random check of (random % d) before calling the list. 
          If it not 0, it skips the list. AFTER that, if the drop chance has not failed,
          the normal treasurelist chances of generating and dropping are called.
D<value>: Drop chance in %. Same as d<value> but this is a value between 0 and 100. 100 means
          drop always, 25 means only in 25% of all cases.
I: 		  sets the IDENTIFIED flag for the generated item(s)
B:		  sets a breakpoint. If the tlist with that parameter successfully generates an item, tlist
          generation stops and skips all possible lists after it.		 
