In various 2.0 discussions, the idea of smooth movement has been brought up.
Thinking about that, I wonder if it is better to aim for 3.0 for that. redoing it for smooth movement requires IMO a lot of code changes, and if we shoot for that in 2.0, I think 2.0 will be a long ways off. I think it also needs to be worked out a lot more. I have some thoughts on how to do it, but it needs to be worked out a lot more. For example, I was originally thinking that it could only pertain to players and perhaps monsters. But that doesn't work really wall - arrows should also move smoothly, and you should be able to roll boulders smoothly, or else it looks really weird. Underlying, I was thinking the idea of mapspace remains the same - at some level, you need some method to get to objects nearby. And splitting all the spaces into smaller spaces may not help - if you have to examine 200 spaces that the player is near for objects, that probably isn't an improvement. So my general though would be each object would have an offset within the space - presuming we want to match pixel offsets to position, it would be that each object would have an x and y offset for -15 to +15 - if the offset is more than that (say 16), it would move to the next space at a -15 offset. But what this does mean is that in many cases, you need to look at 4 spaces for objects/monsters (for example, if the player is at 15,15 offset, then objects on the neighboring space might be close enough to pick up). Likewise, movement for players get complicated. But the question also about how fine to reduce movement comes in. If we come into refining things to single pixel movement, we are talking about a 250 FPS redraw rate for the client, or about 4 ms to redraw the image. I don't think any of the clients on current hardware are capable at that rate (ignoring graphic performance, have to take into account the other things the client does). _______________________________________________ crossfire mailing list crossfire@metalforge.org http://mailman.metalforge.org/mailman/listinfo/crossfire