×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

NESBot: Tool Assisted Speedrun On Real Hardware

Soulskill posted more than 3 years ago | from the take-that-game-genie dept.

NES (Games) 101

Xistic writes "For many years tool assisted speedruns were purely theoretical and the domain of emulators. No longer! Using an Arduino Duemilanove microcontroller to drive an actual Nintendo console, pjgat09 plays back prerecorded input to beat Super Mario Bros. in record time. The selection of possible games is limited: 'If the game relies on any uninitialized memory for randomness, or if it is heavily based on console timing, it may not work. In the case of Super Mario Bros however, as long as the button presses start play back at the right time, the movie will play back correctly.' The author includes complete instructions on how to setup the device."

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered

101 comments

Not all that impressive, really. (0)

Anonymous Coward | more than 3 years ago | (#35189076)

Not that there isn't a certain cool factor to it, but at the end of the day it's just sending signals on the controller lines; would have been more impressive if it was actually hitting the controller buttons or something.

Re:Not all that impressive, really. (1)

vsage3 (718267) | more than 3 years ago | (#35189148)

Not really. Far more work went into designing the setup so that it properly worked on an NES rather than an emulator, which, as TFA explains, was not an easy task because of the way lag is handled, among other things. Your suggestion would just add a constant delay to all the moves to account for the mechanical motion required.

On a related note, some of my friends thought IBM's Watson wasn't very impressive because it was receiving text input and parsing the results instead of "listening" to the answer being spoken, translating it into text, and then coming up with the question. Given my cell phone can translate speech into text, I have a feeling IBM didn't feel like that feature was important to the demonstration...

Re:Not all that impressive, really. (-1)

Anonymous Coward | more than 3 years ago | (#35189250)

Not really. Far more work went into designing the setup so that it properly worked on an NES rather than an emulator, which, as TFA explains, was not an easy task because of the way lag is handled, among other things. Your suggestion would just add a constant delay to all the moves to account for the mechanical motion required.

On a related note, some of my friends thought IBM's Watson wasn't very impressive because it was receiving text input and parsing the results instead of "listening" to the answer being spoken, translating it into text, and then coming up with the question. Given my cell phone can translate speech into text, I have a feeling IBM didn't feel like that feature was important to the demonstration...

Your cell phone won't translate speech to text if you shove it all the way up your ass. Especially if you are American because they have big fat lardasses and it's somehow not their fault that they eat too much and don't exercise enough.

Re:Not all that impressive, really. (3, Informative)

petermgreen (876956) | more than 3 years ago | (#35189324)

One of the key things that makes this work is that on the nes the game controls polling of the controller and the controller polling process involves controlling a shift register in in the controller. Afaict his board locks to one of the signals that controls the shift register and uses it to stay in sync with the game. This allows it to play through an entire game with frame accurate timing. Something that would be MUCH harder to do by mechanically actuating a real controller even if you took a sync source from the console.

And doing it without a sync source would be basically impossible.

was not an easy task because of the way lag is handled

Lag probablly isn't a particaully good term for the issue. AIUI the issue is that there is not a 1:1 mapping between controller input cycles and frames out output. Since his device is locked to controller input signals rather than dispaly frames he needs to strip out the frames that don't have a corresponding input cycles.

Re:Not all that impressive, really. (1)

PKFC (580410) | more than 3 years ago | (#35190164)

And I had a dream to build a mechanical setup to control a 360 controller to "TAS" Trials HD. That game begs to be demonstrated as a perfect play. But alas, I don't have any skills like that so the dream is dead.. I suppose it would be easier to try to take apart a controller, learn the signalling and basically have a minute long macro button. Any takers?

Re:Not all that impressive, really. (0)

Anonymous Coward | more than 3 years ago | (#35192162)

And I had a dream to build a mechanical setup to control a 360 controller to "TAS" Trials HD. That game begs to be demonstrated as a perfect play. But alas, I don't have any skills like that so the dream is dead.. I suppose it would be easier to try to take apart a controller, learn the signalling and basically have a minute long macro button. Any takers?

It'll probably happen at some point, but first there'll need to be a 360 emulator for people to get things worked out on. It looks like all these TAS videos rely on emus to get the timing, bugs, etc, just right. This video is notable because it's automated AND run on real hardware.

Re:Not all that impressive, really. (2)

IorDMUX (870522) | more than 3 years ago | (#35189182)

As a long-time fan of tasvideos.org, I have to say that I, at least, am quite impressed by the very first transition of a movie to real, physical hardware... even if they had to get the controller out of the way.

It is not so much a seminal technical achievement, as a true landmark for TAS fans and aficionados.

Re:Not all that impressive, really. (1)

KDR_11k (778916) | more than 3 years ago | (#35199514)

Once it's perfected it'd settle all disputes of emulation error vs real bug.

Re:Not all that impressive, really. (0)

Anonymous Coward | more than 3 years ago | (#35190098)

You mean like R.O.B.?

Not that it wouldn't be an achievement to have it press the buttons and not suck, but considering there was a first-party product that did something similar at launch, it seems cooler to do it the way they did it.

Welcome Slashdotters (5, Informative)

Anonymous Coward | more than 3 years ago | (#35189100)

Welcome Slashdotters.

An introduction [tasvideos.org] might be in order. Please note we have many other movies [tasvideos.org] for other consoles. We also have a list of recommended movies [tasvideos.org] for first-time viewers.

Please don't beat up our poor server too badly.

Re:Welcome Slashdotters (0)

Anonymous Coward | more than 3 years ago | (#35189120)

Having spent 45 hours completing Mario 64 when it first came out, this [youtube.com] is very cool. Cheers!

Re:Welcome Slashdotters (0)

Anonymous Coward | more than 3 years ago | (#35190726)

WTF is with the bits where he sits down and slides backwards on his ass through most of a level in half a second? Is that some bug in Mario64?

Re:Welcome Slashdotters (1)

Shikaku (1129753) | more than 3 years ago | (#35190756)

No it's not. Well, the effects are a bug, but it's an oversight. If you do the long crouch jump repeatedly, backwards, you can gain as much velocity as you want. If you do it though you may glitch through walls, which this takes advantage of, heavily.

Re:Welcome Slashdotters (1)

KDR_11k (778916) | more than 3 years ago | (#35199672)

As in Big Rigs the movement speed limit isn't checked for backwards movement (there's also other things that get broken by backwards movement like the infinite staircase).

Re:Welcome Slashdotters (5, Funny)

damn_registrars (1103043) | more than 3 years ago | (#35189266)

Please don't beat up our poor server too badly.

Worry not. After the latest "upgrade" here traffic at slashdot is down enough that we couldn't take your server down even mid-day during the week when geeks are avoiding work. On the weekend when former slashdot readers are reading other websites hoping for relevant news, you have nothing to worry about.

Re:Welcome Slashdotters (0)

Anonymous Coward | more than 3 years ago | (#35190394)

I'm not sure if it's the "upgrade" or the lack of interesting topics, but I have been less than impressed with what slashdot has been offering lately. I actually don't care about the bells & whistles that the site offers. I do care about the silly stories and the obvious adverts. Side note: Can we all agree that idle is a useless feature, and Cowboy Neal should be added to every poll. Sorry to be a nostalgia troll, but I've been a lurker here from the beginning.

Re:Welcome Slashdotters (1)

ashpool7 (18172) | more than 3 years ago | (#35201600)

yes, that's funny, but if you're serious, have you tried turning on low bandwidth, simple design, and D1? All I noticed when Slashdot switched was that it looked less cluttered.

Machine replaces man (1, Insightful)

Anonymous Coward | more than 3 years ago | (#35189118)

Great. All it needs to do now is develop an ego and look down on people who just want to have fun with their games, and this device can replace every speedrunner on the internet. Another job lost to machines...

Re:Machine replaces man (0, Interesting)

Anonymous Coward | more than 3 years ago | (#35189724)

Totally agree. "Beats SMB in record time?" I strongly suspect that actual time used to construct a frame-timed speedrun like that far exceeds the time it would take to beat the game conventionally. Question: if I take a bus, does that count as tool-assisted walking?

Re:Machine replaces man (1)

martin-boundary (547041) | more than 3 years ago | (#35189968)

Question: if I take a bus, does that count as tool-assisted walking?

Well, where would you put it? The average pocket is too small, and anyway lugging all that heavy metal around can't be good for your spine.

Re:Machine replaces man (1)

randomforumposter178 (984565) | more than 3 years ago | (#35189806)

Do they really? I think speedruns are great, but I don't think that doing that is in any way superior to just playing a game to have fun. In fact, it's really just having fun by abusing the game mechanics to their absolute limits. In fact, when you play a game normally and when you sequence break and glitch your way across the finish line in record time, it's a totally different experience. Different things stick out and different things matter. This is true even if you do your speedruns live.

Sprite collision modified? (1)

Anonymous Coward | more than 3 years ago | (#35189122)

Sure looks like he's going through the flesh-eating flowers and the rotating balls to me, or is the game just not accurate enough to detect these collisions?

Re:Sprite collision modified? (2)

Pawnn (1708484) | more than 3 years ago | (#35189262)

Actually, the game's accurate enough that if you pay very close attention, he's just BARELY dodging those things. Within pixels.

Hitboxes (3, Insightful)

tepples (727027) | more than 3 years ago | (#35189296)

Sure looks like he's going through the flesh-eating flowers and the rotating balls to me

Hitboxes for most enemies in SMB1 are only half as tall as small Mario.

Re:Sprite collision modified? (2)

noidentity (188756) | more than 3 years ago | (#35189914)

It's all legit. The device behaves like nothing more than a human who can press and release the controller buttons in arbitrary patterns every frame. The kind of abuse of glitches is a whole other world with tool-assistance.

Re:Sprite collision modified? (1)

KDR_11k (778916) | more than 3 years ago | (#35199772)

There's a lot of funny things in the Mario physics that you wouldn't notice when playing the game just using what you see and what the manual says. E.g. the logic for deciding whether you jumped on an enemy or got hit by it is "are you moving downward?", as long as it's met you can touch the enemy anywhere and it counts as jumping on it, even if you hit its foot with your nose. I used that to jump on the giant spiders hanging from the roof in Paper Mario, it doesn't matter that they're above you as long as you're past the apex of your jump. New Super Mario Bros Wii uses a proper logic checking if you are actually touching the top or just the sides of the enemy which makes the game harder.

Invincible? (1)

Anonymous Coward | more than 3 years ago | (#35189134)

Mario appears to be invincible here.

They abuse the hell out of hitboxes... (0)

Anonymous Coward | more than 3 years ago | (#35189716)

He's not actually invincible, they just abuse the hell out of hitboxes. If you think that's bad, watch the TAS for Legend of Zelda: A Link to the Past. They walk through some walls, completely screw up the game and warp to the end. It's all possible without cheat codes, but some of it involves doing crazy things like pressing up *and* down on the controller at the same time.

In other words, this is just massive bug abuse & "luck manipulation." They do the same things in RPGs, exploiting bad programming in the original that would be difficult or impossible to trigger without frame-perfect precision.

Re:They abuse the hell out of hitboxes... (1)

petermgreen (876956) | more than 3 years ago | (#35189984)

but some of it involves doing crazy things like pressing up *and* down on the controller at the same time.

Is that even possible on the original physical controllers?

Re:They abuse the hell out of hitboxes... (0)

Anonymous Coward | more than 3 years ago | (#35190222)

You could probably disassemble the controller and saw the d-pad in half.

Re:They abuse the hell out of hitboxes... (1)

toddestan (632714) | more than 3 years ago | (#35195042)

Or find one of the third-party controllers that used the Playstation-style 4 buttons instead of the D-pad.

Re:They abuse the hell out of hitboxes... (1)

KDR_11k (778916) | more than 3 years ago | (#35199784)

The Playstation's "buttons" are connected to a single disc inside the controller's case.

Holy bug exploitation (4, Interesting)

damn_registrars (1103043) | more than 3 years ago | (#35189166)

That run exploits bugs from SMB that I didn't even know where there. I counted at least 4 times that he ran through walls in one way or another; to say nothing of the way that he would jump on the edge of a pipe while the flower was out and not take a hit.

Re:Holy bug exploitation (1)

demonlapin (527802) | more than 3 years ago | (#35189202)

My favorite is when he jumps against walls in 8-2 (start at 3:50) to get out of the pit.

And does anyone know why he's usually jumping facing backward? Does Mario go farther that way?

Re:Holy bug exploitation (1)

Anonymous Coward | more than 3 years ago | (#35189220)

Strangely enough Mario does accelerate faster this way. Don't know why. Maybe to allow players to do emergency moves in midair?

Re:Holy bug exploitation (1)

dissy (172727) | more than 3 years ago | (#35189292)

And does anyone know why he's usually jumping facing backward? Does Mario go farther that way?

It helps with the collision detection with enemies, walking through walls, and to jump off the side of bricks, among other things.

Here is a list of pretty much all the exploits used, with animated GIFs and explanations, from the same site containing the recorded key press files:
http://tasvideos.org/GameResources/NES/SuperMarioBros.html [tasvideos.org]

Re:Holy bug exploitation (1)

Mprx (82435) | more than 3 years ago | (#35189244)

Totally legit, but you need frame accurate timing to pull it off. Most of these glitches are impossible for unaided humans to do.

Re:Holy bug exploitation (2)

PRMan (959735) | more than 3 years ago | (#35189346)

My Youth Pastor loved Mega Man (the original NES version) and would routinely do about half the glitches you see in the TAS. He used to solve the game in like 12 minutes with all the cheats.

Re:Holy bug exploitation (1)

blackraven14250 (902843) | more than 3 years ago | (#35189258)

I've seen people do the flowers trick before a few times. Collision detection is much different now than it used to be.

Re:Holy bug exploitation (0)

Anonymous Coward | more than 3 years ago | (#35189284)

It's true that collision detection is much different now, it's generally worse! Don't know about the NES, but the C64 had pixel-perfect (taking transparent pixels into account) hardware collision detection.

Re:Holy bug exploitation (1)

tepples (727027) | more than 3 years ago | (#35189320)

the C64 had pixel-perfect (taking transparent pixels into account) hardware collision detection.

Which would be useful for a game like SMB1 or The Great Giana Sisters, not so much for a game using a semi-overhead view like Zelda. In this case, you want to do collision based not on the objects' projection onto the screen but on the objects' projection onto the plane of movement. (Some games represent this projection as a shadow.)

Re:Holy bug exploitation (1)

A Life in Hell (6303) | more than 3 years ago | (#35189566)

Yes, but the c64 can't actually use that, for the most part, if you're also using a sprite multiplexer, which eliminates its use from almost every game since there is only eight hardware sprites and no hardware multiplexer like on the nes and friends, since the engineers assumed you could just do that in software (it's documented as such in the PRG, for example).

So most c64 games also suffer hitboxes.

Re:Holy bug exploitation (1)

blackraven14250 (902843) | more than 3 years ago | (#35196466)

Not really that it's worse now than it used to be. Now we have pixel perfect collision detection available in every 2d game due to processing power increases, or polygon-perfect in the case of 3d games.

Re:Holy bug exploitation (1)

KDR_11k (778916) | more than 3 years ago | (#35199826)

It just turns out that you don't WANT pixel perfect collision. A part of it is that the sprites represent 3D objects and a pixel collision doesn't say that those pixels actually look like they should be touching because they seem to have different depths.

Re:Holy bug exploitation (-1, Troll)

Anonymous Coward | more than 3 years ago | (#35189306)

That run exploits bugs from SMB that I didn't even know where there.

Congratulations! You're another functionally illiterate fuck polluting the Internet.

Since you seem to be having great difficulty with very basic things, I'll give you a quick little cheat-sheet you can print out and keep next to your monitor:

Where == a reference to the location of something.

Were == the past tense form of the verb "to be", typically used with a plural subject.

They both begin with a "w" but that's about all they have in common. You're welcome.

Re:Holy bug exploitation (0)

damn_registrars (1103043) | more than 3 years ago | (#35189596)

I don't know who pissed in your wheaties, but it may be worthwhile to note that indeed typing "where" when you mean "were" is not that uncommon, and does not say anything about the intelligence of the person at the keyboard.

Re:Holy bug exploitation (0)

Anonymous Coward | more than 3 years ago | (#35189350)

That has always bugged me about these speedruns.. instead of just going through the game really quickly but still via every route that was intended, they find some glitch on the map that allows them to get somewhere one normally can't and hey presto, just run through to the end of the map and skip a few levels.
I'm really just not impressed with somebody finishing a Half Life map in 30 seconds because they jumped some trigger bombs and stacked a shitton of snarks on top of eachother.

On the other end of the spectrum are the longplays which don't bother with speed at all.

Not too many that adhere to the game's intended gameplay while still trying to be the fastest.

Re:Holy bug exploitation (0)

Shikaku (1129753) | more than 3 years ago | (#35189430)

SPEEDrun

Re:Holy bug exploitation (0)

Anonymous Coward | more than 3 years ago | (#35189872)

Bloody hell that's your retort, is it? I understand that it's a speedrun, I just find it bollocks that half of the 'run' is not running through the maps, it's running through glitches.

You don't go to a damn WTCC race in a F1 and claim that you thought the goal was to be the first across the finish line either, now do you?

You might as well excuse wallhacks claiming "SPEEDrun! SPEEDrun!".

That was the entire point of my comment, now wasn't it?

Re:Holy bug exploitation (1)

KDR_11k (778916) | more than 3 years ago | (#35199964)

Speed is the only factor that can be objectively measured to declare one thing superior to another. With TASes a run is considered better if it's faster, unless it fails on entertainment value. If a fast run breaks the game so badly that it's unrecognizable there's a category split where a second type of run is defined that is not allowed to do specific things. A problem is when those things cannot be defined well. Some games don't even have hard limitations on the way they're played, a chasm that you're supposed to use an item to cross may be just small enough to make the jump if you jump at literally the last possible frame.

Since a TAS has the goal of perfection the rules must be extremely strict so runners know what they can and cannot do. In a TAS you are required to optimize down to the individual frame level, you need very clear limitations for that. These things are almost like mathematical problems, solving them requires logic, creativity and a crapton of patience. We're talking about runs that take MONTHS to perform!

There's a rule against arbitrary limitations. You can't have a category like "must pick up item X before crossing chasm Y", that's too arbitrary. Banning select warps in Zelda Link's Awakening makes sense, so does the Doghouse glitch. Both of these can be clearly defined. A no warp run of Super Mario Bros has its merits. A "no jumping over obstacle X" rule is silly.

Re:Holy bug exploitation (2)

izomiac (815208) | more than 3 years ago | (#35190160)

If you're fine with exploiting glitches in a game, just enter debug mode to jump to the end "You Win" sequence for a 2 second speedrun for games with such a feature. The entire point, IMHO, is to demonstrate the skill of the player, not the ability to cheat. That's like receiving a trophy by physically stealing it rather than winning an event, it's missing the point of the accomplishment.

Re:Holy bug exploitation (1)

Shikaku (1129753) | more than 3 years ago | (#35190680)

There [youtube.com] are [youtube.com] runs [youtube.com] like [youtube.com] that. [youtube.com]

But usually they have a non-FUBARed version to go along with it. I recommend watching at least the first and last, for the biggest WTF factor.

But most games DON'T have giant bugs like this. Most of them also would look really close to the human speedrun version, if the glitches are not too egregious to do. A Japanese person did do a 0 star speedrun under 10 minutes on a real console with no programmed controllers (i.e he used his hands and a controller alone).

Re:Holy bug exploitation (1)

ildon (413912) | more than 3 years ago | (#35194350)

There are plenty of non-glitch speed runs. They're just A LOT LONGER and usually (but not always) not as fun to watch.

Re:Holy bug exploitation (1)

damn_registrars (1103043) | more than 3 years ago | (#35194438)

There are plenty of non-glitch speed runs. They're just A LOT LONGER and usually (but not always) not as fun to watch.

That is a matter of opinion. Some of us prefer to see the game done without exploiting bugs and glitches, to see what is possible within the intended possibilities of the game.

Re:Holy bug exploitation (1)

ildon (413912) | more than 3 years ago | (#35194666)

Some of these games take hours to complete, even with super human reflexes and perfect execution, but without exploiting glitches, bugs, and sequence breaks. I don't really know anyone willing to sit and watch that, as opposed to the 5-20 minutes many of the glitched/TAS speed runs take of the same games.

Re:Holy bug exploitation (0)

Anonymous Coward | more than 3 years ago | (#35194924)

Well, I wouldn't know about watching a video for hours - but I might skip through the parts that actually interest me.

But if I'm interested in how somebody handles Level 4 of Game X, watching a speedrun that exploits a glitch to skip from Level 2 to Level 6 is at best going to leave me thinking "huh.. odd glitch.. they should bugfix that", not "damn that's some pretty mad skills" (do kids still say that?)

E.g. as an example - a Half Life speedrun.. I thoroughly enjoyed the parts where people use the plasma gun or whatever it's called to use its recoil to get around a map faster.. or nudging a scientist close to a panel to activate a sequence ahead of time.. to me that's not a glitch so much as something you might do in real life ("Yeah, yeah.. interesting scientific mumbo jumbo, but please just open this door for me, eh?").
I didn't care for nudging a Barney to a switch that's actually located on another side of the wall (thus he shouldn't actually be able to throw that switch) and having him switch throw that switch thereby skipping 3/4 of a map, nor did I care for somebody stacking snarks in some outdoor map to get themselves up on the ledge of the physical map model and walking across the great void to another part of the map).

Again, I think it's neat that people figure out such glitches and use them to their advantage - but they're not exactly portrayals of skill or strategy.

So yes.. I'd watch speedruns that go through a game 'proper' that last for hours.. as long as I can skip to the parts I'm actually interested in.

Re:Holy bug exploitation (1)

ildon (413912) | more than 3 years ago | (#35195052)

The skill being displayed is not playing the game, but a combination of creative thinking to figure out how to shave time off the run and coding the script to implement the idea. If that doesn't interest you, don't watch them. Like I said there are plenty of "normal" speed run videos to be found.

Re:Holy bug exploitation (0)

Anonymous Coward | more than 3 years ago | (#35189514)

http://tasvideos.org/GameResources/NES/SuperMarioBros.html has a lot of information on various SMB bugs.

Re:Holy bug exploitation (1)

Dr Herbert West (1357769) | more than 3 years ago | (#35189732)

That's not a bug, or human-impossible-- it's the way the hit boxes are set up. Similar to doing a "pit" maneuver on the spiky-wheeled cars in the original "Spy Hunter", I used to do that all the time back in the day.

Re:Holy bug exploitation (1)

damn_registrars (1103043) | more than 3 years ago | (#35189916)

That's not a bug

Did you watch the video? He runs through solid walls more than once, and climbs out of a bottomless pit like some kind of ninja. Those are bugs for sure.

Re:Holy bug exploitation (1)

QuantumBeep (748940) | more than 3 years ago | (#35190018)

SMB has walljumps. They are extremely hard to do.

Re:Holy bug exploitation (1)

toddestan (632714) | more than 3 years ago | (#35196088)

The wall jump thing is almost certainly a bug. Though unlike things like going through solid walls which shouldn't happen, the wall jump thing can be thought of as more of an unintended feature.

Re:Holy bug exploitation (1)

Dr Herbert West (1357769) | more than 3 years ago | (#35190032)

RTFV? You must be new here ;)

My post only referred to the "standing on the edge of the pipe" trick, I should have been more clear. Sorry for the confusion.

That set aside, I consider that maneuvers that a human can perform only with extreme difficulty (frame-accurate timing, hitting multiple buttons at once) to be exploits, not bugs. Splitting hairs, I know.

Re:Holy bug exploitation (1)

KDR_11k (778916) | more than 3 years ago | (#35200074)

Yeah but running through walls is how the minus world got discovered so it's not impossible in realtime.

Re:Holy bug exploitation (0)

Anonymous Coward | more than 3 years ago | (#35191144)

Nub.

Re:Holy bug exploitation (1)

ildon (413912) | more than 3 years ago | (#35194290)

to say nothing of the way that he would jump on the edge of a pipe while the flower was out and not take a hit.

It's funny that people keep mentioning that as impressive, as it's something I used to do when I was like 8 years old playing this game.

This won't work with all games (5, Interesting)

Dwedit (232252) | more than 3 years ago | (#35189186)

This won't work with all games. Many games made by Konami use aggressive random number generators which depend on the number of clock cycles consumed while the game waits for the next frame.

Then the game also plays digital samples through the DMC channel, and the DMC channel does not have a known consistent power-on state. Because the DMC channel periodically interrupts the CPU to fetch bytes, that will affect the number of cycles it takes while it waits for the next frame.

So we have two issues coming together, number of leftover cycles from power-on state, and initial DMC state, so when you play one of these games, the game's own demo mode isn't even consistent between multiple power-ons.

You can try it with Blades of Steel or Double Dribble, and see that their demo modes aren't always identical between different power-ons, even when you are aren't touching the joypad.

No chance of those games being TASed on hardware.

Other games are far more friendly, and don't rely on exact timing for their random number generator behavior.

Some kind of cheats... (0)

Anonymous Coward | more than 3 years ago | (#35189192)

Yeah - I call BS. There were several times where he clearly died - fast forward to the water scene near the end, and he literally swims through the CENTER of the squids.

Re:Some kind of cheats... (0)

Anonymous Coward | more than 3 years ago | (#35189236)

You clearly don't know jack about hit detection or computer programming. Just because it looks like he went through the squid, doesn't guarantee the code for Super Mario Bros caught it. Obviously, watching the video, it doesn't!

http://tasvideos.org/GameResources/NES/SuperMarioBros.html

Explains how some of these tricks are done. Learn something about the source material before running your mout off.

Re:Some kind of cheats... (0)

Anonymous Coward | more than 3 years ago | (#35189252)

You really shouldn't have to read screeds of technical information on how this was done before saying "it looks like he clearly dies" when, well, it looks like he clearly dies many, many times by running through plants and flames and so on. Is there any need to be condescending to someone who may be simply mistaken with a very good reason for being so?

Re:Some kind of cheats... (2)

QuantumBeep (748940) | more than 3 years ago | (#35190030)

Yeah, I do have a problem with someone calling bullshit out of stupid animal reflex. Thirty seconds of reading the articles or the above and below comments would have explained that no, hitboxes are actually pretty forgiving in SMB if you exploit them just right.

When I was 10 (1)

CookieForYou (1945108) | more than 3 years ago | (#35189204)

When I was 10, I sunk probably a thousand hours into that game and never beat it. I got to the last Bowser a few times and died and wanted to cry.

It sure is fun to see it beat in 5 minutes.

Re:When I was 10 (0)

Anonymous Coward | more than 3 years ago | (#35190520)

I was in the same boat as you when I was about 4 to 6. Just last year though, I decided to get around to finally complete it, and once I did it became remarkable easy. Here's one of my play-throughs. [youtube.com]

In fact just five minutes before seeing this story, I had completed it again. I recommend that you get around to finishing it. It's a lot of fun.

Re:When I was 10 (0)

Anonymous Coward | more than 3 years ago | (#35190558)

I got that game when I was 10 and had it finished that day. You poor kid.

Ok, what? (1)

MattGWU (86623) | more than 3 years ago | (#35189254)

3:54, about to fall down a hole and does Mario Galaxy-style parkour to get out of it. You could do that in original Super Mario Brothers?

Re:Ok, what? (2)

DeHackEd (159723) | more than 3 years ago | (#35189274)

Not officially, but collision detection can be abused to trick the game into believing a solid wall is ground beneath Mario's feet, allowing him to jump. Frame-precision is needed, hence the tool-assisted aspect of it.

The tasvideos.org page has more info in their wiki.

Re:Ok, what? (1)

splerdu (187709) | more than 3 years ago | (#35191164)

You can do that by hand. I could back in the day, but only for some places like when I just barely miss a ledge and walljump back up.
The trick is to hit Mario's foot on the 16th pixel of the block, and jump immediately after touching it.

It's kinda the same for passing through (breakable) walls, except this time you hit mario's head on the upper block to cause his body to get bumped into the wall.

It's easy as big mario, try for yourself on 4-2 near the start where there's a huge corridor with breakable blocks above you. Break two blocks in a line, then scroll the screen to the right until the area you broke is partially off-screen to the left. Jump into it while crouching, and if you do it right you'll get stuck in the wall, with the unbroken third block covering where your head would be. Release crouch, and this puts your head in the block, causing the hitbox detection to push you into the wall. You can walk throught he wall afterwards.

Seen it (0)

Anonymous Coward | more than 3 years ago | (#35189276)

Posted on hackaday a few days ago...

Not too impressive (0)

Anonymous Coward | more than 3 years ago | (#35189302)

It is just an evolution over autofire and macro based controllers.

Human players (4, Informative)

Anonymous Coward | more than 3 years ago | (#35189632)

Though I am impressed that someone got an Arduino to do something like this, I still think that it's impressive that it only barely squeaked by the "real" record. Here's a human player (not Tool-assisted):
http://www.youtube.com/watch?v=bRyhpxR3l_g

By my count (seconds are "game-seconds"):
1-1 Tie
2-1 Arduino up 1
4-1 Tie
4-2 Arduino up 3
8-1 Tie
8-2 Human up 4
8-3 Arduino up 2
8-4 Arduino up 2

So if my reckoning is correct, the Arduino, with all its glitches, only beats a human player by 4 in-game seconds. Though SDA counts time from when the games starts to finishes, including loading times between stages, in which case it looks like the Arduino may have won by 5 real seconds. Still, the human players have done incredibly well on this game to fine-tune it to the point they have. Yes, I am a geek.

That's nothing... (2, Interesting)

Anonymous Coward | more than 3 years ago | (#35190392)

You should see how many updated movies on TASVideos (which I've been visiting for a long time now) beat each other by a few *frames* (i.e. 1/60ths of a second).

It's not uncommon to have a movie obsoleted in favor of a 2-3 frame improvement, especially in the Mega Man games, which are very, very, very competitively TASed.

Re:That's nothing... (1)

Anonymous Coward | more than 3 years ago | (#35192190)

The 2-3 frame improvements generally only occur with games where the previous run was "perfect". Like Super Mario Brothers.

Have you seen the latest Mega Man 1 TAS??? The guys skip most of BombMan and the first two Dr Wily stages using a buffer overflow and a race condition...it saved three minutes over the previous best run.

That's right, a buffer overflow and a race condition. In a FUCKING CONSOLE GAME!

Yay (-1)

Anonymous Coward | more than 3 years ago | (#35189652)

Now attention-seeking furries and otakukind from the basement can proclaim how god they are at games.on the *real* consoles.

Oh boy.

"Set up", not "setup" (-1, Troll)

Anonymous Coward | more than 3 years ago | (#35190210)

The author includes complete instructions on how to setup the device.

The word "setup" is a noun. The sentence should read "The author includes complete instructions on how to set up the device.".

FAKE (-1)

Anonymous Coward | more than 3 years ago | (#35190366)

He is using hacks and should have died multiple times, but he doesnt becouse this is really a hacked emulator.

Old Tools... (0)

Anonymous Coward | more than 3 years ago | (#35190964)

Tools assisted Speed runs?
Like..say... Angband bot? Rogue-o-matic?

HELLO! WHERE HAVE YOU BEEN?

Uninitialized memory for randomness (3, Insightful)

Anonymous Coward | more than 3 years ago | (#35191010)

Uninitialized memory is not random, and relying on it to produce randomness is very bad.
Interestingly I once saw this in some C code:

static int c; /* leave uninitialized to make as random as possible */

Re:Uninitialized memory for randomness (1)

Dwedit (232252) | more than 3 years ago | (#35198404)

That would go in the .bss section, and on most platforms, is automatically initialized to zero by the crt0 code. The ctr0 code is the real entry point of your program, and it's what calls main().

Re:Uninitialized memory for randomness (1)

KDR_11k (778916) | more than 3 years ago | (#35200140)

These are consoles with no clock, there is no source of randomness beyond the user's controller input so developers look for anything they can find to add entropy. IIRC the PRNG in the Mega Man games is based on the number of sprites drawn on a frame in which the screen has scrolled.

Contra. (0)

Anonymous Coward | more than 3 years ago | (#35191506)

Let me know when it beats Contra without 30 lives. Then we'll talk.

TAS? (1)

lyinhart (1352173) | more than 3 years ago | (#35193232)

I've never found tool-assisted speedruns entertaining at all. Legit speedrun videos themselves are kind of boring, but at least they're for real. It's no different than going through a game with invincibility, or infinite time. You're changing the rules of the game - like giving yourself as many mulligans as you want in golf. Or editing out all the frames in which you missed a couple of pins in bowling to make it look like you got a 300. And the worst part is that sometime videos aren't marked as tool-assisted, so it leaves doubt as to whether some true speed runs were assisted or not.

Re:TAS? (2)

LambdaWolf (1561517) | more than 3 years ago | (#35194736)

I agree that the videos themselves are rather boring to watch, except in some instances when they're paired with fun music or interesting commentary, and that people need to make it clear that they're tool-assisted. (As long as I'm griping, I also hate the totally unnecessary neologism "speedrun" when the phrase "speed run" would have sufficed, and even that is annoyingly redundant. [End semantics Nazi rant.])

But I think it's weird to suggest that they're somehow illegitimate, just because they run on different rules of a fan community's invention. It's irrelevant to observe that it's like cheating at the game, since when you're creating a TAS, you're not playing the game, you're creating a TAS. They're two different activities, so of course the rules are different. Complaining about a TAS in comparison to a human-performed speedrun^Wspeed run is like saying it's stupid for an engineer to sit around all day designing a race car because you'd rather watch a real person doing a 100-meter dash.

Let's look at your golf example. Imagine someone practiced the same golf shot thousands of times, until they could unambiguously describe, down to the slightest twitch of muscle fiber, how the most perfect possible swing would be executed by the human body. Don't you think that would be a technically impressive feat, if not entertaining in the same way as a sport, even if no human being could actually execute those instructions? I would think on Slashdot that kind of high-precision, insanely specialized, and ultimately purposeless problem-solving would get a little more geeky respect. (And incidentally, I've never done or even wanted to do a TAS in my life. It sounds infuriatingly tedious. But as I explained, I geekily respect the activity.)

I'm not sure how much that relates your intended point, so I'll close by reiterating that, yes, despite the above, the videos are indeed pretty damned boring to watch. But at least this sort of thing [youtube.com] can be pretty funny. :)

Load More Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account

Loading...