TalicZealot / SotnRandoTools

A collection of tools to enhance the SotN randomizer experience.
https://taliczealot.github.io/
MIT License
24 stars 6 forks source link

Update Tracker.cs #32

Closed eldri7ch closed 1 year ago

eldri7ch commented 1 year ago

Update the GetSeedData() void to actually get seed data from the preset json files.

TalicZealot commented 1 year ago

Can you describe the issue please. GetSeedData grabs the seed name and preset name from memory. Preset locks are then loaded by LoadLocks if the preset in memory is not custom and the preset file is in the presets folder following the same format.

TalicZealot commented 1 year ago

I did a debug trace just to be sure and it loads bat-master the way it is supposed to. Double check if your json file name matches what shows up in-game on the menu. A mismatch there would cause the tracker to look for a file that doesn't exist and default to custom settings.

eldri7ch commented 1 year ago

When we first enter the castle as Alucard, the map should show Demon Card, Form of Mist, Leap Stone, and Merman Statue as layer 0.

Now, if I load a save file with progression relics, it does update correctly, except the level 0 checks, so I think it's an issue with new files and missing data in the .json (Missing checks are level 0)

open.zip CAPTURE CAPTURE2

TalicZealot commented 1 year ago

Can you sens over a ppf so that I can do a local test.

TalicZealot commented 1 year ago

Oh I think I see what's happening. You need to include the open locations with an empty lock array, otherwise the tracker won't know to overwrite the default locks. That's what I originally did here: https://github.com/TalicZealot/SotN-Randomizer/blob/7dfe92696e9a2caac964db6b36b9edbbde8b5e13/presets/open-casual.json#L101C1-L101C18

eldri7ch commented 1 year ago

I updated the preset file and generated a new seed. It works perfectly now. Now I know to make new layer 0 checks with blank requirements. Thanks!

eldri7ch commented 1 year ago

Issue resolved, no update needed.

TalicZealot commented 1 year ago

Nice. For stuff like this an Issue works better. Since this is .net I wouldn't have been able to merge this. Unlike Javascript an undefined variable like this would not allow the program to build.