Great 1000 Miles Rally
Moderator: Chad
Great 1000 Miles Rally
Is there any secret for this game so inp recordings are ok and playback ok?
I have tried it with a few different frameskips and audio on/off when recording and on playing back and can't seem to get 1 inp to playback the way it was when I actually played and recorded.
It's close but tiny differences in car position on the track end up somewhere resulting in hitting something I didn't hit before so sync is then totally lost.
This is a cool racing game that I'm doing quite well on...but just can't get an inp to playback in sync totally correctly.
I tried with version 0.66 and also 0.58(thinking game would run faster in an older version) and I have the same inp problems in both.
Any help appreciated... I obviously have the regular tips like no nvram etc. covered. I have had no problems with any inps until this game.
I have tried it with a few different frameskips and audio on/off when recording and on playing back and can't seem to get 1 inp to playback the way it was when I actually played and recorded.
It's close but tiny differences in car position on the track end up somewhere resulting in hitting something I didn't hit before so sync is then totally lost.
This is a cool racing game that I'm doing quite well on...but just can't get an inp to playback in sync totally correctly.
I tried with version 0.66 and also 0.58(thinking game would run faster in an older version) and I have the same inp problems in both.
Any help appreciated... I obviously have the regular tips like no nvram etc. covered. I have had no problems with any inps until this game.
playbacks only fail when someone tries them and fails, a tree falls in the forrest or something like that. I tried one gtmr and it worked once. If it doesn't work again it's for this topic (and three users) to say the scores are bogus because of playbackability reasons.
Having rand() in the driver doesn't mean the recordings wont playback, because as long as srand() is called the same # times and with the same values AND srand local space isn't corrupted AND the rand() algorithm doesn't change across platforms in a shared library, then rand() will always return the same random numbers. mame_rand() is just better at keeping the seed isolated and the algorithm from not changing and thus will return the same #'s always. and should be replaced for all rand()s.
Having rand() in the driver doesn't mean the recordings wont playback, because as long as srand() is called the same # times and with the same values AND srand local space isn't corrupted AND the rand() algorithm doesn't change across platforms in a shared library, then rand() will always return the same random numbers. mame_rand() is just better at keeping the seed isolated and the algorithm from not changing and thus will return the same #'s always. and should be replaced for all rand()s.
-skito
the problem might be there are also rand()'s in other locations in mame, ones which get called a different number of times depending on the frameskip and god knows what else but maybe don't affect the recording however would throw off any other random number generation sequences if rand() is used elsewhere... at the moment if somebody reports a playback issue with a driver and I find rand() to be in that driver I'm reporting it to mamedev so it can be changed incase it helps, then we get an idea of where its needed :p
Chad, well I can easily say my own scores for that game are bogus cuz out of 10 different inps I have made for the game not one of them plays back totally to where I got to in the game....not one of them.
I did have a couple that got as far as stage 5 or 6 before screwing up though.
I think it's a matter of luck that in your race you took a line throughout the stages where the slight differences in sizes of the cars shown on the track when you playback the inp doesn't result in any changes to where your car goes. ie. if you slightly bumped or scraped any car during any stage, odds are that is all it takes for the playback to not work cuz on playback that will likely be a different car so the effect of your contact with them will be different....thus screwing up the sync of your controls for the rest of it.
Even ones that it doesn't totally screw it up...it changes the overall time a few hundredths of a second.
I'm guessing if you could run all 12 stages without even coming close to any cars...then perhaps it would playback correctly cuz regardless of which car is drawn on each playback your car wouldn't touch them.....nearly impossible to do.
I did have a couple that got as far as stage 5 or 6 before screwing up though.
I think it's a matter of luck that in your race you took a line throughout the stages where the slight differences in sizes of the cars shown on the track when you playback the inp doesn't result in any changes to where your car goes. ie. if you slightly bumped or scraped any car during any stage, odds are that is all it takes for the playback to not work cuz on playback that will likely be a different car so the effect of your contact with them will be different....thus screwing up the sync of your controls for the rest of it.
Even ones that it doesn't totally screw it up...it changes the overall time a few hundredths of a second.
I'm guessing if you could run all 12 stages without even coming close to any cars...then perhaps it would playback correctly cuz regardless of which car is drawn on each playback your car wouldn't touch them.....nearly impossible to do.
is it possible for someone at mamedev to egrep of all "[^ ]rand()" calls and replace with mame_rand() ? or do fixes really need to be on a patch by patch basis..?Haze wrote:... at the moment if somebody reports a playback issue with a driver and I find rand() to be in that driver I'm reporting it to mamedev so it can be changed incase it helps, then we get an idea of where its needed :p
-skito
Haze or Chad or Barry or anyone...
Can you test recording an inp with this game and playing it back yourself? Try and get at least 6-7 stages complete so you can view it back...even if that means using a few continues...hehe
I have been talking with Ray Atkinson about this game since he had recently submitted an inp for the game. He states the inps play back fine for him.
I notice on each playback the cars are in the same locations etc. but aren't necessarily the same types of cars. Given the types of cars vary in size, that potentially changes sync if you came close or hit a car during the actual race...that might not have the same effect with a different size car there on playback.
It sounds like for Ray he sees the same cars each time on playback. This goes against the above talking about a rand() for this game. Is the seed for the rand() stored in the inp header so on playback the same "random" number is picked?
Perhaps the macmame inp is missing that.
If others see the same then it might be a macmame specific thing that would then be reported to the macmame dev.
Can you test recording an inp with this game and playing it back yourself? Try and get at least 6-7 stages complete so you can view it back...even if that means using a few continues...hehe
I have been talking with Ray Atkinson about this game since he had recently submitted an inp for the game. He states the inps play back fine for him.
I notice on each playback the cars are in the same locations etc. but aren't necessarily the same types of cars. Given the types of cars vary in size, that potentially changes sync if you came close or hit a car during the actual race...that might not have the same effect with a different size car there on playback.
It sounds like for Ray he sees the same cars each time on playback. This goes against the above talking about a rand() for this game. Is the seed for the rand() stored in the inp header so on playback the same "random" number is picked?
Perhaps the macmame inp is missing that.
If others see the same then it might be a macmame specific thing that would then be reported to the macmame dev.
not a nvram issue cuz I have removed my nvram folder so no nvram files are saved.
I have not submitted any of my inps for this game beacuse they won't even playback correctly on my own mac....plus you don't have a mac so if it doesn't work in pc-mame that doesn't really help anything.
Now if you want to test Ray's inp, you can get it at:
http://marp.retrogames.com/inp/ra_gtmr_ ... mame62.zip
although if you look at other entries for GTMR you will notice almost all are not confirmed...so perhaps viewing the others to see if they work will help.
Even the top couple scores aren't confirmed...
I will try a couple within VirtualPC on my mac soon to see if those work on my mac. If so then that would indicate it's a macmame issue for this game.
I have not submitted any of my inps for this game beacuse they won't even playback correctly on my own mac....plus you don't have a mac so if it doesn't work in pc-mame that doesn't really help anything.
Now if you want to test Ray's inp, you can get it at:
http://marp.retrogames.com/inp/ra_gtmr_ ... mame62.zip
although if you look at other entries for GTMR you will notice almost all are not confirmed...so perhaps viewing the others to see if they work will help.
Even the top couple scores aren't confirmed...
I will try a couple within VirtualPC on my mac soon to see if those work on my mac. If so then that would indicate it's a macmame issue for this game.
playsback fine for me,
51.60 54.62 69.26 56.02 56.74 55.60 57.xx 58.28 58.14 58.26 57.09 57.23
have you tried getting recent roms, i noticed the message
mcu_code.u12 NO GOOD DUMP KNOWN
sprites NO GOOD DUMP KNOWN
when running mame62 and this game, this can often be the cause of bad playbacks...
51.60 54.62 69.26 56.02 56.74 55.60 57.xx 58.28 58.14 58.26 57.09 57.23
have you tried getting recent roms, i noticed the message
mcu_code.u12 NO GOOD DUMP KNOWN
sprites NO GOOD DUMP KNOWN
when running mame62 and this game, this can often be the cause of bad playbacks...
-skito