[crossfire] transports committed.

Mark Wedel mwedel at sonic.net
Tue Feb 7 02:15:55 CST 2006


  I've just committed the code to handle transports.  Detailed information can 
be found in the doc/Developers/object under Transports, so I won't reproduce 
that here, but some quick notes:

1) I added a new movement type - MOVE_BOAT.  This isn't directly related to 
transports, but using boats as a test transport type seemed most interesting to 
me and would test most of the features.  The only terrain right now that allows 
boat movement is normal sea and deep sea.  Shallow sea does not allow it.

2) Tranports should be fully functional as described in the objects file. 
However, several things were mentioned in the discussion which may not be there yet.

3) I added a couple boats to Scorn that acts as transports for testing.  Since 
boats can't move to shallow water, and there is a patch of shallow water between 
scorn and the main oceans, this effectively limits the range of these boats. 
This is fine for testing.  If that patch of water is changed, these transports 
should be removed, since being able to sail to most anyplace open up some areas 
too easily.

4) There is no form of ownership on transports.  If you park your boat, someone 
else could go and take it and sail away.  Much like real life.

5) Currently, no control on who boards your transport, and no way right now to 
evict them.

6) It is possible, especially with boats, for players to be stranded in the 
middle of the ocean - on the bright side, there is no drowning.  The most sure 
fire way this can happen is that if you are on board a ship and you exit the 
ship and the ship sails away, leaving you behind.

  Going forward:
More transport objects are needed.  This should be easy to do, and some could 
re-use existing movement (a pegasus to fly on?).  Graphics are also needed - the 
code does support the idea of different graphics based on if the transport have 
people on it or not (horse being a very obvious case).

  Some thought needs to be given on movement types for objects - we don't really 
want to end up with 20 movement types.  Off the top of my head, quick suggestions:

MOVE_WHEEL - for wheeled objects (carts, wagons, cars, whatever).  These should 
be blocked from a fair number of objects (staircases, mountains, jungles, 
perhaps even hills and forest).

MOVE_HOOF (MOVE_4LEG?)  horses, mules, etc  lesser limit of the above, but 
probably not allowed on staircases.

MOVE_SWIM - already there.  Probably shoudl be allowed in shallow sea, but IMO 
some special code is needed for this - chance of drowning, etc.

  Not that interesting enough, right now with the way transport code is, it is 
not possible to apply objects on the map while on a transport.  Thus, transports 
are effectively prohibited from shops.  The said, exits or other move_on objects 
should work OK.  This actually works out pretty well when one thinks about it.





More information about the crossfire mailing list