This is a heavily glitched runthrough of Commander Keen 5 - completing the game in the impossibly short time of 2:42 - and the first submitted TAS using the emulator JPC-RR, which may be considered a proof-of-concept that the emulator is suitable for TASing.

Game objectives

  • Emulator used: JPC-RR r10 (syncs with r10.4)
    • VGA_DRAW must be enabled for the game to render properly, but enabling or disabling it does not impact gameplay.
  • Best ending
  • Uses warps
  • Uses hardest difficulty
  • Heavy glitch abuse
  • Takes damage to save time
  • Uses death to save time
  • Genre: Platform

Comments

Setting up the emulator

A prebuilt version of JPC-RR r10.4 is available from the TASTools Google Code repository (if you want to encode this, you'll also need the stream tools available there). Unpack it somewhere and start it. You will need to create two disk images using JPC-RR's Drives -> Import image utility:
  • The FreeDOS image normally distributed with JPC. The image is in the JPC source package, as resources/images/floppy.img. If you'd rather not do that, you can grab a prepared JPC-RR disk image for this from here (available under the terms of the GNU GPL v2).
  • The game (see the below section for more information about the disk image used).
After you've created the disk image (it should go into the disklibrary directory), run start-jpcrr.bat to start the emulator. (Flygon has reported that under Windows 7, the "java -jar" at the beginning of the command line within may be unnecessary and may prevent the emulator from running.)
The movie file can be loaded with Snapshot -> Load -> Movie; the appropriate images (including the game) will be loaded upon doing so. If you get a "no such image in library" message, it probably means you haven't built the game disk image properly.
Before starting the movie, you may wish to enable the VGA_DRAW hack in Debug -> Hacks; this doesn't affect sync but it results in the game displaying properly.
To start playback, go to System -> Start.

Game

This TAS uses v1.4 of the game - this is because the most important glitch works only in this version, as described below - and plays on Hard difficulty. If you happen to have another version of the game, keenmodding.org distributes a patch to convert your copy of the game to the appropriate version.
Here is JPC-RR's ImageMaker's report on the disk image I used (note that the hard disk geometry is the default when specifying "Hard disk" in the image creation utility):
Type               : HDD
Tracks             : 16
Sides              : 16
Sectors            : 63
Total sectors      : 16128
Primary extent size: 2744
Storage Method     : 3
Sectors present    : 1714
Calculated Disk ID : F278BE6EE81B72D8D7B51F186AFF6834
Claimed Disk ID    : f278be6ee81b72d8d7b51f186aff6834
Comments section:
Entry: N/A            N/A                                       4 /
Entry: 19900101000000 d080b7c53b0b374813a7479b559d4eb4     101990 /AUDIO.CK5
Entry: 19900101000000 d5598dcda25b02e61aeac17fcac9437b     573664 /EGAGRAPH.CK5
Entry: 19900101000000 33ffac175c3fb8e33fc3dbdc0ab6b965      73721 /GAMEMAPS.CK5
Entry: 19900101000000 075194c6617abf14e07cd78ea44e3266     106417 /KEEN5E.EXE

Reference

There is a 2:42 speedrun on Easy difficulty on YouTube which I used heavily as a reference. I am not sure what timing points are in use there; instead, here are some reference timing points for this run: first gameplay input to last moment gameplay is 2:38.533, and first input to triggering the action which eventually ends the game (setting off the mine; see level notes) is 2:36.133. Either way, there's a clear improvement with this run, not to mention the difference in difficulty levels (which throw a lot of new enemies in the path)!

Tricks and glitches

Central to most of the maneuvering in this run is the Impossible Pogo Trick. Tapping the jump (CTRL) and pogo stick (ALT) keys near-simultaneously while running allows a higher-than-normal pogo jump. On Easy mode Keen gets an extra unit of height out of this compared to some of the other two modes, so some of the maneuvers in the speed run are difficult if not impossible to replicate (Korath III comes to mind as a prime example of this).
There are two major glitches in use here:
  1. Warp glitch. Being pushed under certain conditions, including while hanging onto a pole, causes the end of the level to warp you to the game's secret level, Korath III. This is useful as the exit from Korath III takes you to the segment of the overworld just prior to the second last level of the game (as the exit to the secret level is in that level), meaning, if it's done early enough, you can skip a considerable number of levels. This glitch only works in v1.4 of the game.
  2. Death flag glitch. Saving and reloading a game causes the "you are dying" flag to be reset, but Keen is still in the dying animation, allowing him to clip through walls. This is most useful when done near the edge of a level, as touching the edge of a level while alive ends the level (which is never actually used in this game, and is a holdover from the other two games using the engine). Since one actually never sees the "you didn't make it past[...]" screen, I don't consider this death per se, but Keen still takes damage!

Stage by stage comments

Setup

To avoid flickering, I quickly turn on the SVGA Compatibility Mode option. I then start the game on Hard difficulty.

Ion Ventilation System

Key to this entire run are the presence of poles and Little Amptons (the purple pushing enemies), as they enable the use of the warp glitch in the very first level of the game! Keen shoots two of them to avoid slowing down or getting hit (he can only take damage from them if one of them slides into him on a pole), then hugs a pole and gets pushed off by the third, triggering the conditions for the warp glitch. Several tricky jumps and a handful of dead Sparkies later (the first Impossible Pogo after getting pushed needs to be effectively frame-perfect to work as advertised), Keen reaches the exit and mysteriously warps to Korath III.

Korath III Base

Frustratingly, Keen only has enough height to jump directly from the left platform to the hidden alcove on Easy mode. Instead, I land as quickly as possible on the right platform and Impossible Pogo up to the alcove. Two jumps later and Keen finds and breaks a fuse - doing so ends the level and also sets up the better ending later on.
No, Keen's quip about the fuse can't be dismissed any faster.

Gravitational Damping Hub

The death flag glitch sees use here. Keen needs to be standing almost as far to the right as possible in the alcove with the Volte-face in order to be close enough to the edge of the level after dying to get there without needing to save and reload more than once (given the time needed in loading the game, it is desirable to not have to reload more than once).
(Note that in the YouTube run, the Volte-face is already in a position where Keen can jump down right away. Here it starts off in the worst possible position for some reason, so I need to wait for a bit to jump down and wait a bit when it's down there...)

Quantum Explosion Dynamo

Here's the finale, and the longest of the four levels in this run. Sadly this level can't be skipped - triggering the ending in that fashion dumps him back to the overworld with no way to complete the game. The only way to trigger the ending is to reach and destroy the QED. To get to the QED requires three keys, and to blow it up needs a fourth.
The red and green keys are straightforward enough to obtain, needing little more than good timing and a few well-placed jumps. The blue key is a lot tricker thanks to the presence of a large number of Shockshunds. There is a Shockshund sitting right next to the key that eventually needs to be lured away, so a direct bypass approach isn't feasible; instead Keen ducks below the bridge area similar to the speedrun, though takes a lot less time shooting everything he can until he runs out of ammo, leaving a sufficient opening to collect the key. The remaining Shockshund moves slightly slower than Keen does, so just chasing it is out of the question; instead Keen ducks below and pulls off an impossible Impossible Pogo to escape.
The yellow key is en route to the doors, and the jump sequence Keen uses to get it and evade the Shikadi unscathed was the result of a lucky accident.
After unlocking the doors, Keen arrives at the QED itself. He evades a Shikadi Master and its attack and unlocks the red door, behind which are a number of Shikadi Mines - the only thing which can damage the QED. After painfully slowly luring it over to the QED, the mine explodes, taking down the QED, but also Keen? (Having Keen die here is slightly shorter than letting him live.)
Roll the ending!

Other comments

I anticipate that people may have difficulty getting the emulator to play back or would prefer to watch the run at normal speed. To that end, and as you've come to expect from me, I have encoded the run. Grab it at http://www.archive.org/download/CommanderKeen5TheArmageddonMachineIn0242.432BySgrunt/keen5-tas-sgrunt.mp4 or watch it below:
(flowplayer module removed)
A note about the encode: it uses the resolution of the game, i.e. 640x400, though there is a short segment of DOS at the beginning which is normally 720x400. Those images have been scaled to the appropriate resolution, similar to the norm of other runs which use multiple resolutions (such as Shadow of the Beast 2). You probably won't even notice, as that segment is so short, but I thought I would note what I did for future PC games that need encodes.
Here are some suggested screenshots:


Without the hard work that Ilari has put into JPC-RR, this run would not have been possible, so he deserves not only my thanks but yours as well!
Enjoy!

Nach: It slices! It dices! It causes the judges to go crazy and accept it! Explosion!


Editor
Joined: 3/31/2010
Posts: 1466
Location: Not playing Puyo Tetris
Simply put, yes. I remember this game fondly. What a mess of a bug that was. Very clever misusing the load/save to get though a level.
When TAS does Quake 1, SDA will declare war. The Prince doth arrive he doth please.
Joined: 3/5/2005
Posts: 47
Location: Italy
I've just finished watching the encode, what can I say? Astonishing... Yes vote for me ;)
<Neclea>Gavin Ward <Sprint>WHAT? WHERE? <oldskoolgamer101>What a stupid name! oldskoolgamer101 was kicked from # soniccenter by Sprint [ says you , kimpy ]
Patashu
He/Him
Joined: 10/2/2005
Posts: 4045
I can tell this was made because it was short and you already knew what route to take. ;) Regardless, nothing to complain about! Regarding how you said the enemy appeared in the worst possible spot, though, is it possibly because of some randomness seeded differently before the game began?
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
Post subject: Movie published
TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15649
Location: 127.0.0.1
This movie has been published. The posts before this message apply to the submission, and posts after this message apply to the published movie. ---- [1508] DOS Commander Keen: Episode 5 - The Armageddon Machine by sgrunt in 02:42.43
Senior Moderator
Joined: 8/4/2005
Posts: 5777
Location: Away
I'm going to remove "The Armageddon Machine" from the publication's main title to keep it more-or-less consistent with the other multi-game series that have similar subtitles (i.e., Megaman), and to avoid unnecessary line wrapping.
Warp wrote:
Edit: I think I understand now: It's my avatar, isn't it? It makes me look angry.
Joined: 11/20/2004
Posts: 236
Location: United States
This is awesome in the respect that it opens the door to a veritible flood of MS-DOS submissions such as Halloween Harry or possibly even Doom. The movie itself wasn't too entertaining since it was so short, but it was well done, in my opinion.
I'm not that hard to find... if you know where to look. -=( http://jolikmc.tumblr.com )=-
Joined: 5/7/2010
Posts: 1
Joseph Collins wrote:
This is awesome in the respect that it opens the door to a veritible flood of MS-DOS submissions such as Halloween Harry or possibly even Doom. The movie itself wasn't too entertaining since it was so short, but it was well done, in my opinion.
Doom has had Tool-Assisted videos for time immaterial. The demo format used by the game itself is essentially a list of inputs by frame, similar to demo formats used by emulators. The current record for beating Doom 2 on Ultra-Violence! is 14:41. http://doom.wikia.com/wiki/30uv1441
sgrunt
He/Him
Emulator Coder, Former player
Joined: 10/28/2007
Posts: 1360
Location: The dark horror in the back of your mind
In fact, we used to publish some of those Doom runs way back in the early days of the site. I don't know if anyone remembers why that's no longer the case, though.
Joined: 10/14/2013
Posts: 335
Location: Australia
Here are some extra encodes of this run. Higher resolutions are based on the game's native resolution and are scaled at 2x: Direct Downloads: 10bit444 MKV: 480p, 960p Compatibility MP4: 480p, 960p Torrents: 10bit444 MKV: 480p, 960p Compatibility MP4: 480p, 960p To download the direct download links, you may have to right click on the link and select "save link as" (this option may be named differently depending on your web browser).
I'm not as active as I once was, but I can be reached here if I should be needed.