Okay, I was definitely not expecting this.
This movie aims to get to the final credits in the smallest amount of time. It does this, through major glitching in 2 minutes and 28 seconds. It's *almost* short enough to be played with my old movie and still be shorter than Soulrivers' movie. Unfortunately, it's not quite. Maybe next time. (it is now) The game title is misleading, and Mario doesn't even see one of these "golden coins", instead Mario just says "Fuck it." goes straight into the depths of hell and summons the credits.
This is a 651 frame improvement to the cancelled movie. Improvements come from a new strategy to get to the garbage data with a mushroom, and some small, minor optimizations.
Last time, I thanked MUGG right at the start. This time, it's not quite enough. Because he found the glitch itself and helped me enormously with route planning and other stuff, I'm listing him as a coauthor. Unfortunately, none of his input is in the final movie, but he still put in enough effort to be listed as an author.

General comments

I'm not really sure whether or not this movie should obsolete the old one. Although they are technically both any%, they are sufficiently different enough to warrant separate publications until a 100% run comes along (Also, the old any% is pretty similar to a 100% anyway).
So here's how it's done. You need to manipulate the byte at address 0xA2D5 to 0x60 from 0x00 in order to set the credits as the next level. Then, the next time you go into a level, the credits will roll. The end!
In Super Mario Land 2, every block represents a byte in memory. Normally, the level is stored in the 0xC000 - 0xDFFF range, but if we go out of bounds we can see other parts of memory as if they were a level, albeit a very glitchy looking one. Basically, I have to bury mario deep enough into the garbage up until the point where I can jump and crush the block that represents 0xA2D5. Once that's done, I quit, and restart the level, and hey! credits roll!

Detailed comments

introductory stage

Here I was battling between two different strategies. I could either run straight through the level, or I could slow down a bit and collect 30 coins. 30 coins? let's talk about that later.
I use a speed trick which requires mario to repeatedly hop through the whole level. Mario gets 1 pixel boost every time. I mention this trick in the comments for my last run, so I'll just copy it here:
The "new" pixel trick
This idea came about when I was trying to prove that the maximum time possibly saved using the pixel trick would be 1 pixel every 8 frames. The problem boiled down to whether or not you could change the number at A200 from D0 to CC in exactly four "moves" using only +4, -4 and -C, OR +8, -8 and +0. This is quite obviously impossible, as no matter how many times you apply +8, -8 and +0, you will never change D0 to CC, and if using +4, -4 and -C, you can only reach CC from D0 in odd moves. This seemed like case closed to me until I realise that if I could use all of +4, -4, -C +8, -8 and +0, the problem was gone.
Although the above paragraph makes little sense, let me try to explain. D0 and CC represent different 8 frame oscillations. If I were to be able to change between D0 and CC in exactly 4 frames, then I could save 2 pixels per 8 frames. On land, I can add or subtract 4, or subtract C from D0 once per frame. In the air, I can add or subtract 8, or keep the value the same once per frame depending on what buttons I had pressed. Normally, It would be a fair assumption that it would be impossible to be on land and in the air at the same time, so it would be fair to say that I couldn't use +4, -4, or -C along with any of +8, -8 or +0. This is of course false. If I decide to jump during the period of time where I am changing between D0 and CC, then I have the opportunity to use all of +-4, +-8, -C, and +0 within that window of time. Similarly, landing on the ground presents a similar opportunity. This would mean that I could save an entire pixel every time I jumped, much like the moonwalking technique described above
This would logically mean that I would necessarily be jumping around as much as possible all the time. Perhaps in the future a run with this technique can be used, but for now, I enjoy the relative freedom of using a slightly outmoded version.
I must admit, I use this trick ONCE in the run: in pumpkin zone 1 near the end, it allows me to land on an odd numbered frame. However, this was just luck, and I had no real idea what had happened. I actually discovered that it could save time much later on.
Twice I abstain from doing this trick in this level because it caused more lag than time saved.

Macro Zone 1

Thanks for MrGrunz for hypothesizing that this could work. If you die on the same frame you go down a pipe, then you can use the pipe glitch without completing the level first. Normally, you would complete the level to enable the use of start/select and then use start/select to exit while in the pipe. But this is pretty cool. You can't do this in pumpkin zone, so I do it here.

Pumpkin Zone 1

Wheee! I just fall to a block that I manipulate to be an exit by changing Mario's horizontal position on screen. Why don't I bury myself just yet? Because I need at least big Mario to crush the credits block in the depths of the garbage.

Pumkin Zone 1 pipe glitch setup

Now there are two ways to get a powerup before the garbage data. Option 1 is shown in the movie. Complete pumpkin zone using the pipe glitch, and then get a mushroom when you set it up again, or you can get 30 coins in the intro level and buy a powerup between macro zone 1 and pumpkin zone. This would mean you wouldn't have to do the pipe glitch twice. However, when I tested it, the second method saved about 90 frames, or a bit more if you entered into Mario zone instead of pumpkin zone, but the first method saved 10 seconds! Because me and MUGG thought it would be slower to do the pipe glitch twice, we almost missed this route, even though it seems inherently more obvious to start off with.
But getting the mushroom without slowing down is pretty cool.

Pumkin Zone 1 garbage

I'd like to note that due to the stop-start nature of this level, and the weird, timer based acceleration, sometimes I have no choice but to lose or gain frames. sometimes you accelerate slower or faster, and usually, it's slower to manipulate it than to get what you've been given. I also lose some frames because I don;t have a fireflower, so i can't do some things that I normally could.
Route planning was the major difficulty here. I have an accurate map for the first 64 rows, but for the next 100, I'm on my own. The route for the first 64 rows is designed to stay as close as possible to the left, Because it's faster to go left, and let the game's horizontal position overflow than it is to go right and get to 0xA2D5 directly like in mugg's testrun. The game has a tendency to make mario move right, because that's the way mario is ejected once inside a block.
The first 64 rows were pretty simple. I had a map, so I could just make some theories and test them. The number of routes is pretty limited so it was easy to test. There is also no weird camera movement, and the blocks shown are actually what they look like, unlike the next 64 rows. There are also very little programming errors to abuse here, apart from a weird behaviour that if you fireball a fire block, you can't fall downwards unless mario jumps. I couldn't use this in this run because I don't have a fireflower when I go through the garbage
The next 64 rows represent ROM that is bank-switchable. That means that if I perform certain behaviors, I can completely change the level layout. One behavior frequently used is B + ^, which changes the bank number, which can be used to fall through some floors or insert solid objects in the way of marios path while in the "pipe" animation, so that he will continue to be ejected. It means mario can fall through floors because I switch to a level layout where there is no floor, and then switch back to the original layout.
The basic strategy here is to go to the left until Mario is over 0xA2D5 using pipes, because going left in a pipe is faster than running (2 pixels per frame compared to 1.625 which is the speed of running with the pixel trick), and then falling to the end. The last pipe I found was excellent for this purpose. It goes left for as long as you want it to, (it is so long it can almost take Mario back to where he started!) and has many places Mario can exit using B + ^. it is also situated directly above a large recess, so Mario can fall almost straight to 0xA2D5, with a few stops along the way. I think I found a good route for these rows. Too far to the right, and you have to go even further to the right to get to 0xA2D5, Otherwise, you would have to go as far left as I did anyway in order to get down to 0xA2D5. Overall, even though I didn't have a map for this part, I think there is the possibility of 1 or 2 potential improvements, and minor ones at that (I don't know of any improvements, I'm just saying, they could be there).
The last few rows of garbage are pretty simple This part of RAM represents graphics of blocks. Break a few blocks and you're at 0xA2D5.
Well, hope you enjoyed the run!

Nach: Judging.
Flygon: Added YouTube module.

Nach: Just great, I need a debugger, hex editor, and dev manual to follow what went on in this game. I don't know about these 6 Golden Coins (not that there's any Gold at all that can be seen), I'm not even sure if there's much of a land here either. Too confusing to follow, therefore, I have no choice but to accept this run.

GabCM: Using Flygon's stuff for publication.


GabCM
He/Him
Joined: 5/5/2009
Posts: 901
Location: QC, Canada
DarkKobold wrote:
Alright, this quick pub was crap
A bit harsh, sorry. I took my normal time to publish this, and I always do the best I can do.
Joined: 5/19/2010
Posts: 259
Location: California
6 Golden Coins - what coins? I love how broken this TAS is.
#3201
Dwedit
He/Him
Joined: 3/24/2006
Posts: 692
Location: Chicago
Looks like ShinerCCC from SpeedDemosArchive is attempting a glitched run on a real console. Let's wish him luck.
Editor, Expert player (2330)
Joined: 5/15/2007
Posts: 3933
Location: Germany
I see there has been discussion on obsoleting the 21 minute movie with this one. I dislike that idea. As stated in the SML2 topic, I think these three categories are the most appropriate: - any% with the pipe glitch to skip levels (standard run) - 100% glitchless (shows most of the game) - glitched (this movie) This movie doesn't ever visit Wario's castle. Even the staff credits BGM is wrong... To me, it would be a bad decision to have this movie replace the current movie. In the case of Chrono Trigger I think the decision was a bad one because I think save-corruption should always be a different category. However, I'm fine with the Earthbound example - though the old movie shows more of the game's content.
Emulator Coder
Joined: 3/9/2004
Posts: 4588
Location: In his lab studying psychology to find new ways to torture TASers and forumers
Dwedit wrote:
There is no ROM rewriting, just precision poking to RAM.
You know what I mean.
Warning: Opinions expressed by Nach or others in this post do not necessarily reflect the views, opinions, or position of Nach himself on the matter(s) being discussed therein.
Joined: 6/4/2009
Posts: 570
Location: 33°07'41"S, 160°42'04"W
I, too, think this should be in a separate category. It is a low% of sort?
Editor, Expert player (2330)
Joined: 5/15/2007
Posts: 3933
Location: Germany
I just realized the obsoletion did already take place. What happened to the any% category?! I really wish this obsoletion could be reverted, because it's just wrong in my opinion. People around the internet, as I've seen, commented on this movie to contain a 'bad ending' and being a bad speedrun (because it skips everything and has the wrong credits BGM)... And we didn't even verify this glitch route on a real gameboy yet. I strongly recommend we seperate the previous movie and this one. Talking about precedents, Chrono Trigger's obsoletion was a bad decision anyway in my opinion. In Earthbound you could at least see half of the game. It still wouldn't have been bad to use seperate categories in both cases, in my opinion and I'm sure others think the same. I might as well read up on the corresponding submission texts, but maybe someone could explain to me why those obsoletions took place? Why the need to keep categories minimal? What comes to my mind now is what should a new any% run look like. It would need to forgo all the glitches related to pausing & quitting*? __________ * By pausing & quitting at the correct time, you can take one item to another level. This can be used with Mushrooms, Fireflowers, Carrots, Starmans, 1-ups, bubbles, checkpoint bells, goal bells, pipes (either direction; using a downward pipe leads to the famous pipe glitch as we know it). The previous movie used the pipe glitch to skip levels and used a checkpoint bell in moon zone 1 to skip some of moon zone 2. Since apparently the pipe glitch is banned for other categories, what about all the other related glitches? Banning the trick with the bubble would kill the other out of bounds glitch (bubble glitch in conjunction with object-loading glitch). It would probably not be used anyway.
Skilled player (1741)
Joined: 9/17/2009
Posts: 4981
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
MUGG wrote:
I really wish this obsoletion could be reverted, because it's just wrong in my opinion.
I don't think it will be reverted because it seems that this run and the previous run both uses the same glitch like what DarkKobold said.
Glitcher
He/Him
Joined: 3/24/2007
Posts: 216
Location: London, U.K.
I was impressed how deep you managed to go into garbage land without making the game crash. I kept think you'd dig straight down to Hell or something. XD
Joined: 5/2/2009
Posts: 656
MUGG wrote:
I just realized the obsoletion did already take place. What happened to the any% category?! I really wish this obsoletion could be reverted, because it's just wrong in my opinion. People around the internet, as I've seen, commented on this movie to contain a 'bad ending' and being a bad speedrun (because it skips everything and has the wrong credits BGM)... And we didn't even verify this glitch route on a real gameboy yet. I strongly recommend we seperate the previous movie and this one. Talking about precedents, Chrono Trigger's obsoletion was a bad decision anyway in my opinion. In Earthbound you could at least see half of the game. It still wouldn't have been bad to use seperate categories in both cases, in my opinion and I'm sure others think the same. I might as well read up on the corresponding submission texts, but maybe someone could explain to me why those obsoletions took place? Why the need to keep categories minimal? What comes to my mind now is what should a new any% run look like. It would need to forgo all the glitches related to pausing & quitting*? __________ * By pausing & quitting at the correct time, you can take one item to another level. This can be used with Mushrooms, Fireflowers, Carrots, Starmans, 1-ups, bubbles, checkpoint bells, goal bells, pipes (either direction; using a downward pipe leads to the famous pipe glitch as we know it). The previous movie used the pipe glitch to skip levels and used a checkpoint bell in moon zone 1 to skip some of moon zone 2. Since apparently the pipe glitch is banned for other categories, what about all the other related glitches? Banning the trick with the bubble would kill the other out of bounds glitch (bubble glitch in conjunction with object-loading glitch). It would probably not be used anyway.
I agree with MUGG.
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: 8/23/2008
Posts: 417
OmegaWatcher wrote:
I agree with MUGG.
Not to beat this horse dead, but it's always a bummer to see a good any% run that plays the game normally being obsoleted by any sort of memory abuse/save corruption play. Now, those runs (major glitching) are usually my favorites, so I'm thrilled to see them, but I still don't care much for the justification of removal of the any% runs of Earthbound/CT/this, etc. Just because a run is outdated doesn't mean someone will put up a new any%, especially of longer games. But, again, just my 2c... the poor horse is fine powder now, I know...
I will not use self-reference in my signature.
Joined: 12/19/2007
Posts: 40
(oops. moved to newer movie discussion.)
Site Admin, Skilled player (1254)
Joined: 4/17/2010
Posts: 11478
Location: Lake Char­gogg­a­gogg­man­chaugg­a­gogg­chau­bun­a­gung­a­maugg
The previous movie (SML2 any%) got a channce to be unobsoleted. See Post #356127.
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.
Editor
Joined: 11/3/2013
Posts: 506
Just a small thing: this movie is not strictly an improvement since the previous version was removed from obsoletion, so shouldn't it lose the notable improvement tag?
Site Admin, Skilled player (1254)
Joined: 4/17/2010
Posts: 11478
Location: Lake Char­gogg­a­gogg­man­chaugg­a­gogg­chau­bun­a­gung­a­maugg
Good point.
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.