Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
122 commits
Select commit Hold shift + click to select a range
fba74af
Port over the logic trick data
ScipioWright Mar 29, 2025
ea64d7b
Port the rest of the logic stuff over
ScipioWright Mar 30, 2025
0bb1db7
Fix cath elevator rule
ScipioWright Mar 30, 2025
bbf493b
Some fixes, putting the logic into the reachable regions and reachable
ScipioWright Mar 30, 2025
72a5866
Convert a thing
ScipioWright Apr 5, 2025
ad2be89
Port over ER fix
ScipioWright Apr 5, 2025
0d4bb53
More progress on LS
ScipioWright Apr 6, 2025
b079bbd
Finish adding portal pairing versions of LS rules
ScipioWright Apr 6, 2025
379e24e
Put the stuff together to let portal pairing know about logic tricks
ScipioWright Apr 6, 2025
df055ca
Make UpdateReachableRegions look at trick logic
ScipioWright Apr 14, 2025
125f979
switch case to if tree for trick difficulty inventory additions
ScipioWright May 4, 2025
ce58860
Makek PopulatePrecollected create a dictionary instead of a list, so …
ScipioWright May 4, 2025
6d1877d
Use precollected in ERScripts, swap most saveflag checks to use GetBool
ScipioWright May 4, 2025
be866e0
Add the options
ScipioWright May 4, 2025
4f27f36
Remove duplicate key
ScipioWright May 4, 2025
527acf4
Remove another duplicate key
ScipioWright May 4, 2025
cc4b570
Fix the SubStrings
ScipioWright May 4, 2025
424e246
Add some missing connections
ScipioWright May 4, 2025
8541016
Remove DestIsRegion, just add spots you get knocked out of ladder sto…
ScipioWright May 4, 2025
411ecf5
Merge branch 'silent-destroyer:main' into logic-tricks
ScipioWright Jul 6, 2025
9bca9b2
More progress on LS logic
ScipioWright Jul 6, 2025
cb89ce6
Finish LS logic stuff
ScipioWright Jul 6, 2025
eaf1891
It works probably
ScipioWright Jul 7, 2025
eb7b1ed
Should be all working now
ScipioWright Jul 9, 2025
3076fe0
Logic tracker thingie when you press 8
ScipioWright Jul 10, 2025
d7d9f24
Fix bug with the portals
ScipioWright Jul 10, 2025
49612e8
Seemingly all works now
ScipioWright Jul 11, 2025
7c5c0a0
Make it give torch for free
ScipioWright Jul 11, 2025
076c232
Clean up imports, add try catch
ScipioWright Jul 13, 2025
a201de4
Make sure we're not modifying TraversalReqs by accident
ScipioWright Jul 19, 2025
92999b4
Merge branch 'main' into pr/127
silent-destroyer Jul 26, 2025
3b1e636
Merge branch 'logic-tricks' of https://github.com/ScipioWright/tunic-…
silent-destroyer Jul 26, 2025
9e5367f
Add options to Quick Settings menu
silent-destroyer Jul 26, 2025
09a7cda
Add settings to settings string copy
silent-destroyer Jul 26, 2025
3b79f79
Add options to mystery seed settings
silent-destroyer Jul 26, 2025
3495f08
Fix missing text
ScipioWright Jul 26, 2025
090bf20
Remove unused imports
ScipioWright Jul 27, 2025
f4d9ac0
Implement plando connections, make fixed shop use it
ScipioWright Jul 29, 2025
6266016
- Refactor the part that sets RandomizedPortals out of RandomizePorta…
ScipioWright Aug 3, 2025
198e7b7
Put in testing function for comparing bias for the two methods
ScipioWright Aug 4, 2025
d14ce7d
More refactors, this time item plando
ScipioWright Aug 10, 2025
80d0f28
More item plando stuff
ScipioWright Aug 10, 2025
cec95aa
Put the "figure out all the regions and items you can access" as its …
ScipioWright Aug 16, 2025
bf1f88a
merge hopefully
ScipioWright Aug 16, 2025
23e2185
3 portals function
ScipioWright Aug 16, 2025
b64d364
Remove old RandomizePortals, replace with the BP version (and rename …
ScipioWright Aug 16, 2025
c517554
Clean up laurels stuff
ScipioWright Aug 16, 2025
6a72ef0
Actually add pairing_only to inventory during pairing
ScipioWright Aug 16, 2025
f0d2a00
Refactor trick logic a bit so that it works with partial portal lists
ScipioWright Aug 16, 2025
745595d
Fix typo
ScipioWright Aug 16, 2025
d1259f2
More trick logic refactoring
ScipioWright Aug 16, 2025
e90bf4d
Finish writing CanUsePortal
ScipioWright Aug 16, 2025
3e8f2ca
Something to make sure all locations are actually reachable instead o…
ScipioWright Aug 16, 2025
2f9173e
Make FoxPrince file, get it partially done
ScipioWright Aug 17, 2025
020a717
More progress!
ScipioWright Aug 17, 2025
47fc936
Removed comboNumber and replaced it with comboTag, also it mostly wor…
ScipioWright Aug 18, 2025
a5aaebe
Fix some issues with PlandoPortals, seems much more stable now
ScipioWright Aug 19, 2025
01e6d6f
Add the option, fix up a bunch of issues that were revealed by the op…
ScipioWright Aug 19, 2025
e68ba84
Fix more bugs, it seems to work nicely with quit and continue now
ScipioWright Aug 19, 2025
140653b
Route it through a function so it's easier to edit it later
ScipioWright Aug 22, 2025
69ccfc9
Make RandomizePortals able to fail, so that it can fail when there's …
ScipioWright Aug 23, 2025
7bfaa8b
Use properties instead of methods in PortalCombo
ScipioWright Aug 23, 2025
c250d67
Add some logging for when it fails to find three portal choices for d…
ScipioWright Aug 23, 2025
3629ff1
Fix seed bleed issue in Fox Prince
ScipioWright Aug 23, 2025
c46199b
Make entrance tracker not crash
ScipioWright Aug 24, 2025
5c46072
Fix late-game break with fox prince
ScipioWright Aug 24, 2025
9fdf810
Make BPGetThreePortals a while loop instead, making sure we get at le…
ScipioWright Aug 24, 2025
f165a82
Add Fox Prince to readme
ScipioWright Aug 24, 2025
59bc3b7
Fix some more issues, realize why we put something where it was
ScipioWright Aug 24, 2025
64c3c87
Some more changes to make it work a little better
ScipioWright Aug 30, 2025
e933f72
Remove unused imports
ScipioWright Aug 30, 2025
880d11c
Make the wooden signs work in Fox Prince mode
ScipioWright Aug 30, 2025
8405bd4
Make it update sign on either end of the portal combo
ScipioWright Aug 31, 2025
a50e7bc
Unbreak easter egg and heir fast travel portals
ScipioWright Sep 1, 2025
454d792
Add WIP Entrance Selector + Dice Item
silent-destroyer Sep 6, 2025
0bffa39
Make reroll a little smarter
ScipioWright Sep 7, 2025
a8169a5
Make it cache (I didn't test this)
ScipioWright Sep 7, 2025
d216d6d
Make it work again
ScipioWright Sep 7, 2025
b7d84b1
Make it pause time, also fix a couple little bugs
ScipioWright Sep 7, 2025
3f99dba
Disable cleanup since it just seems to crash it and doesn't seem to a…
ScipioWright Sep 7, 2025
6766b0d
Make rerolls give unique options where possible
ScipioWright Sep 7, 2025
19173eb
Update freestanding dice item appearance
silent-destroyer Sep 10, 2025
15602cc
Make it pause while choosing a scene
silent-destroyer Sep 11, 2025
3447792
WIP item for pinning an entrance for later
silent-destroyer Sep 20, 2025
18fd0f2
Setup some early notes for the pinned portal thing
ScipioWright Sep 20, 2025
3f6b3b0
BP -> FP
ScipioWright Sep 21, 2025
b788563
Refactor some utils stuff from ERScripts to TunicUtils
ScipioWright Sep 21, 2025
b983a07
Improve the direction pair checking
ScipioWright Sep 21, 2025
83d4cbc
Make pins work
ScipioWright Sep 21, 2025
23059f6
Shop stuff
ScipioWright Sep 22, 2025
b345391
WIP add scene selection images
silent-destroyer Sep 29, 2025
d98e9ac
Fix caches not clearing
ScipioWright Sep 30, 2025
3f7d053
Make fairy spell skip adjacent entrances if they aren't found in FP mode
ScipioWright Oct 4, 2025
fd44150
Add slide up animation when showing scenes
silent-destroyer Oct 13, 2025
9475e00
Add UI indicator for pinned entrance
silent-destroyer Oct 25, 2025
cbbe731
Fix entrance tracker and walking out after loading
ScipioWright Oct 25, 2025
0adcca0
Fix shop portal images
silent-destroyer Oct 26, 2025
4ecb949
Merge remote-tracking branch 'upstream/main' into blue-prince
silent-destroyer Nov 8, 2025
4b58dd5
Fix weird scaling issue
silent-destroyer Nov 8, 2025
b907589
version bump
silent-destroyer Nov 8, 2025
8c9dc83
Merge remote-tracking branch 'upstream/main' into blue-prince
silent-destroyer Nov 9, 2025
73fc595
Merge remote-tracking branch 'upstream/main' into blue-prince
silent-destroyer Nov 16, 2025
2085778
Merge main into blue prince branch
ScipioWright Feb 1, 2026
440b992
Add dice and darts to item pool
silent-destroyer Feb 6, 2026
688a4cd
Add dice and dart items to the shop
silent-destroyer Feb 6, 2026
e5a3420
Fix fewer shops
ScipioWright Feb 8, 2026
cfea02a
Merge main into blue prince branch
ScipioWright Feb 16, 2026
33c9bf2
Fix spacing
ScipioWright Feb 16, 2026
45f540e
Remove debug messages
ScipioWright Feb 16, 2026
3753908
Update PlayerCharacterPatches.cs
silent-destroyer Feb 17, 2026
2300235
Merge remote-tracking branch 'upstream/main' into blue-prince
silent-destroyer Feb 17, 2026
6c2545c
Add koban item data
silent-destroyer Feb 18, 2026
2100ac8
Wrap entrance file in try/catch
silent-destroyer Feb 18, 2026
f7dd062
Add fox prince to quick settings menu
silent-destroyer Feb 18, 2026
a45dd87
Add fox prince to settings string + mystery seed weights
silent-destroyer Feb 18, 2026
0d0c356
generating
silent-destroyer Feb 18, 2026
26a8c61
fix entrance tracker stuff
ScipioWright Feb 18, 2026
f13cc52
Merge remote-tracking branch 'upstream/main' into blue-prince
silent-destroyer Feb 18, 2026
7d17a04
Merge remote-tracking branch 'upstream/main' into blue-prince
silent-destroyer Feb 20, 2026
30b298c
Merge remote-tracking branch 'upstream/main' into blue-prince
silent-destroyer Mar 16, 2026
067429a
Fix issue with scene images and speedrun timer
silent-destroyer Mar 22, 2026
0839722
Reset heading text after pinning scene
silent-destroyer Mar 22, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,10 @@ With the exception of the Logic settings (which are determined in your Archipela
- Pairs each entrance up with one that matches the expected direction on the other side (i.e. North/South, East/West, Teleporters, Ladders Up/Down)
- Entrance Randomizer: Decoupled Entrances
- Turns every entrance into a one-way. Leaving from where you came will take you somewhere else.
- Entrance Randomizer: Fox Prince
- When using an entrance, you get 3 choices of entrances to choose from so you can decide where to go.
- Inspired by the [Hollow Knight Bug Prince mod](https://github.com/dplochcoder/HollowKnight.BugPrince/releases/latest), created by Purenail.
- Also inspired by [Blue Prince](https://store.steampowered.com/app/1569580/Blue_Prince/), by Dogubomb.
- Fool Traps
- Enables fool traps, which replace low-value money rewards when enabled and apply damage/other negative effects to the player. Turning the setting up increases the amount of traps in the item pool.
- For Single Player seeds, this option can be changed mid-run by changing the value and reloading the save file. For Archipelago games, this is a yaml option and cannot be changed after the game starts.
Expand Down Expand Up @@ -263,3 +267,4 @@ With the exception of the Logic settings (which are determined in your Archipela
- RadRingtail, Glace, RisingStar111, kingsamps0n, Landie, JimTheEternal, Jabberrocky, Ekkosangen, FletchIsAFurry, and many others for playtesting and helping to improve the mod.
- SapphireSapphic, ScoutJD, and Br00ty for creating/maintaining the emo/poptracker maps.
- Andrew Shouldice, Kevin Regamey, Finji, and everyone else involved in making this wonderful game.

13 changes: 9 additions & 4 deletions TunicRandomizer.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@
<HintPath>..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\TUNIC\BepInEx\core\0Harmony.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Archipelago.MultiClient.Net, Version=6.6.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>packages\Archipelago.MultiClient.Net.6.6.0\lib\net45\Archipelago.MultiClient.Net.dll</HintPath>
<Reference Include="Archipelago.MultiClient.Net, Version=6.6.1.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>packages\Archipelago.MultiClient.Net.6.6.1\lib\net45\Archipelago.MultiClient.Net.dll</HintPath>
</Reference>
<Reference Include="Assembly-CSharp">
<HintPath>..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\TUNIC\BepInEx\unhollowed\Assembly-CSharp.dll</HintPath>
Expand Down Expand Up @@ -92,7 +92,7 @@
<Private>False</Private>
</Reference>
<Reference Include="Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>packages\Archipelago.MultiClient.Net.6.6.0\lib\net45\Newtonsoft.Json.dll</HintPath>
<HintPath>packages\Archipelago.MultiClient.Net.6.6.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="RTLTMPro">
<HintPath>..\..\..\..\..\Program Files (x86)\Steam\steamapps\common\TUNIC\BepInEx\unhollowed\RTLTMPro.dll</HintPath>
Expand Down Expand Up @@ -193,13 +193,15 @@
<Compile Include="src\Data\PortalCombo.cs" />
<Compile Include="src\Data\RandomizerSettings.cs" />
<Compile Include="src\Data\SaveFlags.cs" />
<Compile Include="src\Data\SceneImageData.cs" />
<Compile Include="src\Data\Tooltips.cs" />
<Compile Include="src\Data\Translations.cs" />
<Compile Include="src\Data\TrickLogic.cs" />
<Compile Include="src\Patches\ArachnophobiaMode.cs" />
<Compile Include="src\Patches\BellShuffle.cs" />
<Compile Include="src\Patches\BreakableShuffle.cs" />
<Compile Include="src\Patches\EnemyRandomizer.cs" />
<Compile Include="src\Patches\FoxPrince.cs" />
<Compile Include="src\Patches\FuseRandomizer.cs" />
<Compile Include="src\Patches\GhostHints.cs" />
<Compile Include="src\Patches\GrassRandomizer.cs" />
Expand Down Expand Up @@ -232,8 +234,10 @@
<Compile Include="src\TunicRandomizer.cs" />
<Compile Include="src\Util\CreditsSkipper.cs" />
<Compile Include="src\Util\DDRSpell.cs" />
<Compile Include="src\Util\EntranceSelector.cs" />
<Compile Include="src\Util\FoolTrap.cs" />
<Compile Include="src\Util\HeroGraveToggle.cs" />
<Compile Include="src\Util\SceneSelectionButton.cs" />
<Compile Include="src\Util\LadderManager.cs" />
<Compile Include="src\Util\LogicChecker.cs" />
<Compile Include="src\Util\MailboxFlag.cs" />
Expand All @@ -247,9 +251,10 @@
<Compile Include="src\Util\UnderConstruction.cs" />
<Compile Include="src\Util\VisibleByNotHavingItem.cs" />
</ItemGroup>
<ItemGroup />
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="src\Data\Grass.json" />
<EmbeddedResource Include="src\Data\GrassReqs.json" />
<EmbeddedResource Include="src\Data\Fuses.json" />
Expand Down
3 changes: 1 addition & 2 deletions packages.config
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Archipelago.MultiClient.Net" version="6.6.0" targetFramework="net48" />
<package id="Newtonsoft.Json" version="13.0.3" targetFramework="net48" />
<package id="Archipelago.MultiClient.Net" version="6.6.1" targetFramework="net48" />
</packages>
84 changes: 57 additions & 27 deletions src/Data/Hints.cs
Original file line number Diff line number Diff line change
Expand Up @@ -235,36 +235,57 @@ public static void PopulateHints() {
SaveFile.SetInt($"randomizer hint found 0, Server", 1);

// make the in-game signs tell you what area they're pointing to
if (SaveFile.GetInt(EntranceRando) == 1) {
foreach (PortalCombo portalCombo in ERData.RandomizedPortals.Values) {
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Forest Belltower_") {
HintMessages.Add("East Forest Sign", $"{Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])} [arrow_right]");
}
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Archipelagos Redux_lower") {
HintMessages.Add("West Garden Sign", $"[arrow_left] {Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])}");
}
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Fortress Courtyard_") {
HintMessages.Add("Fortress Sign", $"{Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])} [arrow_right]");
}
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Darkwoods Tunnel_") {
HintMessages.Add("Quarry Sign", $"{Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])} [arrow_up]");
}
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Ruins Passage_west") {
HintMessages.Add("Ruined Hall Sign", $"{Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])} [arrow_right]");
}
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Overworld Interiors_house") {
HintMessages.Add("Town Sign", $"[arrow_left] {Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])}");
}
if (portalCombo.Portal1.SceneDestinationTag == "East Forest Redux, Sword Access_lower") {
HintMessages.Add("East East Forest Sign", $"{Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])} [arrow_right]");
}
if (portalCombo.Portal1.SceneDestinationTag == "East Forest Redux, East Forest Redux Laddercave_lower") {
HintMessages.Add("West East Forest Sign", $"[arrow_left] {Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])}");
}
if (GetBool(EntranceRando)) {
CreateSignHints();
}
}

public static Dictionary<string, string> PortalToSignName = new Dictionary<string, string> {
{"Overworld Redux, Forest Belltower_", "East Forest Sign"},
{"Overworld Redux, Archipelagos Redux_lower", "West Garden Sign"},
{"Overworld Redux, Fortress Courtyard_", "Fortress Sign"},
{"Overworld Redux, Darkwoods Tunnel_", "Quarry Sign"},
{"Overworld Redux, Ruins Passage_west", "Ruined Hall Sign"},
{"Overworld Redux, Overworld Interiors_house", "Town Sign"},
{"East Forest Redux, Sword Access_lower", "East East Forest Sign"},
{"East Forest Redux, East Forest Redux Laddercave_lower", "West East Forest Sign"}
};

public static void CreateSignHints() {
foreach (PortalCombo portalCombo in ERData.RandomizedPortals) {
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Forest Belltower_") {
HintMessages[PortalToSignName[portalCombo.Portal1.SceneDestinationTag]] = $"{Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])} [arrow_right]";
}
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Archipelagos Redux_lower") {
HintMessages[PortalToSignName[portalCombo.Portal1.SceneDestinationTag]] = $"[arrow_left] {Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])}";
}
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Fortress Courtyard_") {
HintMessages[PortalToSignName[portalCombo.Portal1.SceneDestinationTag]] = $"{Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])} [arrow_right]";
}
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Darkwoods Tunnel_") {
HintMessages[PortalToSignName[portalCombo.Portal1.SceneDestinationTag]] = $"{Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])} [arrow_up]";
}
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Ruins Passage_west") {
HintMessages[PortalToSignName[portalCombo.Portal1.SceneDestinationTag]] = $"{Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])} [arrow_right]";
}
if (portalCombo.Portal1.SceneDestinationTag == "Overworld Redux, Overworld Interiors_house") {
HintMessages[PortalToSignName[portalCombo.Portal1.SceneDestinationTag]] = $"[arrow_left] {Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])}";
}
if (portalCombo.Portal1.SceneDestinationTag == "East Forest Redux, Sword Access_lower") {
HintMessages[PortalToSignName[portalCombo.Portal1.SceneDestinationTag]] = $"{Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])} [arrow_right]";
}
if (portalCombo.Portal1.SceneDestinationTag == "East Forest Redux, East Forest Redux Laddercave_lower") {
HintMessages[PortalToSignName[portalCombo.Portal1.SceneDestinationTag]] = $"[arrow_left] {Translations.TranslateDefaultQuotes(Locations.SimplifiedSceneNames[portalCombo.Portal2.Scene])}";
}
}
foreach (string sign in PortalToSignName.Values) {
if (!HintMessages.ContainsKey(sign)) {
HintMessages[sign] = "???";
}
}
}


private static List<(string, string)> CreateHeroRelicHints() {
List<ItemData> Relics = ItemLookup.Items.Values.Where(item => item.Type == ItemTypes.RELIC).ToList();
List<(string, string)> RelicHints = new List<(string, string)>();
Expand Down Expand Up @@ -354,7 +375,16 @@ public static string CreateSinglePlayerMailboxHint(System.Random random) {
if (HintItem == null) {
n = 0;
while (HintItem == null && n < mailboxHintables.Count) {
if (mailboxHintables[n].Location.SceneName == "Trinket Well") {
if (GetBool(FoxPrinceEnabled)) {
string mailbox = SaveFile.GetString("randomizer mailbox hint location");
if (mailbox != "") {
foreach (Check itemData in TunicUtils.GetAllInUseChecks()) {
if (itemData.CheckId == mailbox) {
HintItem = itemData;
}
}
}
} else if (mailboxHintables[n].Location.SceneName == "Trinket Well") {
foreach (Check itemData in ItemRandomizer.FindAllRandomizedItemsByName("Trinket Coin")) {
if (itemData.Location.reachable(ItemRandomizer.SphereZero)) {
HintItem = itemData;
Expand Down
Loading