Repository navigation
Rotations Rewrite with MoveFix implemented - #6784
Open
Gingerbeard5773 wants to merge 7 commits into
Open
Gingerbeard5773 wants to merge 7 commits into
Gingerbeard5773 wants to merge 7 commits into
Conversation
* Rewrites the entire rotations manager for the purpose of implementing movefix. * Movefix can be enabled or disabled in meteor's config. * Adds a new TickEvent to help with synchronizing module calculations to rotations.
Kill Aura now handles rotations correctly. Previously, it was not accounting for the desync between module calculation and rotation.
Reverting this as it is precarious code and methods. It works but I just don't like it or trust it fully. May redo in the future.
Fix MoveFix
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.
Type of change
Description
This is a rewrite of meteor's rotation manager. But the rewrite is secondary, as the main purpose of the PR is to implement Grіm MoveFix, which meteor has been missing for years.
'MoveFix' is referring to necessary player input corrections in order for Rotations to work fully on Grіm servers. Without it, modules that depend on rotation will be severely limited or cease to function.
This PR fixes this major problem.
Changes
Rotation Movement Correctionwhich is used to toggle movefix on/off.Yapping about technical stuff (edit: no longer relevant)
A new
TickEvent.Rotateis added in this PR. This is kind of a strange feature for developers, but it was somewhat necessary in order for there to be a seamless way for modules to synchronize to rotations easier. Movefix messes with ordering heavily, which is why thisTickEventhas been added in order to navigate those timings better and easier. If there is a better solution, I would like to see it.Why it matters:
Meteor has been suffering from a bug that affects every module that uses rotations.
What happens when a module puts out a rotation?
The calculation by the module and the rotation are desynchronized. Because of this, the information in the rotation can get outdated by the time the Rotation does its function callback.
Heres a real example of how this happens chronologically using meteor's existing kill aura :
The good news is that this can be fixed. A module's calculations just have to come after the player moves in the tick. The bad news is that it cannot be fixed if the player has to use movefix. So a compromise has been made.
By using
TickEvent.Rotateinstead ofTickEvent.Pre, modules can automatically set the right timings to their module- depending on if the player is using movefix or not.If none of that made sense, just copy and paste it into an LLM and let it explain better than I can for you 💀
EDIT: THIS IS NO LONGER RELEVANT IN THIS PR AS OF NOV 8, 2026.
I have elected to remove TickEvent.Rotate from this PR in order to keep things simple. If it should be readded, it will be done so in a future pr.
Related issues
closes #4858
closes #3565
How Has This Been Tested?
Heres a basic showcase of the changes from this PR.
In the video, I show what it looks like when a player attempts to use rotations on a server running Grіm AC. There is rubberbanding. Enabling movefix removes the rubberbanding and stops the flags.
2026-11-06.23-00-23.mp4
Video filmed on Constantiam.net.
Checklist: