Viewing Issue Advanced Details
|ID||Category [?]||Severity [?]||Reproducibility||Date Submitted||Last Update|
|08427||Save/Restore||Major||Always||Oct 9, 2022, 16:33||Mar 4, 2023, 16:01|
|Tester||StHiryu||View Status||Public||Platform||MAME (Official Binary)|
|Assigned To||Resolution||Open||OS||Windows Vista/7/8 (64-bit)|
|Version||0.248||Fixed in Version||Build||64-bit|
|Fixed in Git Commit||Github Pull Request #|
|Summary||08427: Save/restore state key overrides game digital input key|
Before 0.247 you could save a state with any direction pressed and when loading that state, you got exactly the same position.
Now in 0.247 when you save or restore, your character stands still for about a second before starting to move, even with the direction pressed all the time.
The best way to check this is with 2 savestates using rolling thunder as example:
1-q.sta from 0.246 -> Load this state after keeping pressed the > cursor key, and you'll see your character moving to the right.
2-w.sta from 0.247 -> Load this state after keeping pressed the > cursor key, the character takes a period of time to respond to the key pressed.
The only info about any change in the save/restore system I've found is at 0.247 mameinfo:
. Swallow save state slot key/button (ui\state.cpp)
|Steps To Reproduce||
1-Get Mame 0.246 and 0.247 from MameDev
2-Load rthunder from 0.246
3-Use F7 to load state
4-Keep pressed right cursor and press q
5-Load rthunder from 0.247
6-Use F7 to load state
7-Keep pressed right cursor and press w
|Additional Information||Updated save states fron hangon and rthunder 0.252.|
|Affected Sets / Systems|
saveStates.zip (23,615 bytes) Mar 4, 2023, 03:07 Uploaded by StHiryu
|There are no relationship linked to this issue.|
Oct 10, 2022, 01:18
|Please see if you can duplicate the issue with mamedev.org release MAME and not MAMEUI.|
Oct 10, 2022, 01:34
edited on: Oct 10, 2022, 01:44
Yes, the same happens with the official MAME.
Reuploaded save states from MAME, not MAMEUI
Oct 20, 2022, 14:48
Have not tested, but acknowledged for now.
I think there was some 'eating' of inputs which UI would capture which would show up in emulation (such as keyboard inputs) recently added which might account for this?
Mar 4, 2023, 03:05
edited on: Mar 4, 2023, 03:15
Did some more testing about this again in 0.252 with hangon and rthunder...
Seems some changes were made to the save/restore system. Now when you load or save an state, the time you press the desired key to load or restore, all the inputs in game are ignored.
This is not the case for analog controls: Im hangon paddle analog an pedal analog continue to work as they should.
1-Rthunder: Keep right cursor pressed, hit pause, save state with the Q key keeping pressed right cursor.
2-Load state keeping pressed both right cursor and Q key. Albatross won't move until Q is released. (The same thing happens when loading a state).
1-Hangon: Keep pedal analog (assigned to the right analog stick from your gamepad) until you reach 280km. Press pause and hit A key for saving without releasing the right stick.
2-When you load the state keeping pressed both A key and right stick, the motorbike doesn't lose the speed.
Maybe this bug has some relation with this 06823 reported by me some time ago...
Note: Added 2 savestates for the games above. You can change the name and assign each one to the key you want,
Mar 4, 2023, 15:36
|The change was because we were getting complaints about keys/buttons used for the save state menu leaking through to the emulated system. For example if you pressed Joy 1 Button 2 for your save state slot, and this button was also assigned to the “smart bomb” input in the game, you’d end up using one of your bombs when you used that save state slot. MAME now waits until you’ve released all the controls before accepting input after displaying a menu to prevent this and other similar issues.|
Mar 4, 2023, 16:01
edited on: Mar 4, 2023, 16:54
Thinking about this change, is good for some games but bad for many others.
For conversational adventures such as Gremlins or Don Quijote, it is positive since it allows you to save a state without the character assigned to that state being shown on screen. (In this kind of adventures the entire keyboard works as a entrance method, including the Joystick buttons).
But for others who need to maintain a pressed button to execute an action such as to grab a wall and climb, this system would make the character fall and lose a life. There are also very fast and difficult games, such as Bestial Warrior or Hundra, in which it is sometimes necessary to save while escaping from enemies. Disabling this action can lead you to lose a life.
Maybe you could do this behavior optional, or look for another approach, such as simply disabling the keys assigned to the game inputs, or just only the joypad buttons, for saving and loading states. (In fact, actually with this update some joypad buttons now serve to delete slots already saved).