Repository navigation
Fix ACT1Q4_SetMonolithOrder skipping a monolith on a collision - #236
Merged
Lectem merged 1 commit intoSep 15, 2026
Merged
Conversation
The loop advanced its counter on every roll, but the 1.10 code advances it only after a stone is placed: the branch taken when the slot is already occupied (6FC99F3A) jumps to 6FC99F78, past the INC EBP at 6FC99F73, and the loop is bottom-tested against 5. So the original keeps rolling until all five monoliths have a class, while this one rolls exactly five times. With the counter moving on every roll, any collision leaves a slot at zero and drops a class id. Rolling 2, 2, 0, 4, 1 gives current [19, 21, 17, 0, 20] fixed [18, 20, 17, 21, 19] - one monolith with no class at all, and 18 never placed. Closes ThePhrozenKeep#224
Mw95
approved these changes
Sep 15, 2026
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.
Fixes #224.
ACT1Q4_SetMonolithOrderadvancesion every roll. In 1.10 the counter only moves once a stone is placed: the occupied-slot branch at6FC99F3Ajumps to6FC99F78, past theINC EBPat6FC99F73, and the loop is bottom-tested against 5. So the original keeps rolling until all five monoliths have a class, while this one rolls exactly five times.Any collision leaves a slot at 0 and drops a class id. With the rolls 2, 2, 0, 4, 1:
The fix moves
++iinto the placement branch. One file, +5/-1.