Commit Graph

4256 Commits

Author SHA1 Message Date
Philip Dubé e4f019f561 SwitchAge: prevent Link walking without collision for a bit (#7286) 2026-10-03 14:33:49 +00:00
Chris 45b9321593 [Bugfix] - Vanilla Shopsanity Prices (#7295) 2026-10-03 14:32:11 +00:00
David Racine e07916487d AudioSequenceFactory: fix mono streamed tracks not playing (#7291)
In WriteMonoSingleSeq, layerPlaceholderOff was recorded before WriteNoshort,
causing a stray 0x00 byte to be emitted into the mono channel script. The
0x00 decoded as a delay of 0 ticks, which deferred the subsequent ldlayer
byte by one tick and left channel->instrument unset when the layer first
processed its note, producing no sound.

Move layerPlaceholderOff to after WriteNoshort so the placeholder writes
the correct address, matching WriteStereoSingleSeq.

Fixes #7264
2026-10-03 13:50:08 +00:00
Chris 69a7cdb179 [Bugfix] Fix crash on exit after rando gen (#7296) 2026-10-03 13:49:25 +00:00
Philip Dubé 9eafd15fe1 Fix grotto entrance misbehaving when entering grotto before last transition not done (#7271) 2026-10-02 15:34:13 +00:00
David Racine 57eea55bd4 Fix a song enlarging on the quest page while the cursor is on L/R (#7263)
The selected-slot index is only assigned when the cursor is on a slot, so on
the page arrows the song icons compared against an uninitialised value.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 02:46:12 +00:00
Chris f4e698f4cc Revert self-pumping audio thread (#7284)
* Revert "Fix audio regression playing audio too slowly (#6894)"

This reverts commit db41e1b5f8.

* Revert "fix(audio): Fix audio stutter when gfx hitches (#6704)"

This reverts commit 4415537deb.
2026-10-01 02:39:23 +00:00
Philip Dubé ad7d0a66d0 Set time of day when skipping sun song cutscene (#7235)
Simulate cutscenes to match various time of day quirks
2026-10-01 02:22:38 +00:00
Philip Dubé ff0209e76f fix logical typos (#7283) 2026-09-29 19:49:27 +00:00
Chris b9bcc5e901 Fix audio thread race on CVar reads during preset apply (#7265) 2026-09-29 03:27:11 +00:00
Philip Dubé aa25eb4d56 mark ganon's tower entrances as oneExit (#7276) 2026-09-28 23:06:03 +00:00
Philip Dubé c42004bc42 Fix AddCheckToLogic bombchu handling (#7274)
1. consistently include shop bombchus
2. fix boolean flip typo, that was filtering out ITEMTYPE_SHOP branch that coerces matching LogicVals
2026-09-28 16:16:27 +00:00
Philip Dubé 4f546bc87e Fix Link being out of bounds while loading into scene on epona with spinning free cam (#7270) 2026-09-28 14:11:22 +00:00
Philip Dubé 576b30c64a Better Save Menu: hard code Return to Spawn in vanilla (#7273)
Unconditionally using rando's entrance overrides could load zero,
ie ENTR_DEKU_TREE_ENTRANCE
2026-09-28 05:34:14 +00:00
Philip Dubé faed544b22 rename Gerudo Fighter to Gerudo Thief (#7272) 2026-09-28 04:02:03 +00:00
David Racine 04d0ebd38c Build soh.o2r as part of ALL, only when its inputs change (#7262)
`install` builds ALL, which never included GenerateSohOtr, so it copied
whatever soh.o2r was already in the build tree. The version check can't
catch that: a stale soh.o2r carries the same version as the binary.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 02:21:33 +00:00
Philip Dubé b939163c3d publish appimage unzipped, store to ~/.local/share/soh when SHIP_HOME unset (#7252) 2026-09-28 00:46:39 +00:00
Jordan Longstaff ca1e4c2250 Fix Skip Forced Text softlock (#7254) 2026-09-26 16:26:36 +00:00
Pepper0ni cd38af7955 Fix enemy rando issues in MQ spirit (#7257) 2026-09-26 16:25:09 +00:00
Pepper0ni eccbc72cbe Fix and hookify full health on spawn (#7239) 2026-09-24 22:39:33 +00:00
Pepper0ni 2e300d3acc force empty bottle OI to use the milk effect to avoid UB (#7247) 2026-09-24 22:38:51 +00:00
Pepper0ni ea4cccc6d9 fix Ice Cavern Blades Silver Rupee door not opening when silvers are randomised (#7248) 2026-09-24 22:38:06 +00:00
Pepper0ni 479aa26ef4 Fix the seeding for Dark Link's spot in enemy rando. (#7249) 2026-09-24 22:37:48 +00:00
Pepper0ni 8fc1fc869b fix preplanted beans without souls being seen as planted on the tracker (#7251) 2026-09-24 22:36:59 +00:00
Philip Dubé 33b82dab3e Reduce log spam at start due to invalid RandomizerTrick entries (#7238)
Empty name check was ruined by "[ERROR] Couldn't retrieve language data..."
2026-09-22 19:24:58 +00:00
David Racine d30fc192f2 Include <version> before checking __cpp_lib_source_location (#7233)
GCC 15's libstdc++ defines feature-test macros selectively: after
#include <string>, __cpp_lib_source_location is not yet defined, even
though __builtin_source_location is fully supported. This made the
check fail on GCC 15 toolchains (including clang using libstdc++),
disabling the Hook Debugger.

Include <version> first so all feature-test macros are defined.
2026-09-22 02:40:47 +00:00
Philip Dubé d54a69833f avoid big poe collector not giving reward when handing bottle after collecting 1000 points worth of big poes on field (#7230) 2026-09-21 13:43:09 +00:00
David Racine 39a8d04018 Use --no-pager for the no-tabs check's git grep (#7232) 2026-09-21 04:49:02 +00:00
Philip Dubé 04ccd608b3 Fix equipping sword over swordless while fishing/riding (#7222) 2026-09-20 03:45:53 +00:00
Philip Dubé 5fee87c23e Replace tabs with spaces (#7223) 2026-09-19 18:09:26 +00:00
Philip Dubé 27a66925bf Add restoration for hookshot as child to softlock (#7219)
Requested for speedrun mode

Also hookify more enemy rando stuff while I'm in the neighbourhood
2026-09-19 14:00:06 +00:00
Philip Dubé 2bc50f6056 Fix deep slope vs double cell carpenter mix up (#7220) 2026-09-19 03:50:49 +00:00
Philip Dubé a353b6e7ce Shuffle Scarecrow Song (#7205) 2026-09-18 14:54:24 +00:00
Philip Dubé 02c7632a33 Fix boolean logic error breaking Talon cutscene skip (#7211) 2026-09-17 02:09:18 +00:00
Philip Dubé 01a4f3693d Refactor file select quest visibility, fix single quest handling (#7210)
Select single visible quest when only single quest visible

Fix bad operator precedence
2026-09-17 00:15:19 +00:00
David Racine c9e3ef7652 Interrupt espeak on a new utterance (#7207)
The SAPI and AVSpeechSynthesizer backends both drop what they are saying when
a new utterance arrives (SPF_PURGEBEFORESPEAK, stopSpeakingAtBoundary). espeak
never did, so on Linux every menu item scrolled past queued another utterance
with no way to skip ahead.

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 00:13:59 +00:00
Philip Dubé e628cf0574 refactor blue fire arrows (#7209)
check damage flags instead of actors, original way could run into issues with actor unloading
2026-09-17 00:05:52 +00:00
Jordan Longstaff ae62048910 Hookify three Glitch Restoration options (#7200) 2026-09-16 18:15:17 +00:00
Jordan Longstaff aff03cd7b8 Hookify Mweep cutscene options (#7199) 2026-09-15 16:56:25 +00:00
Philip Dubé 4bd2356b11 QuickBossDeaths.cpp (#7192)
Phantom Ganon was only QuickBossDeaths skip, Twinrova only had rando / boss rush hack
2026-09-15 15:06:38 +00:00
Philip Dubé 4c04c7615f Save editor flag improvements (#7198)
1. clicking on flag name toggles checkbox
2. hovering over player state shows flag name
3. add search box for player state, adjust names to what headers call them
2026-09-15 00:59:12 +00:00
Malkierian 034bf5f3c7 Swap Logic combobox for No Logic checkbox. (#7196)
Rename All Locations Reachable to All Checks Reachable.
Rename Locations section to Check Locations.
Properly fix checkbox/radio button label wrapping.
2026-09-14 23:53:03 +00:00
Pepper0ni 31ba9e2069 fix fire boss typo (#7195) 2026-09-14 23:51:06 +00:00
Philip Dubé 060787a239 clean up headers (#7194)
GameInteractor.h does not itself depend on libultraship/bridge/consolevariablebridge.h,
instead its dependencies requiring that header should include it themselves

This was particularly impactful for SohGui.hpp which included all the windows
2026-09-14 19:49:29 +00:00
Caladius 43ea332874 [Enhancement] Time Splits v2 (#5839)
This aims to port over the Time Splits feature from 2Ship as it is cleaner & more robust.

New to this is the ability to finally compare splits from a second list.

Old Save data will now be converted to the new format automatically. Once it converts the data, the old save file will be renamed with a new ".backup" extension.

Co-authored-by: serprex <159546+serprex@users.noreply.github.com>
2026-09-14 16:55:22 +00:00
Philip Dubé 97fb13cbee Hookify FP movement (#7189)
Apply consistent movement effects to first person movement
2026-09-14 16:49:50 +00:00
Philip Dubé 09ca2ad383 Maintain correct position/camera for Master Sword cutscene skip (#7184) 2026-09-14 16:48:47 +00:00
Philip Dubé 53f688df54 Fix logic for fire near boss (#7147)
Adult with hood can jump from cage to boss door to upper with hood

Also fix bunny / mask options being disabled outside rando file
2026-09-14 14:20:38 +00:00
David Racine ea348bc9fb a11y: let F9 toggle TTS on Linux (#7191)
The hotkey was removed in #2833 because Linux had no synthesizer and fell
through to SpeechLogger. #5428 added the espeak-ng backend and un-gated the
settings checkbox, but left the hotkey and the README on Windows and macOS.
2026-09-14 00:29:52 +00:00
Philip Dubé 11fd0e0e70 Fix bow body cosmetic color (#7190)
No need to 4x color, just use what player picks. Avoid stale reads by getting rid of currentColor

Also clean up MIN/MAX & tidy up randomizer.h including CustomMessageTypes.h
2026-09-13 22:12:09 +00:00