Post subject: Kill screens and NES
Experienced player (702)
Joined: 2/19/2006
Posts: 742
Location: Quincy, MA
Theres something ive wondered for some time... If you beat an NES game 256 times in a row, do you think there could be strange outcomes or kill screen like pacman and others? I imagine it wouldnt betoo hard to do it with say Super Mario Bros by emulation. If I created an input file to beat quest 2 and start a new quest afterward to continue this, i dont know exactly how to do that, but I know you guys would. you can hex with fm2 i guess, but i havent TASed in a bit. Anyhow, Im curious whether oddities occur for various games and may try and produce looping runs for smb1, cv1, mm1, etc
Super Mario Bros. console speedrunner - Andrew Gardikis
Post subject: Re: Kill screens and NES
Banned User
Joined: 3/10/2004
Posts: 7698
Location: Finland
andrewg wrote:
If you beat an NES game 256 times in a row, do you think there could be strange outcomes or kill screen like pacman and others?
Why would there be? How many games do you know of that count the number of completions (and does so with a single byte)? From them, how many do you know that will glitch when the count wraps to 0?
Experienced player (702)
Joined: 2/19/2006
Posts: 742
Location: Quincy, MA
I honestly don't know too much about this overflow, other than the fact that it occurs with 8-bit games. I just wonder if a game like Super Mario Bros would count one completion as "a stage" or something. My reasoning is that potentially 8 bit games with 2nd, 3rd loops, etc would possibly have a counter that would overflow eventually. It's just something I was thinking about because I imagine no one has gone to the trouble of beating a game over and over continuously like that. And with SMB1, my other thought was that since the lives counter does overflow at 256, maybe the game itself would overflow after 256 completions. Given you can start at world 8 after each completion, it would take about 13 hours of looping (if TASed) to do this. EDIT: Anyhow, I don't think all that many games have been examined regarding kill screens, and they are interesting to me. No one has kill screened PacMan NES for example, but I assume it does.
Super Mario Bros. console speedrunner - Andrew Gardikis
Patashu
He/Him
Joined: 10/2/2005
Posts: 4045
Gradius I [NES] or Gradius II [NES] might be a candidate. If it's anything like later Gradius games, it 1) has infinite loops 2) each loop is associated with having a higher rank
My Chiptune music, made in Famitracker: http://soundcloud.com/patashu My twitch. I stream mostly shmups & rhythm games http://twitch.tv/patashu My youtube, again shmups and rhythm games and misc stuff: http://youtube.com/user/patashu
Editor
Joined: 11/3/2013
Posts: 506
andrewg, why are you asking this question of all people? You are the real-time record holder for Super Mario Bros. Haven't you beaten that game 256 times yourself?
Experienced player (702)
Joined: 2/19/2006
Posts: 742
Location: Quincy, MA
thatguy wrote:
andrewg, why are you asking this question of all people? You are the real-time record holder for Super Mario Bros. Haven't you beaten that game 256 times yourself?
Not in a row... And I don't feel like spending an entire day doing so. haha
Super Mario Bros. console speedrunner - Andrew Gardikis
Banned User
Joined: 3/10/2004
Posts: 7698
Location: Finland
A CPU being "8-bit" does not mean it's unable to make calculations with anything that exceeds 255. Anyway, even if a game would count how many times it has been completed, and even if it did so with one byte, all that would happen is that the counter wraps back to zero. It then depends solely on whether the value zero is ok for it or not. (Assuming that it starts at one, and the game was not programmed expecting it to have a value of zero, something might happen. Although that something is most probably just some value somewhere showing zero instead of whatever it's supposed to show, if the game shows it in any way at all. For the zero to actually cause glitching would require quite peculiar programming decisions...)
Player (146)
Joined: 7/16/2009
Posts: 686
Warp wrote:
For the zero to actually cause glitching would require quite peculiar programming decisions...)
Not really, using the value of a register as an offset to another ram address (this is done very, very often) would mean that any unexpected value would read data from memory that's not supposed to be read. In e.g. Pacman, this causes the right half of the level to be constructed from enemy data*, instead of actual level data. * It might not actually be enemy data, but it's not level data, that's for sure.
Editor
Joined: 11/3/2013
Posts: 506
Oh derp, I totally forgot SMB doesn't have a save function,so when you turn the console off presumably it doesn't remember you beat it before. I'm having a lot of online brainmelts recently.
Site Admin, Skilled player (1255)
Joined: 4/17/2010
Posts: 11495
Location: Lake Char­gogg­a­gogg­man­chaugg­a­gogg­chau­bun­a­gung­a­maugg
NES Ghosts and Goblins multiplies a few in-game variables by the amount of game completions. A some point the game becomes nearly unbeatable, then enemies start warping through you, then they start going backwards, then it overflows and you're at the start point again.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Skilled player (1743)
Joined: 9/17/2009
Posts: 4986
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
feos wrote:
NES Ghosts and Goblins multiplies a few in-game variables by the amount of game completions. A some point the game becomes nearly unbeatable, then enemies start warping through you, then they start going backwards, then it overflows and you're at the start point again.
Is there a video of this? :o Also, rather than hex editting the input 256 times, just do what adelikat did for #3912: adelikat's FDS Super Mario Bros. 2 in 115:17:46:40.00. Oh, and here's some candidates: Elevator Action Urban Champion Donkey Kong Jr Donkey Kong 3
Site Admin, Skilled player (1255)
Joined: 4/17/2010
Posts: 11495
Location: Lake Char­gogg­a­gogg­man­chaugg­a­gogg­chau­bun­a­gung­a­maugg
jlun2 wrote:
feos wrote:
NES Ghosts and Goblins multiplies a few in-game variables by the amount of game completions. A some point the game becomes nearly unbeatable, then enemies start warping through you, then they start going backwards, then it overflows and you're at the start point again.
Is there a video of this? :o
THere's no point in going through it playing in real time or something, it was just found out by patching a certain byte and playing the first level. But yeah, somewhere on twitch there is a video of a guy beating several cycles in a row. jc583 should know.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Joined: 10/23/2009
Posts: 545
Location: Where?
jlun2 wrote:
#3912: adelikat's FDS Super Mario Bros. 2 in 115:17:46:40.00.
Funny it doesn't write the infinite symbol. :o)
Patashu
He/Him
Joined: 10/2/2005
Posts: 4045
feos wrote:
NES Ghosts and Goblins multiplies a few in-game variables by the amount of game completions. A some point the game becomes nearly unbeatable, then enemies start warping through you, then they start going backwards, then it overflows and you're at the start point again.
Time for 'plays on hardest difficulty' TAS ;)
My Chiptune music, made in Famitracker: http://soundcloud.com/patashu My twitch. I stream mostly shmups & rhythm games http://twitch.tv/patashu My youtube, again shmups and rhythm games and misc stuff: http://youtube.com/user/patashu
Skilled player (1743)
Joined: 9/17/2009
Posts: 4986
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Hm...I'm surprised no one mentioned Pac-Man and Galaga. Also some suggestions: -Battle City -Bird Week -Donkey Kong (the arcade version has kill screen but not sure if same applies to NES) -Dig Dug (same as above) -Tetris oh, and I think Duck Hunt was mentioned to have an impossible level at 99.
Spikestuff
They/Them
Editor, Publisher, Expert player (2656)
Joined: 10/12/2011
Posts: 6449
Location: The land down under.
jlun2 wrote:
Hm...I'm surprised no one mentioned Pac-Man.
I think fceux fixes that bug. I was doing a longplay and I gave up putting input... so I copied the input in and 255 levels later there was no corruption.
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. Something better for yourself and also others.
Joined: 4/25/2004
Posts: 498
Kung Fu (Master) is short and has a loop counter in the HUD iirc. Probably doesn't do anything special when it wraps around though. :p
Spikestuff
They/Them
Editor, Publisher, Expert player (2656)
Joined: 10/12/2011
Posts: 6449
Location: The land down under.
jlun2 wrote:
-Tetris
Going off TASeditor's post. There is a total of 335 Levels. (possibly more?) It starts going funky around here. There is a loss of screen so possibly it can be a kill screen but I am unsure.
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. Something better for yourself and also others.
nesrocks
He/Him
Player (247)
Joined: 5/1/2004
Posts: 4096
Location: Rio, Brazil
My yo! noid published movie makes the game crash after it ends and cuts to attract mode, but I have no idea why.
Patashu
He/Him
Joined: 10/2/2005
Posts: 4045
FODA wrote:
My yo! noid published movie makes the game crash after it ends and cuts to attract mode, but I have no idea why.
I know that in Super Ghouls n Ghosts [SNES] demo Arthur can be affected by your key mappings, as in, if you bind the key that the demo uses for attacking to jumping, then the demo jumps every time it was programmed to attack. You can use this to get the demo to kill itself after beating the game, and it breaks the credits (I think it just goes back into normal gameplay). Maybe it's something like that? (Where the demo is using bad data left over from the player playing)
My Chiptune music, made in Famitracker: http://soundcloud.com/patashu My twitch. I stream mostly shmups & rhythm games http://twitch.tv/patashu My youtube, again shmups and rhythm games and misc stuff: http://youtube.com/user/patashu