SpelunkyFan wiki

Ball and Chain

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

This page describes a secret.

The Ball and Chain is Kali's punishment in Spelunky Classic for destroying a second altar: a heavy ball that keeps the player within 24 pixels of it.

Kali punishes each altar destroyed in a game, and the second punishment is this: a ball chained to the player's ankle, which stays with him on every level until the game ends. He can drag it across the ground, but not climb away from it, so tall climbs, ropes and deep drops are cut short. He can pick it up and carry it, though, as he would a Crate.

Usage

#
Ball and chain. A bomb destroys an altar of Kali's for the second time, and a heavy ball appears, chained to the player's ankle. He can't climb away from it, so he drags it along the ground and down to the exit. Between levels his walking figure drags one too, and the next level starts with a new one.

Destroying one of Kali's altars angers her: the first time in a game, spiders come down; the second time, the ball and four links of chain appear at the player; the third time and after, the level goes dark and a Ghost comes, or, if the level is dark with a Ghost already, more spiders do [2] [3]. From the second on, every new level chains a new ball to him as it starts, and the walking figure between levels drags one too [4] [5], until a new game starts [6]. In the clip, a bomb destroys a second altar; the ball appears, and the player drags it down to the exit; between levels, he still has it, and on the next level, a new one [7].

The chain holds him within 24 pixels of the ball. Farther than that, his own movement stops him: walking away from it, he can't; falling with the ball above him, he stops and swings toward under it; rising with it below him, he stops [1]. The ball, farther than that from him, follows: it's dragged along at his speed when he walks away from it and it's level with him or lower, and otherwise it's set rolling toward him [8]. The four links are drawn evenly between the ball and the player [9].

The ball is a heavy item: crouching over it and pressing the attack key picks it up, and while he holds it, it's where he is and can't hold him back. Setting it down, throwing it or taking an exit leaves it on the ground again [10] [11] [3].

Interactions

#
  • Teleporter. A teleport takes the ball and chain with him [12].
  • The Ankh. Coming back to life with it puts the ball and chain where he is [13].
  • Pits. A ball at the bottom of a pit keeps him in it, as he can't climb more than 24 pixels above it, unless he picks it up and carries it out [3].

Tips

#
  • Carrying the ball frees the player to climb, jump and use ropes as usual, for as long as he holds it.
  • A third destroyed altar doesn't take the ball away; it adds Kali's next punishment.

Trivia

#
  • The walking figure between levels has a ball and chain of its own, which follow it instead [14] [15].
  • The ball's own gravity, 1, lasts one step: the code all items share sets it back to the usual 0.6 on the next [16] [17].

FAQ

#
How do you get the Ball and Chain in Spelunky Classic?

By destroying a second of Kali's altars in one game. The first brings spiders down; the second chains the ball to the player, from then until the game ends.

How do you get rid of the Ball and Chain in Spelunky Classic?

Only by starting a new game. Each new level chains a new ball to the player, though carrying the ball lets him move freely while he holds it.

What does the Ball and Chain do in Spelunky Classic?

It keeps the player within 24 pixels of the ball: he can't walk, climb or jump farther away than that. Walking drags the ball along the ground after him.

Can you pick up the ball in Spelunky Classic?

Yes. It's a heavy item, carried and thrown like a Crate; while the player holds it, it can't hold him back.

See also

#

References

#
  1. scripts/characterStepEvent.gml:899-925
  2. objects/oSacAltarLeft/destroy.gml:11-60
  3. Quirk 1 (docs/quirks.md)
  4. objects/oLevel/create.gml:31-41
  5. objects/oTransition/create.gml:26-37
  6. scripts/scrClearGlobals.gml:67
  7. Clip ball-and-chain/drag
  8. objects/oBall/step.gml:3-40
  9. objects/oChain/step.gml:1-9
  10. objects/oPlayer1/step.gml:1203-1214
  11. objects/oPlayer1/step.gml:815-820
  12. scripts/scrUseItem.gml:461-470
  13. objects/oPlayer1/step.gml:1851-1882
  14. objects/oBall2/step.gml:1-9
  15. objects/oChain2/step.gml:1-10
  16. objects/oBall/create.gml:7
  17. objects/oItem/step.gml:160-170

Source code

  • objects/oBall/create.gml
  • objects/oBall/step.gml
  • objects/oChain/step.gml
  • scripts/characterStepEvent.gml
  • objects/oSacAltarLeft/destroy.gml
  • objects/oLevel/create.gml
  • objects/oTransition/create.gml
#