Alyosha
He/Him
Editor, Expert player (3520)
Joined: 11/30/2014
Posts: 2725
Location: US
So even though I found the bug that makes the car break apart and start in the wrong place in BizHawk, I am no closer to being able to reach a time of 5:51. Stella has the same behavior as BizHawk for the actual race, and there is just nothing new to test at a per frame level that could possibly bring the time down. Only a reduction of one of the speed pauses could bring down the time, but nothing (at the frame level at least) that I have found can make this happen. This one is still a mystery. My only thought is something at the snanline or even cycle level, but I don't know what it could be.
Samsara
She/They
Senior Judge, Site Admin, Expert player (2120)
Joined: 11/13/2006
Posts: 2792
Location: Northern California
User movie #33353116652920969 Even with the accuracy improvements in 1.11.7, 5.57 still seems to be the lowest possible time we can get. There's gotta be something we're still missing, some weird quirk or glitch, since at the very least we should be getting 5.54 doing everything perfectly...
TASvideos Admin and acting Senior Judge 💙 | Cohost
warmCabin wrote:
You shouldn't need a degree in computer science to get into this hobby.
Alyosha
He/Him
Editor, Expert player (3520)
Joined: 11/30/2014
Posts: 2725
Location: US
5.54 is what is possible with no slowdowns other then gear changes. Whether or not that is possible would probably need a disassembly of the game. 5.51 is only possible under 2 conditions: -start the race sooner. -change gears without slowing down. As far as I can tell neither of those things can happen. As I side note, I found some posts indicating that the record holder has other quesitonable records as well, so there is possibility 5.51 is not legitimate (although this is purely hearsay.)
Samsara
She/They
Senior Judge, Site Admin, Expert player (2120)
Joined: 11/13/2006
Posts: 2792
Location: Northern California
Alyosha wrote:
5.54 is what is possible with no slowdowns other then gear changes. Whether or not that is possible would probably need a disassembly of the game.
Welp, I guess I'm doing that now. I'll need to set aside some time to learn how to read what I'm looking at, but I'm determined to figure this out.
TASvideos Admin and acting Senior Judge 💙 | Cohost
warmCabin wrote:
You shouldn't need a degree in computer science to get into this hobby.
Player (33)
Joined: 2/16/2012
Posts: 282
Hello. I have a complete disassembly and graph for this game. There are still some parts that I'm working to understand, but I have a good feel for the general system now. The major takeaway so far that I haven't seen discussed in this thread is the relationship between the tachometer and your speed "limit." It essentially works as a moving window for optimal operation. At each gear level past 1, the game applies a ROL to your current tachometer value, with an initial carry if you happen to be >=0x14. If the resulting value is greater than your current speed, it then checks if the difference between them is greater than 0x10. I don't know what exactly this affects, but my guess is that's the limit it uses for engine lurch, where you are penalized for being in too high of a gear too quickly (which I haven't yet looked into). I haven't watched the files yet, but I imagine that the other TASers so far have utilized this window whether they knew it or not. So far I don't see anything that would allow additional time to come off, but there's some strange things that happen with resets and changing modes that I don't fully understand yet. If you have specific mechanics you'd like me to look into, I'll happily do so. EDIT: I did some theory-crafting today and came to the same general conclusion as others: 5.57 seems to be the limit with the normal assumptions. Going over the information posted by Todd Rogers elsewhere though, I started to play with the assumptions: if you were somehow able to start in 2nd Gear, 5.51 would just barely be possible. I haven't been at my main computer to test anything yet, but I'll see if there's anything special that might happen with well-timed resets or otherwise.
Player (33)
Joined: 2/16/2012
Posts: 282
Update: I've reproduced the entirety of the speed system here. Fool around with it if you'd like. I explain the mechanics in-depth on the rule slide too, but a lot of the finer details are below. First, the order of operations in a frame is as follows... 1. increment timer 2. check if speed = 0, otherwise add to subdist($42) 3. Check upper 3 bits of speed ($40), and with frame counter... 4. Check to see if distance($3A) >0x60, if so mark as finished 5. And frame counter ($01) with table (0,2,6,E) using current gear as index 6A. If result is 0, jump to gear shift [6] 6B. If result is !0, add 1 to bar if not in clutch, otherwise add 3 6C. If result is !0 and you aren't pressing button, same as 5B except subtract 7. Check if gear shifted 8A. If no gear shift, check if in redline. If in redline, rotate carry into tach 8B. Rotate tech left for each gear past 1. Compare with speed 8C. If equal, skip speed increment (go to 9) 8D. If unequal and limit is larger, increment speed by 2 8E. If unequal and limit is smaller, decrement speed 9. Check if $D6 bit 2 is set, if so increment gear unless >4 10. Check if in steering mode... 11. Update Inputs. 12. Repeat Based on that, there are a few bits of strategy to maximizing distance: -Shift as late as possible. Every additional frame later nets you +2 total distance -For 1->2 and 2->3, you can have the speed limit odd. You can abuse this to have the speed temporarily exceed the limit before locking in the speed with a shift. Hitting gear 2 at 32 speed and gear 3 at 64 speed seems to be optimal. -As your gear goes up, there's a growing frame rule that checks your button state. At gear 4, it only checks the gas every 16 frames. Changing the frame counter to one of 8 configurations will net you different overall shifting points in gear 3 and 4, and tend to give fairly different performance. -The "end game" is probably the most tricky, where there are some instances that allowing the tach to decrease or shifting early will get you very good results. I haven't figured out the exact rules for making an optimal choice, but sometimes it can lead to vastly improved finishes. So all that said, I don't think better than 5.57 is possible. The best I've managed is 5.57 with 66 additional subdistance. There's just too much to overcome to get the extra bit more. I've also confirmed in the code that it completely wipes the memory inbetween resets, so there shouldn't be anything possible from trying to get the memory in a funky state before going over. I also compared the original ROM with the PAL and one other version; the differences, when present, are just related to display controls. So all that said, I can't think of any other way that getting below 5.57 is possible. The "simulated" best of 5.54 supposedly from the developers I also think is from a flawed implementation. There just isn't enough input options or otherwise to trigger a bug and allow starting earlier outside of glitching (as in, the actual hardware variety). Even assuming some level of cheating, I've managed a 5.51 only with starting in 1st gear with no shift and starting with 2 speed already stored. I don't have any more ideas on this, and my interest is waning. I might think a bit more on the optimal finish timing, but for now I'm going to call this closed.
Skilled player (1650)
Joined: 7/1/2013
Posts: 433
Thank you for this, Omnigamer!
Joined: 3/3/2010
Posts: 87
Todd recently appeared on The Ben Heck Show working with Ben on testing this on actual hardware. They even used Omnigamer's spreadsheet after trying to recreate Todd's inputs. They managed to recreate the 5.57, but by the time they finished the episode they still hadn't figured out how to get anything better. The setup Ben made for the test was quite impressive, essentially creating a hardware-based TAS studio just for this game.
Tompa
Any
Editor, Expert player (2141)
Joined: 8/15/2005
Posts: 1934
Location: Mullsjö, Sweden
If people are curious about this, here are the two parts: Part 1: https://www.youtube.com/watch?v=xEyaB6fAGNM Part 2: https://www.youtube.com/watch?v=qfXwSYzEjcE
Alyosha
He/Him
Editor, Expert player (3520)
Joined: 11/30/2014
Posts: 2725
Location: US
Man that gadget was so cool!! I wonder what they'll do with it now? I hope it finds some use outside of this one case.
Spikestuff
They/Them
Editor, Publisher, Expert player (2283)
Joined: 10/12/2011
Posts: 6335
Location: The land down under.
Alyosha wrote:
I hope it finds some use outside of this one case.
Todd Rogers wrote:
Must. Keep. Bullshitting.
Twin Galaxies wrote:
Must. Keep. Defending.
(Bit off topic sorry, but this is still what's going on.)
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. Something better for yourself and also others.
Player (33)
Joined: 2/16/2012
Posts: 282
From my discussions with Ben, he plans to turn his test setup into a single PCB and send some off to other folks who could make use of it. Supposedly one is coming my way, but I don't have much use for it since my Atari is toast. Perhaps it would better serve the TASBot folks?
Moderator, Senior Ambassador, Experienced player (898)
Joined: 9/14/2008
Posts: 1007
Omnigamer wrote:
From my discussions with Ben, he plans to turn his test setup into a single PCB and send some off to other folks who could make use of it. Supposedly one is coming my way, but I don't have much use for it since my Atari is toast. Perhaps it would better serve the TASBot folks?
Hi Omnigamer - as you saw, I managed to get the Multireplay device from true to work but it's a bit rough. If you have something else I'd gladly buy it or help pay for PCB printing and populating costs. Just let me know. Thanks!
I was laid off in May 2023 and could use support via Patreon or onetime donations as I work on TASBot Re: and TASBot HD. I'm dwangoAC, part of the senior staff of TASVideos as the Senior Ambassador and BDFL of the TASBot community; I post TAS content on YouTube.com/dwangoAC based on livestreams from Twitch.tv/dwangoAC.
Player (33)
Joined: 2/16/2012
Posts: 282
I don't know any specifics on it other than it's something Ben wants to do in the next few months. He mentioned making at least 3, but since the volume is already so low it shouldn't take much to ask for a few more boards. Either way, if he sends me one I'm fine with passing it on to the TASBot team.
Skilled player (1650)
Joined: 7/1/2013
Posts: 433
Guinness Officially Nixes Todd Rogers' Dragster Records https://kotaku.com/guinness-officially-nixes-todd-rogers-dragster-records-1822568394
Alyosha
He/Him
Editor, Expert player (3520)
Joined: 11/30/2014
Posts: 2725
Location: US
£e Nécroyeur wrote:
Guinness Officially Nixes Todd Rogers' Dragster Records https://kotaku.com/guinness-officially-nixes-todd-rogers-dragster-records-1822568394
Well, I guess it's over. I hope they still make the RAM analyzers though. They barely even got to use them.
Player (33)
Joined: 2/16/2012
Posts: 282
Ben may provide the schematics and a BOM once he gets them a bit more organized. That's what I suggested during our last chat, anyway.