Charm

From NetHackWiki
(Redirected from Seduction theft)
Jump to navigation Jump to search
This article is about the item-stealing "seduction" attack. For the attack that initiates a foocubus encounter, see seduction.
For the "normal" item-stealing attack, see item theft.
Not to be confused with charm monster.

Charming, also referred to as seduction theft, is a damage type that appears in NetHack, and is primarily used by monsters to steal one or more items. The damage type is defined by the AD_SEDU flag within monattk.h in the source code.[1]

Description

Charming attacks are distinct from the 'normal' item theft damage type, as well as the outcome of a foocubus seduction attack used against monsters:[2][3] these damage types both use some of the same code, but are defined by different flags.[4][5][6]

The three types of nymph–the wood nymph, water nymph and mountain nymph–are the only monsters to have charming abilities, and will use "claw" attacks to initiate charming and steal items. Magic cancellation does not protect against charm attacks. Monsters that have charm attacks or can initiate foocubus-style encounters (which consists of nymphs and actual foocubi) are immune to being charmed in this manner.[7]

If a monsters with a charming attack is cancelled and then killed or petrified, they will remain cancelled even if they are revived from their corpse by any means or reanimated from their statue with the stone to flesh spell.[8][9]

Targeting the hero

A monster that hits the hero with a seduction theft attack will interrupt any occupation and try to steal a targeted item from the hero's inventory, with the following criteria applied:[10][11][12][13]

  • Gold cannot be targeted for theft by charming.[14] Food that the hero has just finished eating will be used up in order to avoid the attacker stealing a nonexistent item.[15] Dragon scales embedded in the skin of a hero polymorphed into a dragon also cannot be targeted.[16] Boulders will not be targeted if the attacker is incapable of lifting them, which will always be true normally.[17]
  • Items can be stolen regardless of if they are cursed, welded or otherwise tethered to the victim's person, e.g. cursed armor, a cursed loadstone, or a heavy iron ball chained to the hero (which the attacker will remove the chain from before stealing).[18]
  • A ring of adornment that the hero has put on will be targeted first, unless they are wearing gloves over them.[19]
  • If the theft targets a worn ring of any kind and the hero is wearing gloves, then the target will be changed to those gloves.[20] Then, if the theft attempt is targeting worn gloves while the hero is wielding a weapon or other item, the target will be changed to that wielded item.[21] This enables an attacker to steal worn rings from "under" cursed weapons and other items welded to the hero's hands if there are no gloves.
  • Otherwise, if the theft attempt is targeting the hero's suit of armor and they are wearing a cloak over it, the target will be changed to the worn cloak[22]—if the theft targets a worn shirt and the hero has a worn suit and/or cloak over it, the target will be changed to the outermost item.[23]
  • If an invalid item is selected, then a limited amount of retries will occur until either an eligible item to steal is selected or the number of retries reaches zero (which should almost never happen), with more retries occurring the more worn armor or jewelry the hero has.[24]
  • Once the targeted item is stolen, the attacker will begin fleeing, and will also attempt to teleport away unless they are on a no-teleport level.[25][26]

Knights are not subjected to caitiff penalties for attacking a fleeing monster that stole something by charming them unless the monster stole the item under conflict, started fleeing after charming the hero into handing over their armor, or else started fleeing after ending the hero's punishment by stealing a heavy iron ball from them.[27][28]

An unconscious hero will be roused awake in order to charm them properly.[29] Worn items will be taken off if necessary, and a hero charmed into removing worn armor or other items will take the amount of time required to doff that item[30][31]—this can allow the attacker to steal other items in the meantime, and the hero will be helpless for the entire duration unless the attacker is killed or moved somewhere else before they complete this action. Seduction theft attempts that 'miss' a mounted hero can fall upon their steed instead, and if the steed's saddle is stolen this way, then the hero will be dismounted without suffering any damage.[32][33]

An attacker that targets a hero polymorphed into a nymph or foocubus with a charming attack will speak to them instead of stealing items, and always teleports away afterward.[34] An attacker that steals a footrice corpse and is not wearing gloves will be subjected to instant stoning.[35]

Seduction theft will always fail if the attacker is cancelled, and they have a 23 chance of teleporting away afterward.[36] Seduction theft also fails if there is nothing eligible to steal, or if the attacker teleported away as a result of landing a previous attack (i.e. a nymph using her item theft attack that precedes this attack).[37][38]

A user has suggested improving this page or section as follows:

"Double-check if the timing used for a charmed hero removing armor adheres to the timing of the take off command (shift + T) or that of the "take off all" command (shift + A)."

Targeting other monsters

A charming attack used against monsters will attempt to steal items from them, with similar conditions as those applied to one targeting the hero:[5][39] gold pieces and a dragon's natural scales cannot be stolen this way, boulders will be avoided if the attacker cannot carry them (which will always be the case normally), and the attacker will teleport away if possible upon success. As mentioned above, this also includes cases where the monster originally targets the hero and their attack falls upon the steed. A pet that uses a charming attack to steal items will not take any cursed items.[40]

Rings of adornment have no influence on what items are stolen for these cases: succubi can put on a hero's ring of adornment, but are immune to charming attacks, and no other monsters will wear the ring (or any ring, for that matter).

Monsters that have any worn or wield equipment stolen by charming will have a chance of replacing it with any other appropriate equipment they have during their next action.[41] If a monster charming another monster out of any items causes the defender to die, e.g. from stealing the gloves of a monster wielding a footrice corpse, the attacker gains HP as they would for killing any other monster.[42]

The above information applies to a charming attack from the hero that targets a monster, with further conditions applied:[6][43]

  • If the hero charms a monster that is not immune and is wearing body armor, they will take all of that monster's inventory minus their gold.[44]
  • The hero will automatically drop any stolen items that either cannot fit in their inventory, or else would prompt a warning from the game about their encumbrance increasing.[45]
  • If the hero steals an item that would petrify them (i.e. stealing a footrice corpse while not wearing gloves), the theft will be interrupted by the hero becoming a statue, even if life saving subsequently occurs.[46]
  • The hero's charming is also interrupted if the target monster becomes petrified as a result of the hero stealing worn gloves from them while they are wielding a footrice corpse, since the remaining items will then be placed in the resulting statue.[47]

The encounter-initiating seduction of a foocubus functions as charming attacks do against monsters, including when used by a hero in the form of a foocubus.[5][6]

Strategy

The nymph's ability to charm the hero and steal dangerous items to use against them makes it prudent for most players to stay away from sleeping nymphs as part of their early-game strategy—if possible, only engage a nymph that you can kill quickly, especially with ranged attacks or a strong pet. Conversely, the mechanics of charming attacks can be used to get rid of unwanted items such as cursed armor or iron balls from a mistakenly-read scroll of punishment, though in many circumstances this requires you to drop other items that you do not want stolen by the nymph.

Domestic pets tend to do well against charming monsters since they will usually not have any items to begin with: this makes it very annoying if they pick up junk while fighting a nymph you want them to kill, and the nymph steals that junk before warping off. Domestic mounts (e.g. a Knight's pony) losing their saddles is also aggravating for similar reasons. Keeping a mirror on hand can be useful to apply it towards a nymph and distract her, as she will steal the mirror and teleport away without attempting to take other items.

A player dealing with multiple charming and item-stealing monsters in general can use the call command to give the monsters individual names, so you know which monster to prioritize in case they steal specific items. Once a player fills out their kit with good-quality armor and ranged options, charming attacks are rarely a concern for them unless they become inattentive—make sure not to let a nymph rob you of your levitation source over deep water, or steal the gloves off your hands while you are using a footrice corpse!

Messages

<The monster> smiles at you <seductively/engagingly>.
A monster attempted to seduce and steal from you, with the word used depending on your gender.
<The monster> talks to you <seductively/engagingly>.
As above, but you cannot see the monster.
<The monster> touches you <seductively/engagingly>.
As above, but you cannot see the monster and are also deaf.
<The monster> stole <an item>.
The monster charmed you and stole an item.
<The monster> charms you. You gladly remove your <worn item>.
The monster targeted a worn item, immobilizing you for the duration required to disrobe or remove it.
<The monster> pretends to be friendly to you.
The monster's seduction theft attack against you failed.
<The monster> steals <an item> from <the other monster>!
A monster charmed another monster and stole an item from them.
<The monster> suddenly disappears!
The charming monster teleported away after a successful theft.
<The plain> <monster> tries to <charm/seduce> you, but you seem <unaffected/uninterested>.
A cancelled monster with a charming attack tried to steal from you.
<The monster> brags about the goods some dungeon explorer provided.
A monster tried to charm you, but you are in the form of a nymph or foocubus.
<The monster> makes some remarks about how difficult theft is lately.
As above, but the monster also had nothing in their inventory.
<The monster> says something but you can't hear it.
As above, but you are deaf in either case.
You smile at <the monster> <seductively/engagingly>.
You attacked a monster that can see you using a charming attack, with the word chosen depending on the target's gender.
You talk to <the monster> <seductively/engagingly>.
As above, but the monster cannot see you.
You pretend to be friendly to <the monster>.
You missed your charming attack.
You charm <the monster>. She gladly hands over <her> possessions.
You successfully charmed a female monster into handing over her items while you are in the form of a nymph.
You seduce <the monster> and <the monster> starts to take off <its> clothes.
You successfully charmed a monster under any other conditions.
<The monster> finishes taking off <its> suit.
A monster that you charmed finished undressing.
You steal:
You successfully stole an item through charming, with this message followed by the name and inventory letter of the new item.
You snatched but dropped <an item>.
As above, but you cannot fit the item in your inventory, and it is placed on your square.

Variants

NetHack variants may add new monsters with seduction theft attacks, as well as additional means of resisting the attacks.

The Convict role patch integrated into most NetHack variants starts the 'hero' with a cursed striped shirt and a heavy iron ball chained to them, so finding a monster that can steal the items off them is a common early-game strategy for Convicts in those variants.

dNetHack

In dNetHack, notdNetHack and notnotdNetHack, a hero can entirely block seduction attacks (both theft and foocubus-style) with a worn engagement ring, making it an important defense to procure against some of the nastier charmers that the hero can encounter. A hero with charming attacks of their own such as a yuki-onna can toggle whether or not they keep or drop items stolen this way using the #style extended command.

The Thjofastafur stave carved into a wooden weapon can repel monsters with charming attacks or any form of theft attack if it is placed on the hero's square, and that weapon will also warn the hero of those monsters while wielded.

The spirit Andromalius grants complete protection against charming and other item-stealing attacks, and the hero will have warning of monsters with such attacks as well.

EvilHack

In EvilHack, Druids that reach experience level 14 become completely immune to charming from nymphs, with the exception of satyrs (who are the only monsters in the nymph monster class to not use charming attacks). A tortle hero hiding in their shell is also immune to charming, as is a lawful hero wearing the Gauntlets of Purity.

Charm attacks have a 34 chance of failing to steal non-cursed items that are greased or have the oilskin property, including naturally-oilskin items such as the oilskin sack and the oilskin cloak—grease on an item has a 12 chance of wearing off after foiling a theft attempt.

References

  1. include/monattk.h in NetHack 3.6.7, line 59
  2. include/monattk.h in NetHack 3.6.7, line 59
  3. include/monattk.h in NetHack 3.6.7, line 72
  4. src/mhitu.c in NetHack 3.6.7, line 1336-L1337: per comment, "for now these are the same"
  5. 5.0 5.1 5.2 src/mhitm.c in NetHack 3.6.7, line 1314-L1316: similar comment to mhitu.c
  6. 6.0 6.1 6.2 src/uhitm.c in NetHack 3.6.7, line 1774-L1779: no comment in uhitm.c, but all cases observably make the same call to steal_it()
  7. src/mhitu.c in NetHack 3.6.7, line 1343-L1354
  8. src/zap.c in NetHack 3.6.7, line 645-L649
  9. src/mon.c in NetHack 3.6.7, line 281-L289
  10. src/mhitu.c in NetHack 3.6.7, line 1337-L1386: full case for AD_SEDU; no animals in vanilla NetHack have charming attacks
  11. src/mhitu.c in NetHack 3.6.7, line 1370: calls steal() in steal.c
  12. src/steal.c in NetHack 3.6.7, line 239-L478: steal() function
  13. src/steal.c in NetHack 3.6.7, line 376-L381: stop occupations to notice theft
  14. src/steal.c in NetHack 3.6.7, line 267
  15. src/steal.c in NetHack 3.6.7, line 261-L265
  16. src/steal.c in NetHack 3.6.7, line 268: theft is aborted if the hero's only "item" other than gold is the scales of their dragon polyform
  17. src/steal.c in NetHack 3.6.7, line 332-L336
  18. src/steal.c in NetHack 3.6.7, line 337-L374: cases for items that animals cannot steal, which excludes nymphs via monkey_business boolean; a comment explicitly states "animals can't overcome curse stickiness nor unlock chains"
  19. src/steal.c in NetHack 3.6.7, line 282-L291
  20. src/steal.c in NetHack 3.6.7, line 313-L315
  21. src/steal.c in NetHack 3.6.7, line 316-L318
  22. src/steal.c in NetHack 3.6.7, line 319-L321
  23. src/steal.c in NetHack 3.6.7, line 322-L326
  24. src/steal.c in NetHack 3.6.7, line 293-L312: failing to steal with valid targets in inventory causes an impossible
  25. src/mhitu.c in NetHack 3.6.7, line 1375-L1377
  26. src/mhitu.c in NetHack 3.6.7, line 1383
  27. src/steal.c in NetHack 3.6.7, line 165-L170
  28. src/steal.c in NetHack 3.6.7, line 458-L461
  29. src/steal.c in NetHack 3.6.7, line 409-L410
  30. src/steal.c in NetHack 3.6.7, line 383-L390
  31. src/steal.c in NetHack 3.6.7, line 391-L445
  32. src/mhitm.c in NetHack 3.6.7, line 1333-L1336
  33. src/steed.c in NetHack 3.6.7, line 509-L513
  34. src/mhitu.c in NetHack 3.6.7, line 1348-L1355
  35. src/steal.c in NetHack 3.6.7, line 470-L475
  36. src/mhitu.c in NetHack 3.6.7, line 1356-L1366
  37. src/steal.c in NetHack 3.6.7, line 257-L259
  38. src/steal.c in NetHack 3.6.7, line 268-L280
  39. src/mhitm.c in NetHack 3.6.7, line 1316-L1370
  40. src/mhitm.c in NetHack 3.6.7, line 1319-L1322
  41. src/mhitm.c in NetHack 3.6.7, line 1337-L1346
  42. src/mhitm.c in NetHack 3.6.7, line 1358-L1360
  43. src/uhitm.c in NetHack 3.6.7, line 1518-L1627
  44. src/uhitm.c in NetHack 3.6.7, line 1538-L1609
  45. src/uhitm.c in NetHack 3.6.7, line 1594-L1596
  46. src/uhitm.c in NetHack 3.6.7, line 1600-L1601
  47. src/uhitm.c in NetHack 3.6.7, line 1605-L1609