Skip to content

Conversation

TriumphantBass
Copy link
Contributor

What is this fixing or adding?

Fixes logic for certain lanterns that were inconsistent with the base rando's logic.

Namely:

  • Royal Towers struggle juggle requires jumping off of enemies
  • Spider Hell Lanterns are inside the A-Card Door
  • The Ancient Pyramid lanterns called out are behind breakable walls
  • Lower Trash lanterns are on the floor and accessible with no vertical movement
  • Trash jump is now more accessible/less conditional because of a change to spawn trash engineers when power is out

How was this tested?

Reviewing the locations in question and their placement within the levels using the debug room warp tool and cross checking their logic against other items in the same room, both in the logic here and in the base rando.

If this makes graphical changes, please attach screenshots.

No graphical changes.

@github-actions github-actions bot added the waiting-on: peer-review Issue/PR has not been reviewed by enough people yet. label Oct 17, 2025
@Jarno458 Jarno458 added the is: bug/fix Issues that are reporting bugs or pull requests that are fixing bugs. label Oct 17, 2025
@Jarno458 Jarno458 self-assigned this Oct 17, 2025
@ScipioWright ScipioWright requested a review from Jarno458 October 17, 2025 13:13
@ScipioWright ScipioWright added the waiting-on: world-maintainer Issue/PR is waiting for feedback or approval by the maintainer of a world. label Oct 17, 2025
@ScipioWright
Copy link
Collaborator

#5561
You two have very similar PRs, you two should probably talk and consolidate these into one PR, or one of you closes theirs and reviews the other person's to make sure the same issues were covered (or to at least get the peer reviews in)

Copy link
Contributor

@Raspberryfloof Raspberryfloof left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The three things I commented on are the only differences between my PR and this one, besides Lab Lower Trash Lanterns, but those already have water mask required elsewhere in the code so they are fine as is.

LocationData('Royal towers', 'Royal Towers: Pre-Climb Lantern 1', 1337609, logic.can_break_lanterns),
LocationData('Royal towers', 'Royal Towers: Pre-Climb Lantern 2', 1337610, logic.can_break_lanterns),
LocationData('Royal towers', 'Royal Towers: Bottom Struggle Lantern', 1337611, logic.can_break_lanterns),
LocationData('Royal towers', 'Royal Towers: Bottom Struggle Lantern', 1337611, lambda state: logic.can_creak_lanterns(state) and logic.has_doublejump_of_npc(state)),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's a typo here: can_creak_lanterns should be can_break_lanterns.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed

LocationData('Ancient Pyramid (left)', 'Ancient Pyramid: Regret Lantern 1', 1337389, lambda state: logic.can_break_lanterns(state) and logic.can_break_walls(state) and (not flooded.flood_pyramid_shaft or state.has('Water Mask', player))),
LocationData('Ancient Pyramid (left)', 'Ancient Pyramid: Regret Lantern 2', 1337390, lambda state: logic.can_break_lanterns(state) and logic.can_break_walls(state) and (not flooded.flood_pyramid_shaft or state.has('Water Mask', player))),
LocationData('Ancient Pyramid (left)', 'Ancient Pyramid: Regret Lantern 3', 1337391, lambda state: logic.can_break_lanterns(state) and logic.can_break_walls(state) and (not flooded.flood_pyramid_shaft or state.has('Water Mask', player))),
LocationData('Ancient Pyramid (left)', 'Ancient Pyramid: Regret Lantern 4', 1337392, lambda state: logic.can_break_lanterns(state) and logic.can_break_walls(state) and (not flooded.flood_pyramid_shaft or state.has('Water Mask', player))),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pit Secret Lanterns and Pit Secret's Secret Lanterns should also require logic.can_break_walls(state). Looks like you missed those?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed. Looks like that save wasn't pushed with the rest of my commit.

LocationData('Main Lab', 'Lab: Lower Trash Lantern 1', 1337292, lambda state: logic.can_break_lanterns(state) and (logic.has_doublejump_of_npc(state) if options.lock_key_amadeus else logic.has_upwarddash(state))),
LocationData('Main Lab', 'Lab: Lower Trash Lantern 2', 1337293, lambda state: logic.can_break_lanterns(state) and (logic.has_doublejump_of_npc(state) if options.lock_key_amadeus else logic.has_upwarddash(state))),
LocationData('Main Lab', 'Lab: Trash Jump Lantern 1', 1337282, lambda state: logic.can_break_lanterns(state) and logic.has_doublejump(state)),
LocationData('Main Lab', 'Lab: Trash Jump Lantern 2', 1337283, lambda state: logic.can_break_lanterns(state) and logic.has_doublejump(state)),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does Trash Jump Lantern 2 require has_doublejump or has_doublejump_of_npc?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed- got thrown off as these were both too strict before, but the former is before the falling debris and the latter after it.

@TriumphantBass
Copy link
Contributor Author

Feedback addressed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

is: bug/fix Issues that are reporting bugs or pull requests that are fixing bugs. waiting-on: peer-review Issue/PR has not been reviewed by enough people yet. waiting-on: world-maintainer Issue/PR is waiting for feedback or approval by the maintainer of a world.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants