SpelunkyFan wiki

The shortcut win's 0:00

Verified against the spelunky.ai port v0.1.12 on .

The shortcut win's 0:00 is a quirk of Spelunky Classic in which a player whose wins all came from a shortcut door sees TIME: 0:00 in the high scores.

The shortcut doors above the title screen start a game at level 5, 9 or 13, and a win from one counts. But it keeps no time: the time record stays as it was, which before any other win is 0. The high scores show the time whenever there's a win, so a player whose wins all came from shortcuts sees 0:00.

What happens

#

After a game won from the level 13 shortcut, the credits fade out to the high scores room. The win is counted, WINS: 1, but the room shows TIME: 0:00, and the only trophy is the money's [1].

A win from a shortcut. After a game won from the level 13 shortcut, the credits fade out to the high scores room. The win is counted, WINS: 1, but no time is kept: with no best time before it, the room shows TIME: 0:00.

Why

#

A shortcut door sets global.usedShortcut for the whole game, and the start and tutorial doors clear it [2] [3]. At the end of a win, scrUpdateHighscores(1) writes the win's time only when the game wasn't a shortcut's:

if (argument0 == 1 and (global.time < tTime or tTime == 0) and not global.usedShortcut)
{
    highscore_add("TIME", global.time + 8000000);
    global.newTime = true;
}
else highscore_add("TIME", tTime + 8000000);
scripts/scrUpdateHighscores.gml:57-62, from spelunky.gmk, Spelunky Classic 1.1's source, © 2008, 2009 Derek Yu and Mossmouth, LLC (Spelunky User License v1.1b).

So a shortcut win writes back the time that was there: 0, until a win from the start or the tutorial. It still adds 1 to WINS [4]. The high scores room draws the time row whenever WINS is above 0, with the comment "only display time if won", and 0 seconds reads 0:00 [5]. The time's trophy is made only for a time above 0 [6], and the Moon Room's panel shows its goal only for one [7], so neither shows: no trophy, no door, and the panel reads LOCKED. [8]

Reproducing it

#

Pay the Tunnel Man for a shortcut, start a game from its door, and win it, with no win from the start door before. Any player whose wins all come from a shortcut door sees it. The replay of the clip wins a game from the level 13 shortcut, so usedShortcut is 1 from frame 738 to the end. At the high scores room, frame 8393, the time record is 0, and the only trophy is the money's, with no Moon Room door [9]. A later win from the start door keeps its time, and the row shows it from then on. Speedrunning basics has the rest of how a run is timed.

In the port

#

The spelunky.ai port reproduces it exactly: it's in docs/quirks.md's list of the 1.1 source's bugs [8], and the oracle's fingerprint of the replay pins the time record and the trophies. No option turns it off.

FAQ

#
Why does my best time say 0:00 in Spelunky Classic?

Every win so far came from a shortcut door. A shortcut win counts as a win but keeps no time, and the high scores show the time row as soon as there's one win, so with no time kept it reads 0:00.

Do shortcut wins count for the time record?

No. Only a game started from the start door or the tutorial's keeps its time. A shortcut win still adds to WINS, and to money, kills and saves as any game does.

Does a 0:00 time unlock the Moon Room?

No. The time's trophy and the Moon Room both check for a time above 0, so with 0:00 there's no trophy, no door, and the room's panel reads LOCKED.

See also

#

References

#
  1. Clip speedrunning-basics/shortcut-win
  2. objects/oPlayer1/other_animation_end.gml:137-157
  3. objects/oPlayer1/other_animation_end.gml:72-95
  4. scripts/scrUpdateHighscores.gml:81-84
  5. objects/oHighscores/draw.gml:126-142
  6. objects/oHighscores/create.gml:50
  7. objects/oHighscores/draw.gml:46
  8. Quirk 1 (docs/quirks.md)
  9. Replay fidelity/replays/ending-seed-1.txt

Source code

#