XNetHack

From NetHackWiki
Revision as of 21:41, 29 March 2018 by Phol ende wodan (talk | contribs) (Update to newest changelog changes)
Jump to navigation Jump to search

xNetHack is a variant of the development version of NetHack 3.6.1, developed by aosdict, aka Phol ende wodan.

Its main goals are to fix game balance issues, remove sources of frustration and tedium, and experiment with new ideas from the community.

It is intended to keep up with vanilla NetHack, and will regularly merge in its latest commits.

Version 0.1.0 of xNetHack is currently unreleased, though it is available on the hardfought servers for beta testing:

xNetHack's source can be found on Github, should you want to compile it yourself.

The changes listed on this page are those up through commit b4253568. Changes from later commits may not be shown here.

To read the full up-to-date changelog, go here.

Frustration and tedium removals

  • Exploding bag of holding scatters 12/13 of its contents instead of destroying them outright
  • Drop the XL threshold for the Quest to 10
  • Remove the poison instadeath entirely. (This applies for monsters too; poisoned weapons can no longer kill them outright.)
  • Remove the mysterious force

Spells

Spells can no longer fail. Instead, their Pw cost is inflated for partial failures, using the following formula. It is intended to be simpler and rely less on a bunch of role-specific stats.

  1. Compute a percentage as follows:
    1. +5% per point of Intelligence.
    2. +5% per experience level.
    3. If wearing a robe, wielding a quarterstaff or wand of nothing, +50%.
    4. Otherwise, if wielding a wand that matches the spell, +70%.
    5. -25% per spell level.
    6. -50% for metallic body armor.
    7. -50% for wearing a bulky (oc_large) shield, or -15% for non-bulky.
    8. -20% for a metallic helm that isn't a helm of brilliance.
    9. -35% for metallic gloves.
    10. -10% for metallic boots.
    11. +20% for Basic skill in the spell school, +40% Skilled, +80% Expert
    12. Clamp to the [0%, 100%] range.
  2. Pw cost of the spell = (spell level * 5) / percentage. (If percentage is 0, the spell would require infinite Pw for you to cast and is uncastable.)

Pw regeneration is also overhauled, using FIQHack's algorithm. You get the sum of the following sources of Pw per turn (fractions carry over for the next turn):

Some spells are removed:

  • Cure blindness, invisibility, and detect food no longer randomly generate. They can still be wished for or written.
  • Identify is removed outright. It cannot be wished for or written.

Some spell levels are tweaked:

  • Dig: 5 -> 3
  • Detect monsters: 1 -> 3
  • Clairvoyance: 3 -> 2
  • Charm monster: 3 -> 6
  • Detect unseen: 3 -> 2
  • Turn undead: 6 -> 2
  • Jumping: 1 -> 2

Other spell-related changes include:

  • Wielding a spellbook cuts the Pw cost of casting its spell in half, rounded up
  • Rebalance spellbook failure effects; notably a failure causes confusion instead of paralysis, and paralysis only happens as a side effect of level 5+ books. The steal gold effect is also replaced with the book biting you. A new level 1+ effect is the book dropping one level in BUC.
  • Spellbooks disintegrate if and only if they are already cursed
  • Blessed and cursed spellbooks act as +/- 10 Int, instead of guaranteeing success and failure
  • Throw out the complicated spellbook delay formula; all spellbook delays are now 10*level

New levels, updated levels, and level generation

  • Add jonadab's Gnomish Sewer Mines' End (dark twisty water level with many rings)
  • Add a barricaded shop with an alive shopkeeper to Orcish Town, and scatter around a lot of gear that should be dropped by the dead denizens
  • Non-spiked pits occasionally generate in graveyards, and they are flavored as open graves
  • Treasure zoos generate only animal monsters
  • Upper Mines levels are always lit; Lower Mines levels are always dark.
  • Several doors in the Castle are changed to iron doors.
  • The Astral Plane is fully lit instead of mostly dark.
  • Because of engravings being visible and Sokoban being premapped, add dud engravings referencing the Monty Hall Problem in the two closets that don't contain the prize.

Monster changes

  • Bribing demon lords demand 50d500 gold, regardless of what the hero is carrying, and may be successfully shortchanged depending on the hero's Charisma
  • Generate a lot more monsters when a level is created, and slow down the normal generation rates
  • Green slimes have an engulfing attack that starts sliming
  • Orc-captains are considered a lord to their kind, and their speed is increased from 5 to 9
  • Hitting a gremlin with light will anger it
  • Shriekers will spawn a baby purple worm if regular purple worms are too hard
  • Spiders may rarely spin a web upon moving. The chance is 2.5% per move for giant spiders and 1% per move for cave spiders, doubled if the spider is now in a doorway. If the player can observe the spider when it does this, the web is automatically mapped.

Object changes

Thiefstone

A thiefstone is a magical gray stone that "steals" items out of your inventory.

  • Stolen items are deposited in a certain space on the level (its "stash location") on which the thiefstone was generated, no matter where the hero happens to be.
    • If there is a container on this space, stolen items will automatically go into it.
    • A newly generated thiefstone will try to choose its stash location in this order: a vault, a closet, any other space with a container on it. Whichever space it chooses, if there is no container there already, it will generate a container there.
  • Thiefstones will only steal inherently magical items. Blessed ones will also steal gold and all gems (including glass). They will never steal equipped items.
  • All thiefstones are generated cursed.
  • When you pick up a cursed thiefstone, it may pull some magical item out of your pack and teleport itself and the item off to its stash.
    • Unless you happen to be standing on its stash location already, in which case it does nothing.
  • If you are carrying a cursed thiefstone and pick up a magical item, the thiefstone jumps out of your pack and teleports itself and the item off to its stash.
  • Thiefstones can be cancelled. This makes them unable to teleport items ever again.
  • Applying or rubbing a non-cursed thiefstone on some item that it will steal will send the item off to the stash, but not the thiefstone itself.
  • Throwing and hitting a gold golem with a blessed thiefstone will teleport the gold golem to the keyed location. Only works for throwing due to a bug. Works on players polyselfed into gold golems, but will never work on monsters carrying the Amulet.

Other new objects

  • Ring of carrying: chargeable 200zm ring that increases or decreases carrying capacity by 5% per enchantment.

Behavior changes

  • Candle light radius is now sqrt(x)+1 instead of log_7(x)+1
  • Blessed scroll of destroy armor asks the player which piece of armor to destroy
  • You can rub rocks together or on touchstones to break them, occasionally producing flint stones
  • Flint stones' weight is reduced to 1 aum
  • The wand of speed monster on the player gives temporary very fast speed but not intrinsic speed
  • The potion of speed gives intrinsic speed and a short duration of very fast speed
  • The amulet of life saving does not work if the player is polymorphed into a nonliving form
  • Unicorn horn is a slightly poorer weapon (1d8/1d10), and it no longer restores lost ability points when applied. However, it is now a one-handed weapon, and if you wield it in your main hand without gloves, it will be applied passively to cure disease and other status effects every turn without needing to be applied.
  • Potions may be #dipped in sinks to pour them down the drain, causing the hero to suffer its vapor effects.
  • Add vapor effects for all potions, and make most of them unambiguously identify the potion
  • Chargeable rings will never generate at +0
  • Dropping a ring down a sink has an 80% chance of being buried beneath it, rather than 20%
  • Confused scroll of light will conjure several tame cancelled lights, which cannot explode but are useful as a light source. Will be yellow lights if non-cursed and black lights if cursed.
  • Dwarvish and Uruk-hai shields count as bulky
  • Scrolls of identify always identify 7/4/1 items for B/U/C; full inventory ID is no longer possible from scroll
  • Potions of oil cannot be diluted
  • Uncursed food no longer gives "Blecch! Rotten food!"; cram and lembas never do even when cursed
  • Scalpels do 1d5 damage versus small monsters and 1d7 damage versus large.
  • Reduce the weight of land mines to 40.
  • Reduce the weight of beartraps to 50.
  • 1/40 of random non-artifact weapons generate erodeproof.
  • Stinking clouds (including Plane of Fire gas clouds) no longer use a predefined rhombus shape; instead, they will expand from their origin point to fit the terrain. Be cautious about using them in closed spaces.
  • Tins, or rather their labels, can be read. 1/5 of tins will honestly tell the type of monster they contain; the rest lie or give funny messages. Player-made tins are not labeled.

Trap changes

New door traps: Replacing the KABOOM!! stunning door trap. The available traps depend on the current level difficulty. All of the following impact monsters and players as symmetrically as possible.

Trap Dlvl Triggers Effects
Screechy hinges 1+ Closing, opening Awakens nearby monsters.
Self-locking mechanism 1+ Opening, closing, unlocking Shuts and locks itself. If you try to unlock it after it's locked, the trap is automatically removed.
Static shocking doorknob 2+ Opening, closing, unlocking, failed untrapping Zaps for d(level difficulty * 2) + 1 shock damage. Damage is reduced by 75% for shock resistance. The trap is automatically removed.
Falling bucket of water 3+ Opening, breaking, failed untrapping Classic bucket-propped-above-a-door prank. (Level difficulty/5)+1 items in your inventory is randomly wetted; containers and things inside containers are safe. The trap is automatically removed.
No hinges, falling forward 6+ Opening, breaking, failed untrapping Door is rigged without hinges, falling away from you. You crash on top of the door and are stunned for 2d4 turns. Destroys the door.

This effect also happens if you try to kick open the other "no hinges" trapped door.

No hinges, falling backward 8+ Opening, failed untrapping Door is rigged without hinges, falling on top of you. The door crashes on top of the monster, making you helpless for 3 turns. Destroys the door.
Boulder dropping out of the ceiling 10+ Opening, breaking, failed untrapping You break a tripwire, dropping a boulder out of the ceiling on you (it will drop on the door space if you open the door from a distance). The trap is automatically removed.
Hot doorknob 12+ Opening, closing, failed untrapping Burns you for d(level difficulty) damage. If you have fire resistance, damage is halved. If you are wearing any gloves, damage is halved again and the gloves may be eroded. If you are specifically wearing "padded gloves", damage is entirely negated (because they are designed for heat.)
Fiery explosion 15+ Opening, breaking, failed untrapping Causes a fiery explosion dealing d(level difficulty) damage centered on the door. The explosion is normal (it may burn your inventory and is resistable normally, no special effects). Destroys the door.

Several of these traps can generate on open doors as well as closed ones.

Other trap changes:

  • Magic traps' taming effect is changed to pacification.
  • The player does not trigger rolling boulder traps unless actually standing on the ground (the same as monsters).

Dungeon features

Iron doors (+, |, -) are doors that cannot be destroyed by most means of brute force. This includes digging rays, picks, non-metallivore tunneling, giant smashing, force bolts, or kicking. All other ways of interacting with doors normally (opening, unlocking, untrapping, etc) work the same on them. They can be trapped with the same traps as any other door. Certain methods of destroying doors do work on iron doors: falling into a chasm from an earthquake, being blown up by a land mine, being chewed through by a metallivorous tunneler, being disintegrated by a disintegration ray. They are randomly generated on filler levels: if (level difficulty > 10 + 1d50), a door will be generated as iron.

Miscellaneous:

  • "Klunk!" from kicking a sink is less likely
  • All sinks on non-special levels now generate with one ring buried beneath them
  • "Flupp!" effect from kicking a sink will dislodge and spit up one ring buried under the sink
  • Throne insight always gives a full inventory identify
  • Sinks are recolored from # to \.
  • Drawbridges are recolored from # to +.

Role changes

  • Rangers begin the game with two beartraps.
  • Rogues begin the game with thiefstones pre-identified.
  • Wizards get four spellbooks in starting inventory (force bolt, magic missile, and two random). They no longer get the scrolls, potions, rings and wand they previously started with.

New conducts

  • Artifactless conduct: never touch an artifact. (Invocation items and the Amulet don't count; they're unique items not artifacts.)
  • Petless conduct: zero tame monsters the whole game. Start with OPTIONS=!pet configured, and never tame a pet at any point.
    • If you enter Astral having followed petless conduct up until then, your guardian angel will spawn as usual, but it will be peaceful rather than tame and the conduct will not be broken.

Other gameplay changes

Peaceful displacement: You can now displace peaceful monsters as well as tame. Exceptions to this rule are priests, shopkeepers, the Oracle, and your quest leader. Both peaceful and tame monsters will refuse to be displaced into a bad spot, such as liquid or a trap they can't handle. You can no longer displace pets out of traps (which used to be able to untame them).

Sentient arising from the dead: Occasionally when you die to vampires, green slimes, mummies, or anything else that would have made you arise from the grave, you turn into that monster but retain your sanity, and continue playing with permanent intrinsic unchanging.

  • Green slime: 1/2 chance
  • Ghoul: 1/5 chance
  • Wraith: 1/6 chance
  • Mummy: 1/8 chance
  • Vampire: 1/10 chance

Miscellaneous:

  • Add Dudley as a ghost name
  • Magic lamps can be wished for
  • All roles now have a standardized "cutoff level" of 12 for maxHP and maxPw gains.
  • Change can of grease material to plastic and color it bright blue
  • Change hexagonal wand material to quartz (gemstone)
  • Pokemon "rare candy": every time you finish eating a candy bar you have a 1% chance of gaining a level.

Interface changes

Engravings visible on map

Engravings can be seen from a distance, via magic mapping or just looking at the square from across a room or similar. The glyph is a quotation mark, the same as amulets. The color depends on the sort of engraving it is:

  • " Dust engraving
  • " Scratched/carved engraving (athame, wand of digging). To avoid color conflict, webs are changed to " (white).
  • " Burnt engraving
  • " Scrawl of blood
  • " " " Graffiti

The engraving symbol is implemented as a full tile, including in the default tileset. If you don't like it sharing a glyph with amulets, you can use OPTIONS=S_engraving:newglyph in your rc file to set it to something else.

Monster and object lookup

Monster lookup is more or less ported directly from FIQHack; object lookup is new. These allow you to use the / (whatis) command to see a bunch of detailed information about the monster or object you're looking up. It is displayed above the encyclopedia entry.

Information for monsters is things like size, speed, attacks, resistances, and intrinsics conferred. Information for objects varies more based on object class, but contains things like weight, base cost, whether it's magical, base AC, and weapon damage.

YAFM

  • Pressing Escape while being grappled or engulfed by a monster gives the message "You cannot escape from the [monster]!"

Walking into liquids and traps

You may not move into a water or lava square unless you either know you are safe (e.g. by levitating or wearing [fireproof] water walking boots) or specifically request it by moving with the 'm' command beforehand. If you have the paranoid_confirmation:swim option set, it will ask for further confirmation. If you answer yes or don't have this option set, you will try to unsafely move onto the liquid. This is intended to prevent "fatfingering" into harmful liquids.

If you have the paranoid_confirmation:trap set, you may not move into a trap square without being prompted for confirmation and affirming that you do want to move there. If you are obviously immune to the effects of the trap (for instance, if you are a fire-resistant monster carrying no burnables trying to move onto a fire trap), you will not be asked to confirm.

Of course, neither of these protections is active if you are stunned or confused.

Miscellaneous

  • Using the open command to target "." (self) is an alias for #loot
  • When you ascend with a non-starting alignment, the end-of-game reason is "ascended (in dishonor)"
  • The Ranger pantheon changes Mercury (lawful) to Apollo and Venus (neutral) to Diana
  • Whenever monsters polymorph in sight of the hero, print a message saying what they turned into
  • After sacrificing the Amulet to Moloch, you get flavor text of an invisible choir chanting in Latin and being bathed in darkness
  • Correct "Thou cannot escape my wrath, mortal!" to "canst not"
  • Priests will give you bitcoins for an ale while hallucinating
  • After being crowned, thrones give you the "very comfortable here" message
  • Paying exactly 1/10 of your gold to a priest will "pay your tithe"
  • The Candelabrum reads (n/7 candles attached) to make explicit that it holds 7 candles
  • Gravestone color is now white; this probably doesn't matter for a lot of fonts
  • Bones levels now have a level sound: the same "eerie feeling" as in walking into an abandoned temple
  • Merge FIQ's getobj patch, which adds - (for hands) and , (for items on the floor or dungeon features) to getobj prompts ("What do you want to [apply/eat/drink/...]?")
  • Water walking boots will self-identify if you step onto water or lava with no levitation or flying source and don't fall in. If on lava, their fireproofness will also be identified.
  • Branch stairs are recolored to display as < and >.

Monster recoloration and letter rearrangement

Many monsters are recolored so that there are no duplicate monster glyphs. The 'leprechaun' and 'ghost' classes are also eliminated, to move lizards and ghosts off of punctuation symbols.

Monster Vanilla glyph xNetHack glyph
Leprechaun l i
Gecko : l
Newt : l
Iguana : l
Baby/regular crocodile :/: l/l
Lizard : l
Chameleon (unpolymorphed) : l
Salamander : l
Ghost W
Shade W
Wraith W W
Barrow wight W W
Werejackal @/d @/d
Wererat @/r @/r
Werewolf @/d @/d
Wolf d d
Warg d d
Coyote d d
Floating eye e e
Mind flayer h h
Master mind flayer h h
Kobold and variants k/M/Z k/M/Z
Titanothere q q
Baluchitherium q q
Giant rat r r
Rabid rat r r
Aleax A A
Shrieker F F
Minotaur H H
Arch-lich L L
Gnome and variants G/M/Z G/M/Z
Orc and variants o/M/Z o/M/Z
Mordor orc o o
Bugbear h o
Human and variants @/M/Z @/M/Z
Ettin and variants H/M/Z H/M/Z
Cobra S S
Owlbear Y Y
Sasquatch Y Y
Imp i i
Kops K/K/K/K K/K/K/K
Acid blob b b
Erinys & &
Barbed devil & &
Marilith & &
Vrock & &
Nalfeshnee & &
Pit fiend & &
Piranha ; ;
Fire vortex v v
Fire giant H H
Fire elemental E E
Demon lords & &
The Wizard of Yendor @ @
The Riders & &

Architectural changes

See the full changelog for architectural changes. These shouldn't impact playing the game at all.