HarbourMasters / 2ship2harkinian

Creative Commons Zero v1.0 Universal
614 stars 52 forks source link

Save Editor: Time Controls can cause Gameovers #573

Open SoraHjort opened 1 month ago

SoraHjort commented 1 month ago

Description of the bug:

Rewinding time past the dividing mark (6am/6pm) will progress to the next. Which can mean that if you're on the evening of the final day, such as say 6:10pm, and press the -15 minute or -1 hour buttons or even the slider, and the resulting time would be under 6PM it will go straight to the moon crashing.

Can you reproduce? If so please list the steps:

Expected behavior:

Rewinding to the previous time segment. IE: 1st Day Nighttime to 1st Day Daytime. Or 2nd Day to 1st night. Or 3rd night to 3rd day.

Screenshots or videos:

Via Button:

https://github.com/HarbourMasters/2ship2harkinian/assets/18604504/7eb6703b-d364-4ae7-9dd7-f58b1bc32c10

Via Slider:

https://github.com/HarbourMasters/2ship2harkinian/assets/18604504/c930e1d2-c285-45af-b140-2f8c5d4ec894

Going from day one to game over just by sliding back and forth over the 6AM diving line, in about 30 seconds:

https://github.com/HarbourMasters/2ship2harkinian/assets/18604504/c67856c2-9686-4b97-9021-808fd65c4931

System Information:

Additional Information:

* The coincidence was that I ran into it originally on DirectX last night, and the recordings above were done in OpenGL. And the only reason I switched was to check performance differences between the two. Was slightly annoyed when I ran into it by accident, it was the cycle after getting link out of the deku form, and when I wanted to double check I didn't miss an event I thought to rewind it. Instead I got moon fall followed by having to sit through Happy Mask reteaching the song of healing a second time :P

Dumbledork01 commented 1 month ago

My best guess is that since this is a developer tool this kind of glitch is expected. One option would be to decrement the day by 1 instead of time and then increase time to the time you wanted. I messed around with this same behavior in the Recomp project and had the same results, it's probably due to the fact that 06:00 and 18:00 both increment the stage of day (Day 1 daytime, Day 1 Nighttime, Day 2 Daytime, etc.). If you want a feature for user-friendly rewinding of time, I'd consider adding it to discussions. I'm not sure if they want to remove this behavior from the developer tool or not since it is the exact behavior you'd expect from moving the time past those 2 values...