HarbourMasters / Shipwright

3.3k stars 495 forks source link

Remove UpdateHelpers, massivly speeding up Seed generation time #4366

Closed Pepper0ni closed 2 months ago

Pepper0ni commented 2 months ago

UpdateHelpers was running far, FAR too much and SCL exposed the issue, leading to the infamous seed generation times.

By removing it and directly calling functions to check real time instead, logic seed generation time on debug has been reduced by 90-95%, and reduced 80%+ on release. This PR mostly makes 1 to 1 swaps or easy to see unrolls to make resolving conflicts easier and reduce the chance of bugs. I did however fix a few obvious logic issues while I was there (logic thinking child can reflect nuts with hylian shield and some issues with gold scale.)

I also took the chance to clear a ton of unused stuff from the logic class, as if we go back to using helpers (which is in-theory faster, but would need changes to Time/Age handling to be realized) it will be in a very different structure.

Build Artifacts