I've put a beta here due to many many requests.
But I've no time for a description yet.
Shortly: 
There are two lists, the main list and the sub list.
In the main list, you cann choose what object to use.
In the sublist, two or more coordinate sets are stored.
the first one is the position, the second one determines a vector.
If four sets are present, you have two objects.
The TW2 allowes you to have more than two sets in order to replicat the object along a path.

this thing is highly beta

and its a lot of trial and error work (espacially for the y-coordinat) to get
a map to work.

note: not more than 192 objects allowed (mm2 will crash if more)
not all objects allowed

if you find out something, mail it to me.

if you want to use the batch included, put pathsets into \race\sf,
cause wzzip does not handle subdirs properly if you use e.g. \games\mm2\race\sf

web adress: www.werwelpen.de
mailto: wolf@werwelpen.de

structures:

type tEntity = record                       //entity record
  f1 : longint;                             //flags, unknown, modify behavior
  x, y, z : single;                         //coordinates
end;

type tDesc = class(tComponent)              // descriptor record
     public
       cName : array[1..32] of char;        // null terminated
       anz  : dword;                        //number of entitiy records
       anz2 : dword;                        //number of entities-1
       ent  : array[0..255] of tEntity;     //entities, *not* a fixed list (but I am too lazy for a tList)
       eoof : dword;                        // last entry
     end;

type tHeader = class(tComponent)            //this is the header and the main file
     public
       cName : array[1..4] of char;         //Header id
       anz  : dword;                        //number of descriptor records
       anz2 : dword;
       Desc : tList;                        //descriptor records as above
     end;

