Unexpected behavior when configuring Run-Ahead/Preemptive frames setup/save.
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
When Run-Ahead or Preemptive frames is enabled in the main menu, the default value is 1 frame. If I change the value in a game, the default value in the main menu also changes:
- I activate Run-Ahead in the main menu, default to 1.
- I load Mario Bros 1, needs 1, nothing to do.
- I open King of Fighter 98, it needs 5 frames and set them in the quick menu.
- I load Mario Bros again and it defaults to 5.
When I try to save an override, if the required frame value of the game is the same value as the main menu, it doesn't save:
- I activate Run-Ahead in the main menu, defaulting to 1. (If I activate Run-Ahead in the quick menu and save the override, the activation line "true" is also saved, I only need the frame line).
- I open Mario Bros 1, which has 1 frame of latency.
- I try to save the override, and it says "Nothing to save. Overrrides not save."
If I activate Run-Ahead in the main menu and set it to another value, for example 12.
I open any game, change the value to 1 and save.
And I have the file only with the frame line at 1.
Some suggestions.
When activating Run-Ahead/Preemptive frames in the main menu, don't have value. Every time a game is loaded always be at 1, and if a game requires more frames, the override file is saved.
This is useful, because it avoids the above problem and avoids having to create values at 1 (which most classic games are) and only values from 2 onwards are created.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the Run-Ahead/Preemptive frames sequences through the main menu, quick menu, and game loading flow. Trace how the frame value is carried into per-game overrides and how the override save decision detects changes; done means the described defaults and save cases behave as intended.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100