Anton Oussik wrote: > > > On 8/30/05, *Brendan Lally* < brenlally at gmail.com > <mailto: brenlally at gmail.com >> wrote: > > Additionally MOVE_HORSE, being much faster than walking, but less > > and MOVE_WAGON, which would be able to carry vast amounts of items, > > > And your face should change to a mounted figure or horse driven > carriage. Maybe also include MOVE_SHIP when you get a ship, which can > travel very fast, but can only dock in ports. Then you have to navigate > between ports, or perhaps have director-driven shipping routes, so you > get on he route and your ship sails itself using directors to your > destination. Note that you are heading down a different conversation or something that the proposed code will enable, but is not something that will be done in the proposal at hand. The basic design is to change how it is done, and that is what I'm looking for comments on right now - less so everything it will enable. > Speaking of image transformations, when something moves from a square A > to a square B it currently stays in A all the way until it jumps to B. > Could the new protocol provide a way for the transition to take n > seconds (or ticks or frames), so arrows would really fly, and monsters > would walk at you instead of jumping, the land would scroll by as player > walks on it, and spells would propogate more smoothly? I don't know if > this is even vaguely possible given that currently CF is completely > tile-based. It isn't really possible. The main reason is that the server only sends map updates to the client at about 1 every 8 seconds, and that is how often the client draws it. So even if the server did track this incremental movement and send it to the client, that alone won't be enough. Things that move fast will still hop a square (or maybe half a square depending how fast) at a time, etc. Also, any such calculations coudl only be done as a best guess where that object is going. Objects always move a full space when they move - what changes is how often they move. Changing that logic is very complicated and is likely to cause a much higher load on the server. But what that means is that the monster may be moving towards you, but maybe changes direction. So you'd get odd cases like the monster is half a space towards you, but then jumps a full space in some other direction or something. So the short answer is this really can't be done without a major rewrite. With some hints, the client could perhaps guess at this (for all objects taht are moving, client could be informed what direction they were last moving and how fast) and do its own calculations, but the result is sure to be flawed for reasons above.