Difference between revisions of "Commander Keen: Vorticons"
From SDA Knowledge Base
CapnClever (Talk | contribs) (added "Glitches" section: moved some information from "Game Control" into it (better organized)) |
CapnClever (Talk | contribs) (→Glitches: added "Door Clip", fixed introduction) |
||
Line 72: | Line 72: | ||
== Glitches == | == Glitches == | ||
− | Aside from the control tricks mentioned above, there are some unintended | + | Aside from the control tricks mentioned above, there are some unintended bugs that can make speedruns of these games faster, whether it be a second or a minute. Each of these glitches can technically apply to any games using the Vorticon engine, though their actual applications may be more limited. |
+ | |||
+ | === Slide Shot === | ||
+ | |||
+ | Due to the firing stance, shooting is the same as not moving, so any horizontal momentum is slowed during a shot (halted if you're on the ground). To compensate, we have the slide shot: simply, shoot while moving horizontally and barely before hitting the ground, and you'll preserve horizontal momentum while in the firing stance. This tends to save half a second, otherwise lost from either jumping over the enemy you meant to shoot or shooting him from the ground (and wasting momentum). | ||
=== Air Jump === | === Air Jump === | ||
Line 93: | Line 97: | ||
'''Level Border Clip:''' It's possible to maneuver Keen along the very edge of the level border. Because of this, Keen can stand "on top" of a level, then jump from tile to tile, with very precise jumping into the border. | '''Level Border Clip:''' It's possible to maneuver Keen along the very edge of the level border. Because of this, Keen can stand "on top" of a level, then jump from tile to tile, with very precise jumping into the border. | ||
− | + | '''Door Clip:''' Doors are unique in the Vorticon engine in that they appear to forcibly clip Keen backwards if Keen does not have the appropriate key to open them. Consequently, if Keen is given enough momentum to clip into the door, rather than on its border, he's clipped up and to the right of the door instead of backwards. This can apply in situations where something can push Keen horizontally towards the door, thereby boosting them far enough so that clipping occurs. Known "horizontal boosters" include platforms from Keen3 and Scrubs from Keen2. | |
− | + | ||
− | + |
Latest revision as of 14:12, 29 May 2014
This page discusses features found in the first three games of the Commander Keen series, also known as the "Invasion of the Vorticons" trilogy. For game-specific routing, check the appropriate game page:
Commander Keen: Marooned On Mars
Commander Keen: The Earth Explodes
Commander Keen: Keen Must Die!
Contents
Game Control
The Vorticon engine, in general, has almost paradoxical controlling: on one hand, the movement often feels loose as a result of Keen's momentum; on the other, timing of shots and jumps require a great deal of precision and often rigidly lock Keen into certain positions. Combined, it's the worst of both worlds, and until control is learned you'll feel like the game switches between zero physics and ice physics (not to mention this engine has some of its own ice physics).
For reference, this game is 35FPS for the purposes of input-timing. Processing is done at 70FPS, which can have minor effects on rendering, but doesn't change anything that the player would care about.
Horizontal Movement
Left and right movement is similar to that of Super Mario Bros 3 (whose own engine was the inspiration for what would become this game): it takes time to build up to maximum speed and it takes time to slow down. Thus you can't immediately change from going left to going right: lining up where you want to be also has to factor in at what speed you want to be when lined up.
Jumping and pogoing briefly pause Keen's horizontal movement, so only do these when it's necessary: excess jumps add up over time.
While pogoing, Keen has less control over his horizontal movement. It's preferable to stop pogoing if you need to adjust a jump in mid-air.
Speed Oscillation: Every three frames, if Keen is moving left or right, he will move one additional pixel in that direction. For the most part, this is a bad thing, because it means that any closely-timed maneuvers (jumps, pogos) have slightly different timing depending on which frame you do them. Because the oscillation is too fast to keep track in real-time, there's no way to match a "correct" timing, so everything has to be as precise as possible at all times to ensure you're doing what has to be done. Fortunately, most jumps in this game aren't incredibly precise, so there's a little room for error. As such, IPT won't often be stated by name, instead explaining to "pogo from the ground" since it amounts to the same thing in the Vorticon engine.
Vertical Movement
Jumping: Keen spends a period of time "preparing" to jump. It's in this period of time that you can vary how high Keen jumps, differing from no movement at all to a full-height jump (a bit more than three tiles high). Jump preparation always takes the same amount of time, so the important factor is determining how high (or how far) you want your jump to be.
Pogoing: Once Keen equips his pogo stick, he's capable of jumping twice as high, just above six tiles of height, with a minimum height of about two tiles. If on the ground, he'll spend the same preparation time to pogo-jump; if in the air, he'll wait to fall before preparing for the next jump.
It's possible to begin a pogo jump after having completely walked off of a floor. Preparations of pogo-jumps actually preserve horizontal momentum for a very short period, and this can be used to move farther off the edge of a floor than would be possible with only jumping.
Impossible Pogo Trick (IPT): This is simply performing a full-height pogo jump from standing or walking position. The reason it's considered "impossible" is because of two-button firing (see "Blaster") and therefore requires precise timing. In short:
- Press ALT to begin pogo
- Immediately release ALT
- Press and hold CTRL to increase height
If step two weren't there, you'd end up pogoing and then shoot instead. It's not hard to do consistently once learned, and is very important for a number of confined maneuvers. In fact, you should be using the IPT for almost any jump that requires more height/distance than a normal jump, since there's no reason to be continuously pogoing in this game. (Side-note: this isn't considered a glitch because it was apparently intended by the developers, who gave this trick its name.)
Firing
In order to shoot, the Vorticon engine uses what is called "two-button firing": both the jump and pogo buttons must be held down at the same time. Note that this does not mean the pressing has to be simultaneous! (It can be and this is ideal but hard to do every time.) You can, alternatively, hold down the jump button and tap the pogo button and you will shoot as soon as the latter is pressed. When shooting, Keen enters a firing "stance" and regular movement can only resume when both buttons are no longer held down. Similarly, this means you must release both at some point: in the previous example of holding down jump and tapping pogo, Keen will only leave the firing stance once the jump button is released.
Having to deal with two-button firing is a huge pain. Under normal (read: casual) conditions you can usually get away with shooting from a standing or possibly a falling position, but for the sake of speedrunning it's imperative to shoot during a jump, usually a pogo-jump. Worse, since shooting has a special stance, it also removes your pogo if you happened to be pogoing at the time. This incurs the following kinds of maneuvers:
- Shooting just before landing followed by an IPT
- Shooting at the apex of a jump combined with horizontal adjustments
- Shooting while avoiding enemies
As a rule of thumb, remembering to use the jump button before pogo when firing is a better process, since pogo can toggle at any point in mid-air but pressing jump during a jump affects nothing. There's also cases where inputs just don't seem to get through, and the aforementioned handling combined with a bad input often equals death. It's frustrating, but enough practice will get it to become consistent.
Enemies
Let's start with two simple rules about enemies:
- Enemies are completely random.
- Enemies cannot be manipulated.
Enemy randomness is only slightly limited in that they can't interrupt themselves mid-action: if an enemy jumps, they can't turn around and/or shoot. Otherwise, they are always capable of performing any action, and there is no fixed-wait time between actions. Furthermore, there are only two ways to affect the RNG that all enemies are attached to: boot time of the computer and, go figure, enemies taking actions. Although the TAS manipulates enemy movements, this is simply not practical to do in a real-time speedrun.
Thus, a large portion of execution and, unfortunately, luck in the Vorticon engine (though it applies to Galaxy as well) is related to avoiding or defeating enemies in the way while losing as little time as you can doing so. If nothing else, this gives the player a lot of variability in runs and doesn't often lose too much time, although some unlucky patterns will simply lead to death no matter the setup. There's also a matter of enemy-specific routing that attempts to compromise time loss and chance to succeed. Much of Keen is about controlling Keen himself, but the rest is all about dealing with the randomness of enemies.
There are some general actions that most enemies can do. They will be listed and described here, although game-specific pages will point out which actions each enemy from that game is capable of. (The Galaxy engine is a lot more versatile in enemy capabilities so enemy actions are left to their game-specific pages only.)
Jumping
Lots of enemies jump. The most significant enemy type, Vorticons, has a variable-height jump with no preparation time: other enemy types use a single-height jump, again no preparation. If you have the space to do so, you'll usually jump over these enemies in such a way that there is little or no chance for them to collide with you.
Scanning
Some enemies will stop in place and "think" (not by any physical appearance but that's basically what they're doing). After scanning, the enemy will begin moving towards you, regardless of if they can see you or if you're even at the same height as them. Vorticons usually scan after jumping.
Attacking
Attacks are almost always in a ranged form: blaster shots, sound waves, fire balls, et cetera. There's always some preparation time before the shot goes off, though in some cases it's not nearly enough to properly react to the blast itself. Ranged attacks are occasionally indiscriminate to who they're hitting, so can be used to your advantage (albeit by luck).
Glitches
Aside from the control tricks mentioned above, there are some unintended bugs that can make speedruns of these games faster, whether it be a second or a minute. Each of these glitches can technically apply to any games using the Vorticon engine, though their actual applications may be more limited.
Slide Shot
Due to the firing stance, shooting is the same as not moving, so any horizontal momentum is slowed during a shot (halted if you're on the ground). To compensate, we have the slide shot: simply, shoot while moving horizontally and barely before hitting the ground, and you'll preserve horizontal momentum while in the firing stance. This tends to save half a second, otherwise lost from either jumping over the enemy you meant to shoot or shooting him from the ground (and wasting momentum).
Air Jump
This is a frame-specific, pixel-specific technique that allows Keen to jump immediately after falling off a ledge: when executed properly, he will jump slightly under the ledge in mid-air. Because of the extra speed oscillation (see "Horizontal Movement"), the frame precision reduces the odds of performing this jump to chance, with a 2/3s chance with one timing and a 1/3s chance with another. This is only used in Keen2 but, because it saves about ~40s otherwise used to complete the level normally, is worth the chance.
If you're wondering about the precision of the air jump, you must do the following (can be performed on any floor that has a ledge):
- Stand on the very last pixel before you'd fall from the floor. In terms of alignment, Keen's shoe outline should match the edge of the floor.
- Hold down left/right (whatever direction is away from the floor).
- For normal frames, press jump three frames after the left/right button.
- For speedy frames, press jump two frames after the left/right button.
Technically you don't have to line up with pixel ahead of time, and it's likely that the timing is different in these cases (albeit still off by a frame for speedy oscillations), but it's a lot easier to get into the right spot by stopping before performing the air jump.
Clipping
There are a couple different clips possible in the Vorticon engine.
Ceiling Pogo Clip: Jumping into a ceiling, then activating the pogo just before touching it, messes with Keen's collision and allows him to jump right through the ceiling tile. Since it only works on the first tile, it can only be used to clip in cases where there's only one tile between two rooms stacked on top of each other.
Level Border Clip: It's possible to maneuver Keen along the very edge of the level border. Because of this, Keen can stand "on top" of a level, then jump from tile to tile, with very precise jumping into the border.
Door Clip: Doors are unique in the Vorticon engine in that they appear to forcibly clip Keen backwards if Keen does not have the appropriate key to open them. Consequently, if Keen is given enough momentum to clip into the door, rather than on its border, he's clipped up and to the right of the door instead of backwards. This can apply in situations where something can push Keen horizontally towards the door, thereby boosting them far enough so that clipping occurs. Known "horizontal boosters" include platforms from Keen3 and Scrubs from Keen2.