IMPORTANT - The Current Loadless Auto Splitter is Wrong
3 years ago
Oregon, USA

The Current Loadless Auto Splitter is Wrong

The PC Auto Splitter used for Rayman Legends turns out isn't entirely 100% accurate. And this is mostly the fault of the game itself.

If you have a slow PC, the game still needs to load the load screen first before it starts loading the main level. The Game will not declare itself to be in a load screen until that load screen is loaded, which is how the Auto Splitter detects loads at the moment.

I've been able to extract the source LUA code from the current Cheat Engine based Auto Splitter we use, and modified it to be able to detect the Swirl Screen Whipe effect, and pause the timer on those as well.

But there is another problem that comes up with that. That Screen Whipe effect is used everywhere. Room transitions especially so. Every Queen and King Teensy room, every level with multiple rooms in the main path, and anytime you navigate through the Main Gallery, there's the Swirl Screen Whipe. It's absurd.

The best thing that can happen is for me to navigate the game's memory in RAM to find a combination of variables that will only be set to certain values when the Screen Whipe is used to load and exit levels, which is when the load screen needs to load in. If I am unable to do that, we need to decide from two other options.

Option 1) Obviously the best option would be to actually figure this out properly by finding the right combination of values in RAM to use to properly detect screen whips used before load screens.

Option 2) We could just deal with the discrepancy and keep things the way they are. A bad PC would lose probably up to about 10 seconds due to having to load the load screen, which gets included in the final time with the current Auto Splitter.

Option 3) We use this new Auto Splitting method where the timer gets paused automatically for EVERY Screen Whipe transition, but in order to do this, we would have to split the Any% Leaderboards into a PC category, and a Console category. I do not want to have to manually time out loads for consoles using this new methods. That's like 3x-4x more work to do per console run I have to manually time out loads for. So keeping them in their own category with the previous manual loadless timing method would keep things as fair as possible while not giving me multitudes more work to do unreasonably. And especially if the game gets more popular as a speed game with the SGDQ run coming up soon, I really don't feel inclined to make things harder on myself.

As a community, we should try to discuss and decide together that if Option 1 cannot be fulfilled, which of the other two options would be better. Option 2 would not be as accurate or fair, but wouldn't split the leaderboards. Option 3 would split the leaderboards and keep runs in the same category accurate to eachother relatively speaking. I might end up holding a vote here on these forums for active community members of the game to vote on one of those two final options if it comes down to it.

Edited by the author 3 years ago
Shoks and Ianbob2 like this