Thanks to visit codestin.com
Credit goes to github.com

Skip to content

[10.98] Creatures on screen appears to be dashing/teleporting to next tile when walking #21

@GustavoContreiras

Description

@GustavoContreiras

Videos

Description
There are 3 big issues on moving animations on client:

  • local player walking and idle animations
  • creatures being pushed diagonally
  • creatures on screen appears to be dashing/teleporting to next tile when walking

The first two can be fixed to work almost like real tibia 10.98, and the fixes are different things.
The third I don't know how to solve.

My guess is that creatures that aren't the local player are being drawn with wrong position or wrong speed and then when the creature reach the next tile position on server side the creature position on client side is refreshed (you can see that Troll's name and health bar teleports too, so its not a problem on skipping frames, its skipping positions) without the sprite reaching it.

I've seen that the information sent from server to client is just the oldPos and the newPos, on client the sprites are rendered using the oldPos + newPos + gettingStepDuration() + totalPixelsWalked (something like that) and I verified the getStepDuration() formula from client sources and server sources and they look almost the same thing... I'm kind of lost here

Edit:
I've counted frames and it looks like 5 frames are being used and then the creature teleports to the next tile and reset to the first frame.

To Reproduce
See monsters or players walking on screen

Expected behavior
A smooth and continuous movement without skipping positions.

Environment

  1. Latest OTClient
  2. Protocol 10.98
  3. Windows 10

Additional context

I fixed the local player walking and idle animation issue using ninjalulz's solution and fixed the pushing diagonal laggy issue (https://i.gyazo.com/412d93e4a799cdc93fd098c04001d7e2.mp4) setting the factor from getStepDuration() (in creature.cpp in client sources) to 1.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions