It might be observable in third person view with video recording and slow motion play back, consider items with speed modifiers on 🙂. Logging the packet contents/positions and onground state will be more promising, though that needs mods or access to the original code, rather 😛.
The onground information seems to actually state "this move touched ground", allowing to jump next move. With the player having moved off ground due the x-z-move still being processed after vertical (downwards) collision, this may appear like the player jumping from a (seen statically) in-air position on server side.
Now this needn't be such a great issue in theory, as the player somehow "covered ground" with the last intended move, but it does complicate things on server side, if you attempt to detect cheating, and we don't have any information about what the client actually has calculated (did the x/y/z part of the intended move collide with anything, thus got shortened?), disregarding specialties like stepping up something right now.
Can't judge if it is better to keep as is, extend the protocol by flags (such as x/y/z collided, stepped up, whatever the client did roughly), or if the actual ground position to send to the server should always be (re-) calculated using the resulting position.
The latter makes a lot of sense, as it makes checking stuff server-side much easier and i also assume that the moving shouldn't feel worse/much different. Has this ever been considered?
I assume that it is somewhat "harder" to calculate, because you would have to calculate the distance to ground for the resulting position or use some margin (the latter possibly resulting in other odds and ends), instead of the simple collision with the y-part of a move.
It might be observable in third person view with video recording and slow motion play back, consider items with speed modifiers on 🙂. Logging the packet contents/positions and onground state will be more promising, though that needs mods or access to the original code, rather 😛.
The onground information seems to actually state "this move touched ground", allowing to jump next move. With the player having moved off ground due the x-z-move still being processed after vertical (downwards) collision, this may appear like the player jumping from a (seen statically) in-air position on server side.
Now this needn't be such a great issue in theory, as the player somehow "covered ground" with the last intended move, but it does complicate things on server side, if you attempt to detect cheating, and we don't have any information about what the client actually has calculated (did the x/y/z part of the intended move collide with anything, thus got shortened?), disregarding specialties like stepping up something right now.
Can't judge if it is better to keep as is, extend the protocol by flags (such as x/y/z collided, stepped up, whatever the client did roughly), or if the actual ground position to send to the server should always be (re-) calculated using the resulting position.
The latter makes a lot of sense, as it makes checking stuff server-side much easier and i also assume that the moving shouldn't feel worse/much different. Has this ever been considered?
I assume that it is somewhat "harder" to calculate, because you would have to calculate the distance to ground for the resulting position or use some margin (the latter possibly resulting in other odds and ends), instead of the simple collision with the y-part of a move.