* Begin GameInteractor
* Basic skeleton of PoC
* WIP
* First 2 CC effects transitioned to GameInteractor
* Prepare GameInteractor classes for CrowdControl
* More effects & replace chaosEffects with GameInteractor
* CC connection fixes & all CC effects (enemy spawns still borked)
* First couple of build error fixes
* Fix build
* Proper enemy spawning
* Clean up old CC code
* Extract link size/invisibility into GameInteractor
* Small fix/cleanup
* Suggestions for PR
* Address PR comment
* Addressed more comments & small adjustments
* Fix crash when spawning enemies
* Remove Remove()
* Move checks into Apply() and move CC and some console commands to it
* Use inheritance to abstract check on application
* Rename prefix Actions with RawAction
* Make Remove return a Result
* Fix issue with compilation
* debugconsole -> GameInteractionEffects progress
* Add State in GI
* Unify some Effects
* Port more debug console items
* Remove state modifyiers from raw actions
* Port over last raw action / state in console
* Adjust some types
* Consolidate link size modifier effect
* Adjust more types
* Define category strings in CC
* Clean up remaining non defined strings
* Fix bug in timed effects
* Rename old pack
* CC fixes
* Translate GI enum function
* Console cleanup/fixes/consistency
Co-authored-by: David Chavez <david@dcvz.io>
* fix: add missing comma to fix oob
* bring back some old rupee names, remove some that don't render properly
Co-authored-by: briaguya <briaguya@alice>
* Add enhancement for dog following you everywhere
* Persist dogParams to save file
* Make doggo float in water
* Wrap change in cvar condition and update cvar usage
* Finish translations for Map Select
* First Pass
* TWEAK: Add back Japanese as default to conserve vanilla
* TWEAK: replace some array with structs + some translations
* TWEAK: loading messages [TODO: proper translations]
* TWEAK: forgot to push z64.h for loading messages + translated scene type
* TWEAK: spacing
* TWEAK: comment
* TWEAK: Small german OPT position
* TWEAK: german typo
* TWEAK: translation to cutsceneLabels
* TWEAK: Nabooru's name + Lairs
* TWEAK: Updated Cvar to new way to call them
* ADD: German
* Debug localization
* TWEAK: Age
They are noted as a flag thingy and not a literal age
* Tweak: Frogot the Great Fairy
* TWEAK: adressed comment
Co-authored-by: Amaro Martínez <xoas@airmail.cc>
* audio & rendering backend option greyed out if theres only one
* add audio fallback code
* InitializeAudioPlayer/WindowManager add param
* string -> string_view
* Revert "audio & rendering backend option greyed out if theres only one"
This reverts commit e94a7fff50.
* revert lus changes
* moved fallback function to LUS
* use audioplayerbridge
* full health spawn
Co-authored-by: MoriyaFaith <46070717+MoriyaFaith@users.noreply.github.com>
* add enahancement to gamemenubar, update to use new cvar method names, simplify save loading logic so loading a save with less than 3 hearts spawns with full hearts with enhancement enabled instead of spawing with 3
* formatting
Co-authored-by: MoriyaFaith <46070717+MoriyaFaith@users.noreply.github.com>
when pulling in documentation i missed a couple returns
this was causing mido to never stop blocking the path to the deku tree
after searchign the codebase, i found two instances of this mistake
this pr fixes them
Co-authored-by: briaguya <briaguya@alice>
* Update BUILDING.md
Adds a note to be sure to pull in libultraship when building for Windows
* Fix syntax for consistency
* Maybe this is better?
I'm doing great. XD
* New function: overlay text duration in seconds.
`Overlay_DisplayText` took a float as an argument, with no clear indication of what that float represented. That float also evaluates to different durations given different frame rates. However, since we know what the frame rate should be at any given time (since it's stored in a CVar) we can calculate what this duration should be based on the number of seconds we want the overlay to be displayed. That's what `Overlay_DisplayText_Seconds` does.
* Adds Slider for Overlay Sequence Name Durations
* sync 3ds upstream logic changes for boss rooms
* add boss shuffle settings and handling to 3ds code
* add boss shuffle handling to game code
* repair authentically bugged entrances for boss shuffle
* add boss entrances to the entrance tracker
* unset hint area for boss rooms to fix altar hint
* update boss reward hints to not mention dungeons
* one more boss heart container hint fix
* reorder entrance rando funcs
* support closed forest with boss shuffle and simple boss room entrance pairs in shuffle table
* fix death warp in boss rooms without saving; fix KD boss room in tracker
* remove boss shuffle check from dungeon open checks and some cleanups
* add boss shuffle to preset clear
* remove dungeon entry exit connection from boss rooms
* another no hint fix for boss shuffle
* undo change for exact location hints
* clarify comments
* Added too much
* Added 3d settings and brought over to soh
* fixed conditionals for replacing LA hint
* whoops
* Finshed making settings consistent; minor text edit
* fix leftovers from adding warp hints
* more fixes from merge
* fix skull hint messages
* Added fire temple goron junk hints; menu stuff
* Address feedback
* Added optional scrub text
* whoops
* Add hint cvars to clear preset func
* whoops again
* whoops the third
* ADD: French Pass
* FIXED: Dampe + Skull Reward
* TWEAK: German skulltula hint
* TWEAK: French oopsie
* Address feedback
* whoops
* remove "staticness" from altar/ganon text funcs
* ADD: German
* actually add warp song hints to things;
always generate ganon hint and let OTRGlobals handle showing it
* Fix CVar Getters
* whoops
* for real this time
* Actually implemented scrub text in 3d rando
Co-authored-by: PurpleHato <linkvssangoku.jr@gmail.com>
* Adds option to add higher pitches to silver rupee jingle.
Some rooms in Master Quest had 10 silver rupees, but the game was programmed to only play the jingle 5 times and then just went silent for the rest. This option adds 5 more transposition values to the array, and an option to play them (so that authentic behavior is preserved by default).
* Adds the new option to Vanilla Plus preset and up
Also adds it to the list to be reset back to 0 when applying the default preset.
* Changes display name of checkbox.
* Change CVar_GetS32 to CVarGetInteger
* Adds option for showing sequence names on the overlay
Allows sequences to appear on the overlay in the bottom right corner for a few seconds whenever a new one is loaded into the primary sequence player. This means it does not apply to fanfares or enemy bgm. Fanfares I chose not to display because it would cause a lot of text to display back to back in some areas, and enemy bgm would have some technical challenges with this due to the way it loads. Mainly because the Lost Woods music would load in Goron City the same way (as well as the opposite).
* Fixes crash when a sequence without a name is attempted to be displayed.
* Removes accidentally committed CMakeSettings.json
* Updates CVar_GetS32 to CVarGetInteger
* Adds lock/unlock all buttons to Cosmetics Editor.
Adds Lock All and Unlock All, which locks all visible cosmetics options (i.e. does not lock the advanced options if Advanced isn't checked, just like the existing randomize all buttons), and a Lock All Advanced and Unlock All Advanced button that is only visible while the Advanced Options are enabled.
* Updates latest develop and CVar API Changes.