TASVideos

Tool-assisted game movies
When human skills are just not enough

Submission #3990: MESHUGGAH, CoolKirby, Masterjun, MUGG, TASeditor, was0x's NES Kirby's Adventure "Glitched" in 00:35.91

Console: Nintendo Entertainment System
Game name: Kirby's Adventure
Game version: USA PRG0
ROM filename: Kirby's Adventure (U) (PRG0) [!].nes
Branch: Glitched
Emulator: FCEUX 2.2.1
Movie length: 00:35.91
FrameCount: 2158
Re-record count: 27532
Author's real name: Oliver H., ?, Julian N., Cristoph H., ?, J.T
Author's nickname: MESHUGGAH, CoolKirby, Masterjun, MUGG, TASeditor, was0x
Submitter: MESHUGGAH
Submitted at: 2013-06-18 08:26:15
Text last edited at: 2013-06-21 17:50:58
Text last edited by: Ilari
Download: Download (792 bytes)
Status: published
Click to view the actual publication
Submission instructions
Discuss this submission (also rating / voting)
List all submissions by this submitter
List pages on this site that refer to this submission
View submission text history
Back to the submission list
Author's comments and explanations:
CoolKirby's Adventure is a great game. If you have a spare minute, watch our TAS. This is the result of an extensive frame war where 6 TASers participated, namely (in alphabetical order): CoolKirby, Masterjun, MESHUGGAH, MUGG, TASeditor and was0x.

Note: Submission text is subject to change.


(Link to video)
Temporary encode by Spikestuff

Game objectives

  • Emulator used: FCEUX 2.2.1
  • Uses Old-PPU (the only thing is changes on different PPU is the credits glitch which can be remanipulated)
  • Aims for shortest input
  • Entertains without losing a frame
  • Uses reset button
  • Abuses game-breaking bug
  • Manipulates luck
  • Manipulates game

The story of this movie

TASeditor demonstrated a wall clipping trick on slopes. The next day, CoolKirby submitted #3976: CoolKirby's NES Kirby's Adventure "glitched" in 00:39.07 that abused the same bug from the previous TAS but now at the very first possible place: the 3rd room of level 1 using TASeditor's discovery. And another frame war had begun.

In the spirit of [2208] N64 Super Mario 64 (USA) "all 120 stars" by MKDasher, Nahoc, sonicpacker, Bauru, Eru, Goronem, Jesus, Kyman, Mokkori, Moltov, Nothing693, pasta, SilentSlayers, Snark & ToT in 1:20:41.52 (as feos suggested), the 6 authors: MESHUGGAH, CoolKirby, Masterjun, MUGG, TASeditor, and was0x submit this movie as a team, since everyone made improvements and improved others' efforts. MESHUGGAH is the main author because he found the last improvements for this run.

How do you complete the game under 36 seconds?

You rush to the first possible place where you can abuse a game breaking glitch which triggers the ending credits (or various scene related subroutines) by using the Stone ability in water. While Stone Kirby will turn back into Kirby upon touching the surface of the water, entering a pool of water from below or from the side causes the game to crash. However, on the last frame before the game crashes, you can press Start and a few other buttons to manipulate the game to jump to the credits instead.

Other than that, there were various little tricks thrown in by the 6 TASers like subpixel positioning, removing enemies at lowest cost to save lag frames, dashing at cliffs, bunnyhopping to maintain movement speed, optimizing jumping lengths and inhaling, comparing different routes (sometimes you need to be slower to be faster) and rolling suitable RNGs.

MESHUGGAH's comments

Hi guys and girls. Do you wanna know what I implemented in order to shorten this TAS?

Optimizing sub pixel positions and jumps
using MUGG's lua script, later Masterjun's lua script, I could optimize the route to make it as fast as possible. To understand how much the game lags, in the movie it was faster to run down from the hill instead of jumping over it with a higher movement speed.

Inhaling three creatures instead of two
this way I lost position but saved lag frames, so I could continue the route faster.

Dashing through sparky
killing sparky removed many lag frames.

Delaying the leaving of a room
when you improve a "lag frame", the next occasion a lag appears will be different (of course this has other factors like objects on screen). Using TASeditor's idea of sacrificing frames to start the next room and combining this with slowing down at the early part of room 2, I could keep my improvements without losing them (except 1 frame which was otherwise impossible to make faster or even as fast as this way does). This saved much more than 10 frames alone instead of 1 frame (or even 0 frame).

Jumping through room 2 gap with 1 jump and breath
looks a bit funny, but this is 2 frames faster than any other strategy.

Wallclipping
you can clip over a slope if you time your jump's peak point to go through 1-2 pixels long walls. Movement speed and lag frames can fool you.

And for entertainment,

Glitch the ending graphics
this is input- and PPU clock/CPU cycle dependent. The reason I used this is to destroy the game after tedious TASing sessions.

I would like to thank CoolKirby for starting this madness, TASeditor for his great ideas and advice that helped me a lot, MUGG and Masterjun for their precious lua files and route strategies as well as was0x, and others who answered my questions on both forums and IRC. I hope you like this movie, as much as I hate the game now.

See you until my next frame war TAS =)

CoolKirby's comments

Hi, I'm Daisy CoolKirby! I started work on the original run after seeing TASeditor's new clipping glitch 53 minutes after he posted it. After a moment of decision, I spent the rest of my afternoon and night creating the 39.07 run, submitting it before I went to bed. This was definitely a challenge for me, as I had no experience with a game like this and didn't know how to optimize it quite as well as, say, MESHUGGAH did. I did the best I could though, and submitted it thinking it wasn't very improvable.

...needless to say, I learned a lot about advanced TASing techniques from my part in this frame war, especially from TASeditor and MESHUGGAH. While my hours and hours of trying to find an improvement myself but finding nothing were pretty discouraging, I did manage to save a frame once and establish my place in the frame war.

I'm really glad I was bested, because the run looks a lot better now with all the crazy new tricks and that wacky ending. And it couldn't have been done without all 5 of these other guys, especially MESHUGGAH (who must be a genius). Hope you all enjoy the run!

TASeditor's comments

Hi there!

How did I find the clipping glitch?
I actually was just playing a bit around, cause I was bored. Of course I did some pointless things, including jumping up a hill with turbo-fire button, then I accidentally found the clipping glitch. I was sure this could be used to improve the glitched TAS.

What have I achieved in the end?
Nothing! At the end I only shared ideas with MESHUGGAH, so he could squeeze out a bit more of the game. Thanks to MESHUGGAH for optimizing this run.

Masterjun's comments

Haha good job MESHUGGAH!
What did I do to be included here?
I actually just once saved 3 frames at the slope jump at the end, which was then sometime improved even more by MESHUGGAH (removing the lag by turning around instead of slowing down and creating laggy smoke). I also debugged the game and figured out how the RNG advances and how it determines the moves of the enemies. The lua script for it was already linked above somewhere...

How did I debug the game?
Well I... wait nobody actually wants to know this. It was easy by using the useful trace logging feature.

What else can I say?
Oh man I just love that glitched ending, haha. Also, lag frames can be a pain for every TASer! Seriously, how would anybody understand Slowing down to save time?


feos: Accepting too Moons. As for the alternate encode with regular ending, it must be added to the publication as a second YouTuber with a notice in the movie description explaining the second link.

Ilari: Processing...


Similar submissions (by title and categories where applicable):