Commit Graph

3749 Commits

Author SHA1 Message Date
Philip Dubé 7c5cccaf92 Dedupe settings.cpp (#6443) 2026-03-29 19:42:54 +00:00
Philip Dubé 0127cbcf62 Fix debug assert caused by bad trick code (#6439) 2026-03-29 08:58:45 +00:00
A Green Spoon a461d8f6fb [Rando] Shuffle Butterfly Fairies (#6430) 2026-03-29 07:54:01 +00:00
Pepe20129 e0a1b23525 Language System Basis (#6172)
Introduces the basis for a language system to allow the UI to be translated to any language and/or have the text changed by mods.
A lot of things would require more work but, for a proof of concept, this PR makes all randomizer trick names & descriptions translatable (currently not re-loadable at runtime as that would require deeper changes and this is already merge conflict hell every time a trick is touched).

The system works by passing it a "translation path" which is resolved in the .json including object indentation. If the resulting json object is a list of strings, instead of a string, they get concatenated (purely for organization/QoL).
2026-03-29 02:27:30 +00:00
Pepper0ni 3228843886 Merge Boulder Undershoots into Boulder Collision (#6431) 2026-03-28 16:22:25 +00:00
Chris 9f61e635d2 Fix displayed token count (#6428) 2026-03-28 14:19:38 +00:00
Garrett Cox c7180762d9 Add button to rando all rando settings (#6001) 2026-03-28 06:52:01 +00:00
Philip Dubé 178471bf20 Merge pull request #6425 from HarbourMasters/develop-ackbar
merge develop-ackbar 9.2.1 to develop
2026-03-28 06:26:13 +00:00
Philip Dubé d1b7edfa7c 9.2.1 Ackbar Bravo (#6424) 9.2.1 2026-03-28 04:15:06 +00:00
Malkierian 6fea1821a1 Changed name of scarecrow's song enhancement and added to the description to clarify that it only skips song playback without the rando setting. (#6423) 2026-03-28 03:43:55 +00:00
Christopher Leggett 42ba25449e Make Infinite Ammo Cheat respect Progressive Bombchu Bag Capacities (#6421)
Cap infinite ammo for chus according to rando settings
Add bombchuUpgradeLevel to save editor
2026-03-28 02:58:41 +00:00
xxAtrain223 d1643aa196 LACS-Dungeons Check Availability (#6202)
* Fixes #5433, LACS-Dungeons beatable vs beat.

* Use CalculatingAvailableChecks in Logic::DungeonCount to check flags.
2026-03-27 19:40:34 -07:00
Philip Dubé 5576f93ef6 Hookify blue fire arrows (#6354)
Update z_bg_ice_shelter with decomp refactoring
2026-03-27 16:46:21 +00:00
Philip Dubé 7edf44e170 add tts for Roc's Feather (#6418) 2026-03-27 02:07:11 +00:00
Pepper0ni 53dc7f43ba Fix DMC oversight (#6419) 2026-03-27 01:43:36 +00:00
Pepper0ni 5f139ef311 Hookshot ladder fixes (#6417) 2026-03-26 22:39:17 +00:00
Renzo Martin Poggio 88625c4350 Add most values from gz to Value Viewer (#6411) 2026-03-26 18:55:31 +00:00
Ali 99c1f23d5b fix: Fix macOS crashing on first install use (#6412)
With the new imgui OTR generation flow, macOS would crash when Ship
was run for the first time unless com.shipofharkinian.soh had already been created.
Move the call to CheckAndCreateModFolder() earlier in execution to prevent crashing.
2026-03-26 15:12:51 +00:00
Christopher Leggett 69e03dcc52 LUS bump to fix texture pack performance (#6416) 2026-03-26 15:11:22 +00:00
Sean Latham 98ec5519cf Improve flavour of Navi's boss key hint (#6409) 2026-03-26 14:19:02 +00:00
Philip Dubé 2f32abb511 Console include cleanup (#6413)
Looking into fixing warnings about commands already being bound,
LUS initializes a console window which we ignore,
but it registers global command handlers,
SohConsoleWindow does this again, but that's also where mInputBuffer/mFilterBuffer get set

Proper fix would be removing SohConsoleWindow, but it exists to have mono font
2026-03-26 14:18:21 +00:00
Christopher Leggett 4aa6e2ec28 Move retrieval of dbEntry after Actor_Destroy (#6410)
Before I had the change back to the placeholder actor id the Dummy
Player actors were spawned with, but since we grabbed the actorDB
entry before Actor_Destroy was called it didn't matter. Move it
and the requisite log statement to after Actor_Destroy.
2026-03-26 14:18:01 +00:00
Pepper0ni 94b650ec67 Fix several logic errors, create Hooskshot Bridge trick. (#6414) 2026-03-26 03:02:54 +00:00
Pepper0ni 57269c8e46 fix volv FTR logic (#6403) 2026-03-24 20:23:20 +00:00
Christopher Leggett 5e13570b83 Fix leak of shuffled fairy bottle-swipe behavior to other actors (#6405) 2026-03-24 19:37:21 +00:00
Christopher Leggett 5fe4680a20 Adds a more compact Clear button to Check Tracker search (#6401) 2026-03-23 20:07:45 +00:00
Philip Dubé 8c4d4738cc cleanup customequipment.cpp (#6396) 2026-03-23 16:27:42 +00:00
Philip Dubé c439d62137 Enemy rando: don't mutate ActorEntry (#6400) 2026-03-23 16:27:20 +00:00
A Green Spoon 2cfb0f73dc make non-cmc pot model major for shuffle clarity (#6398) 2026-03-23 15:46:03 +00:00
Pepper0ni c61c1c0fec fix oversight in well logic (#6397) 2026-03-23 15:45:48 +00:00
Philip Dubé ccdd8e63ff Enemy rando: don't mutate ActorEntry (#6395) 2026-03-23 12:41:53 +00:00
Sean Latham 5f0c0c8e2f Added minimap icons for other players in Anchor (#6372)
Icon size for other players reduced by 25%
2026-03-23 01:34:06 +00:00
Philip Dubé ef042be5ea avoid undefined behavior when handling anchor packets (#6393) 2026-03-23 01:32:26 +00:00
Pepper0ni 0498d36428 Save Value Viewer Settings (#6392) 2026-03-23 01:31:21 +00:00
Philip Dubé 692ef416ee Fix RT_GROUND_JUMP_HARD description (#6391) 9.2.0 2026-03-22 19:56:22 +00:00
Philip Dubé 1949033f93 Ackbar 9.2.0 (#6389) 2026-03-22 18:10:12 +00:00
Malkierian c758f1ad84 Add option to mute notification sounds altogether. (#6390) 2026-03-22 17:52:53 +00:00
aMannus 1d9de8544a Implement toggle for allowing background inputs (#6214) 2026-03-22 16:44:24 +00:00
Jordan Longstaff 25ee1ec3ab Fix mouse camera Y-axis inversion (#6387) 2026-03-22 15:06:54 +00:00
Philip Dubé 96c4fef05c extraction: detect task crashing (#6386) 2026-03-22 06:03:41 +00:00
Philip Dubé b65c1c8317 Remove some unnecessary includes (#6385) 2026-03-21 20:22:32 +00:00
Pepe20129 4e82ea192a Enemy rando cleanup 2 (#6365)
Move stuff to main file, delete header & refactor lists
2026-03-21 18:46:15 +00:00
OtherBlue 2af5d21125 [Enhancement] Reworked targetting (#6322)
Adds an enhancement that changes targeting behavior, allowing

Switching targets with the chosen button combo
(In Switch mode) Untargeting by just pressing Z
2026-03-21 18:41:08 +00:00
Paul Schwabauer b6bf97e2f1 Fix ADPCM sample buffer overread in audio synthesis (#6364)
The sampleDataStartPad and aligned variables existed solely to satisfy
the N64 RSP DMA requirement that source addresses be 16-byte aligned.
On PC, aLoadBuffer is a plain memcpy with no such constraint.

The alignment dance caused aLoadBuffer to read up to 15 bytes before
sampleData and up to 8+ bytes past the end of the sample buffer. On
platforms with strict allocator guard pages (e.g. OpenBSD), this
triggers a SIGSEGV.

A second issue remains after removing the alignment dance: nFramesToDecode
is derived from sample counts (loopEnd), but size is not always a multiple
of frameSize. loopEnd and size are derived independently during encoding
and can disagree on the final partial frame, leaving nFramesToDecode *
frameSize exceeding the remaining bytes in the buffer.

Remove sampleDataStartPad and aligned entirely. Clamp the load to
min(nFramesToDecode * frameSize, audioFontSample->size - sampleDataOffset).
The ADPCM decoder operates on DMEM, so a partial last frame in DMEM
produces at most a negligible artifact at sound termination.
2026-03-21 18:34:18 +00:00
Philip Dubé 43f77c13fb Fix memory leaks in debugconsole & CrowdControl (#6383) 2026-03-21 18:32:55 +00:00
Christopher Leggett b8634f1d8b Fix numLoaded leak for Anchor (#6384) 2026-03-21 18:32:43 +00:00
Christopher Leggett 5c8ff76554 Custom Item Icons in Textboxes (#6343) 2026-03-20 16:37:44 +00:00
A Green Spoon 09b0fdbc93 Fix GV Waterfall Alcove Logic (#6380) 2026-03-20 16:07:14 +00:00
Christopher Leggett f2c34d8c11 Fix Entrance Rando Grotto Voidout Crash when voiding back to an area with a background image (#6379)
Hookify bgimage load cam check and add it to entrance rando
2026-03-20 03:40:35 +00:00
Sean Latham 38e684fda3 Fixed scrub text checking merchant hint setting (#6378) 2026-03-19 20:47:35 +00:00