Commit Graph

2203 Commits

Author SHA1 Message Date
PurpleHato
5d6f20bf55
Frenchsanity (translations) (#4817)
* Most of french rando message

* Should be all

* Plural

* Better wording

* forgot one

* Update soh/soh/Enhancements/randomizer/3drando/hint_list/hint_list_exclude_dungeon.cpp

Co-authored-by: Philip Dubé <serprex@users.noreply.github.com>

* Update soh/soh/Enhancements/randomizer/3drando/hint_list/hint_list_exclude_dungeon.cpp

Co-authored-by: Philip Dubé <serprex@users.noreply.github.com>

* Missing ones

---------

Co-authored-by: Philip Dubé <serprex@users.noreply.github.com>
2025-01-08 05:58:52 +01:00
Pepper0ni
ad596387c6
Stop Adult Anju from breaking (#4767)
* stop anju from breaking

* remove comments

* remove whitespace
2025-01-08 05:50:24 +01:00
Philip Dubé
51fcf4d2c6
Add trick for using blue fire on mud walls (#4810) 2025-01-08 05:49:55 +01:00
Pepper0ni
349aac10be
Fix some flipped entrance data in Entrace Rando (#4828)
* fix a reversed entrance entry

* whitespace pls

* fix market entrance IDs
2025-01-07 21:33:18 -05:00
Archez
a00df04ffd
Fix Naborru fight CS for child and with entrance skips (#4821) 2025-01-07 18:54:48 -05:00
Philip Dubé
47ba512351
Clean up enemy logic (#4816)
* Fix logic thinking naked adult can clear wolfos grotto

Use CanKillEnemy more

* GERUDO_WARRIOR. Can defeat with a lot more than swords

* one more flare dancer

* Put defeating Gerudo Warrior with slingshot/bombchu behind trick
2025-01-07 19:32:52 +01:00
aMannus
61a1d12ffe
Fix shuffled fairies despawning (#4823) 2025-01-07 19:32:20 +01:00
Pepper0ni
6ec71964a1
fix ITEM_00's giving twinrovas check (#4820) 2025-01-06 14:36:12 -07:00
Pepper0ni
cb738306d8
Actually fix issues with log settings (#4813)
* remove taking settings from a loaded spoiler instead of the imGUI settings

* actually fix most SpoilerLoad issues

* fix vanilla saves making future generations have so settings

* remove extra comment
2025-01-06 07:34:51 +01:00
Philip Dubé
2f8bb02502
fix assertion error due to CanUse(RG_BRONZE_SCALE) (#4814) 2025-01-05 22:36:04 -07:00
Philip Dubé
7267b47a83
check tracker: don't show GS from wrong quest when always showing GS (#4803)
* check tracker: don't show GS from wrong quest when always showing GS

also fix comparing `char*` to `""`

* IsQuestOfLocationActive
2025-01-05 19:36:34 +01:00
aMannus
23466e5a5e
Freestanding Shuffle fixes & extract to separate file (#4808)
* Freestanding fixes

* Copy paste fail

* Temporary vanilla items fix
2025-01-05 19:10:46 +01:00
Pepper0ni
700c1a808d
remove taking settings from a loaded spoiler instead of the imGUI settings (#4812) 2025-01-05 19:09:04 +01:00
aMannus
537a57c361
Introduce in-game Randomizer Settings menu, remove plando mode (#4804)
* Initial mockup

* Rip out part of plando mode, implement rando settings menu

* MVP new randomizer flow

* Translation support and code cleanup

* Fixes and more cleanup

* Fix whoopsie

* Fix whoopsie 2
2025-01-05 18:42:45 +01:00
Pepper0ni
55e1af9e81
Fairysanity (#4744)
* Define VB for fairy group spawning

* Add skeleton of new files for fairy shuffle

* Add option to enable/disable fairy shuffle

* Add field to fairy entities to hold randomizer data

* Expose the current grotto id, or find it if not shuffled

This is necessary since, unlike chest or scrub grottos,
fairy fountains, lacking any elements that would normally
differ between grottos, often have identical respawn data.
This change enables fairy shuffle to correctly identify
which fairy fountain was entered so it could load the right
checks.

* Initialise fairy groups if detected

* Randomize first set of fairies

* Make randomized fairies collectible

* VBify fairy healing customization

* Add remaining grotto fairies

* Add remaining fairy group spawns

* Override bean sprouts spawning fairies

* Define bean sprout fairy checks

* Add HasItem and CanUse entries for magic beans.

* Define logic for bean sprout fairies

* Enabling looking up fairies by z coordinate

* Add Temple of Time Gossip Stones

Logic might look a little weird. While the Gossip Stones
respond to Sun's Song, the scene transition takes priority,
so the fairies aren't actually obtainable. Adult does not have
day and night versions and is fully capable of acquiring the
fairies with Sun's Song.

Song of Time is similar, but rather than being dependant on
age, it's dependant on the timesaver to switch ages anywhere
with Song of Time. In this case, the fairies still spawn,
but the age transition deletes them before giving the chance
to collect them. While I could've chosen to ignore this and
simply require the player to disable the enhancement before
playing if it's their only option, I instead decided to
accomodate the enhancement and require one of the other songs
in order for the check to be in logic.

* Disable quick age change around gossip stones to simplify logic

* Add remaining gossip stone fairies

* Finish gossip stone fairies

* Add Desert Colossus Oasis

* Restrict fairy type

Somehow, it was previously possible for Navi to get detected
as a randomized fairy and rendered as an item. I was not
able to reproduce the behavior, but this should prevent it
from happening again.

* Add overworld special fairy spots

* Add mini-dungeon fairy song spots

* Add remaining dungeons except Shadow

* Add Shadow Temple fairies

* Add fairy check flags to the save editor

* Filter fairy checks from check tracker

* Add hints for fairy checks

* get fairysanity as far as I can for now

* fix a few obvious issues

* now builds

* try to convert FairyOnVanillaBehaviorHandler to vardic args

* convert RegisterFairyCustomization to REGISTER_VB_SHOULD

* fix some generation issues

* remove the list of fairy locations

* fix up logic

* more logic changes for gossip stones

* try silly thing for windows

* more stupid

* more dumb testing

* more testing

* small fixes

* implement inside fence storms fairy

* add inside fence storms fairy to logic

* remove duplicate hints (stupid conflicts)

* oops

* Rewrite game interfacing code of fairy shuffle

* Better function names

---------

Co-authored-by: Angel Bulfone <mbulfone@gmail.com>
Co-authored-by: aMannus <mannusmenting@gmail.com>
2025-01-05 14:52:27 +01:00
aMannus
7021230fd5
Fix jabu pot locations (#4811) 2025-01-05 13:42:08 +01:00
aMannus
f8fa4416de
Port over ShipInit from 2Ship (#4756)
* Port over ShipInit and transform Moon Jump as example

* Clean up moon jump

* Updated moon jump structure & cvar defines
2025-01-05 10:48:49 +01:00
inspectredc
f0b02d6c7e
Custom Tunics (#4774)
* Custom Tunics

Co-authored-by: MoriyaFaith 46070717+MoriyaFaith@users.noreply.github.com

* Works for necessary scenarios

* make variable static again
2025-01-05 10:05:12 +01:00
Pepper0ni
91720a3857
Fix forest tooltip again and fix logic issue in fishanity age split (#4801)
* first forest tooltip again

* Fix logic issue with fishanity age split
2025-01-05 09:38:35 +01:00
Malkierian
bbc4cc3305
Fix shield invert tooltips and X-axis application (#4802)
* Update Forest and Carpenters CVars in the migrator.

* Fix shield invert tooltips and X-axis application.
2025-01-04 00:41:14 -07:00
Malkierian
8648cdeca5
Fix the GBK give after completing the triforce in triforce hunt. (#4800) 2025-01-03 15:40:30 -07:00
Pepper0ni
a9113aa7ba
set the logic context to the main save when initing the save (#4796) 2025-01-03 10:04:57 -07:00
Jordan Longstaff
1b6508556d
Fix Broken Giant's Knife flag not resetting (#4608)
* Fix Broken Giant's Knife flag not resetting

* Force setting on in rando

* Fix flag when checkbox is toggled
2025-01-03 00:16:03 -07:00
Jordan Longstaff
1a040b3198
Skip Ganondorf boss battle intro (#4693) 2025-01-03 00:14:49 -07:00
briaguya
822d93880d
bump lus (#4793) 2025-01-02 23:52:30 -07:00
Malkierian
f5b5690361
Make Let It Snow toggle always visible in Silly Cosmetics. (#4759)
* Make Let It Snow toggle always visible in Silly Cosmetics.

* Add tooltip.
2025-01-02 23:44:47 -07:00
Philip Dubé
5155905efa
fix 3 trick locations from spirit to ice cavern (#4792) 2025-01-02 23:07:40 -07:00
Philip Dubé
6133ebe135
cleanup indentation around trees drop sticks (#4778)
* cleanup indentation around trees drop sticks

* combine the range check
2025-01-02 23:07:14 -07:00
Jordan Longstaff
7e481c3f69
Rename code file for inventory functions (#4783) 2025-01-02 23:06:50 -07:00
Philip Dubé
d70c061c5e
minigames: render ammo even when out-of-minigame ammo is infinite (#4785) 2025-01-02 23:06:27 -07:00
Philip Dubé
fceb083dc0
check tracker: fix Clear (#4791)
when pressing Clear the input is cleared but list was not updated
2025-01-02 18:22:15 -07:00
Pepper0ni
0544c494e6
Fix 2 broken rupees in ice cavern (#4789) 2025-01-02 14:43:56 -07:00
Pepper0ni
237f8b903a
Fix scarce and minimal item pools removing shuffled sticks and nuts. (#4787)
* fix scarce and minimal item pools removing stick and nut upgrades when they are shuffled.

* improve clarity
2025-01-02 14:12:12 -07:00
Pepe20129
966a86c508
Tricks Cleanup (#4740)
* Quick cleanup

* Re-add experimental tag

* Cleanup and small explanations

* Implement RT_DAMAGE_BOOST_SIMPLE & RT_HOVER_BOOST_SIMPLE

* Update tricks.cpp

* Move glitch status to a tag

* Fully remove the unused LENS & BKSKIP tags

* Enable some disabled tricks

* Add RT_ZF_GREAT_FAIRY_WITHOUT_EXPLOSIVES
2025-01-02 09:44:30 -07:00
Pepper0ni
0d0e03bedc
fix cheese logic (#4786) 2025-01-02 09:44:15 -07:00
Pepper0ni
396e2fd5ff
fix freestanding tracking (#4782) 2025-01-01 15:09:23 -07:00
Philip Dubé
4c6a2a4b64
fix potsanity looking at deku tree MQness when dealing with pots between quests (#4773)
* fix potsanity looking at deku tree MQness when dealing with pots between dungeons

also don't need a loop for a range check

* share logic between placing freestanding & pots

* fix settings typo

* fix all freestanding items still being shuffled

this reinstates original freestanding method of filling in unused locations,
but also extend logic so that when only dungeons have freestanding shuffled
we don't render overworld freestanding as 3d versions until collected

* lift optimization check
2025-01-01 13:26:41 -07:00
Extloga
21e55563b4
Additions and fixes for two translations in hint_list.cpp (#4771)
* Fixes for the German translation in hint_list.cpp

* Additions for two translations in hint_list.cpp

* Fixes for two translations in hint_list.cpp

* Fixes for two translations in hint_list.cpp
2024-12-29 08:30:31 -07:00
Pepper0ni
32c20b6ebe
several small fixes (#4762) 2024-12-26 11:51:16 -07:00
Archez
61e91526cd
Fix transition wipe not rendering properly (#4757) 2024-12-26 08:26:04 -07:00
briaguya
f7b8ddccfd
don't use magic numbers in EnItem00_CustomItemsParticles (#4728)
* don't use magic numbers in `EnItem00_CustomItemsParticles`

* Update particle enums, add deku/stick bag RGs (#377)

---------

Co-authored-by: aMannus <mannusmenting@gmail.com>
2024-12-25 21:18:20 -07:00
Philip Dubé
3ac06d4afc
fix missing newline in merchant option text (#4758) 2024-12-25 21:16:42 -07:00
Malkierian
2dccacc7f9
Change Kakariko Guard Gate Exit destination name to Bottom Exit rather than Middle. (#4752) 2024-12-25 21:14:35 -07:00
Pepper0ni
1f99dcf56a
Clean up Kakariko logic and fix some errors, move AtNight into CanGetNightTimeGS. (#4748)
* fix kakariko logic

* Update soh/soh/Enhancements/randomizer/3drando/location_access/locacc_kakariko.cpp

Co-authored-by: Pepe20129 <72659707+Pepe20129@users.noreply.github.com>

---------

Co-authored-by: Pepe20129 <72659707+Pepe20129@users.noreply.github.com>
2024-12-25 21:14:21 -07:00
aMannus
1c2fbba709
Convert audio sliders from float to int (#4709)
* Audio sliders float -> int

* Implement migrator

* Must construct additional if statements
2024-12-23 12:35:56 -07:00
Pepper0ni
e8cf9a61cc
Fix fortress pots being considered dungeon in pot replacment (#4749)
* Fix fortress pots being considered dungeon in pot replacment

* change to use IsDungeon, make IsDungeon cleaner
2024-12-23 19:16:53 +01:00
Philip Dubé
781bbb85ae
remove out of bounds array access, matching upstream fix (#4751) 2024-12-22 23:05:04 -07:00
Pepper0ni
9ea9100787
Freestanding Rupees/Hearts Shuffle (#4686)
* Enable freestanding items other than heart pieces and keys

* Add option to disable freestanding rupee & heart shuffle

* Add items to pool

* Actually add shuffle setting

* Define overworld locations

* Add logic for overworld freestanding checks

* Add freestanding items for child dungeons.

* Add checks for Ice Cavern and Bottom of the Well

* Add checks for Forest Temple and Gerudo Training Grounds

* Add checks for Fire Temple and Water Temple

* Add Shadow Temple checks

This does not include the spinning pots rupees, even though
they're included with freestanding rupees in the N64 randomizer
as they would require dedicated overrides for the code for
the pots in question.

* Define Spirit Temple and Ganon's Castle hearts

* Add remaining checks to dungeon definitions

* Fix missing logic

* Add freestanding checks to Save Flags Editor

* Fix flags for Zora Fountain underwater rupees

* Add option to enable freestanding shuffle for either dungeons or overworld

* Add missing MQ checks and fix mac & windows compile error

* Improve description and add hint text

* Update logic for Bombchu fixes

* Add missing Spirit Temple MQ hearts

* Add missing settings entries

* Actually add Forest Temple trick to the tricks menu.

* Re-add Ice Cavern lobby rupee

* go over MQ logic

* review logic on non-MQ checks

* convert all freestandings to location based

* add option enum and fix jabu exit logic

* fix mislocated freestandings

* fix mislocted freestandings

* Fix some mislocationed checks

---------

Co-authored-by: Angel Bulfone <mbulfone@gmail.com>
2024-12-22 11:16:00 -07:00
briaguya
ff24581281
Fix actor inits happening too early (#4742)
* fix dogs not running

* clean up kak gs fix

* clean up scrub leader fix
2024-12-21 08:08:48 -07:00
Pepe20129
6fb974bfeb
Rando Cleanup (#4741)
* Delete empty files

* Small Cleanup

* Remove some now useless comments

* Re-add log
2024-12-21 08:08:40 -07:00