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.

# Arrow

From the spelunky.ai wiki: <https://spelunky.ai/wiki/arrow>. Verified against the spelunky.ai port [v0.1.10](https://github.com/851-labs/spelunky/releases/tag/v0.1.10) on 27 October 2026.

*For the trap that shoots them, see [Arrow Trap](https://spelunky.ai/wiki/arrow-trap).*

The Arrow is an item in Spelunky Classic, shot by arrow traps and the Bow, that takes 2 hearts from the player when it hits him fast.

![A wooden arrow with a grey head, pointing right](https://spelunky.ai/wiki/media/60545f62383bb75b/sprites/sArrowRight/frames/0%404x.png)

| Arrow      |                                                                                                                                                                                                                          |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Kind       | Carryable                                                                                                                                                                                                                |
| Effect     | Hurts what it hits; sticks in walls[^1]                                                                                                                                                                                  |
| Damage     | 1 hit point[^2][^3][^4][^5][^6][^7]                                                                                                                                                                                      |
| Object     | `oArrow`                                                                                                                                                                                                                 |
| Dropped by | [Arrow Trap](https://spelunky.ai/wiki/arrow-trap) (Fired once; left behind if the trap is destroyed unfired)[^8], [Spear Trap](https://spelunky.ai/wiki/spear-trap) (never in play: only from an alarm nothing sets)[^9] |

Most arrows come from [Arrow Traps](https://spelunky.ai/wiki/arrow-trap), which shoot one along their row when something moves into
it; the [Bow](https://spelunky.ai/wiki/bow) shoots them too. Once an arrow has stopped, it's an item like any other, and can be
picked up and thrown.

## Usage

**Clip: Arrow trap.** The player climbs a ladder into an arrow trap's line of fire. The trap shoots an arrow that hits him with his last heart, and he dies. ([video](https://spelunky.ai/wiki/media/60545f62383bb75b/clips/arrow/trap/clip.mp4))

An arrow trap shoots its arrow at 8 pixels a step[^10].
In the clip, the player climbs a ladder into a trap's row; it shoots, and the arrow takes his last heart and
kills him[^11]. An arrow faster than 3 pixels a step across that hits the player takes
2 hearts, knocks him its way and stuns him for 20 steps, and is destroyed, unless
it's one he shot or threw in the last 10 steps[^12][^13].

It moves by the code all items share: its own lighter gravity, 0.2, lasts its first step, and then it falls
0.6 pixels a step faster each step as items do[^14][^15]. It turns to point the way it's flying[^16].
While it moves faster than 2 pixels a step, it takes 1 hit point from the monster nearest
it, a [Vampire](https://spelunky.ai/wiki/vampire) that isn't stunned 3 more, and is
destroyed, unless that monster is invincible or a [Magma Man](https://spelunky.ai/wiki/magma-man), when it flies on; a Damsel it hits loses 1 hit point, and the arrow is destroyed
too[^17][^18][^19].

### Stuck in walls

An arrow that hits a wall faster than 6 pixels a step across sticks in it, 2 pixels deep: it stops, and no
longer falls[^20][^1]. A
player falling past a stuck arrow, when it's 5 or 6 pixels above his middle, catches it and hangs from it,
as he does from a ledge[^21].

### By hand

At rest, an arrow is picked up and thrown as any item is, at 8 pixels a step plus the player's speed: fast
enough to hurt, and to stick in a wall[^22][^23]. Holding a [Bow](https://spelunky.ai/wiki/bow), the player takes back an arrow at rest
that isn't stuck in a wall by touching it, adding it to his count[^24].

## Locations

Level generation makes no arrows lying about; they come from:

- **[Arrow Traps](https://spelunky.ai/wiki/arrow-trap)**, one each: a trap shoots once, and a trap destroyed before it shoots leaves
  its arrow[^25][^26][^27].
- **The [Bow](https://spelunky.ai/wiki/bow)**, which shoots the player's arrows[^28].

## Interactions

- **[Bombs](https://spelunky.ai/wiki/bomb).** An explosion destroys an arrow[^29].
- **Exits.** Carried through a level's exit, it's in the player's hands on the next
  level[^30][^31].

## Tips

- An arrow trap shoots only once, so the arrow it leaves is the end of it.
- An arrow stuck in a wall is a handhold: a player falling past it can stop there.

## Trivia

- The arrow's code keeps an arrow from flying through the target in the Moon challenge room, as its comment
  says[^32].

## FAQ

### How much damage does an arrow do in Spelunky Classic?

2 hearts to the player, from one flying faster than 3 pixels a step across, and it stuns him. To a monster, 1 hit point, and a [Vampire](https://spelunky.ai/wiki/vampire) takes 3 more.

### Can you pick up arrows in Spelunky Classic?

Yes. An arrow is an item like a [Rock](https://spelunky.ai/wiki/rock): crouching over it with empty hands, the attack key picks it up, and it can be thrown. Holding a [Bow](https://spelunky.ai/wiki/bow), the player takes back an arrow at rest that isn't stuck in a wall by touching it.

### Can you climb on arrows in Spelunky Classic?

An arrow that hits a wall faster than 6 pixels a step sticks in it, and a player falling past one catches hold of it and hangs there, as from a ledge.

### Does an arrow break when it hits something in Spelunky Classic?

When it hurts a monster, a Damsel or the player, yes: it's destroyed. It flies on through a Magma Man or an invincible monster, which it can't hurt, and against walls and floors it bounces, or sticks, and stays.

## See also

- **Related:** [Arrow Trap](https://spelunky.ai/wiki/arrow-trap), [Bow](https://spelunky.ai/wiki/bow), Throwing

## References

[^1]: `objects/oItem/step.gml:122-137`

[^2]: `objects/oItem/step.gml:282`

[^3]: `objects/oItem/step.gml:294`

[^4]: `objects/oItem/step.gml:305`

[^5]: `objects/oItem/step.gml:315`

[^6]: `objects/oItem/step.gml:325`

[^7]: `objects/oItem/step.gml:344`

[^8]: `objects/oArrowTrapTest/collision_oCharacter.gml:14-23`

[^9]: `objects/oSpearTrapTop/alarm_0.gml:1-2`

[^10]: `objects/oArrowTrapTest/collision_oItem.gml:5-26`

[^11]: Clip arrow/trap

[^12]: `objects/oPlayer1/step.gml:1513-1535`

[^13]: `objects/oArrow/alarm_2.gml:1`

[^14]: `objects/oArrow/create.gml:6`

[^15]: `objects/oItem/step.gml:160-170`

[^16]: `objects/oArrow/step.gml:3-22`

[^17]: `objects/oItem/step.gml:256-363`

[^18]: `objects/oItem/step.gml:365-398`

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

[^20]: `objects/oItem/step.gml:82-84`

[^21]: `scripts/characterStepEvent.gml:462-475`

[^22]: `objects/oPlayer1/step.gml:1203-1214`

[^23]: `scripts/scrUseItem.gml:605-646`

[^24]: `objects/oPlayer1/step.gml:1973-1988`

[^25]: `objects/oArrowTrapLeft/step.gml:1-2`

[^26]: `objects/oArrowTrapTest/collision_oItem.gml:9-21`

[^27]: `objects/oArrowTrapLeft/destroy.gml:1-10`

[^28]: `scripts/scrFireBow.gml:24-50`

[^29]: `objects/oExplosion/collision_oItem.gml:1-5`

[^30]: `objects/oPlayer1/step.gml:842-850`

[^31]: `scripts/scrHoldItem.gml:38`

[^32]: `objects/oArrow/step.gml:24-37`

### Source code

- `objects/oArrow/create.gml`
- `objects/oArrow/step.gml`
- `objects/oItem/step.gml`
- `objects/oPlayer1/step.gml`
- `scripts/characterStepEvent.gml`
- `objects/oArrowTrapTest/collision_oItem.gml`
