SpelunkyFan wiki

Accidental murder

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

Accidental murder is a quirk of Spelunky Classic in which any Shopkeeper's death, even one by Spikes, counts as the player's kill and marks him a murderer.

Monsters killed by traps don't count as the player's kills: Spikes and the Spear Trap mark them so. The Shopkeeper's death never reads that mark. However he dies, it adds to the player's kills and makes him a murderer, which lasts the rest of the game.

What happens

#

A thief who stole a cape waits on a floor past a hole with Spikes in it. The angry Shopkeeper chasing him jumps onto a block and walks off it into the hole. The Spikes kill him, yet the game counts him as the player's kill and marks the player a murderer [1].

A Shopkeeper the Spikes kill counts as the player's kill. A thief who stole a cape waits on a floor past a hole with spikes in it. The angry shopkeeper chasing him jumps onto a block and walks off it into the hole. The spikes kill him, yet the game counts him as the player's kill and marks the player a murderer.

Why

#

The Shopkeeper runs the code most monsters share first, where landing on Spikes takes all his hit points and sets countsAsKill false, as for any monster [2]. A monster's own death reads it before it counts a kill, as the Caveman's does [3]. The Shopkeeper's doesn't [4]:

        else
        {
            if (isRealLevel()) global.enemyKills[19] += 1;
            global.shopkeepers += 1;
            global.kills += 1;
            global.murderer = true;
objects/oShopkeeper/step.gml:487-492, from spelunky.gmk, Spelunky Classic 1.1's source, © 2008, 2009 Derek Yu and Mossmouth, LLC (Spelunky User License v1.1b).

The player is made a murderer when a Shopkeeper is crushed or found inside a solid too, and those don't ask what did it either [5]. Only the Stars bonus room's Shopkeepers are spared, where a death counts toward the room's score instead. A murderer stays one until a new game: every Shopkeeper patrols and shouts "YOU'LL PAY FOR YOUR CRIMES!", every ware is free, and each level's exit has a Shopkeeper waiting by it [6] [7].

Reproducing it

#

Anger a Shopkeeper and lead him over Spikes, or die with a lit bomb beside him. The replays pin both: a thief luring an angry Shopkeeper into a hole with Spikes in it, where his hit points go and the kill, the Shopkeeper tally and the murderer mark all come on that step [8], and a bomb the dead player left killing the Shopkeeper [9]. A Tomb Lord the lava kills, by contrast, isn't counted [10].

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 [7], and the oracle's fingerprints of the replays pin the tallies. The Spear Trap's version is read in the code and not yet in a replay. No option turns it off.

FAQ

#
Does a Shopkeeper killed by a trap count as the player's kill in Spelunky Classic?

Yes. Every Shopkeeper's death counts as the player's kill and marks him a murderer, whatever killed the Shopkeeper: Spikes, a Spear Trap, or the player's own bomb after he's dead.

What happens when you're a murderer in Spelunky Classic?

For the rest of the game, every Shopkeeper patrols and shouts "YOU'LL PAY FOR YOUR CRIMES!", every ware is free, and a Shopkeeper waits by each level's exit.

Do other monsters killed by Spikes count as kills?

No. A monster the Spikes or a Spear Trap kill isn't counted as the player's kill. Only the Shopkeeper's death skips that check.

See also

#

References

#
  1. Clip quirks/shopkeeper-spikes-murderer
  2. objects/oEnemy/step.gml:108-124
  3. objects/oCaveman/step.gml:176
  4. objects/oShopkeeper/step.gml:479-503
  5. objects/oShopkeeper/step.gml:24-68
  6. scripts/scrInitLevel.gml:245-257
  7. Quirk 1 (docs/quirks.md)
  8. Replay fidelity/replays/shop-seed-35-spikes-murderer.txt
  9. Replay fidelity/replays/shop-seed-11-bomb.txt
  10. Replay fidelity/replays/temple-seed-113.txt

Source code

  • objects/oShopkeeper/step.gml
  • objects/oEnemy/step.gml
#