[ALL] Predict trigger_push movement - #2036
Open
speedvoltage wants to merge 3 commits into
Open
Conversation
Network static trigger_push volumes to each player only when their server-side trigger filters pass, then reproduce their post-movement push during local command prediction. Preserve enable state, alternate-tick speed, stacked base velocity, upward ground detachment, ladder flags, and once-only behavior without changing server movement ordering. Keep parented trigger_push entities server-authoritative because their moving transforms are not command-predicted.
Update the client's predicted network origin when mirroring the one-unit ground-detachment offset.
Use the same collision mask and trace result as the server's trigger touch test so boundary contacts are not dropped during local prediction.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue:
PR #862 fixed
FL_BASEVELOCITYbeing truncated from the player flags sent to clients. However, the client still does not simulate trigger_push touches. After moving-ground prediction consumes the flag and base velocity, only the server restores them for the next command. The client then predicts subsequent commands without the push, causing repeated movement corrections. This remaining regression was documented in #2029.Fix:
Network eligible static trigger_push entities to affected players and reproduce their pushes after predicted movement. Preserve trigger filters, enabled state, stacked base velocity, upward ground detachment, ladder behavior, alternate-tick scaling, and push-once state. Keep parented trigger_push entities server-authoritative because their movement is not command-predicted.
Before the fix:
2026-08-29.00-12-00.mp4
After the fix:
2026-08-29.00-13-28.mp4