Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
180 changes: 180 additions & 0 deletions docs/merges/2026-08-24-soh.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,180 @@
# Upstream merge — soh — 2026-08-24

> Auto-generated by `upstream-merge.yml`. Fill in the post-merge changes (build-fix
> chain, COMBO_BUILD guards, runtime fixes) before merging, then link this file from
> docs/UPSTREAM_MERGES.md. See that doc for the policy.

### soh — `5a57a0cbc` → `b341e02cd` (83 merges)

<details><summary>new commits</summary>

```
b341e02cd Remove unused field `progressive` from Item (#7113)
07414fd72 Clear fire timer when blue warp skip bypasses chamber of sage (#7112)
47d138302 MQ DC: standing in corner slingshot can hit through eye through boulder (#7109)
945f70222 Restore the realId assignment in AudioLoad_AsyncLoadInner (#7105)
7a7f942b8 Fix item tracker fishing pole & roc's feather (#7103)
5f52af7ef Enemy rando, make Keese not fall if not dead + fall downscale (#7101)
e8b943968 Disable2DBackgrounds Fixes (#7102)
27b71b1a5 Drop the seqLoadStatus bounds checks made redundant by #6932 (#7100)
22426a812 Resolve the Fast3dGui cast once per scope instead of per call (#7095)
17c57c64c Try fix mac build flakiness in CI with mdutil -a -i off (#7094)
9baa114f6 Hookify fish, refactor fishsanity (#7091)
401605532 Set ToD in non-rando LACS & MSCS skips (#7092)
bd8a5825f Hookify masks / timeless equipment (#7088)
172b373fb Adjust fishing prize threshold when minigame weight adjusted (#7089)
4c43ef030 Fix crash when loading unversioned oot_save.sav (#7090)
6a3c9b760 Add a Skip Warp Cutscenes enhancement (#7059)
3a8c68be6 Enemy rando, let enemies air walk over voidout floor in clear rooms (#7005)
0bae4961a Draw keys on keyring with code, consolidate dungeon key counting code (#7087)
999f6fe89 use ccache for windows too (#7086)
bdccc868b Fix entrance overrides being different between loading spoiler vs starting seed (#7085)
17a7fde00 Shuffle Silver: fix gtg room setting room cleared instead of flag (#7084)
38acd5a17 Intro Skip: adjust Link's position & camera to match values after watching intro (#7077)
252f6ffaa generate-builds.yml: consistently use max-size 2G, prefer j4 over j3, evict-old-files: job (#7083)
bc1252171 Silence warnings on Windows for dependencies, bump torch (#7082)
940e3c569 More pragma once (#7081)
05f199e12 Enemy rando, GTG hammer room air spawn fix (#7079)
917a9b78d Enemy rando, fix healthy big Guays not dying (#7065)
3a3d93f73 Enemy rando, exclude Withered Deku Babas from clear rooms (#7078)
ca0a17cfe bombchu bowling setting: first item (#7070)
afcfe4f7b Format JSON, include CI check (#7071)
fa5172a58 Add advanced option for teleport trap (#6986)
e048afd10 Decomp, three audio functions (#7069)
9782faba4 Torch CMake and Extraction Flow cleanup (#7063)
db147f6a0 Update the "Hell Mode" preset (#7066)
a35f33118 Keep an unlisted combobox value from killing the menu (#7062)
14d9d4e8b Pick up newly added source files without a manual re-configure (#7060)
81784a09e Keep the save editor's sword state alive long enough to draw (#7061)
08cb0dcf7 Fix graveyard sign checks at night (#7057)
253e67247 Adds native OOTRS archive support to remove need for custom packing. (#7056)
9772a603e Enemy rando, remove switch flag setting from Wolfos (#7055)
55b52a26a replace specialized bean logic with events (#5842)
7e9cf1eb1 Enemy rando, set EnTp EnSkb EnPeehat collider positions on actor init (#7049)
0cf2b3701 Apply Enemy Rando Dark Link fixes to Crowd Control & Sail (#7054)
f35f134c9 Fix grammar (#7053)
f27ddede5 Fix mirror decal not rendering on some walls (#7052)
4e39d06ac fix(audio): bound audio-heap cache tables (SIGSEGV with large custom music packs) (#6932)
490e13616 fix warnings (#7051)
1c856a7be Silence cmake warnings (#7050)
bf7177256 FixFlexDrops (#7047)
0254c1f3a Allow GI skip for silver gauntlets chest (#7048)
426b37ddf Save editor v2 (#6474)
af485bf64 Fix bugs in hints (#7046)
5ecff16bd Fix heap corruption due to skybox code using GameState as PlayState (#7045)
404ec05fc Fix scrub message having doubled articles, add articles to fake names (#7044)
07944d785 Allow buying tunic as either age in rando even without shopsanity. (#7016)
a4901abdc Hookify Skeleton Unregisters (#6988)
f2f4413bf Decomp, some camera names (#7043)
982f598e0 Savestates, add `sEffectContext` (#7042)
5d1a39666 Polish, Twinrova intro cutscene skip with Kotake/Koume appear on climb (#7001)
94cebb35b Fix GF Near Grotto North/East naming (#7041)
b52c31f85 Get rid of Logic::Hearts, update Logic::EffectiveHealth to be 16/heart (#7026)
29668a06d Progressive BGS (#7037)
6420c435b Enemy rando, fix Dark Link crush etc voidouts (#7038)
f6f21477b fix clang with -lm (#7039)
7f9d453ff use spdlog::fmt_lib over fmt, opens up SPDLOG_USE_STD_FORMAT in future (#7030)
6706b49d1 Shuffle Treasure Chest Game (#7020)
45c199b47 Minor Typo: Fix Roc's Feather Trap name typo (#7033)
5a8c6d036 Make Thieves' Hideout distinct region (#7025)
a089fa60b Restoration, hover fishing condition + XZ speed (#7031)
f5244973b Fix clang constexpr issues with system fmt (#7024)
8a3ec35de Add Edit buttons for custom presets (#5994)
b76e303ce Shuffle Silver (#5659)
edfdfe133 Switch to TheMrMilchmann/setup-msvc-dev@v4 (#7027)
0ed782ddc Enhancement, drop throw-only actors toggle (#7023)
29c7e7568 Fix Gold Skulltula tokens overwriting the Bow inventory slot (#7021)
7be4a5941 Added small key null checks. (#7019)
a75c8113d Progressive Deku Nut Bag and Stick Bag models (#7015)
2fd7e052c Cleanup and fix Dampe's race both prizes regression (#6999)
eafafe507 fix: seqLoadStatus OOB reads/writes for custom SAF sequences (#6917)
688913270 Fix potential key softlock with hover boosts in MQ spirit (#7014)
44f680a0b Fix Save Editor inventory edits leaving C/D-pad buttons desynced (#7008)
985590246 bump lus (#7010)
c00dd24ca Replace ZAPDTR and OTRExporter with Torch (#6989)
```
</details>

**Conflict surface** (our customized files upstream touched):

```
CMakeLists.txt
soh/Enhancements/FileSelectEnhancements.h
soh/Enhancements/TimeDisplay/TimeDisplay.cpp
soh/Enhancements/audio/AudioEditor.cpp
soh/Enhancements/cosmetics/CosmeticsEditor.cpp
soh/Enhancements/debugconsole.cpp
soh/Enhancements/kaleido.cpp
soh/Enhancements/kaleido.h
soh/Enhancements/mod_menu.cpp
soh/Enhancements/randomizer/3drando/fill.cpp
soh/Enhancements/randomizer/3drando/hints.cpp
soh/Enhancements/randomizer/3drando/item_pool.cpp
soh/Enhancements/randomizer/3drando/starting_inventory.cpp
soh/Enhancements/randomizer/Messages/ItemMessages.cpp
soh/Enhancements/randomizer/Messages/MerchantMessages.cpp
soh/Enhancements/randomizer/Messages/StaticHints.cpp
soh/Enhancements/randomizer/SeedContext.cpp
soh/Enhancements/randomizer/ShuffleSigns.cpp
soh/Enhancements/randomizer/Traps.cpp
soh/Enhancements/randomizer/Traps.h
soh/Enhancements/randomizer/draw.cpp
soh/Enhancements/randomizer/draw.h
soh/Enhancements/randomizer/entrance.cpp
soh/Enhancements/randomizer/hint.cpp
soh/Enhancements/randomizer/hook_handlers.cpp
soh/Enhancements/randomizer/item_list.cpp
soh/Enhancements/randomizer/option_descriptions.cpp
soh/Enhancements/randomizer/randomizer.cpp
soh/Enhancements/randomizer/randomizerEnums/RandomizerGet.h
soh/Enhancements/randomizer/randomizerEnums/RandomizerSettingKey.h
soh/Enhancements/randomizer/randomizer_check_tracker.cpp
soh/Enhancements/randomizer/randomizer_item_tracker.cpp
soh/Enhancements/randomizer/savefile.cpp
soh/Enhancements/randomizer/settings.cpp
soh/Extractor/Extract.cpp
soh/Extractor/Extract.h
soh/GbiWrap.cpp
soh/Network/Anchor/Anchor.h
soh/Network/Anchor/HookHandlers.cpp
soh/Network/Network.h
soh/Notification/Notification.cpp
soh/OTRGlobals.cpp
soh/OTRGlobals.h
soh/ResourceManagerHelpers.cpp
soh/SaveManager.cpp
soh/ShipInit.hpp
soh/ShipUtils.h
soh/SohGui/Menu.cpp
soh/SohGui/Menu.h
soh/SohGui/SohMenu.cpp
soh/SohGui/SohMenu.h
soh/SohGui/SohMenuDevTools.cpp
soh/SohGui/SohMenuEnhancements.cpp
soh/SohGui/SohMenuRandomizer.cpp
soh/SohGui/SohMenuSettings.cpp
soh/SohGui/UIWidgets.hpp
soh/cvar_prefixes.h
src/code/graph.c
src/code/z_actor.c
src/code/z_parameter.c
src/code/z_sram.c
src/overlays/actors/ovl_En_Mag/z_en_mag.c
src/overlays/gamestates/ovl_file_choose/z_file_choose.c
```

### ⚠️ libultraship pin lag: soh expects a newer LUS

soh pins libultraship `9a1a2bd93`; ComboShip vendors `7cb10226e`.
Both are on Kenix3 `port-maintenance`, so this is a pin lag, not a line divergence —
but soh code in this range may need a LUS fix we do not have. Either **cherry-pick the
fixes you need** into `libultraship/` or **advance our libultraship pin** to cover them.
We never adopt soh's submodule pin wholesale.

<https://github.com/Kenix3/libultraship/compare/7cb10226e...9a1a2bd9356d3de18f54ef220a413da18d16779b>

<details><summary>LUS commits soh expects that you may be missing</summary>

```
```
</details>
Loading
Loading