icykoneko / ff14-fish-tracker-app

FF14 Fish Tracker App
https://ff14fish.carbuncleplushy.com
MIT License
61 stars 21 forks source link

Fish Train displays the wrong window #145

Closed icykoneko closed 1 year ago

icykoneko commented 1 year ago

The train pass is displaying the wrong window for several fish, particularly Warden of the Seven Hues. When you load the trainpass into the editor, the schedule is displayed correctly.

Reproducible with: https://ff14fish.carbuncleplushy.com/trainpass/?MTcsNDIsMTA2LDI0OCwxOCwxMiwxNjksMTgzLDk3LDE2MCwwLDYsNSwzMCwyMjksMCwxOCw4LDY1LDExMSwwLDM1LDExLDEyOSwyMTksMCw1OSw1LDMxLDE0LDE2LDc5LDIwLDE0NywyMTcsMCwxMDUsMTcsMTMwLDQwLDAsMTIzLDUsOTAsMjcsMzIsMTM1LDUsMTA5LDE2MSwzMiwxNTIsMTEsOTcsMTYyLDQ4LDE3MCwyMywxMTMsMiw0OCwyMDUsNSw5NywxNTgsNDgsMjE2LDExLDMwLDIyNyw0OCwyMzEsNSwzNCw1MiwzMiwyNDAsMTEsOTcsMTYzLDEsMCwyLDExOCwyMjgsMSw3LDIzLDExMiwyNTMsMSwzMCwyMw==

icykoneko commented 1 year ago

It seems like it's related to the schedule timeline's state time intersecting a catchable range for Warden. In the train pass, those ranges are truncated specifically because it was causing an underflow if for example, the user selected a fish that's up just slightly before the train's start time.

If you could adjust the start time of the train, this wouldn't be an issue, but that's for another issue.

icykoneko commented 1 year ago

Look at the console messages. When you load the train pass into the editor page, you see "Resetting site data..." in the log. You don't see that on the train pass page though.

This message comes from the CarbyUtils code for reinitializing the weather service due to "current time" being changed. One of things it does specially is it adds one extra weather cycle to the service for tracking previous weather patterns. Without that, fish with intuition requirements, or weather transitions, might not be up according to the weather service.

I think that's what's causing it. Still need to investigate further.

icykoneko commented 1 year ago

It was the weather service initialization. Resetting the site data brings them in sync.