libretro / pcsx_rearmed

ARM optimized PCSX fork
GNU General Public License v2.0
168 stars 120 forks source link

Power Rangers: Lightspeed Rescue (SLUS-01114) - Jump does not work adequately #837

Closed saulfabregwiivc closed 5 months ago

saulfabregwiivc commented 5 months ago

Not sure what makes this happen this issue with the jump command in this game Power Rangers: Lightspeed Rescue (SLUS-01114). Looks like the game has a different reaction of jump command in this emulator, which it's not supposed to happen on actual console?

Coming from Lightrec issue tracker, but @pcercuei states that this also happens on PCSX's interpreter. So, this issue happens on both Lightrec and Interpreter.

Videos:

latest PCSX-ReARMed libretro https://github.com/libretro/pcsx_rearmed/commit/1f8c6be323aa8fad329e38682158197e822d27c1 (it also happens on https://github.com/libretro/pcsx_rearmed/commit/3e80e5c25edcf850f603cf0948e1cc16dc38e98d as well)

https://github.com/libretro/pcsx_rearmed/assets/66485640/a10a57c2-fbf4-4b7c-8878-67efbb870ffb

other emulators (yeah i know this is old PCSX-R but this is how the jump should work)

https://github.com/libretro/pcsx_rearmed/assets/66485640/f26f9c08-2b5f-4d32-a315-1211dc1828f5

pcercuei commented 5 months ago

Have you tried playing with the cycles value?

saulfabregwiivc commented 5 months ago

Have you tried playing with the cycles value?

i recently tried with modifying cycle values but haven't tried for this specific game. I'll try.

saulfabregwiivc commented 5 months ago

So i tried playing with the PSX CPU Clock Speed (%) setting (considering that is obtained with 10000 / CYCLE_MULT_DEFAULT (default is 175, which equals to ~57 in this setting) and i found that:

will pull a fix later to PCSX-ReARMed.

saulfabregwiivc commented 5 months ago

Alright, i got the exact value for the database and pushed a fix.

https://github.com/notaz/pcsx_rearmed/pull/340 will close this issue.

SuperrSonic commented 5 months ago

I'm surprised someone else was interested in testing this game, it's one of my favorites. Playing it on an original PS1 I can say that it does happen but not to the same extent as seen in emulators.

But what's really annoying about this bug is that you can't beat the game because at level 4 it becomes impossible to progress. From my tests 222 is too low and the softlock occurs but can be avoided if one tries hard enough... but that sucks.

So my solution was to use 280, however since this was intended for the Wii port, I found 310 ideal to maintain the emulation at full speed, at the cost of the game dropping more frames, this allowed jumping to always work and keep the sound stutter free, as I've tested the entire game this way.

I compiled a list of playthroughs that show people running into the problematic spot in several emulators, I couldn't find a single one using real hardware, though. They all manage to pass through eventually, but you can definitely tell something's not right. https://www.youtube.com/watch?v=WafN_bKnNQA&t=2062s https://www.youtube.com/watch?v=0xlH-ogDvqY&t=728s https://www.youtube.com/watch?v=Hl9p-m2xYKQ&t=517s https://www.youtube.com/watch?v=lyLqWiahTOY&t=1741s