Skip to content

Custom collectible - #439

Merged
aMannus merged 134 commits into
HarbourMasters:develop-rando-v2from
aMannus:custom-collectible
Aug 7, 2026
Merged

Custom collectible#439
aMannus merged 134 commits into
HarbourMasters:develop-rando-v2from
aMannus:custom-collectible

Conversation

@aMannus

@aMannus aMannus commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Replaces all actors within randomizer with a fully custom one, and adds an item queue that this collectible hooks into. Much of this is prepwork for more advanced shuffles, integrating Archipelago, and generally make it easier to interact with Rando from within other systems.

Commits also include a bunch of develop-splitrock ones, but I've tested squash merging this PR into another branch and it was still fine to merge into develop-splitrock after.

There's more work to do after this is merged as this currently breaks other things like the check tracker, but it looks like people started to rely on work I was doing on this branch and we're not going to be releasing rando v2 without this anyway, so let's merge this in a broken state and fix up everyhing else in future PRs again. Stuff that needs fixing is documented in the 2.0.0 milestone as well.

aMannus and others added 30 commits July 7, 2026 22:47
* Sync progress flags.

* Sync jiggies, tokens, and honeycombs.

* Fix item collection triggers (were triggering before actually collecting just from proximity).
Add saved item (note totals, tokens, jiggies, honeycombs) collection/use updates.
Add note and jinjo collection to realtime sync.]
Add jiggy spawn syncing.
Make note collection packets update totals outside levels.

* Add level and map flag syncing, and re-enable volatile flags for witch switch reasons.

* Apply jiggy pedestal authority.

* Potentially fix retention off.

* Fix include casing.

* Move retention files to common folder, add Retention files for common inclusion.
Add listener to jinjo retention for VB_OVERRIDE_BUNDLE_SPAWN to prevent jinjo bundle from crashing when already collected.

* Exclude Sandcastle and Christmas Tree cutscenes from syncing to avoid infinite scene reload cutscene glitches.

* Properly live-sync ability unlocks.

* Make honeycomb packets trigger HUD animations.

* Make note door clear sync play animation, sound, and sparkles.

* Live sync destructibles, fix cobwebs state on state restore.

* Sync already-spawned jiggies when player entering a map another player is in.

* Live, persistent acorn and worm sync in CCW.

* Sync RBB transients.

* Live-sync Blubber's Gold, the FP presents, and Conga's orange like acorns/worms.

* Clear jinjo retention if jiggy orphaned, and force 31 (all collected) for retention value if jinjo jiggy collected.

* Sync CC.

* Sync BGS.

* PUZZLE_STEP on Clanker's teeth.

* Sync GV and honeycomb switches.

* FP transient syncs.

* Sync MMM.

* CCW sync.

* Fix dynamic spawned jiggy sync.
Add hut sync.

* Sync orange pads, juju totem, fix chimpy jiggy spawn.

* Fix multiple bundle jiggy spawns.

* Initial rando hookup.

* Sync Bottles Bonuses.
Add checkboxes for bottles bonuses when unlocked or connected to Anchor.

* Fix jiggy dual spawn, remote hut ordering.
Rando improvement.

* Fix spawn-in croctus look-at binding player movement.

* Fix timed jiggy switch timer sync.

* Purge pending jiggy spawns on close/restart.

* Fix actor misplacement issue.

* Fix more transient syncs and puzzle steps.

* Fix honeycomb switch spawns, ancient one next-step spawns, and level-open cutscene camera resets.

* Sync final Grunty fight.
Fix jiggy HUD to display level counts when same-level jiggy is collected.

* Fix file on disk deletion.
More fix for actor misplacement.

* Re-implement collision and shadows.

* Implement the room window and teleport to player functionality.

* Make teleport go directly to other player.

* Change forced disconnect on romhack status mismatch to warning.
Make "Reset All Team States" reset the romhack status of the room.

* Add notifications for jiggies and level opens in vanilla and rando checks.

* Live sync/update blubber's gold and bear cub presents steps, and temporarily persist gold steps.

* Add carried item and throw sync.

* More actor misplacement fixing.

* Defer actor despawn during game frame update.

* Clear vanilla retention on file delete.

* Add remote collect simulation to test actor misplacement fixes.

* Clear temporary persistence when no players are in a level.

* Fix sub-area destructible persistence.

* Prevent camera actions during level door openings.

* Fix Blubber's gold and the bear cub's presents not showing in-world after being thrown.

* Fix collectibles showing in world after being thrown.
Fix count desync of worms/acorns.

* Fix flower watering stages.

* Semi-persist ignored controllers (only by list index for now).

* Fix grunty fight: non-authority eggs not damaging, jinjos not despawning, remote freeze during first jinjo statue cutscene.

* Make fireballs (spell 0) target local players.

* Fix timed switch jiggy despawns.

* Swap to HM Torch main, latest commit.

* Re-enable global room.

* Add team-state check syncing and despawn.
Add isRando and seed to room state (cleared on Clear All Team States) and warning on seed mismatch.

* Make levitate cheat a fixed upward value, cancel fall damage/animation if used during damage fall.

* Fix same-map warp-to-player getting stuck on level geometry.

* Some comment cleanup.

* Sync Slushes and snowman buttons in FP, and prevent multiple players from playing the twinkly minigame at the same time.

* Prevent remote-triggered door-open camera locks.

* More comment cleanup.

* Disable vanilla retention checkboxes when Anchor connected.

* Bump LUS.
Force wait for team state when loading save.
Force reload when joining/requesting team state after loading file.
Increase levitate speed to 500.
More comment cleanup.

* Remove extra first-load team state request.

* Fix live sync of entered levels for Level Totals.

* Fix Tanktup cutscene unfreeze.

* Add new water level packet and fix water level snapping for offline and remote clients.

* Engine room fan switch temp persistence.

* Fix engine fan persistence and Grunty door live sync.

* Fix final fight syncing.

* More comments.

* Final comment sweep.

* Comment streamlining.

* Restore moved enum with #if 0.
* Code cleanup: ResourceMgr region dialog checks

* Code cleanup: consolidate port functions for dialog fonts

* Code cleanup: duplicate declarations for romhacks and lus/port type changes

* Code cleanup: Remove declarations with no callers

* Code cleanup: Remove duplicate declarations

* Stop functions.h pulling C++ headers into extern "C"

* Guard decomp headers with extern "C", drop redundant wrappers

* Restore ShipUtils.h includes lost when functions.h dropped it

* Fix spawn queue not scaling with draw distance setting

* Remove more dead code, fixups and comment clarity

* Fix orbit camers getting stuck on rare occasions

* Resolve more extern "C" cleanups after anchor rebase

* Polish Cheats (Levitate, Transforms)

* Adjust camera orbit core smoothing when player is on uneven terrain

* Clang format
* CCW documentation from decomp upstream

* audioManager documentation from decomp upstream

* RBB documentation from decomp upstream

* Model Appendages and BS method table documentation from decomp upstream

* Compile fixes and clang-format after decomp pass 5

* Fix clang -Wint-conversion errors in RBB whistle tables

* Fix clang -Wint-conversion and pointer-type errors from decomp pass 5

* Align filenames and decomp header comments with upstream

* Missed one

* Documentation and file renames from decomp upstream

* Checksums, 08776d1f

* PAL matching from decomp upstream

* Rubee & Function Documentation, ac3ddb91

* PAL match func_80240204, 1b2edf8b

* PAL matching 2, 485bef33

* Draw code documentation from decomp and pointer truncation fixups

* Add decomp's headers split

* Missed function renames from past decomp commits

* Cleanup functions.h a bit

* Post-rebase fixups
* Hotfix for camera orbit core

* Fix a bug where rotating modern cam while climbing caused it to get stuck
* Switch soundfontctl extraction to own factory

* Reorder GEO section

* Bump Torch and LUS

* Add ported romhack code for Jiggies of Time, Nostalgia 64, and Cutthroat Coast

* Fix missing jiggy puzzle sizes and flags

* CTC: Blank note door digits

* Add Cheato's Challenges port

* Sort disabled romhacks alphabetically

* Add Bubbling Bog Brewery code port

* Disable select enhancements in romhacks

* Add partial support for Gruntch and Santa's Village

* Post-rebase fixups
Undo exclusion of unused folder because of references of functions housed there causing linking errors.
Handle switches without default branches.
Suppress MSVC warning for zero-sized c99 flexible arrays (C4200).
Add shader copy to port O2R generation workflow.
…pedCrc endianness-agnostic (HarbourMasters#263)

* Clean calls to src/unused, filter out the unused files, make ReadStampedCrc endianness-agnostic

* Update mod subfolder paths

* Adjust orbit camera snapback
* Remove remote collect sim.

* Another attempt at fixing packaging for Linux.

* Fix Mumbo's Hut fast transformations.

* Remove frame drop warning.

* Add to Easier Boggy Races enhancement to mention the need for a map reload to take effect.
Caladius and others added 28 commits August 4, 2026 11:46
* Fix input viewer

* Clang and fix menu column

* Minor menu tweaks

* update cvar to use macro
* Save and Load of Spoiler Logs

* Color change for success notification

* clangified

* Fix if statement to check for string.empty().

* case change

* Fix log refresh and seedID

* Add Refresh Button

* Add Tooltip for refresh button, gross
…tal authority from releasing if a puzzle was completed. (HarbourMasters#400)
* Update lang pack documentation

* Bump Torch
* CTC: fix the rock raising itself on map reload

* Debugging: add a flag tracer to dev tools

* Fix bottles tutorials gated on map instead of level

* Anchor: gate sync on singleplayer and romhacks for some cases

* Anchor: consolidate remoteOpens into helper remoteCue and add missing

* Patch romhack: used ability flags and anchor empty honeycomb sync rework

* Fix applying bkcf to wrong warp function and clean up Dreamie no-op

* BBB and Gruntch flip UsedAbilities bits

* Finish reimplementing Gruntch features

* Mark Gruntch as fully supported

* Add launch arg handling for romhacks
…tion-fix

Disable Note Retention during parades
* Fix SNS demos not working on v1.1, PAL, JP

* Fix audio bgm running when game window is frozen (drag/resize)

* Fix audio static on certain platforms

* Fix decomp animation function names being backwards
@aMannus
aMannus merged commit 127a282 into HarbourMasters:develop-rando-v2 Aug 7, 2026
6 checks passed
aMannus added a commit that referenced this pull request Aug 7, 2026
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.

6 participants