Skip to content
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

Another potential issue #3

Open
skylight102 opened this issue Feb 9, 2024 · 1 comment
Open

Another potential issue #3

skylight102 opened this issue Feb 9, 2024 · 1 comment

Comments

@skylight102
Copy link

Another thing I've noticed in more recent versions (I think) is that when doing ubers, baals wave attack sometimes seems out of sync, and suddenly you'll die without even seeing what hit you, but this could be related to my mod, not sure.

@Jarcho
Copy link
Owner

Jarcho commented Feb 9, 2024

With the way motion smoothing works positions for everything can be up to one frame behind the actual game. Everything is then moved to it's actual position over the course of a game frame's time slice (40ms). This can result in collisions happening before they visually collide, but it will be close unless the units are moving at incredible speeds (fast enough that they would jump through each other rather than colliding).

For some speed/size references:

  • At 1-to-1 scale, a unit is 8 pixels vertically, or 16 pixels horizontally.
  • An act 1 overworld waypoint is 10x10 units in size (160x80 pixels).
  • Default character run speeds are about half a unit per frame, varies by class.
  • A charging paladin moves at about 1.4 units per frame, or 1.65 with vigor.
  • Arrows move at 2.25 units per frame.
  • Fast missiles will move at ~2.8 units per frame (e.g. lightning, battle orders/command)

This means a fast missile might be (at worst) ~45 pixels off it's actual position if moving horizontally. This is a little over 1/20 of the screen (at 800 width) or a little over the width of your character. This is enough to make it look like a missile didn't quite hit you, but not enough to leave you wondering what did.


This is all assuming no errors anywhere. This should at least be verified to not happen with motion smoothing disabled in d2fps.ini before it can be considered a bug.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants