[Bug] Bugfix for MC-199467 causes issues with anticheats
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 215
- Forks
- 50
- Avg merge
- 9d 6h
- Merged PRs (30d)
- 1
Description
Bug Description
while working on Grim anticheat, I discovered that this bugfix in Debugify causes a significant loss in prediction precision down to E-4 (while vanilla maintains E-15). this may be noticeable in gameplay, as Grim may detect players and teleport them back.
Modifications to the cos/sin lookup table affect almost every aspect of the game, such as movement, combat, block placement, and even world generation (iirc)
This issue only exists in versions 1.21.10 and lower, and the root cause is:
https://github.com/isXander/Debugify/blob/archive/1.21.10/src/main/java/dev/isxander/debugify/mixins/basic/mc199467/MthMixin.java
historically, we've already had a similar case with OptiFine's FastMath option, which caused many issues, as shown below:
https://youtu.be/bPEIorUz-TA
https://youtu.be/npjE57HBtVg
https://youtu.be/Juz9bDZa5rc
https://youtu.be/eMDajBi_QW0
How to Reproduce?
debugify: https://youtu.be/JpX_0hlefak
vanilla: https://youtu.be/dRl7kCeRs7M
Expected Behavior
not alter vanilla behaviour
Version
1.21.10+1.0
Fabric/Quilt Loader Version
0.18.4
Logs or additional context
I think the correct way of solving this problem in older versions is to find places where entity's age calculations happen and inject into these methods.
due to the popularity of older versions of this mod and the modpacks that include it, simply ignoring the issue is not a viable option, as thousands of players could be falsely flagged for game modifications they were not even aware they had installed.
I don't know what your policy is regarding issues like this, but updating older versions of the mod would be really helpful in mitigating the issues this causes.
Has not been reported.
- I made sure this bug hasn't already been reported.
Is on most update to date version.
- I made sure I am using the most up to date fabric/quilt loader and mod version.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with archive/1.21.10/src/main/java/dev/isxander/debugify/mixins/basic/mc199467/MthMixin.java and compare the Debugify and vanilla reproduction videos. Trace the entity age calculations mentioned in the report and determine where the lookup-table change affects behavior. Done means older versions retain vanilla behavior and prediction precision without causing anticheat false positives.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- game-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100