User:Ion frigate/Shopkeepers

From NetHackWiki
< User:Ion frigate
Revision as of 07:53, 19 February 2023 by Ion frigate (talk | contribs) (notes on shopkeeper weirdities - there's a LOT we could add to shopkeeper)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Right now, this is just a place to collect thoughts/notes on shopkeeper mechanics. They're actually a lot more intricate than we currently document, and it'd be good to get some of this stuff into the shopkeeper article. Sources include shk.c and my own wizmode testing in SLASH'EM.

Specifically:

  • Ordinary debt vs robbery. Once you've left without paying, all debt and credit is erased, ownership of items is cleared, and you now instead cannot pacify the shopkeeper for less than half this total amount.
  • Shopkeepers do not actively pursue you unless they are robbed. Attacking a shopkeeper will make them angry, but they still will not leave their shop ("So wizard, you dare return to Annootok's general store?"). This is why early flame/ice mages can easily dispatch shopkeepers with a corner.
    • Seems to be a weird exception where a shopkeeper is automatically pacified if it's the first time they've seen you. Apply a drum of earthquake, they become angry (visible with warning, and they'll shoot at you), but as soon as you enter the store for the first time, they give the first-time welcome message and become peaceful.
  • Credit covering debt does not pacify shopkeepers, it just stops them from getting angry. Attack a shopkeeper, escape but have your credit cover the bill, and they'll still be angry.
  • However, shopkeepers seem to forget about being attacked if you do rob them. Attack a shopkeeper, escape with a low-value item, and they'll be fully pacified by the value of the item - no 1000zm bribes necessary.
  • Conversely, merely pacifying a shopkeeper who is pursuing you does not clear the pursuit status ("Hello wizard, didn't you forget to pay?"). They have a 1/9 chance of getting angry again every time they get a move on you ("Annootok doesn't like customers who don't pay"), unless you stop the pursuit by clearing the robbery.
  • Pursuit (following and hot_pursuit) and robbery are not actually synonymous. A shopkeeper who is merely attacked (from inside their shop, see below) doesn't acquire the following/pursuit status, but damaging their walls and refusing to pay gives it. Pacifying such a shopkeeper with a magic harp leads to the weird situation where the shopkeeper is following you, saying "didn't you forget to pay", but you can't pay them - they have not been robbed, and there is no robbery to compensate them for (charm monster does pacify them fully - guessing it follows a different code path?). The only way to fully pacify such a shopkeeper is to cast charm monster, or let them get angry again and pay the standard 1000zm bribe for a 2/3 chance at pacifying them.
    • Pacifying an angry but non-pursuing shopkeeper with a magic harp works normally. It does not however pacify the Minetown watch.
  • Attacking a shopkeeper from outside their shop does initiate pursuit, but attacking from inside does not (even if you leave afterwards). Attacking from outside leads to the above-mentioned peaceful-following-but-no-debt situation, where the shopkeeper has to get angry again to be truly calmed.
  • Pursuit/robbery/anger/debt all seem to be preserved on petrification and stone-to-flesh, though ordinary shopping debt is "suspended" while the shopkeeper is stoned
  • Destroying items from outside a shop (e.g. wand of striking) gives anger and pursuit, valued at the cost of the items destroyed.
  • Seems similar with cancelling items from outside. Shopkeepers retain ownership of cancelled items if zapped from outside, but not inside.
  • Polymorph - what is up with this?
    • Polymorphing an item without destroying it always makes the shopkeeper get angry ("Pakka Pakka gets angry! Pakka Pakka is furious! Pakka Pakka is furious!")
    • They always start pursuing you (make_angry_shk)
    • This may be SLASH'EM unique. It seems they're angered by their items acquiring the (wizmode visible) "hazy" status (will eventually revert)
      • They don't mind you polymorphing already-hazy items. They still own the item, but they don't get angry, and don't charge you for it.
    • They act as if they've been attacked AND as if you owe them for the item. Pay off the item before leaving the shop, and it's the same situation as mentioned with destroying their walls (pursuit but no owed money).
    • Items that shudder are treated like ordinary destroyed items.

Many thanks to Annootok for enduring dozens of cycles of pacification, petrification, polymorph, and plain old egging.