Sit

From NetHackWiki
Jump to navigation Jump to search
Keyboard commands
~ ! @ # $ % ^ & * ( ) _ = +
Q W E R T Y U I O P { } |
q w e r t y u i o p [ ] \
A S D F G H J K L : "
a s d f g h j k l ; '
Z X C V B N M < > ?
z x c v b n m , . /
q w e r t u i o p Alt
a s d f j l Alt
c v n m ? Alt
A C R T O Alt
a c d o p r t [ Ctrl

Sitting is a form of extended command that appears in NetHack, and is performed by either pressing # and entering sit or by pressing meta key + s if the altmeta option is enabled.

An entire file within the source code, sit.c, contains the majority of the code that handles sitting and its effects, with the bulk of it contained in the dosit() function.

The following information pertains to an upcoming version (3.7.0). If this version is now released, please verify that the information below is still accurate, then update the page to incorporate it.

Per commit 74296c32, the code for throne sitting and for laying eggs are each separated into their own functions.

Description

Using this extended command makes the hero sit down, with different effects and messages depending on their location and the top-most item or dungeon feature present on the hero's square.[1][2]

The hero will fail to sit with no effect if any of the following conditions apply:

A hero that sits on any item at the top of a pile that is not a large box, a chest or a cloth item will print a message about discomfort with no effect[8]—this includes sitting on the corpse of a cockatrice or chickatrice, suggesting that the hero implicitly wears pants. A hero that sits on a square with a pool or moat and is not submerged in it has a 110 chance of making their worn suit of armor wet, and has an independent 110 chance of making their worn boots wet unless they are water walking boots.[9][10]

A hero in the form of a monster that is hiding on the ceiling and sits will stop hiding and become visible on their current square.[11] A hero polymorphed into a dragon that sits on a square with gold will print a unique message that has no effect.[12]

The following information pertains to an upcoming version (3.7.0). If this version is now released, please verify that the information below is still accurate, then update the page to incorporate it.

Per commit ac9be589, sitting on a cream pie destroys it.

Per commit f0a0a74d, sitting while in the form of a slithy monster gives a different message.

Per commit f5d88985, a hero in the form of a gremlin that sits on a fountain or a body of water will create a tame gremlin clone.

Eggs

One of the primary uses of the command is for laying eggs:[13] a hero in the form of a female oviparous monster that has at least 80 nutrition (the same amount granted by eating an egg) can sit while there are no other objects on their square, which will produce an egg of that form's lowest growth stage—the two notable exceptions to this rule are the winged gargoyle and queen bee, whose eggs will hatch into gargoyles and killer bees (respectively) 7677 of the time.[14][15] A hero in the form of an oviparous sea monster can only lay eggs while they are underwater.[16][17]

Monsters hatched from eggs laid by a hero will always be tame.

Thrones

Main article: Throne

Another of the primary uses for sitting is to utilize a throne, which can have a variety of beneficial and detrimental effects[18]—each time the hero sits on a throne, it may "vanish in a puff of logic" after applying its effect.[19] See the linked article for more information.

Altars

A hero sitting on an altar is subjected to adverse effects depending on its alignment:[20][21] a hero sitting on a co-aligned altar takes penalties to alignment record and loses one point of wisdom;[22] a hero sitting on a cross-aligned altar with -4 or more luck has a luck-dependent chance of losing at least one point of luck, with a 120 chance of losing 2 points of luck.[23]

Hazards

Sitting on a trap while the hero is caught in it abuses wisdom, and depending on the trap type it may also increase the duration that the hero is stuck for.[24] A hero that sits on a square with a trap may trigger that trap, including one that the hero is not caught in.[25]

A hero that attempts to sit while caught in a bear trap will increase the duration required to escape by one turn.[26] A hero that sits while stuck in a pit has a 45 chance of becoming trapped for longer, with a duration of up to four more turns;[27] a hero that sits while stuck in a spiked pit also abuses strength and takes 1 point of damage, with a 12 chance of taking damage if the hero has half physical damage.[28] A hero that sits while stuck in a web will become further entangled for 5–14 more turns.[29]

A hero that is sinking in lava and attempts to sit will burn away any sliming and take 2d10 damage while sinking themselves further into the lava[30][31]—this does not check against fire resistance, since the game presumes that a hero has fire resistance in the first place for this situation to occur, or else the lava would instantly kill them. A hero that sits on a lava square (which requires them to be flying or wearing fireproof water walking boots) will burn away any sliming and either takes 10d10 damage, which is reduced to 2d10 with fire resistance, or takes no damage at all if they are polymorphed into a fire elemental or salamander.[32]

A hero that attempts to sit while they are tethered to a buried heavy iron ball, or else buried in the ground as a result of cooling lava that they were sinking into, will fail and increase the duration they are stuck for by one turn.[33]

The following information pertains to an upcoming version (3.7.0). If this version is now released, please verify that the information below is still accurate, then update the page to incorporate it.

Per commit 6406c9d0 and commit 1b79f00a, sitting on a squeaky board while flying will trigger it as normal, and the same can be done for normal pits, spiked pits and bear traps.

Strategy

Sitting on traps and trap-like features can be used deliberately for certain purposes: for instance, a hero can repeatedly sit on a magic trap to boost charisma or uncurse items with its remove curse effect, or else to generate monsters for food or sacrifice, though this is naturally very risky. A hero standing on a magic portal square can sit to trigger the portal again, which is useful to escape particularly nasty monsters unless they can follow you through the portal.

History

In NetHack 3.4.3 and previous versions, including some variants based on those versions, sitting is subject to several bugs that are fixed in NetHack 3.6.0 and later versions:

  • Several cases within the trap-focused block of code in sit.c dosit() are caused by the utraptype variable being set to values that do not correspond to an actual trap—this means that the "sitting in lava" killer message cannot occur, and the messages for sitting while buried in the ground or tethered by a buried iron ball cannot occur either. This is fixed in NetHack 3.6.0 via commit 82cef265.
  • Sitting while trapped in a spiked pit ignores half physical damage. This is fixed in NetHack 3.6.0 via commit cdf982e4.
  • If a hero is on a square with a pit or a spiked pit, the trap has a corpse inside, and the hero is not caught in the trap, using the sit command will have them sit on the corpse without falling into the pit. This is bug C343-6, and is fixed in NetHack 3.6.0 via commit 28934bc7, which requires the hero to be in the pit to sit on anything within it, and also enables a hero to enter a pit trap, hole or trap door on their square with the > command.
  • Sitting while engulfed gives an improper message. This is fixed in NetHack 3.6.0 via commit 6ac27851, which also adds a specific message for sitting while being held.

The unique message for a hero in the form of a dragon sitting on a pile of gold is added in NetHack 3.6.0 via commit 31eed002.

The ability for a hero in the form of a compatible monster that is currently hiding on the ceiling to sit and return to the floor is added in NetHack 3.6.0 via commit 70e25fa1.

The proper message for sitting on a level teleporter, polymorph trap or similar trap is added in NetHack 3.6.0 via commit 2655910a.

Messages

For messages associated with sitting on a throne, see Throne#Messages.
Having fun sitting on the <floor>?
You sat down while on an empty square, with "floor" being replaced depending on the terrain.
You sit on <the item>.
You sat on a square with an item on it.
It's not very comfortable...
This is added to the above if the item is not a large box, chest or anything made of cloth.
You coil up around your <meager> hoard.
YAFM from sitting down on a pile of gold while in the form of a dragon—a "meager" hoard has less than 1000 gold pieces times your current experience level.
You sit on the sink. Your <rump/underside> gets wet.
You sat while on a sink's square, with "rump" used if you are in humanoid form and "underside" otherwise.
You sit in the water. Your <armor> gets wet.
You sat on a pool or moat while flying or water walking, which may wet your suit of armor or boots.
You sit on the ice. The ice feels cold.
You sat on an ice square. The latter sentence is omitted if you have cold resistance.
You sit on the muddy bottom.
You sat while underwater.
You sit on the altar.
You sat down on an altar, incurring a penalty depending on its alignment.
The voice of <deity> says: "How darest thou desecrate my altar!"
You sat on a co-aligned altar.
A voice (could it be <deity>?) whispers: "Thou shalt pay, infidel!"
You sat on a cross-aligned altar.
Despite your deafness, you seem to hear <deity> say: "Thou shalt pay, infidel!"
As above, while also deaf.
You are sitting on air.
You tried to sit down while you currently cannot reach the floor.
You tumble in place.
You attempted to sit while levitating.
There are no seats in here!
You attempted to sit while engulfed.
<The monster> won't offer <their> lap.
You attempted to sit while being stuck to or held by a humanoid monster.
<The monster> has no lap.
As above, with a non-humanoid monster.
You are already sitting on <the steed>.
You attempted to sit while riding.
You sit down.
You sat down on a square with a trap, which may activate it.
You sit down on a spike. Ouch!
You sat down while stuck in a spiked pit, trapping yourself in it for a longer duration.
You sit down in the pit.
You sat down while stuck in a normal pit, which may trap yourself in it for a longer duration.
You sit in the spider web and get entangled further!
You sat down while stuck in a web, trapping yourself in it for a longer duration.
You sit in the lava!
You sat while partially submerged in it, sinking yourself deeper and taking damage while burning away slime.
You can't sit down with your <foot> in the bear trap.
You attempted to sit while stuck in a bear trap.
You can't maneuver to sit!
You attempted to sit while stuck in the ground or tethered to a buried iron ball.
There are no cushions floating nearby.
You attempted to sit while on the Plane of Water.

The following information pertains to an upcoming version (3.7.0). If this version is now released, please verify that the information below is still accurate, then update the page to incorporate it.

Per commit 4943fe23, commit 8747d2dd and commit ac9be589, the following messages are added.
It's probably not a good time for a picnic...
You sat on a towel.
It's squishy...
You sat on the corpse of an amorphous monster.
Squelch!
You sat on a cream pie while not deaf.
You coil up around <the item>.
You sat on an item or feature while in the form of a slithy monster.

Variants

Variants of NetHack often introduce new features and items that may have an effect when sat on by the hero.

SLASH'EM

In SLASH'EM, a hero can sit on a toilet, which cures any illness and also reduces nutrition by 200-599 if they are satiated.[34]

References

  1. Jump up src/sit.c in NetHack 3.6.7, line 35
  2. Jump up src/sit.c in NetHack 3.6.7, line 68
  3. Jump up src/sit.c in NetHack 3.6.7, line 41
  4. Jump up src/sit.c in NetHack 3.6.7, line 51
  5. Jump up src/sit.c in NetHack 3.6.7, line 49
  6. Jump up src/sit.c in NetHack 3.6.7, line 56
  7. Jump up src/sit.c in NetHack 3.6.7, line 121
  8. Jump up src/sit.c in NetHack 3.6.7, line 79
  9. Jump up src/sit.c in NetHack 3.6.7, line 64
  10. Jump up src/sit.c in NetHack 3.6.7, line 127
  11. Jump up src/sit.c in NetHack 3.6.7, line 45
  12. Jump up src/sit.c in NetHack 3.6.7, line 74
  13. Jump up src/sit.c in NetHack 3.6.7, line 289
  14. Jump up src/mon.c in NetHack 3.6.7, line 3889
  15. Jump up src/mon.c in NetHack 3.6.7, line 3914
  16. Jump up src/sit.c in NetHack 3.6.7, line 301
  17. Jump up src/sit.c in NetHack 3.6.7, line 320
  18. Jump up src/sit.c in NetHack 3.6.7, line 161
  19. Jump up src/sit.c in NetHack 3.6.7, line 283
  20. Jump up src/sit.c in NetHack 3.6.7, line 135
  21. Jump up src/pray.c in NetHack 3.6.7, line 2233
  22. Jump up src/pray.c in NetHack 3.6.7, line 2238
  23. Jump up src/pray.c in NetHack 3.6.7, line 2242
  24. Jump up src/sit.c in NetHack 3.6.7, line 84
  25. Jump up src/sit.c in NetHack 3.6.7, line 115
  26. Jump up src/sit.c in NetHack 3.6.7, line 86
  27. Jump up src/sit.c in NetHack 3.6.7, line 90
  28. Jump up src/sit.c in NetHack 3.6.7, line 91
  29. Jump up src/sit.c in NetHack 3.6.7, line 99
  30. Jump up src/sit.c in NetHack 3.6.7, line 83: this ensures cases involving lava and the cases below them can be reached
  31. Jump up src/sit.c in NetHack 3.6.7, line 102
  32. Jump up src/sit.c in NetHack 3.6.7, line 144
  33. Jump up src/sit.c in NetHack 3.6.7, line 110
  34. Jump up sit.c in SLASH'EM 0.0.7E7F2, line 120