Skip to content

Conversation

@lynxplay
Copy link
Contributor

@lynxplay lynxplay commented Dec 6, 2025

Reimplementation of the <=1.21.10 changes to move game rule reads/writes
to a plain array access instead of a hashmap.

The implementation did not fully remove the backing hashmap, instead
it is kept up-to-date on writes. This decision aims to reduce
the diff needed for this change. The backing map is required in the
codec, merging operations and copies.
This means that writes carry the overhead of updating the map, however
they should be rare enough to not actually matter.

Reimplementation of the <=1.21.10 changes to move game rule reads/writes
to a plain array access instead of a hashmap.

The implementation did not fully remove the backing hashmap, instead
it is kept up-to-date on writes. This decision aims to reduce
the diff needed for this change. The backing map is required in the
codec, merging operations and copies.
This means that writes carry the overhead of updating the map, however
they should be rare enough to not actually matter.
@lynxplay lynxplay requested a review from a team as a code owner December 6, 2025 19:02
@github-project-automation github-project-automation bot moved this to Awaiting review in Paper PR Queue Dec 6, 2025
@jpenilla jpenilla mentioned this pull request Dec 7, 2025
15 tasks
@lynxplay lynxplay merged commit f6e937b into PaperMC:main Dec 8, 2025
4 checks passed
@github-project-automation github-project-automation bot moved this from Awaiting review to Merged in Paper PR Queue Dec 8, 2025
@lynxplay lynxplay deleted the feature/int-based-gamerules branch December 8, 2025 19:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Merged

Development

Successfully merging this pull request may close these issues.

3 participants