Currently our behaviour for Pictures is like Cherry's UnlockPicPatch or what the English versions of 2k and 2k3 do.
I don't know a game that breaks due to this but imo it should be emulated for consistency.
TestCase: http://dzmitry.smartvps.pl/misc/rm/test_message_blocking.tar.gz
UnlockPicsPatch is one of the most used patches around probably... in most cases, your non-blocking behavior should be fine for games I guess, but I understand that you aim at emulating the original RM.
I remember you said some time that detecting specific patches is out of the question, is it? :/
We don't really want to scan RPG_RT.exe from EasyRPG Player currently. But we are actually interested in signatures to detect the most common patches automatically. (PicPointer, UnlockPics, AEP, ...). At least the rmarchiv guy would like to run such a script over all German games he collected and tag them based on the patch :)
Tested with RM2k3 1.08 and Don's rm2k. Stream versions doesn't display this behavior
Wait 0.0s
Text: hello
Sw1 on
Erase Event
EV02 parallel page 1
Wait 0.0s
Show Picture
EraseEvent
EV02 page 2 activated by SW1
Result: Picture not displayed
@CherryDT
Can you tell the byte signature for the UnlockPicPatch?
Hm this one is a bit tricky to detect... I would think that you'd have to check whether A1????????8B00E8????????84C0909090909090FF does exist while also A1????????8B00E8????????84C00F85????0000FF does not exist. (without checking that opposite you may get a false positive)
Also I'm not sure if this functionality is patched in the same way everywhere, because this is one of the earliest patches and it went though some "iterations" in following versions up to RM2k3E... I know in RM2k3E it works entirely different, but I believe everywhere else this should match (I checked DynRPG for example, it matches there).
(I mean, personally I used to scan for 84C0909090909090FF as a quick method in the past but I remember that this did cause false positives sometimes, there is some other possible patched thing that looks the same, though I don't remember what it was exactly...)
Most helpful comment
Hm this one is a bit tricky to detect... I would think that you'd have to check whether
A1????????8B00E8????????84C0909090909090FFdoes exist while alsoA1????????8B00E8????????84C00F85????0000FFdoes not exist. (without checking that opposite you may get a false positive)Also I'm not sure if this functionality is patched in the same way everywhere, because this is one of the earliest patches and it went though some "iterations" in following versions up to RM2k3E... I know in RM2k3E it works entirely different, but I believe everywhere else this should match (I checked DynRPG for example, it matches there).
(I mean, personally I used to scan for
84C0909090909090FFas a quick method in the past but I remember that this did cause false positives sometimes, there is some other possible patched thing that looks the same, though I don't remember what it was exactly...)