Skip to content

Finish off enemy souls#17

Merged
Caladius merged 42 commits intoCaladius:develop-enemy-souls-v2from
Eblo:enemy-souls-v2-finish
Jan 1, 2026
Merged

Finish off enemy souls#17
Caladius merged 42 commits intoCaladius:develop-enemy-souls-v2from
Eblo:enemy-souls-v2-finish

Conversation

@Eblo
Copy link

@Eblo Eblo commented Jan 1, 2026

This includes a bunch of develop commits from a merge. Ignore those; the first relevant commit is 40c07ad. My goal is, if this looks good to you, it gets merged into your branch, and then I can review/merge your upstream PR.

What's changed:

  • Added souls for the remaining enemies, including midbosses
  • Changed enemy invincibility handling to use the existing VB_PERFORM_AC_COLLISION. This fixes almost every edge case we had, as it just ignores damaging collision entirely
    • Removed Real Bomchus and Flying Pots for now because they die to any collision
  • Add logic for having the relevant soul to CanKillEnemy
  • Added enemy souls to Item Tracker
  • Revised souls to have boss or enemy prefix for clarity. I had to revise some enum arithmetic for this
  • Separated enemy soul map into separate maps for actor->RI and RI->drawFunc
  • Use macros for the oft-repeated static var setup for draw funcs

Not done:

  • Enemy Souls starting items. There are over 50 enemy souls. No great ideas on that one. I don't think this should block the feature and thus can be deferred to a future effort

Note to self: add Gomess enemy drop to pair with the soul

Build Artifacts

mckinlee and others added 30 commits November 30, 2025 15:00
* slight redesign

* feedback update

* another feedback update

* feedback update
* port message viewer

* clean up UI and add raw message inspector

* Word Wrapping (HarbourMasters#11)

* feedback update

---------

Co-authored-by: Caladius <Caladius@users.noreply.github.com>
* Logically gate Gorman grass behind aliens

* Fix reverse connection condition
* port dl viewer

* feedback + redesign

* feedback update

---------

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>
* Skip Woodfall Clear cutscene on repeats

* Forgot a flag
…ge (HarbourMasters#1382)

black box till left or right analog stick angle values text is enabled.

Fixed issue where the analog stick text vertical wasn't set to its
default position.

Move the Input Viewer window default position up so the analog stick
text is visible and not a black box due to being considered off the game
window when the left or right analog stick angle values text is enabled.
…1383)

* Add option to skip the soaring cutscene when warping

* Make hook functions static

* Move entrances array to ShipUtils
* Skip Hungry Goron's forced dialogue

* Oops - remove all that build-related stuff
…ers#1387)

* Bugfix: Don't skip Dotour's entry into Bomber's Notebook

* Oops, forgot to flip condition for setting should

* Or, to be less confusing, rename function to match

* Move comment explaining skip logic
…HarbourMasters#1376)

* Add options to tweak the Swamp Boat Archery minigame

* Add missing include

* Adjustments to score widget

* Move health CVar to VB hook

* Change timing of score reset to before first attempt

* Add option to make Koume invincible

* Add condition to Koume's health hook
* Organize `GIVanillaBehavior` enum

* Add disparate conditions on `VB_BE_NEAR_DOOR`

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>

---------

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>
* Embed enemy drop checks into individual Regions

Exclude tooltips from enemy drops in check tracker

* Shuffle the rest of the enemies

* Move Gold Skulltula condition

* Clean up and fix enemy drop check minimum value

* Name Real Bombchu drops for consistency with souls

* Update documentation
* Fix cow softlock when cows are not shuffled

* Make the cow hooks themselves conditional
…ourMasters#890)

* Add enhancement to remember location on save/load

* Fix Inverted STT goof, apply hook suggestion

* Fix pause saves after leaving grottos

* Address feedback, use ShipInit
…urMasters#1365)

* [Controls] Port Modifier Buttons from SoH.
* Adds "M1" and "M2" buttons extra buttons like the y and x buttons on the
  GameCube Controller, or a keyboard key can be assigned.

Port Speed Modifiers from SoH.

When Walk Speed Modifier is enabled Link's walk speed will be increased
depending on the "Walk Modifier 1 or Modifier 2" setting.
"Walk Modifier 1" is "M1".
"Walk Modifier 2" is "M2".
Default:100%
Max:1500%
Min:0%

When Swim Speed Modifier is enabled Link's swim speed will be increased
depending on the "Swim Modifier 1 or Modifier 2" setting.
"Swim Modifier 1 is M1.
"Swim Modifier 2 is M2.
Default:100%
Max:875%
Min:0%

"Toggle modifier instead of holding" setting will keep the Modifier
active till the modifier button is pressed again.
Modifier button toggles are reset when 2S2H is reset.

* Ran Clang Format

* Renamed "initWalkSpeedFunc" to "initFunc" in "LinkSpeedModifier.cpp"

* Made changes based on mckinlee's suggestions.

* Made it so only one Modifier button is toggled at a time.
For example if you press "M1" it will untoggle "M2"

* Removed "mModifierButtonsBitmasks" in "BenInputEditorWindow.cpp" wasn't
needed.
Fixed issue with "COND_VB_SHOULD(VB_SPEED_MODIFIER_SWIM," forgot to set
"*should"
Ran Clang Format.

* Revert BTN_CUSTOM_MODIFIER1 back to 0x0040
Revert BTN_CUSTOM_MODIFIER2 back to 0x0080

* Moved "VB_SPEED_MODIFIER_WALK" and "VB_SPEED_MODIFIER_WALK" to
"GameInteractor_VanillaBehavior.h"

* Made changes suggested by Eblo.
* Add hook file for Pause Save

* Correct CVar default

* Add missing include
Added static map to maintain filter state for each combobox instance.
…1279)

* first pass of masks required to fight majora

* adding in moon access options

* Update mm/2s2h/Rando/Logic/Regions/Moon.cpp

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>

* streamlined the menu to always show moon and masks count. Also ran the clang formatter

* Update mm/2s2h/Rando/Logic/Regions/Moon.cpp

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>

* Update mm/2s2h/Rando/StaticData/Options.cpp

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>

* Update mm/2s2h/Rando/Types.h

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>

* Update mm/2s2h/Rando/Types.h

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>

* Update mm/2s2h/Rando/Types.h

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>

* Update mm/2s2h/Rando/Menu.cpp

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>

---------

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>
* Migrated changes made in other PR

* CAN_BE_ZORA, not (CAN_BE_ZORA && CAN_USE_SWORD)
…#1409)

* Skip racing the younger beaver brother.

* Update mm/2s2h/Enhancements/Minigames/BeaverRace.cpp

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>

* Update mm/2s2h/Enhancements/Minigames/BeaverRace.cpp

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>

---------

Co-authored-by: Eblo <7004497+Eblo@users.noreply.github.com>
* initial implementation

* feedback

* feedback 2
Eblo added 12 commits December 30, 2025 09:22
Stub out enemy draw funcs
Use macros to streamline existing skeleton inits
Logically account for enemy souls in CanKillEnemy
Fix logical quirk with Ikana ice arrows
Make soul RIs contiguous, separate boss and enemy
Ignore target color for EnInvadepoh
Remove Real Bombchus and Flying Pots for now
Require Gekko and Snapper souls for beating both
@Caladius Caladius merged commit d289790 into Caladius:develop-enemy-souls-v2 Jan 1, 2026
5 checks passed
@Eblo Eblo deleted the enemy-souls-v2-finish branch January 1, 2026 19:29
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.

8 participants