[1.21.1 Fabric] Fix client world random state corruption when rendering Jade Vine Roots and Shooting Stars.#819
Merged
DaFuqs merged 1 commit intoDaFuqs:1.21.1-aria-for-painters-mojmapfrom Feb 21, 2026
Conversation
…ts and Shooting Stars.
Noaaan
approved these changes
Feb 20, 2026
678eb7e
into
DaFuqs:1.21.1-aria-for-painters-mojmap
2 checks passed
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.
We forgot a patch while upstreaming fixes from our modpack.
Jade Vine Roots and Shooting Stars both pass the shared client world random to the block model renderer, which immediately reinitializes it with the blockstate's "rendering seed". This results in particle effects and other randomized client-side phenomena becoming predictable — usually, torches shoot out continuous jets of smoke with no fire, particle rain starts falling in perfect columns, some particle effects stop spawning at all. It even affects the particle effects of the Jade Vine itself.
As such, it is incorrect to pass a random instance to the block model renderer that is not dedicated to the purpose of rendering block models. Unfortunately, the Random instance used by vanilla for this purpose is held in a private field. It is less work and more maintainable to simply use a per-renderer Random instance rather than using an Accessor.
Changes made by hand in a text editor — we confirmed the mod still compiles and runs.