Spelunky is © 2008, 2009 Derek Yu and Mossmouth, LLC, and is used under the [Spelunky User License v1.1b](https://spelunky.ai/LICENSE.txt). spelunky.ai is an unofficial fan project, not affiliated with or endorsed by Mossmouth. The game and its assets may not be sold.

Music by George Buzinkai and Jonathan Perry; sound effects made in SFXR. From Spelunky Classic 1.1, © 2008, 2009 Derek Yu and Mossmouth, LLC.

# The Damsel leaving as the Spelunker

From the spelunky.ai wiki: <https://spelunky.ai/wiki/damsel-title-rope-spelunker>. Verified against the spelunky.ai port [v0.1.11](https://github.com/851-labs/spelunky/releases/tag/v0.1.11) on 28 October 2026.

The Damsel leaving as the Spelunker is a quirk of Spelunky Classic in which the Damsel, quitting by the title screen's rope, climbs out as the Spelunker.

| Quirk     |                                                                                                                                                                                                                                          |
| --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Status    | GML + Oracle                                                                                                                                                                                                                             |
| Where     | [`objects/oPDummy5/create.gml:6-8`](https://spelunky.ai/wiki/source/objects/oPDummy5/create#L6-L8)                                                                                                                                       |
| Pinned by | `fidelity/replays/title-damsel-rope.txt`                                                                                                                                                                                                 |
| Row       | [docs/quirks.md §1, Bugs and leftovers in the 1.1 source](https://github.com/851-labs/spelunky/blob/main/docs/quirks.md#1-bugs-and-leftovers-in-the-11-source): “Playing as the Damsel, the title rope's climb out shows the Spelunker.” |

Climbing the title screen's rope to the top is the way out of Spelunky: the credits roll and the game quits. At the
top, the player is swapped for a figure that climbs on up out of sight. Playing as the [Damsel](https://spelunky.ai/wiki/damsel), she
climbs the rope as herself, but that figure is the [Spelunker](https://spelunky.ai/wiki/spelunker): an `else` meant for the Damsel's check
belongs to the Tunnel Man's.

## What happens

Playing as the Damsel, the player climbs the title screen's rope to quit. She climbs as the Damsel, but at the top
the figure that climbs on out of sight is the Spelunker[^1].

**Clip: The Damsel leaves as the Spelunker.** Playing as the Damsel, the player climbs the title screen's rope to quit. She climbs as the Damsel, but at the top the figure that climbs on out of sight is the Spelunker. ([video](https://spelunky.ai/wiki/media/clips/quirks/damsel-title-rope-spelunker/clip.mp4))

## Why

When the player climbs to the top of the title screen's rope, `oPlayer1`'s step replaces him with the climbing
figure, `oPDummy5`[^2], whose step moves it up and, once it's out of
sight, fades to the credits[^3]. Its create event picks its sprite:

```gml objects/oPDummy5/create.gml:6-8
if (global.isDamsel) sprite_index = sDamselClimb2;
if (global.isTunnelMan) sprite_index = sTunnelClimb2;
else sprite_index = sClimbUp2;
```

[`objects/oPDummy5/create.gml:6-8`](https://spelunky.ai/wiki/source/objects/oPDummy5/create#L6-L8), from `spelunky.gmk`, Spelunky Classic 1.1's source, © 2008, 2009 Derek Yu and Mossmouth, LLC ([Spelunky User License v1.1b](https://spelunky.ai/LICENSE.txt)).

The `else` belongs to the second `if`, the Tunnel Man's, not to the Damsel's. So for the Damsel the first line
sets her climbing sprite, and the third replaces it at once with the Spelunker's. For the
[Tunnel Man](https://spelunky.ai/wiki/tunnel-man) the `else` is skipped, and he climbs out as himself[^4].

## Reproducing it

Save 8 Damsels in one game, so that the high scores room has the Changing Room's door[^5]. Go through it to become the Damsel[^6], go back to the title screen, and climb its rope
to the top. The replay starts with 8 saves: the player goes through the Changing Room's door and comes out as the
Damsel, then climbs the title screen's rope as her. At the top the figure that replaces her is the Spelunker, and
the credits follow[^7].

## 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[^4], and the oracle's fingerprint of the replay pins the figure's sprite. No option turns it off.

## FAQ

### Why does the Damsel turn into the Spelunker at the top of the title screen's rope?

At the top, the player is swapped for a figure that climbs on out of sight. Its create event gives it the Damsel's sprite, and then an `else` that belongs to the [Tunnel Man](https://spelunky.ai/wiki/tunnel-man)'s check gives it the Spelunker's.

### Does the Tunnel Man climb out as himself?

Yes. His check is the one the `else` belongs to, so his sprite stays; only the Damsel's is replaced.

### How do you play as the Damsel?

Save 8 Damsels in one game. The high scores room then has a gold trophy for saves and the Changing Room's door beside it, which switches the player to the Damsel.

## See also

- **Related:** [Damsel](https://spelunky.ai/wiki/damsel), [Spelunker](https://spelunky.ai/wiki/spelunker), [Controls](https://spelunky.ai/wiki/controls)

## References

[^1]: Clip quirks/damsel-title-rope-spelunker

[^2]: [`objects/oPlayer1/step.gml:49-60`](https://spelunky.ai/wiki/source/objects/oPlayer1/step#L49-L60)

[^3]: [`objects/oPDummy5/step.gml:1-8`](https://spelunky.ai/wiki/source/objects/oPDummy5/step#L1-L8)

[^4]: Quirk 1 (docs/quirks.md)

[^5]: [`objects/oHighscores/create.gml:86-93`](https://spelunky.ai/wiki/source/objects/oHighscores/create#L86-L93)

[^6]: [`objects/oPlayer1/other_animation_end.gml:173-191`](https://spelunky.ai/wiki/source/objects/oPlayer1/other_animation_end#L173-L191)

[^7]: Replay `fidelity/replays/title-damsel-rope.txt`

### Source code

- [`objects/oPDummy5/create.gml`](https://spelunky.ai/wiki/source/objects/oPDummy5/create)
- [`objects/oPDummy5/step.gml`](https://spelunky.ai/wiki/source/objects/oPDummy5/step)
- [`objects/oPlayer1/step.gml`](https://spelunky.ai/wiki/source/objects/oPlayer1/step)
- [`objects/oPlayer1/other_animation_end.gml`](https://spelunky.ai/wiki/source/objects/oPlayer1/other_animation_end)
- [`objects/oHighscores/create.gml`](https://spelunky.ai/wiki/source/objects/oHighscores/create)
