MDK

From SDA Knowledge Base

Jump to: navigation, search


This description also assumes that the reader has already played MDK. Thus this is not a playthrough but rather a collection of tricks for speed runners.

Game overview

The game consists of 6 levels. Each level consists of the following parts (in that order):

  • Freefall (not in level 6)
  • Traversal
  • Stream (not in level 6)
  • Intermission, asking you to save (not in level 6)

General

This description is about the PC version. The PSX version contains many changes; the level layout is different and textures are worse (its creators obviously had to obey the PSX' hardware limits).

This game can be played as individual levels. The only thing that's transferred from one level to the next is health.

An exception is between level 5 and 6. While all character properties and equipment is transferred these are not retained in the savegame you're asked to create there. So it's a good idea to discard it and manually save in level 6 since having good equipment speeds up level 6 alot.

If levels themselves are to be segmented you might need to download "F2 save" patches which enable you to save almost anywhere within traversal. Although these patches are official they are difficult to obtain nowadays, unfortunately. Some game versions already have this "F2 save" ability and don't need to be patched.

Whether you use the "95" (software rendering) or "D3D" (hardware accelerated) version is up to you. I personally prefer the D3D version; while the D3D version has smoothed textures and (if you change gfx settings) also antialiased edges the reflection effects are a mess, some gfx effects are missing or different and it too clearly exposes the fact that this games uses few polygons.

Difficulty settings affect how much ammo there's in collectibles and how much damage you take. Now what's the best difficulty setting?

  • "Easy": you get most ammo and take least damage. Having to "waste" health manually at the end of the levels costs 15 seconds.
  • "Medium" / "Hard": you get least ammo and take most damage. Not being able to perform some timesavers due to missing ammo costs more than a minute.
  • "Flexible" (i.e. you can change difficulty as you like): changing difficulty at least 3 times during the run costs about 6 seconds. Introduces a risk of inconsistencies as difficulty is saved in the config and not in your savegames. Usually one will activate "Hard" difficulty during freefall since it's easy to take hits there without losing time and switch back to "Easy" right after that in levels 1 and 2.

I prefer "Easy" difficulty since "Flexible", while being a few seconds faster, makes running more difficult and does not introduce additional tricks.

Freefall

This part has a constant duration that cannot be influenced AFAIK. During this part you can collect 3 to 4 extras and should avoid radar (or missiles if you touch the radar ray). Getting hit by a missile will lower your health. However, since you usually want to end the traversal part with health as low as possible one may get hit by missiles intentionally.

Traversal

The most interesting part and the only part that's truly different between levels. General tricks:

  • Turbo: don't forget to press the turbo key which makes you run much faster.
  • Strafe running: run and strafe at the same time. Velocity vectors are added, making you run 40% faster compared to just running forward.
  • Try to end this part (except level 6 where it doesn't matter) with health as low as possible in order to end the "Stream" part quickly.

Level 1

Name Description Required/Time saving items (time saved) Available items (time required), recommended items in bold Tricks / Glitches
Freefall 2*Homing bullets, Super chain gun
Arena A Nuke introduction
Arena B Shooting range grenade (~6 seconds), sniper grenade (~3 seconds), dummy decoy (~10 seconds) Jump from the doorsill over the left or right sidewall and glide OOB into the bottommost room (Video: http://youtube.com/watch?v=uL4ZoOcZnwQ). Explosive must be shot to get sniper boom.
Arena C Casern Mortar (4 seconds)
Arena D Subway
Arena E Casern Super chain gun (~3 seconds) (for shooting the nuke container), Sniper boom (~2 seconds) Use 2 sniper boom shots to destroy the first plane (the one carrying a tank) to save some time
Arena F Monster Zoo Mortar Mortar (10 seconds)
Arena G Climbing tower
Arena H Dummy decoy does not help much here. On easy difficulty, it's safe to simply rush past the enemies instead of getting the disguise. You might get knocked down couple of times but it's still much faster. It's also a good way to take some damage before the level ends.
Arena I Boss Sniper boom Sniper boom (~60 seconds) etc.

Level 2

  • Caveat: You cannot take a shortcut in the "big gun room" by jumping over the trench. Although you seem to run through this room two times during this level these are two different rooms; beyond the trench there's just void.

Level 3

Level 4

Level 5

Level 6

Stream

This is your chance to collect health for the next level.

  • If you manage to reach the powerup you'll start the next level with health 150.
  • If you don't reach the powerup you'll start the next level with health 100.
  • If you lose too much health by touching the wall too often (or die right before this part starts) it'll end immediately and you'll start the next level with health 50. This is of course the best choice for speed runs.

Glitches

Engine info

This info is required for understanding why some glitches happen. MDK basically is a collection of linearly connected rooms. Usually each tunnel and each arena is an individual room. To reduce required work the game has always an active room and up to one passive room. The active room is the room the player is within (or supposed to be within), the passive room is another room the player can look into.

All objects and enemies are bound to the room they belong to. They don't collide with other rooms' geometry. Also, player collision detection only works correctly in the active room. In passive rooms player collision detection behaves strangely, e.g. you can easily get stuck and cannot run up slopes. Since the player is larger than just a dot when going from one room to the next he'll be temporarily standing in both an active and passive room; this is why you sometimes can get stuck when walking through a door.

The game renders the passive room first and the active room on top of that. Usually this yields the expected results. Well, usually...

Doors play a special role: when you approach them and they open they make the room beyond passive and thus visible. When you walk through a door this makes the room you're entering active and the room you're leaving passive. When a door closes again it makes the currently passive room inactive. Messing around with doors (e.g. triggering the door at the far end of a passive room via cheats) can crash the game.

In cases where here's no door between two rooms activation and deactivation of rooms is done via invisible triggers. This can mess up attempts to bypass parts of a room by flying out of bounds if you also unintentionally skip room loading triggers.

Also for luck manipulation this plays an important role. The item left by a dead enemy is set in stone the moment the enemy spawns, often because the room it's within is loaded for the first time. So if you want certain items you need to save & retry from a point before the room is loaded.

Saving & loading sometimes loads rooms incorrectly or too early. So if you save twice in a large room and try to use the second save for luck manipulation this can go wrong because the game has already loaded the room after loading the first savestate.

Sandbag Arena Glitch (Level 2)

This glitch happens because if you fly just below the door to the next tunnel the game thinks you've crossed the door while you're still in the current room. You'll notice that because the rendering order of both rooms reverses so you can see the tunnel through the walls of the current room. If you drop far enough the arena unloads and you fly out of bounds next to the tunnel and can thus drop directly to its end. This is faster than taking the tunnel the normal way.

Air Stream Glitch

You'll find air streams in many places that take you to a higher place. There's an invisible cap on its top that steals your upward momentum when you reach it. But if you leave the stream before the cap you'll keep that momentum. Additionally, if you jump right before entering the stream, you'll leave the stream with even more upward momentum if you exit before the cap. This can be used for skipping small portions of the game.

Aborted Death

Suicide in the second before the traversal part ends to make the stream part end as soon as it starts. Also possible right before the end boss is defeated. (Videos: http://youtube.com/watch?v=w1ZVhBPyoy0 and http://youtube.com/watch?v=3lflEcU3PDo). TODO helps suiciding before the boss dies save a second due to SDA timing rules (as player loses control as soon as he dies)?

Nuke Save Glitch

Normally nukes will take 3 seconds until they explode. But if you save after throwing a nuke and then reload it'll explode instantly.

Grenade Spamming Glitch

Normally when throwing a grenade or other throwable object the player will stop for 0.4 seconds before actually throwing the object. However, when you throw an object during a jump it'll be thrown instantly. This way you can throw one object per frame, however no further objects can be thrown while there are already 3 flying objects. This can be used for spamming enemies with grenades quickly or throwing objects faster (jump before you throw) but note that you can easily throw more objects than intended as it's difficult to press a button for no more than 1 frame.

Unaccepted tricks

These tricks are possible but will not be accepted by SDA. Maybe they can be appended to the speedrun as a kind of "outtakes".

  • Mapping mouse axes to movement. This allows about 2.5 times faster movement than usual but possible performance is heavily influenced by available mouse hardware (and possibly driver software); alternatively one can use an external input mapper program to map keyboard to mouse axes and thus overcome this limitation. Running too fast can also crash the game.
Personal tools