[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