Commit Graph

1854 Commits

Author SHA1 Message Date
Malkierian
715bf39d43
Incorporate LUS CMake CVar system (#4093)
* Incorporate LUS CMake CVar system.
Customize all LUS CMake CVars to align with plans for preset system.
Swap "gOverlayFont" usage back to LUS CVar macro.

* Change CMake sets to use the cache to allow for including LUS's file for the add_compile_defines and remove the duplication on SoH's side.

* Move SoH CMake CVars to `soh-cvars.cmake` for clarity.
2024-05-01 14:48:51 -04:00
briaguya
7da6a5b604
vb deku stick cheat (#115)
* vb deku stick cheat

* it's the 21st now

---------

Co-authored-by: Garrett Cox <garrettjcox@gmail.com>
2024-04-30 22:36:26 -05:00
Christopher Leggett
baaa00569d
Adds Quick Boss Death checkbox and implements Phantom Ganon's quick death (#119)
* Adds Quick Boss Death checkbox and implements Phantom Ganon's quick death.

* Clarifies relocation comment.
2024-04-30 22:31:08 -05:00
briaguya
8480f37f77
fetch imgui (#4094) 2024-04-30 22:49:54 -04:00
briaguya
c70e6d280a
spdlog from package managers (#4088) 2024-04-30 18:50:06 -04:00
briaguya
4ecb76b117
tinyxml from package manager (#4073) 2024-04-30 01:19:02 -04:00
Pepper0ni
d69814ed95
Real time Hint Assembly, Hint object refactor, and expansion of CustomMessage (#4078)
* Hint text refactor WIP DOES NOT BUILD

* Update to show people DOES NOT BUILD

* stuck on wierd errors

* forgot to add

* expression error does not name a type

* commit in case anyone looks

* static assertion failed: T must be an integral type or an enum.

* fail without error, complaining about unrefernced things

* fix some issues, still linker bs

* restructure some trials, conditionalAlwaysHints and hint_list stuff

* builds and does not crash, but there's text issues

* fix text issues

* commit to push, halfway through trimming down log

* finish trimming spoiler logging

* post merge clean up

* plando mode seems to work, looking into song text wierdness

* push for debugging crash on HBA sign

* fix num and anju issues

* fix the damn sign

* Fix Windows build

Renames GetMessage to GetHintMessage (a different name could be chosen, but GetMessage conflicts with a macro in winuser.h)
Changes uint to size_t, uint does not seem to exist on Windows.

* fix biggoron

* remove some manual formatting that autoformat doesn't like

* fix some altar text

* fix more altar text

* last cleanup

---------

Co-authored-by: Christopher Leggett <chris@leggett.dev>
2024-04-29 09:41:33 -05:00
briaguya
552bb2886f
support lus renamespacing (#4075) 2024-04-28 21:36:44 -04:00
Pepe20129
92467b87b5
Add scene command XML parsers (#4054)
* Add scene command parsers

* Move logging & add logging cvar

* Use new CVAR_DEVELOPER_TOOLS macro

* Update soh/soh/resource/logging/SceneCommandLoggers.h

---------

Co-authored-by: Garrett Cox <garrettjcox@gmail.com>
2024-04-28 20:58:12 -04:00
Malkierian
303fe7d906
Swap all cosmetics CVars to macros. (#4065)
Lots of renames.

Co-authored-by: Garrett Cox <garrettjcox@gmail.com>
2024-04-26 02:41:55 +00:00
Malkierian
56d8dd6d8b
All MenuBar enhancement CVars done. (#4064) 2024-04-26 00:31:28 +00:00
briaguya
1fff8fd6d5 don't skip item give animation in chu bowling 2024-04-24 21:48:31 -04:00
briaguya
d22dbd6933 move RawJson to LUS (#4063) 2024-04-24 21:21:01 -04:00
Christopher Leggett
65c5806333
Better fix for blank hint issue. (#4070) 2024-04-24 17:09:49 -04:00
Garrett Cox
7bde0f5289 Merge branch 'develop-rando' of garrettjoecox.github.com:HarbourMasters/Shipwright into develop-rando-changes 2024-04-23 11:31:39 -05:00
Garrett Cox
c67d8f4baa Add missing RHT entries 2024-04-23 11:31:34 -05:00
Christopher Leggett
99fbecd951
Fix issue with item name replacement at runtime. (#4068) 2024-04-23 11:30:30 -05:00
Garrett Cox
ee6e941681 Merge branch 'develop-rando' of garrettjoecox.github.com:HarbourMasters/Shipwright into develop-rando-changes 2024-04-23 09:53:08 -05:00
Christopher Leggett
39e6269731
Fixes bugs with spoiler file parsing (#4066)
* Fix bugs with spoiler file parsing

* Hopefully fix mac build issue

* fix typo
2024-04-23 10:26:59 -04:00
Garrett Cox
854e20680a Fix forest temple entrance cs skip 2024-04-23 09:17:57 -05:00
briaguya
3070fb4746
support lus gameoverlay changes (and bump LUS) (#4067) 2024-04-22 22:57:33 -04:00
Garrett Cox
7e5854756e Merge branch 'develop-rando' of garrettjoecox.github.com:HarbourMasters/Shipwright into develop-rando-changes 2024-04-22 12:53:43 -05:00
Pepe20129
6b831f9256
Fix swim softlock (#3965)
* Update mods.cpp

* Update mods.cpp
2024-04-22 12:44:59 -05:00
Pepe20129
b65a15028b
Update z_horse.c (#4014) 2024-04-22 12:44:12 -05:00
Christopher Leggett
4c75fd14a7
Fix hint generation bugs on develop-rando (#4001)
* Fix hint generation bugs on develop-rando

1. Fixed Ganon Non-hint text from loading as Saria's Magic Hint.
2. Fixed Ganon Non-hint text from not getting saved correctly.
3. Fixed gossip stone hint generation from not generating any non-always hints on No Logic.

For #3, the hint distribution and placement algorithm was bailing out too early when it wasn't able
to place a hint. For No Logic, what it was doing was failing to place WOTH hints (since No Logic seeds
don't calculate WOTH candidacy), returning the amount of hints it failed to place, and then it called
the function to redistribute the hints, but did not call the function to attempt to place the remaining hints.

Additionally, it was not accounting for the fact that we shouldn't redistribute the hints into the categories we failed to
place a hint in, so it would redistribute hints right back into those categories. I changed it so that when DistributeHints
gets called after PlaceHints fails to place the hint, it checks if the distribution settings copies attribute was set to 0.
In this case, it breaks while looping for the type distribution settings, and moves on to the next category. Also, it now repeatedly
attempts to distribute and place hints until PlaceHints returns 0 (meaning it placed all of its hints successfully).

* Fixes some further seed-bleed type issues with hint generation.
2024-04-22 13:29:05 -04:00
Garrett Cox
3c6c46d95d Fix for some chests not appearing 2024-04-21 21:09:52 -05:00
briaguya
49f891f2e5
move RawJson to LUS (#4063) 2024-04-21 21:16:59 -04:00
Garrett Cox
a554c1550d Fix shadow & spirit rewards, remove remaning usage of duplicate dungeon done flags 2024-04-21 18:53:15 -05:00
Malkierian
33aef87907
CVar Macro Cleanup (#4062)
* Standardized CVar macros to have `CVAR_` at the front instead of the end.
Removed excluded and replaced sequence macros.

* Missed a few developer CVars outside of `SohMenuBar.cpp`

* 1 more.
2024-04-21 10:25:06 -05:00
Garrett Cox
5813b37415 Migrate child stealth 2024-04-21 09:38:53 -05:00
Garrett Cox
14c7f0c3e1 More time cutscene skip fixes 2024-04-21 09:14:46 -05:00
Malkierian
e2622af004
Step 3 of CVar macro/sectionalizing: Dev Tools, Cheats, Audio Editor, Remote (#4030)
* Swapped Audio Editor CVars.

* Swapped Cheat CVars.

* Swapped Developer Tools CVars. Also a couple General CVars.

* Added REMOTE_CVAR.
Swapped Remote CVars.

* Missed an include.
2024-04-20 18:56:32 +00:00
Malkierian
694a876a70
Step 2 of CVar macro/sectionalizing: Trackers/Windows (#3238)
* Add all macros.

Replace all randomizer seed setting CVars with appropriate macro.

Cleaned up non-gameplay-critical things that are part of Spock Race rando presets (like RTA timing, displaying timer, displaying the glitch lineup tick, or Fast File Select).

* Wrong slash...

* Fix DEVELOPER_CVAR macro.
Add GENERAL_CVAR macro.

* Change Item Tracker CVars, including open window CVar.

* Swapped open window CVars.

* Swapped Entrance Tracker CVars.

* Swapped Check Tracker CVars.
Changed Item Tracker "HudEditMode" to "Draggable".

* Renamed `RANDOMIZER_CVAR` to `RANDO_ENHANCEMENT_CVAR`.
Swapped rando enhancement CVars.

* Mirroring last commit from part 1 in randomizer.cpp

* Another mirror from pt 1
2024-04-20 18:34:02 +00:00
Ted Newman
16bf03a9bd
Add console commands for randomizing sfx and cosmetic groups (#3962)
* Add console commands for randomizing sfx and cosmetic groups

* Update naming and use constexpr

* Update soh/soh/Enhancements/debugconsole.cpp

---------

Co-authored-by: Archez <Archez@users.noreply.github.com>
2024-04-20 12:33:59 -04:00
Archez
e6798d9861
bump lus and create fb call (#4060) 2024-04-20 11:04:11 -04:00
Archez
067782fa91
clean up cmake configure files (#4002) 2024-04-20 11:03:41 -04:00
inspectredc
d08d5a54c9
Fix Pause Warp Enhancement (#4036) 2024-04-20 11:01:16 -04:00
inspectredc
4a576f45ee
Fix and Clean Up Swap Age Logic (#4061)
* Split and clean up swap age logic

* reorganise conditions into one statement
2024-04-20 10:43:35 -04:00
Malkierian
b045689df1
Step 1 of CVar macro/sectionalizing: Randomizer Settings (#3206)
* Add all macros.

Replace all randomizer seed setting CVars with appropriate macro.

Cleaned up non-gameplay-critical things that are part of Spock Race rando presets (like RTA timing, displaying timer, displaying the glitch lineup tick, or Fast File Select).

* Wrong slash...

* Forgot "gManualSeedEntry".

* Renamed CVars from "Mq..." to "MQ...".
2024-04-20 09:29:19 -05:00
Jamie Klassen
2aa2092c27
filter randomizer checks in tracker (#4021)
* filter randomizer checks in tracker

Co-authored-by: Michael Stergianis <michael.stergianis@gmail.com>

* Adds an option to hide empty areas

Co-authored-by: Jamie Klassen <jamie@tenkeylabs.com>
Signed-off-by: Michael Stergianis <michael.stergianis@gmail.com>

* Removes extra whitespace

Co-authored-by: Jamie Klassen <jamie@tenkeylabs.com>
Signed-off-by: Michael Stergianis <michael.stergianis@gmail.com>

* Changes gCheckTrackerHideFilteredAreas to default to true

Refactors the for loop in shouldHideArea

Signed-off-by: Michael Stergianis <michael.stergianis@gmail.com>

* Addresses PR feedback

* https://github.com/HarbourMasters/Shipwright/pull/4021#discussion_r1538377614
* https://github.com/HarbourMasters/Shipwright/pull/4021#discussion_r1538381310

Co-authored-by: Jamie Klassen <jamie@tenkeylabs.com>
Signed-off-by: Michael Stergianis <michael.stergianis@gmail.com>

* Updates config variable to gTrackers.CheckTracker.HideFilteredAreas

Signed-off-by: Michael Stergianis <michael.stergianis@gmail.com>

* Adds check visibility guard to shouldHideArea

Refactors rcObject to check in passesTextFilter

Signed-off-by: Michael Stergianis <michael.stergianis@gmail.com>

---------

Signed-off-by: Michael Stergianis <michael.stergianis@gmail.com>
Co-authored-by: Michael Stergianis <michael.stergianis@gmail.com>
2024-04-20 10:27:13 -04:00
briaguya
3b0548f585 vb tower escape 2024-04-19 18:05:38 -04:00
briaguya
d3beac7337 fix: gift from sages location access 2024-04-19 16:29:37 -04:00
briaguya
ed0ef62c0c fix: add location access for treasure chest game items
vb treasure chest game added new RCs for the treasure chest game (now there are RCs for each of the 5 keys and each of the 5 non key chests), but the location area table only had the keys, this adds the items
2024-04-19 16:15:15 -04:00
Garrett Cox
0bde9f1fca Merge branch 'develop-rando' of garrettjoecox.github.com:HarbourMasters/Shipwright into develop-rando-changes 2024-04-19 12:29:10 -05:00
Garrett Cox
43e8eec6bd
Replace some printfs with spdlogs (#4058) 2024-04-19 12:28:38 -05:00
Malkierian
f4fc3662b6 dev -> dev-rando 2024-04-19 09:51:00 -07:00
briaguya
2216b68111 fix: add include missed in merge conflict resolution 2024-04-19 11:06:52 -04:00
briaguya
9696f74b5c Merge branch 'develop-macready' into macready-to-dev 2024-04-19 09:57:29 -04:00
Malkierian
02f7310c16
Add keyring to check for placing Gerudo Fortess Keys in Any Dungeon or Overworld. (#4055) 2024-04-19 09:42:26 -04:00
inspectredc
bfe13906e9
Make equip swap work on pause any cursor (#4052) 2024-04-19 09:42:12 -04:00
Amaro Martínez
32288be744
Save in-game language setting (#4026) 2024-04-19 09:41:55 -04:00
Malkierian
19be6e9b99
Trackers MQ Cleanup (#4009)
* Clean up grayed out items in file select.
Tie personal notes saving to `OnExitGame()` to account for save scum resets.
Hide text input box (but not window) for personal notes when a save isn't loaded to prevent saving over a save's notes while in file select.

* Allow check tracker window to be visible and show the "Waiting for file load..." text in file select (ease of positioning).

* Fix key label text placement.

* Persist `areasSpoiled`, change trigger to `OnSceneTransition`.
Add `IsAreaSpoiled` for tie-in to Item Tracker.
Add `SetAreaSpoiled` to unify bitmagic.

* Add proper spoiling evaluation based on specific entrance IDs, or first check collection.
Add light yellow color for vanilla dungeon abbreviations to match the purple for MQ.

* Initialize `areasSpoiled` to 0, so 0 gets saved on file create.

* All new conditional statements around `GameInteractor::IsSaveLoaded()` were inverted. Fixed that.

* Change some c-style casts to `static_cast`.

* Few more cleanups, plus clarifying comment.
2024-04-19 09:41:46 -04:00
Archez
0b8cc71d0d
fix actor init flow with object loading (#3987) 2024-04-19 09:41:04 -04:00
Garrett Cox
6c384c3cb6 Finish glitch aiding cutscenes toggle 2024-04-18 21:52:38 -05:00
Garrett Cox
abdbe25c8a Migrate purple poe faster fight 2024-04-18 21:36:10 -05:00
Garrett Cox
1683617210 Migrate rainbow bridge 2024-04-18 21:13:40 -05:00
Garrett Cox
edf6d9334a Migrate ganon trials 2024-04-18 20:42:25 -05:00
briaguya
54b1505137
vb gerudo (#111)
* vb gerudo

* clean up
2024-04-17 20:17:00 -05:00
briaguya
f6a583446b
vb bombchu bowling (#110)
* vb bombchu bowling

* don't need it

* it's drawing the right thing but it's tiny

* scale

* no need to should, don't rescale every draw

* slightly safer
2024-04-17 19:49:29 -05:00
briaguya
84db4c8ab8
vb beehives (#109)
* vb beehives

* format
2024-04-16 20:02:16 -05:00
briaguya
60d74f720a
vb richard (#108)
* Lost Dog + Custom Hook Handler

* vb richard

* fix the merge

---------

Co-authored-by: Taw <Tawling@users.noreply.github.com>
2024-04-16 19:28:20 -05:00
briaguya
63afaa3cc9
vb ocarina memory (#107)
* Ocarina Memory Game

* vb memory game

---------

Co-authored-by: Taw <Tawling@users.noreply.github.com>
2024-04-16 19:18:26 -05:00
inspectredc
ced34ab68a
[Fix] Disable Lod Applies To Everything (Macready) (#4034)
* make lod cvar affect everything

* add to more functions

* re-add to player

* only add to necessary funcs
2024-04-15 12:00:04 -04:00
briaguya
f3273e7627
vb treasure chest game (#103) 2024-04-09 23:31:45 -05:00
briaguya
bbbd2520b1
vb lh sun (#106)
* underwater working pre func_80B858B4 replacement

* underwater item update handled by hookhandlers

* vb lh sun

* remove unused should
2024-04-09 22:57:07 -05:00
briaguya
fe231147d5
vb underwater item (#104)
* underwater working pre func_80B858B4 replacement

* underwater item update handled by hookhandlers

* remove commented out code

* remove unused should
2024-04-09 22:46:11 -05:00
Garrett Cox
36a462d667 Merge branch 'develop-rando' of garrettjoecox.github.com:HarbourMasters/Shipwright into develop-rando-changes 2024-04-08 11:03:50 -05:00
Garrett Cox
67ee5f8d0e
Merge pull request #4045 from HarbourMasters/develop
develop -> develop-rando
2024-04-08 16:02:22 +00:00
briaguya
9c9fc49d32
vb horseback archery (#102)
* vb horseback archery

* Update soh/soh/Enhancements/randomizer/hook_handlers.cpp

---------

Co-authored-by: Garrett Cox <garrettjcox@gmail.com>
2024-04-08 10:59:48 -05:00
briaguya
6d77bbd4a9
vb skull rewards (#101) 2024-04-08 10:55:16 -05:00
inspectredc
e163d5bc3d
Fix switch puzzle locking issues (#4027) 2024-04-07 17:28:20 -04:00
briaguya
897d3efbd0
rip out unused types (#4041) 2024-04-07 17:02:57 -04:00
Archez
fd7dfd8b6f
Support for new ucode loading patterns (#4038) 2024-04-04 12:26:14 -04:00
briaguya
307e106038
vb talon's chickens (#99) 2024-04-04 10:55:07 -05:00
briaguya
1e9cba1d61
vb diving game (#100) 2024-04-04 10:30:45 -05:00
briaguya
249490909f
pull docs: talon function names (#98) 2024-04-04 10:26:48 -05:00
Garrett Cox
325035e473 Merge branch 'develop-rando' of garrettjoecox.github.com:HarbourMasters/Shipwright into develop-rando-changes 2024-04-04 08:15:34 -05:00
Garrett Cox
01bcc4bb59
Merge pull request #4033 from HarbourMasters/develop
develop -> develop-rando
2024-04-04 13:13:58 +00:00
briaguya
0f43d5de2d
bump lus (gfx refactor) (#4031) 2024-04-03 22:16:17 -04:00
briaguya
2339a729ee
vb deku theater (#96) 2024-04-03 21:10:18 -05:00
briaguya
d6c512904b
vb target in woods (#95)
* do some target in woods VB stuff

* skip deku scrub hopping out animation

* replace a couple IS_RANDOs

* cleanup
2024-04-03 20:11:13 -05:00
briaguya
0334c4e354
pull in docs (#97)
* rename `func_8002DF54` to `Player_SetCsActionWithHaltedActors`
* rename `func_8002F434` to `Actor_OfferGetItem`
2024-04-03 20:07:42 -05:00
Christopher Leggett
c162af818d
Fix keysanity Any Dungeon setting. (#4020)
Due to a typo a few months ago, it was accidentally being ignored and
treated as Anywhere. Own Dungeon may have also been doing weird things,
but I'm not entirely sure.
2024-03-20 18:24:58 -04:00
Garrett Cox
8b3cfdb84f
Merge pull request #3986 from Archez/merge-macready-805
Merge MacReady 8.0.5 -> Develop
2024-03-06 04:12:02 +00:00
briaguya
ef690e2ceb
support LUS::Archive::LoadFileRaw no longer being exposed (#3999) 2024-03-05 23:09:05 -05:00
briaguya
9fb2f26f1b
tts: use RawJson resource + add SpeechLogger (#3998)
* moved `tts.cpp` away from using `LoadFileRaw` by creating a new `RawJson` resource type
* added `SpeechLogger`
2024-03-05 22:21:15 -05:00
briaguya
375349e4f7
Support font as resource LUS changes (#3993) 2024-03-04 23:36:23 -05:00
briaguya
ebde648c59
.o2r support (#3955) 2024-03-02 20:51:32 -05:00
Adam Bird
7bd2a7c3a6 Merge remote-tracking branch 'origin/develop' into merge-macready-805 2024-02-28 23:49:06 -05:00
Malkierian
368a9015ac
Add Unix timestamp to renamed corrupted file to prevent trying to copy over existing file. (#3984) 2024-02-28 22:46:32 -05:00
Malkierian
ed9cb1dfd2
Fix CVar evaluation for scummed checks being hidden. (#3985) 2024-02-28 22:45:16 -05:00
Archez
fb6ea42560
prevent remember save location in dungeons/boss rooms (#3983) 2024-02-28 22:33:51 -05:00
Malkierian
b26f2b21da
[UX Improvement] Catch save loading errors and notify user (#3979)
* Add `SohModalWindow` and `SohModal`. Runs as window, always "visible", but not drawing if no popups are registered.

Adds error catching for save file corruption (malformed json) that renames the file in question to prevent future loading issues and uses `SohModalWindow` to inform the user of the error.

* Apply suggestions from code review

---------

Co-authored-by: briaguya <70942617+briaguya-ai@users.noreply.github.com>
2024-02-28 21:12:23 -06:00
Archez
358dd47da7
remove zapd extraction from mac launch script (#3981) 2024-02-28 21:03:08 -06:00
Malkierian
ea1ffdd041
Adds messageboxes to no_ui handling so they don't show if you have it on. (#3977) 2024-02-28 20:04:44 -06:00
Garrett Cox
416ed84bc6 Migrate great fairy checks 2024-02-24 09:17:48 -06:00
Garrett Cox
09c967249f More 1PC skips 2024-02-23 14:06:27 -06:00
Garrett Cox
13a113c362 Various adjustments to goron related vanilla behavior hooks 2024-02-23 12:43:27 -06:00
Garrett Cox
b293cac51c Enable timesaver enhancements by default on rando 2024-02-21 15:26:11 -06:00
Garrett Cox
2203f902a3 Merge branch 'develop-rando' of garrettjoecox.github.com:HarbourMasters/Shipwright into develop-rando-changes 2024-02-21 14:43:37 -06:00