Skip to content

Add support for some Dev-Rob features - #61

Merged
flee135 merged 5 commits into
wafo:masterfrom
tanjo3:derive-version-data
Jul 28, 2026
Merged

Add support for some Dev-Rob features#61
flee135 merged 5 commits into
wafo:masterfrom
tanjo3:derive-version-data

Conversation

@tanjo3

@tanjo3 tanjo3 commented Jul 27, 2026

Copy link
Copy Markdown
Collaborator

Found some issues when using a settings string for the Dev-Rob fork. Tested on at least:
Generator version: devrreal_9.0.2-17
Setting string: BSAWDNCAKTAAUXFCAJA3YJAAKAEAQAAASAAUJA6AEASHAANLZACASCSETSAAFAA6K2HBAAJADSB4SHAE4TRGEJFL34AK2CYUNXPBAASAAUFNQBAASA83CCDAQAAJ2AKT3BLCSHSRABABJJGUBC

  • With this settings string, some checks would be under an undefined hint region as a result of a drift from the main randomizer's logic files and Dev-Rob's. This PR now dynamically derives both the hint regions and location table from the randomizer's logic files, so even if regions or locations are added/changed/removed, the tracker will adapt rather relying on a stale snapshot. However, since these files now need to be fetched and processed, there is a performance cost when initializing the tracker.
  • Dev-Rob has boulder shuffle, which can't be fully-supported by the tracker at this time. However, the logic still has to work around it or else the tracker will crash. So, some support for boulder shuffle has been added by obtaining the vanilla boulders information from Boulders.py and then using that to determine item requirements. When boulder shuffle is on, the requirements are the union of all possible boulder types since there's no way to obtain which boulder type has be randomized where.
  • Dev-Rob also has some unique identifiers such as nnn and False. False is now explicitly handled and unknown identifiers like nnn are now warned once and returned as false, instead of crashing the tracker.
  • This is not a Dev-Rob related issue, but one that exists for all branches. Bean planting was flawed for logic evaluation as a result of here(can_plant_bean) always evaluating as adult, leading to can_plant_bean always being false. This PR fixes the here() evaluation, mirroring how at() is properly implemented for age-context and adding a _currentRegion scope so that the function can know its region.

This doesn't not fully support everything on Dev-Rob, or any other dev fork, but should at least fill in the gaps better. Powered by Claude but I did look over everything.

@flee135
flee135 merged commit c3cda93 into wafo:master Jul 28, 2026
1 check passed
flee135 added a commit to flee135/hashfrog_tracker that referenced this pull request Jul 28, 2026
Add support for some Dev-Rob features
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants