Joined: 4/25/2004
Posts: 498
Well, this sounds interesting. Let's see if YouTube can dig up a nice visual description of what this does... Link to video Link to video ...oh, it's THIS one. XD ...Ain't no way in hell you'd be able to complete the game under these conditions, I think. :p The players ran into so many crashes and auto-resets in those two videos alone...
Skilled player (1637)
Joined: 11/15/2004
Posts: 2202
Location: Killjoy
feos wrote:
The code may be implemented as a patch, doesn't it?
I always forget this fact about game genie codes.
Sage advice from a friend of Jim: So put your tinfoil hat back in the closet, open your eyes to the truth, and realize that the government is in fact causing austismal cancer with it's 9/11 fluoride vaccinations of your water supply.
Joined: 6/26/2011
Posts: 167
I really doubt anything like this would be accepted, but it might make Gruefood Delight. o.o Just too erratic to be entertaining to watch, though.
First a movie gets submitted, and ends up accepted despite breaking rules other runs have been rejected for. And when I vote less than spectacularly on this movie, I become the victim of harassment and threats. Yay, favoritism.
Dwedit
He/Him
Joined: 3/24/2006
Posts: 692
Location: Chicago
The code is A082:DF I'm disassembling the effects of the code: On bank 0E: There's a CALL instruction for address A0A1. The code instead changes it to address A0DF. 0E:A081:20 A1 A0 JSR $A0A1 Normally the code in that area looks like this:
0E:A0DD:8D FB 07  STA $07FB
0E:A0E0:CE FD 07  DEC $07FD
0E:A0E3:D0 51     BNE $A136
0E:A0E5:A4 73     LDY $0073
0E:A0E7:E6 73     INC $0073
0E:A0E9:B9 C5 A1  LDA $A1C5,Y @ $A1C5
0E:A0EC:F0 04     BEQ $A0F2
0E:A0EE:10 1F     BPL $A10F
0E:A0F0:D0 10     BNE $A102
0E:A0F2:A9 08     LDA #$08
0E:A0F4:8D 15 40  STA $4015
But we jumped into the middle of an instruction, so instead the code looks like this:
SLO $CE*
SBC $D007,X
EOR ($A4),Y
RRA ($E6),Y*
RRA ($B9),Y*
CMP $A1
*Illegal instructions, SLO shifts memory left, RRA rotates memory right So here, we lost some original game logic where it loads values from memory, increments some values, and peforms checks on those values, and instead we have crap executed. Now, it has performed bit shifting/rotation on memory at $CE, ($E6 + Y), and ($B9 + Y). The indirect addresses happened to be in Zeropage at the time, so they weren't mapper writes, but it's still corrupting some other variable. And register A now contains something it's not supposed to contain at that point. Then on bank 03: Original code:
03:A082:C9 5B     CMP #$5B
03:A084:D0 57     BNE $A0DD
03:A086:AC 0A 07  LDY $070A
03:A089:C0 04     CPY #$04
03:A08B:F0 0C     BEQ $A099
03:A08D:C0 08     CPY #$08
03:A08F:F0 08     BEQ $A099
New code:
DCP $505B*
SRE $AC,X*
ASL A
SLO $C0*
DOP $F0*
TOP $08C0*
BEQ $A099  (aligned back to original code again)
*Illegal instructions. DOP and TOP do nothing, DCP decreases memory, SRE shifts memory right, SLO shifts memory left. So this game genie code is a bunch of crap that just corrupts some memory every frame, and prevents original code from running. Nothing worth TASing.
Joined: 9/3/2011
Posts: 4
Thanks for all the responses. I suggested this because I thought it might make a cool challenge, and I would certainly enjoy watching the output. I can understand that this is not in the full spirit of what TASing is about, I was just hoping someone might be inspired by my suggestion, and enjoy trying to find a path to the end. I have no plans to try it myself, and I am not even sure if it is possible to get past the second level, and if you can't, it certainly would not be worth TASing. I know that the code is just a bunch of crap, but that's kind of the point.
Noxxa
They/Them
Moderator, Expert player (4139)
Joined: 8/14/2009
Posts: 4083
Location: The Netherlands
I'd think it would be a fun thing to try/do. I might take a shot at this sometime. Of course it'd never get accepted, but hell, that's what April 1st is for.
http://www.youtube.com/Noxxa <dwangoAC> This is a TAS (...). Not suitable for all audiences. May cause undesirable side-effects. May contain emulator abuse. Emulator may be abusive. This product contains glitches known to the state of California to cause egg defects. <Masterjun> I'm just a guy arranging bits in a sequence which could potentially amuse other people looking at these bits <adelikat> In Oregon Trail, I sacrificed my own family to save time. In Star trek, I killed helpless comrades in escape pods to save time. Here, I kill my allies to save time. I think I need help.
Noxxa
They/Them
Moderator, Expert player (4139)
Joined: 8/14/2009
Posts: 4083
Location: The Netherlands
Alright, so I tried out something with it. Unfortunately, the game crashes on 1-3 when getting to the hidden toad house position (regardless of if you are behind the wall or not), so the regular warps route wouldn't be possible, unless there's a way to avoid the crash.
http://www.youtube.com/Noxxa <dwangoAC> This is a TAS (...). Not suitable for all audiences. May cause undesirable side-effects. May contain emulator abuse. Emulator may be abusive. This product contains glitches known to the state of California to cause egg defects. <Masterjun> I'm just a guy arranging bits in a sequence which could potentially amuse other people looking at these bits <adelikat> In Oregon Trail, I sacrificed my own family to save time. In Star trek, I killed helpless comrades in escape pods to save time. Here, I kill my allies to save time. I think I need help.
Joined: 9/3/2011
Posts: 4
Awesome. It makes me feel all warm and fuzzy inside to know that the challenge is being attempted by someone. Thanks Mothrayas. I know I said I had no plans to TAS it myself, but in order to watch Mothrayas's efforts I needed to get the tools, and as I had the tools I thought I would try recording a movie of myself playing. And I have good news, I don't know about the secret warp pipes, but the first world is completable. One thing I noticed is that what buttons are being pressed on transitions (eg climbing onto the flying boss ship) can affect whether the game freezes or not, and thing done in one section can affect what you find in the next (I had trouble getting the boss to spawn). So maybe you can get to the secret toad house, but I don't think you can actually use any items, as pressing B on the overworld screen seems to subtly kill the game. I have no idea how to upload my recording, but if anyone is interested in it, maybe give me a hint on how that is done.
Editor, Expert player (2313)
Joined: 5/15/2007
Posts: 3855
Location: Germany
Active player (325)
Joined: 2/23/2005
Posts: 786
I just had a laughing aneurysm watching those videos. This is one of the most beautiful glitches I have ever seen. I think I will attempt to play around with them myself.
Joined: 9/21/2011
Posts: 1
A complete (well, almost) run of the game has actually been posted with not this exact code but a nearly identical one (OSEZZE): Link to video Apparently you can get through the whole thing if you're persistent enough (and use lots of savestates). It's really incredible to watch the whole thing and see all the bizarre effects that can be caused by this one little code.
Brandon
He/Him
Editor, Player (190)
Joined: 11/21/2010
Posts: 913
Location: Tennessee
What exactly is the significance of this code? Is it a code that Game Genie actively advertised? Does it have a name? The above run looks cool, but I still don't understand what the point of the code is.
All the best, Brandon Evans
Joined: 7/7/2011
Posts: 140
Location: Germany
Brandon wrote:
What exactly is the significance of this code? Is it a code that Game Genie actively advertised? Does it have a name? The above run looks cool, but I still don't understand what the point of the code is.
i guess its like hacking pokemon gen I... you just overwrite some random ram adresses and voilla!
How should I know what I think before I read what I post?
Banned User
Joined: 10/9/2011
Posts: 12
Brandon wrote:
I still don't understand what the point of the code is.
Chaos.
Player (200)
Joined: 1/24/2011
Posts: 108
I doubt it would be published outside of Gruefood, but Id love to see a run of SMB3 (or 1, or LoZ, or whatever) played optimally with a freakout glitch like this. The OSEZZE code looks like a good candidate since it allows you to finish levels early (something to do with collecting powerups it looks like). I'm very tempted to start a run of this myself, if just for the lolz.
Rayas wrote:
Dunno if I'm really clear. I need to drink more.
<br>
adelikat wrote:
The idea was to kill off my family to avoid lost time to them getting sick and other inconvenient things.
Editor, Active player (296)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
Dwedit wrote:
Illegal instructions. DOP and TOP do nothing, DCP decreases memory, SRE shifts memory right, SLO shifts memory left.
I'm sorry if I step on your territory, but I could provide more accurate information as I'm right now in the process of developing an emulator... RRA = ROR + ADC RLA = ROL + AND ASR = AND + LSR SLO = LSR + ORA SRE = ASR + EOR DCP = DEC + CMP ISB = INC + SBC LAX = LDA + LDX DOP/TOP are indeed aliases to NOP. There are other illegal instructions but they are mostly rather special cases / irregular.
Joined: 5/2/2009
Posts: 656
Bisqwit wrote:
I'm sorry if I step on your territory, but I could provide more accurate information as I'm right now in the process of developing an emulator...
ooohhh foreshadowing
My first language is not English, so please excuse myself if I write something wrong. I'll do my best do write as cleary as I can, so cope with me here =) (ノಥ益ಥ)ノ
Joined: 3/11/2008
Posts: 583
Location: USA
On a somewhat-related note, VOLUPT (and related codes e.g. VOLUYT...I need to see if I can dig up the paper copies where I wrote down codes I tried) in Mario 1 (note: SMB1+duckhunt cart) screws with the level loading code in some manner, which from my testing years ago somehow chooses a new "world" destination based on which screen you are on on level load (e.g. if you die or enter a pipe as most common ways), though it also screws with simple level loading. I'm not sure any completable levels can be generated. I am curious how it works in the code, but... Patch codes! I thought it was simple ramwrites. That explains a lot, like those codes that make fireballs cause Mario to suffer heavy-G mode rather than the fireballs moving.
Joined: 5/10/2010
Posts: 4
B'man wrote:
It goes up by 1 subpixel (1/16 of a pixel) per frame on most frames. I don't know the specifics (sure someone that does TAS Mario could explain better than I can), but every 6-8 frames or so the speed doesn't go up for one frame, making the effective acceleration about 1/18px per frame. If you have FCEUX, save the lua script posted earlier to a text file and run it through the File > Lua menu, then you can use the frame advance function to track the values.
If anyone still has the lua script mentioned above, would you mind repasting it? I've lost my copy to a hard drive crash, and it was most useful. TIA.
Former player
Joined: 8/31/2009
Posts: 236
I made a freerun TAS of SMB3! :D Also, though a bit off-topic, here's a video demonstrating some methods in solving the card game.
YoungJ1997lol
He/Him
Player (53)
Joined: 7/4/2011
Posts: 550
Location: U.S.A.
hmmm.... the only part i liked was the part where you messed with those two koopas shells in 1-3. other wise, the only smb 3 play-through we do is on the snes version Here's a good example: http://tasvideos.org/1035M.html
So yea, how's it going? Currently TASing: Nothing
Joined: 1/5/2012
Posts: 52
Location: Maridia
New glitchfest? But wait, there's more! Hell just go to his channel, he's got tons of them...
Editor, Expert player (2313)
Joined: 5/15/2007
Posts: 3855
Location: Germany
Rena wrote:
New glitchfest? But wait, there's more! Hell just go to his channel, he's got tons of them...
that's old news.
Joined: 1/5/2012
Posts: 52
Location: Maridia
Damn, then why hasn't anyone made a run showcasing these? :p
YoungJ1997lol
He/Him
Player (53)
Joined: 7/4/2011
Posts: 550
Location: U.S.A.
Rena wrote:
Damn, then why hasn't anyone made a run showcasing these? :p
i dunno. cause its old news.
So yea, how's it going? Currently TASing: Nothing