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.

# Web Cannon

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

The Web Cannon is a weapon in Spelunky Classic that shoots balls of web, which hold monsters where they stand without hurting them; shops sell it from $2,000.

![A gun with a brown grip, a blue chamber and a white nozzle](https://spelunky.ai/wiki/media/66c8732d531340f4/sprites/sWebCannonR/frames/0%404x.png)

| Web Cannon |                                                                |
| ---------- | -------------------------------------------------------------- |
| Kind       | Weapon                                                         |
| Effect     | Shoots webs that hold monsters[^1]                             |
| Price      | $2,000[^2]                                                     |
| Objects    | `oWebCannon`, `oWebBall`                                       |
| Sold in    | Weapon Shop, Rare Shop                                         |
| Found in   | The Mines, The Jungle, The Ice Caves, The Temple, Olmec's Lair |
| Dropped by | [Crate](https://spelunky.ai/wiki/crate)                        |

Each shot is a ball of web that turns into a web where it lands, on a wall, on the floor or on a monster, and
a web holds every monster in it still, all but [Spiders](https://spelunky.ai/wiki/spider) and [Giant Spiders](https://spelunky.ai/wiki/giant-spider). It does
no damage, and the webs it makes fade away. Weapon Shops and Rare Shops sell
it, and [Crates](https://spelunky.ai/wiki/crate) and buried blocks give it away.

## Usage

**Clip: Web Cannon against a caveman.** The player picks up a web cannon and fires it ahead along the floor, where the web ball makes a web. A caveman spots him and charges into the web, which holds it fast. ([video](https://spelunky.ai/wiki/media/66c8732d531340f4/clips/web-cannon/caveman/clip.mp4))

The Web Cannon is picked up like any item, crouching over it and pressing the attack key. While it's held,
the attack key fires it, on the ground, in the air, hanging or climbing; crouching, the key puts it down in
front of the player instead[^3]. It isn't thrown. A shot fires one
web ball from 12 pixels in front of the player at 6–8 pixels per step, plus the player's, never slower than
6 forward, knocks him 1 pixel a step back and 1 up unless he's hanging or climbing, and starts a wait
of 20 steps before the next[^4].

The ball falls as it flies, 0.2 pixels a step faster each step, up to
6[^5]. It stops on the first block, water, item, web or monster it
touches (but a Giant Spider), or when its life of 20 to 100 steps runs out, and spins out into a web
there[^6][^7][^8][^9]. A
web it makes fades out, and is gone 550 steps (about 18 seconds) after it
appears[^10][^11].

In the clip, the player fires along the floor, and the ball makes a web a few blocks ahead. A
[Caveman](https://spelunky.ai/wiki/caveman) spots him and charges into it, and stops dead[^12].

The Web Cannon goes with the player through a level's exit if he's holding it, and is in his hands on the
next level[^13][^14].
He drops it when he's stunned, or when he teeters too long at a ledge's
edge[^15][^16].

## Damage

None: neither the ball nor the web hurts anything. A web holds what's in it instead, on every step:

| What's in the web                                                                                                      | What happens                                           |            |
| ---------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ | ---------- |
| Any monster but a [Spider](https://spelunky.ai/wiki/spider) or a [Giant Spider](https://spelunky.ai/wiki/giant-spider) | It's held still                                        | [^1]       |
| A [Magma Man](https://spelunky.ai/wiki/magma-man)                                                                      | It burns the web away                                  | [^17]      |
| A live Shopkeeper                                                                                                      | Held still, and set to attacking, as an angry one does | [^18]      |
| Items (not held, and not ropes) and treasure                                                                           | They stop where they are                               | [^19][^20] |
| The player                                                                                                             | He moves slowly, and each jump out of it wears it down | [^21][^22] |

## Obtaining

| Source                                    | Chance                                                                                                                                                                   |       |
| ----------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----- |
| Weapon Shop                               | 1 in 12 for each ware, its first roll                                                                                                                                    | [^23] |
| Rare Shop                                 | Each of its wares is one of its eleven items or a Bomb Box                                                                                                               | [^24] |
| A [Crate](https://spelunky.ai/wiki/crate) | 1 in 80, once the rolls before it, from a [Jetpack](https://spelunky.ai/wiki/jetpack)'s 1 in 500 to the [Spectacles](https://spelunky.ai/wiki/spectacles)' 1 in 90, fail | [^25] |
| Buried in a block                         | 1 in 19 of the items buried in blocks                                                                                                                                    | [^26] |

A shop stocks one only if the level hasn't got one
already[^27], and it adds 10% of the base price for each level past the
second[^28]. Shops are made from level 2
on[^29], and level 16, Olmec's Lair, has none:

| Area          | 1st level | 2nd level | 3rd level | 4th level |
| ------------- | --------- | --------- | --------- | --------- |
| The Mines     | —         | $2,000    | $2,200    | $2,400    |
| The Jungle    | $2,600    | $2,800    | $3,000    | $3,200    |
| The Ice Caves | $3,400    | $3,600    | $3,800    | $4,000    |
| The Temple    | $4,200    | $4,400    | $4,600    | —         |

Every block of rock away from the level's edges that isn't gold and holds no gem has a 1 in 1200 chance of
hiding an item, one of nineteen at random[^30][^26]. In custom levels, it's the level
editor's tile `W`[^31].

Paying for one, or carrying one out of a shop without paying, which angers the Shopkeeper, shows "YOU GOT A
WEB CANNON!", and it stays in the player's hands[^32][^33][^34].

## Interactions

- **The [Machete](https://spelunky.ai/wiki/machete)** cuts its webs, as it does any web[^35].
- **Water** washes a web away, and a ball that touches water makes its web
  there[^36][^37].
- **Giant Spiders.** A ball goes through a Giant Spider rather than stopping on it, and webs don't hold
  either kind of spider[^38].

## Tips

- A web shot ahead along the floor, as in the clip, stops a charging Caveman before it reaches the player.
- The player's own webs hold him too, so it's better to fire them away from where he means to go.

## Trivia

- The webs a level starts with never fade; only the Web Cannon's do, as its ball marks the web it makes as
  dying[^39][^40].
- The shot fires its single ball from a loop that runs once, `for (i = 0; i < 1; i += 1)`, and plays the
  [Shotgun](https://spelunky.ai/wiki/shotgun)'s sound[^41].

## FAQ

### What does the Web Cannon do in Spelunky Classic?

It shoots a ball of web that becomes a web where it lands or on the first monster it meets. A monster in a web can't move, except Spiders and Giant Spiders; the web does no damage, and fades away after about 18 seconds.

### Does the Web Cannon hurt monsters in Spelunky Classic?

No. Its webs only hold monsters still, so the player can get past them or attack them with something else.

### Where do you find the Web Cannon in Spelunky Classic?

In Weapon Shops and Rare Shops. Free ones come out of [Crates](https://spelunky.ai/wiki/crate) (a 1 in 80 roll, once the rolls before it fail) and out of blocks that hide them.

### How much does the Web Cannon cost in Spelunky Classic?

$2,000 on level 2, the first with shops, and 10% of that more on each level after it, up to $4,600 on level 15.

## See also

- **Related:** [Giant Spider](https://spelunky.ai/wiki/giant-spider), [Machete](https://spelunky.ai/wiki/machete)

## References

[^1]: `objects/oWeb/collision_oEnemy.gml:1-5`

[^2]: `objects/oWebCannon/create.gml:6`

[^3]: `scripts/scrUseItem.gml:332-397`

[^4]: `objects/oPlayer1/step.gml:175`

[^5]: `objects/oWebBall/step.gml:1-11`

[^6]: `objects/oWebBall/collision_oSolid.gml:1-3`

[^7]: `objects/oWebBall/collision_oEnemy.gml:1-6`

[^8]: `objects/oWebBall/create.gml:6`

[^9]: `objects/oWebBall/other_animation_end.gml:1-6`

[^10]: `objects/oWeb/create.gml:1-2`

[^11]: `objects/oWeb/step.gml:1-3`

[^12]: Clip web-cannon/caveman

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

[^14]: `objects/oLevel/create.gml:25-30`

[^15]: `objects/oPlayer1/step.gml:329-345`

[^16]: `objects/oPlayer1/step.gml:150-171`

[^17]: `objects/oWeb/collision_oEnemy.gml:7-10`

[^18]: `objects/oWeb/collision_oEnemy.gml:12-15`

[^19]: `objects/oWeb/collision_oItem.gml:1-5`

[^20]: `objects/oWeb/collision_oTreasure.gml:1-2`

[^21]: `scripts/characterStepEvent.gml:294-305`

[^22]: `scripts/characterStepEvent.gml:743-748`

[^23]: `scripts/scrShopItemsGen.gml:36-67`

[^24]: `scripts/scrShopItemsGen.gml:102-155`

[^25]: `objects/oPlayer1/step.gml:617-624`

[^26]: `scripts/scrGenerateItem.gml:63-89`

[^27]: `scripts/scrShopItemsGen.gml:43-46`

[^28]: `scripts/scrShopItemsGen.gml:179-191`

[^29]: `scripts/scrLevelGen.gml:240`

[^30]: `objects/oBrick/create.gml:7-16`

[^31]: `scripts/scrCreateTileObj.gml:369-374`

[^32]: `scripts/scrStealItem.gml:273-282`

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

[^34]: Replay `fidelity/replays/weapon-seed-38-web-cannon.txt`

[^35]: `objects/oWeb/collision_oSlash.gml:1`

[^36]: `objects/oWeb/collision_oWater.gml:1`

[^37]: `objects/oWebBall/collision_oWater.gml:1-3`

[^38]: `objects/oWebBall/collision_oEnemy.gml:1`

[^39]: `objects/oWebBall/other_animation_end.gml:3-4`

[^40]: `objects/oWeb/create.gml:2`

[^41]: `scripts/scrUseItem.gml:379-394`

### Source code

- `objects/oWebCannon/create.gml`
- `objects/oWebBall/create.gml`
- `objects/oWebBall/step.gml`
- `objects/oWebBall/other_animation_end.gml`
- `objects/oWeb/create.gml`
- `objects/oWeb/step.gml`
- `objects/oWeb/collision_oEnemy.gml`
- `scripts/scrUseItem.gml`
- `scripts/scrShopItemsGen.gml`
- `scripts/scrGenerateItem.gml`
