-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Players/NPCs on the edge of the screen get stuck on reoserv/GameServer #157
Comments
I recently reworked animations pretty heavily. They're mostly fixed but still have some work left to do on them - other players walking around will sometimes jump coordinates suddenly or be in the wrong position (requiring an F12). I think I've noticed this behavior, when someone is walking off the screen I've noticed them suddenly disappear before they are fully out of view. |
I saw the jumping around happen too I think this is a separate issue though. The original client will drop players/npcs from memory when they're on the outer edge of the screen and the map renders. GameServer/reoserv depends on this because it doesn't send avatar/remove packets and the equivalent for npcs when they go out of view. The behavior right now with GameServer and reoserv is when a player or npc walks out of range and you walk towards them their ghost will still be there until you F12. I think the fix would be something like on map render just remove any players or npcs that are 12 or more tiles away from the player |
I need to think more about how to handle this. On one hand, I'd prefer to have the server tell the client what it can see instead of the client deciding that. From the perspective of emulating EO I'd rather conform to the existing spec so GameServer/reoserv are supported. Something about having the client decide the view range feels wrong to me (considering I want to eventually support variable display sizes). |
Moving to version 1 milestone, v0.10 is intended to work with eoserv |
I'm not exactly sure what triggers it in the official client but it seems like if something is on the very edge of the screen (12 tiles away) it will be dropped from view when the map re-renders.
I wasn't sure where the best place to implement this behavior was though. Up for suggestions if you have any.
Originally posted by @sorokya in #154 (comment)
The text was updated successfully, but these errors were encountered: