Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to change the start time of the monotonic clock #480

Closed
OceanBagel opened this issue May 5, 2022 · 1 comment
Closed

Unable to change the start time of the monotonic clock #480

OceanBagel opened this issue May 5, 2022 · 1 comment

Comments

@OceanBagel
Copy link

Commit c769194 separated the monotonic and realtime clocks and made it so that the realtime clock can be set independently of the monotonic clock by editing the "System time" fields. This commit also made the monotonic clock always start at 0.

However, this lead to a regression in that the ability to change the start time of the monotonic clock was removed. This is relied on heavily in Gamemaker games such as Undertale, where the function randomize() generates an RNG state based on the current value of the monotonic clock. This causes desyncs, as the RNG state doesn't match the previously chosen state that was based on the system time. This will also cause time loss in future TASes of these games, as the ability to manipulate RNG without losing time by changing the monotonic clock start time is removed. Thus, RNG manipulation would need to be done in-game, often in ways that lose time.

My suggested solution would be to have an additional field for designating the start time of the monotonic clock. This would allow manipulating RNG by changing the monotonic clock while also not affecting the ability to change the system time in the middle of the TAS, as requested in #474.

@OceanBagel
Copy link
Author

Commit 6a0621a solved this issue. I was able to change the starting value of the monotonic clock to match the starting time from an Undertale TAS and it all synced up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant