DS emulation speed isn't accurate
2 years ago
United States

NOTICE

I posted this almost exactly two years ago, and now that I'm looking at it again today, the level of cringe and misinformation is unacceptable. Here's the gist of what you should know in January of 2024:

DISCLAIMER: Everything in this post is just my own theory based on my observation of the game. None of it is conclusive, except for the things that are just obviously true.

1. The DS version lags all the time, even on real hardware. The lag is mostly unpredictable and can't be emulated reliably, but there are some things that consistently cause more lag: having more cars on the screen at once, shooting three missiles in quick succession, and simply just driving in certain laggy zones of the track. (In my original post, I mentioned creating dust by turning/drifting, but the real cause was that I was turning/drifting in a laggy zone of the track.)

2. The gameplay and in-game timer are not synchronized by the game, so they sometimes get out of sync.

3. The game speed, meaning both the gameplay AND the in-game timer, are affected separately by the game's lag. One might get slowed down or sped up more than the other.

4. The gameplay appears to be more resistant to lag than the timer. In other words, when the lag gets severe, the timer slows down more than the gameplay slows down.

5. Playing on MelonDS, DeSmuME, or nds-bootstrap affects both how much the game lags and when it lags more. Emulators like MelonDS and DeSmuME reduce lag, which makes the IGT faster, and nds-bootstrap increases lag, which makes the IGT slower.

6. By simply watching videos of speedruns, the changed lag from MelonDS, DeSmuME, and nds-bootstrap cause little human-noticeable change to the speed of the player's car.

7. The key word there is "little". Comparing Jeremy's "this video is an abomination" on MelonDS, my 52.01 (or RTA 53.200) on a flashcart, and my 48:88 (slower than 53.200 RTA) on nds-bootstrap, there's that jump at the beginning which slows down a little on real hardware, slows down more on nds-bootstrap, and doesn't slow down at all on MelonDS.

8. I don't have footage to support this, but from my own experience, I'm fairly certain that flashcarts play identically to a real cartridge, excluding my flashcart's occasional lag spikes that last half a second or so.

9. In my opinion, the differences are small enough to still compare on the same leaderboards with RTA time, as long as emulators and nds-bootstrap are both labeled as such. The only possible reason I can think of to start requiring a real cartridge or reasonable flashcart for top runs is if this game goes viral and attracts a bunch of new runners.

10. However, there are a couple weird things about MelonDS: First, the timer at the beginning of an event counts down too fast. Second, the vehicle selection screen is too slow. As long as the community stays small and none of the top runs use this emulator (Very few runs use MelonDS right now), I don't think these few seconds matter.

My original post is below. Remember, it is from two years ago and contains quite a bit of cringe and misinformation that's unforgivable and unrelatable for my age at the time of posting. For example, my 48.88 was definitely not "really good", and the increased lag is absolutely not a "big advantage" at all. Making a time conversion table is definitely not a good solution because we're supposed to be using real time in the first place. Also, what's with the <strike> tags that don't actually strike through the text? And how do I know for sure that Jeremy is using BizHawk and not either RetroArch or standalone MelonDS? I'm going to reupload my three deleted runs as emulator runs tomorrow with RTA timing.

If you use the MelonDS LibRetro core (through BizHawk or RetroArch), the countdown at the start of a race becomes a lot faster than on real hardware, but the time to load the level and to scroll through the vehicle selection screen takes longer. Here's my lazily made video comparing the MelonDS LibRetro core to real hardware: You can see Jeremy/JowenGrande playing with these issues on BizHawk in this video: Here's a video of Stache playing on a real 3DS:

I don't have a real cartridge for this game at the moment, but whether you're playing on nds-bootstrap, on a flashcard, or on an emulator affects the game speed too. Specifically, when I compared the in-game timer, nds-bootstrap was slower real time, and my 208-in-1 flashcart was faster than real time. As for the emulator, it went a LOT faster than real time: 59.93 seconds on the emulator was the same as 54.48 seconds on my flashcard, or 49.90 seconds on nds-bootstrap! <strike>Oddly, whether I used the flashcart on my DSi or on my 3DS also affected the speed: using the flashcart on my DSi went about as fast as using nds-bootstrap on my 3DS.</strike> From now on, all of my runs will be on a flashcard on a 3DS since that seems to be the "middle ground" and is the most similar thing I have right now to playing on a real cartridge.

Even more interesting, it turns out that my 48.88 is actually slower than my 52.01 if you start both videos at the exact same time because the 48.88 was done on nds-bootstrap, while the 52.01 was done on a flashcart.

What's even more serious is that nds-bootstrap makes the game lag more, in ADDITION to slowing down the IGT. That lag makes precise turning and various shortcuts a lot easier than normal. In many areas, you can basically generate lag whenever you need it by generating smoke from hard turns. That means that even if we did a time conversion table, those runs would still have a big advantage. It's a big shame because my 48.88 was really good even for a run played on nds-bootstrap. I can probably get sub-30 in Hairpin on cartridge though.

For historical purposes (meaning, if someone suddenly cares about this game in the future), here are my 3 runs I deleted from the site:

Edited by the author 3 months ago
Game stats
Followers
67
Runs
550
Players
33
Latest news
DS runs that used IGT have been retimed to RTA

Despite the rules having always required RTA timing, most past level runs of the DS version have used IGT instead. I have manually looked at each IL submission and, if a video was still viewable, corrected the in-game time to real time by doing a frame count of the video. I have also clarified the I

3 months ago
Latest threads
Posted 5 years ago
0 replies
Posted 2 years ago
22 replies
Posted 5 years ago
2 replies
Posted 5 years ago
1 reply