* Separate HBA range
* Separate 4 rooftop regions
* Rest of rooftops
* Small cleanup
* Whoops
* Create `thieves_hideout.cpp` & move `gerudo_fortress.cpp`
* Ground and some inside
* More outside cleanup and more inside
* Kitchen
* Final tweaks
* Use `TH_` prefix for Thieves' Hideout locations
* Add clarifying images (+ `.xcf` source)
* Thieves' Hideout is overworld
* Fix `RC_GF_GS_TOP_FLOOR` & blue -> violet entrance
* Address review
* Update gerudo_fortress.cpp
* Address review
* Split "CarpenterRescue"
* Rename events
* Update logic.cpp
* Move from function to event
* Rename most of the regions
* Address review
* Add new conections
* update logic, get it working
* apply clang format
* undo clang format in logic files
* final reordering
* remove additions to .gitIgnore
* Fix some jump trick logic
* clean up ShufflePots
* fix submodules
* update for review and talk to jail and always gate PRs
* change thieves hideout to scene handling
* final fixes and update enum names and hint text
---------
Co-authored-by: Pepe20129 <72659707+Pepe20129@users.noreply.github.com>
* ShuffleSongs.cpp
* Address review and fix build
* Update soh/soh/Enhancements/randomizer/settings.cpp
Co-authored-by: Philip Dubé <serprex@users.noreply.github.com>
* Change back to "Off"
---------
Co-authored-by: Philip Dubé <serprex@users.noreply.github.com>
* EntranceShuffler ApplyEntranceOverrides.
* Updated ApplyEntranceOverrides.
* Updated ApplyEntranceOverrides.
* Initial Entrance Discovery.
* Added Randomizer_EntranceDiscovered.
* Updated Randomizer_DiscoverRegion to discover unshuffled connected regions.
* Removed extra semi-colon.
* Update to latest entranceShuffleTable.
* Format fixes.
* Updated EntranceDiscovered to account for entrances not in the entranceShuffleTable.
* Rediscover regions when loading a game.
* Rediscover entrances when enabling Available Checks.
* Added Rando::Context::ParseTricksJson.
* Updated ApplyEntranceOverrides to skip default (unset) overrides.
* Fix clang-format failed check.
* Set mLACSCondition when loading a Randomizer game.
* Updated rediscover loop to use MAX_ENTRANCE_RANDO_USED_INDEX.
* Move entrance discovered into ProcessExits.
* Discover spawns when pulling/placing the master sword.
* Discover adult/child spawn when using Song of Time to switch age.
* Reset logic and ApplyOrStoreItems without applying the item effects to the save when calculating available checks.
* Removed !itemLoc->IsAddedToPool() from the check tracker.
* Remove region discovery as its not needed anymore.
* Cleanup changed files for PR.
* Added Available Checks - Process Undiscovered Exits DebugConsole command.
* Added initial Available Checks - Recalculate DebugConsole command.
* ACPUE, recalculate only if save loaded. ACR, set age and times for the starting region.
* Add presets sidebar, proof of concept row-based listing.
* Complete and unify section check/x drawing.
* Add error state to InputString, and corresponding members and builders to InputOptions.
Implement saving and loading of preset files.
* Implement `Config::SetBlock()`.
Implement Apply.
Implement Delete.
Some json structure changes.
* Apply `CVarClear()` calls in CVar-prefixed widget functions.
* Comment out satellite preset pickers for now.
* clang
* Fix ButtonOptions initializer list.
* I hate clang...
* Loop new preset checkbox creation.
Restore auto-resizing to new preset popup.
Remove errant BeginDisabled in randomizer (merge artifact?).
* Add BlockInfo struct to make array with all info for each block.
Setup loops for all other same-ish situations (applying presets, setting up columns, etc) based on blockInfo.
* Save tracker windows info for later restoration.
Lay the groundwork for said restoration.
* Complete tracker window restoration on preset application.
* Fix RadioButtonsOptions builder parameter type.
Add race lockout to new and apply buttons.
* Revert application of CVarClear on UIWidgets widgets (need to preserve manually-set default states).
* Remove enhancements satellite picker.
Swap randomizer satellite picker to use the manager presets, only displays presets with randomizer section included.
Move built-in presets to the asset archive, and remove delete button on them.
Remove PresetEntries.cpp.
* Fix locations and tricks tabs not updating live when applying preset with new system.
* Apply RandoGenerating lockout to rando preset Apply button.
* Fix new presets not being properly filtered in satellite selectors.
* Fix currently selected presets getting deleted still being selected in satellite selectors.
* Change BigPoeTargetCount in preset files to 1.
* Improved the item location price availability.
* Moved the available checks price logic into location_access.cpp.
* Fixed typo and clarified check status identified.
* Handle virtually all warnings in `soh/Enhancements/randomizer`.
Handle order of operations warning in FasterHeavyBlockLift.
* Missed a few.
* Add float-specific versions of some M_PI and M_SQRT defines, and swap them in for the static casts in draw.cpp.
* Swap a static cast for M_PIf in check tracker code.
* Modify the flow for applying opacity to docked tracker windows only when they are docked to the "Main - Deck" dockspace.
* Add opacity clamping for check tracker.
* Calculate accessible checks and show them in the check tracker.
* Added added DoorUnlocked checks to the Fire Temple doors.
This is needed when calculating Accessible checks while playing and using small keys. Otherwise checks will appear unaccessible because Keys have been used.
* Changed RecalculateAccessibleChecks to use the logic ReachabilitySearch.
* Reverted DoorUnlocked changes.
* Added recalculate_accessible_checks debug console command.
* Skip CanBuy check when calculating accessible checks, it spoils that some items can't be bought with the current wallet.
* Set RAND_INF_ZELDAS_LETTER.
* Don't add locations to the pool when calculating accessible checks.
* Save and Load randomizer trick options.
* Get the number of used small keys.
* Added check if bean was planted.
* Show number of Accessible checks in each Area.
* Accounted for missing RG_POCKET_CUCCO in logic HasItem and ApplyItemEffect.
* Show accessible checks via an icon.
* Check shop price against current wallet.
* Recalculate Accessible Checks in CheckTrackerLoadGame instead of LoadFile.
* RecalculateAccessibleChecks on save.
* Don't unset Zelda's Letter.
* Added Only Show Available Checks checkbox.
* Rename Accessible Checks to Available Checks.
* Added option to Enable Available Checks.
* Remove debug console to recalculate available checks, this can now be done by toggling Enable Available Checks in the settings.
* Remove extra requiredTrial.
* Default "Hide unshuffled shop item checks" unchecked.
* Updated GetSmallKeyCount to return int8_t.
* Default AmmoDrop to true until the setting is implemented.
* Fixed Sleeping Waterfall timesaver.
* Updated Only Show Available Checks to let Show Hidden Items reveal hidden available checks.
* Revert "Don't unset Zelda's Letter."
This reverts commit 4b5903940f.
* Set RAND_INF_ZELDAS_LETTER.
* Revert "Fixed Sleeping Waterfall timesaver."
This reverts commit 9b62fd5297.
* Added isMagicAcquired to Logic::HasItem.
* GetDungeonSmallKeyDoors return static emptyVector.
* Comment out AmmoCanDrop in ResetLogic.
* Added location_access CanBuy todo.
* Reverted Get and Set SmallKeyCount to use uint8_t and handled -1 keys.
* Added todo for MQ Water GetUsedSmallKeyCount.
* copy n64 pal 10
doing this so i can check diffs i make
* transfer german->jp icon item
* overlays, message data, icon item jpn, audio, code
todo: title_static, gameplay keep
* add kanji and fix title cards
* title static
* spell folder correctly
* boss title cards, do action, icon item, item name, map name
* headers for jpn stuff
* gameplay_keep
* Scenes, audio, jp text extraction, rom support, overlay fixes, sheik & darunia
todo: test & disable darunia fix cvar for ntsc
* msgptr init fix
* icon item offsets
* comment out title cards until zapd can fix itself (we extract these in a different file anyway)
* compile and font implemented to get past title screen
* file select
* message, kaleido and everything else but rando
* uintptr_t
* rando and custom messages working!
* ntsc-j 1.0 support
* n64 logo?
* copy ntsc 10 to 11
* ntsc 11 extraction
* change title version names
* copy ntsc 11 to 12
* ntsc 12 extraction
* clean up some todos
* re checkout submodules post merge
* fix US filename
* support cross-version filenames
* add new versions to non-mq list
* use correct message table init
* Fix ntsc nes message table overriding pal nes message table
* actual fix, allows extraction
* fix file name using wrong font of file being hovered over
* Fix barinade crash
* re-add pal
* better jabu fix and revert LUS
* fix gerudo title cards
* better better owl select
* more owl fixes
* build
* fix some name decode issues
* Switch Language Mid Text
* Fix PAL displaying for JP filenames
* Fix AskToEquip Crash
* Disable Credits Timing Fix on NTSC
* Fix JP Text positioning
* basic language switching (BIG todo: file select, title screen)
* Title Screen Hopefully working
* add ntsc to linux appimage stuff, TODO: add .v64/.n64 support
* Update OTRExporter
* Fix pause to decide offset
* Fix bomb item name crash
* fix fire arrows and PoH
* builds
* update asset changes and fix menu language changing
* fix name decode
* Fix crashes and add rando/boss rush select stuff
* Revive debug feature by setting language cvar too
* Fix ocarina text speed softlock, and update jp text speed changes
* Merge remote-tracking branch 'upstream/develop' into NTSC
* Fix options menu and let pal use japanese fully
* Resolve some suggestions
* match up gTextSpeed changes to english (still broken!)
* Fix text speed crash
* Set default filename language on save init funcs
* bump otrexporter
* Display same correct info for n64 ntsc-j and ntsc-u
* quicktext more closely aligned with decomp
* linux appimage v64/n64 checksums
* bump zapd
* Credits Fix Tooltip Adjusted
* update supported hashes json
* update shasums to include JP n64
* * fixes softlock when talking to Mido without Kokiri Emerald after killing Gohma
* * moved scene check to hook
* moved vanilla conditioon into GameInteractor_Should
* * corrected hook condition
* removed 'this'
* * reverted GameInteractor and hook_handlers
* changed actor to use existing hook
* * updated kokiri emerald conditions
* * missed parentheses
* * Overworld pretty much done.
* Known issue with Market Night + 2 bushes in KF
* Known issue with Adult bush in ZR
* * fixed locations post-merge
* * renamed option and types to 'GRASSANITY'
* changed grassnity to be a combobox option
* added first 5 deku tree locations
* * color is a sickly green when containing a check
* added ZR 14 (adult only bush on the platform, not the same?)
* * forgot to rename the files to grassanity
* updated draw method to fix regrowing grass
* Removed old WIP locacc files
* * removed comments in bush actor
* added rest of Deku Tree plus MQ
* Added DC + MQ
* Fixed DC incorrect pos value on 1 loc
* JJB done minus after big octo
* Added BotW + MQ locs
* WIP grottos
* Grottos done
* Workaround to allow market grass during night
* Seperated the 2 KF bushes into 4 checks
* Hints and additional formatting
* Slightly less ghastly color
* Corrected the 2 JJB locs
* * Renaming and removal of some locs.
* Restructure in z_en_kusa.c to leave vanilla code alone.
* Formatting.
* * see previous (forgot to stage woops)
* * Clear grassIdentity on item drop
* Added check for RC on RandoDraw function
Results in no extra dupe drops, and instantly correct the color of the grass when cut instead of on collecting the item.
* * fixed dupe location spoiler names which caused occasional crash when writing spoiler log
* * reverse should
* * fixed faulty locations
* * corrected KAK location names and some formatting
* * Fixed market bushes by tree not working at night
* * merged ZR near PoH grass into a single loc
* * Changed to ShipInit (might be missing something?)
* Corrected Should in z_en_kusa.c to use original draw func when setting is Off
* * Renaming to Shuffle Grass
* * minor fix
* * keyboard fail lol
* * suggestions
* * removed unused function
* * move grass locations into ShuffleGrass
* move grass GameInteractor into GIVanillaBehavior
* minor fixes
* * pre-removed locs from dungeon.cpp
* * pre-remove from context.cpp
* * re-added Grass to context
* * added Dana's amazing custom bush models
* using CSMC to display flowers based on "contents"
* * added Dana's grass models
* refactor to lessen the clutter in the switch
* * removed fairy case
* Added back missing Deku Tree locations
* formatting
* Update soh/soh/Enhancements/randomizer/location_access/overworld/zoras_river.cpp
Co-authored-by: Philip Dubé <serprex@users.noreply.github.com>
* re-added suggestion from previous
* removed wrong line >.>
---------
Co-authored-by: Philip Dubé <serprex@users.noreply.github.com>
* Prevent spoiling dungeons in check and item trackers if MQ is set to Selection, but selection for specific dungeon is Random.
* Account for other options using "Set Dungeon Quests".
* Add menu files, hook menu up to window system.
Temporarily rename new menu's UIWidgets to UIWidgets2 to allow both menu systems to coexist temporarily.
* Finish implementing new menu.
Rename 2ship UIWidgets to UIWidgets2 to complete facilitation of both menus working for now.
* More preliminary setup
* More prepwork, begin on settings options
* Finish settings, add enhancements windows
* Fix search function not looking past first columns.
* Add dev tool windows
* Finish dev tools
* Add about window
* Fully replace about window
* Remove moved menu items from menubar, add more windows to new menu
* Implement WindowButtonOptions.
Add ability to not embed popout windows when not popped out.
Add ability to hide the button for WindowButtons.
Fix Entrance Tracker from showing when not enabled.
* Fix entrance tracker settings embedded display.
Fix entrance tracker settings window original size declaration.
* Initial implementation of themed radio button widget.
* Move "About" section to second column of general.
Fix sidebar sections starting in second column.
* Restore Entrance Tracker `Draw()` to allow for custom styling.
* Fix combobox positioning formatting.
Fix color picker end spacing.
Convert everything in check tracker settings to UIWidgets2 (except color pickers and section headers).
Make all tracker windows not embed.
* Minor cleanup
* Fix main volume defaults & mirror jitter fix removal on dev
* Improve color picker with RGB/RGBA options. Not finished.
* Finish creating CVarColorPicker and implement for Check Tracker background color.
Fix tracker and network prefixes.
* Finish check tracker settings and convert check tracker.
* Port all Cheats menu except for Beta Quest
* Port over Beta Quest to new menu
* Remove old cheats menu
* Port cutscene skips to modern menu
* Port Timesaver Enhancements to new menu
* Port the Items and Item Count Messages submenu
* Port Difficulty Options to new Menu
* Removes options that have been ported thus far.
* Port "Reduced Clutter" options to new menu
* Add forgotten callbacks to Hyper Enemies/Bosses
* Copy StateButton to UIWidgets2, and implement custom padding for them in the tracker.
* Ports some pause menu related settinga
* Change tracker window active title color.
Make state buttons smaller in tracker to get more info on screen.
* Convert window title active theming to all windows.
* Port the rest of Enhancements->Gameplay to new menu
* Port the "Graphics" Enhancements to new menu
* Ports Fixes over to the Modern Menu
* Ported Restorations to Modern Menu
* Ported Extra Modes to new menu
* Port Autosave and Boot Sequence to modern menu
* Cleans up some leftover data for ported buttons
* Ports Enhancement Presets to new menu
* Port Additional timers to new menu. Removes Enhancements from old menu
* Cleans up some unused stuff
* Ports Randomizer Enhancements to modern menu
* Convert Item Tracker Settings. Something's wrong with the comboboxes in a second column of a table.
* Fix combobox alignment and label position calculations.
* Convert Entrance Tracker window.
* Save Editor Info tab finished.
Added `PushStyleInput` and `PushStyleTabs` for Info tab.
Fixed some indentation in entrance tracker source.
Added font push to tracker windows.
* Increase size of all icons in save editor.
* Convert flag groups to child windows for automatic sizing and border drawing.
* Flags tab completed.
Finished inventory tab.
* Convert save editor help hover to UIWidgets2.
* Various fixes and corrections
* Start cosmetics editor, fix theme colors not updating
* Cosmetics editor conversion progress
* Remove Mac internal resolution restrictions.
* Copy over advanced resolution partial and enable most options as a custom widget.
* Add size to float sliders, more cosmetics editor progress
* Fix incorrect cvar for notifications
* Radio button & header color options, more cosmetics editor progress
* Finish cosmetics editor conversion
* Create and apply THEME_COLOR macro. Resides in SohGui for easy access to mSohMenu.
* Move ResolutionEditor to SohGui directory.
* Add labels to build info.
Fix slider width calculations.
* Fix some advanced resolution widget hiding.
* Fully implement Advanced Resolution options.
Fix graphics settings formatting.
Improve slider label position calculations.
Implement Clamp options on sliders.
* Finish save editor.
Convert save editor code to `using namespace UIWidgets2`.
Fix search crashing on time splits window.
Remove `SetLastItemHoverText` from `UIWidgets2`.
* Unify cvar sectioning in time splits.
* Add InputString and InputInt widgets, and corresponding CVar Widgets
* Adds Widget Type for Inputs, not currently used.
* Convert Sail to modern menu
* Add Combobox that takes a vector of std::strings
* Convert checkbox and combobx to new widgets
* Add Tristate checkbox
* Convert sliders and tristate checkboxes
* Convert top half of Rando window
* remove/replace remainder of UIWidgets usage in option.cpp
* Converts tricks, locations, and removes old UIWidgets refs
* Fix windows build errors
* Remove Tri-State checkboxes
* Use PushStyleInput instead of PushStyleSlider
lol oops didn't realize it was a thing in Ship.
* Rebase and address review comments
* Convert Crowd Control to modern menu.
* Fix build error
* Audio editor progress
* Re-add CVar SaveOnNextFrame calls to Resolution Editor.
Remove old Resolution Editor files.
* Convert TimeSplits to new menu.
Fix a few enum warnings.
* Decrease padding on Arrow Buttons
* Audio editor + gameplay stats done
* Give Randomizer Menu more screen real-estate
* Port plandomizer menu
* Fix slider width calculation and allow combobox LabelPosition::None
* Fix None labelPos and slider width for inline labels
* Fix all slider value label insertions.
Convert Collision Viewer.
* Minor Collision Viewer enum change.
Convert Actor Viewer.
* Theme/convert Message Viewer.
* Add font to Message Viewer.
Theme Value Viewer.
* DL Viewer and SohModals themed.
* Convert Input Viewer.
* Missed some color settings in Input Viewer.
Removed UIWidgets references from Controller Config, and restored SoH version.
* Remove UIWidgets.hpp include from multiple files.
* Completely remove old UIWidgets.
Rename UIWidgets2 to UIWidgets.
Move Accessibility and Language options to new menu.
* Fix Gfx Debugger not showing up.
Remove menubar registration.
* Fix clearCvars references.
* Fix passing std::string to const char* argument.
* enum name spacing
---------
Co-authored-by: aMannus <mannusmenting@gmail.com>
Co-authored-by: Christopher Leggett <chris@leggett.dev>
* Autosave interval based
* Move to save on soft reset, remove adjustable interval
* Use new BeforeExitGame hook to prevent non-existent data problems
* Fix check tracker crash, remove BeforeExitGame hook
* update comment