1
0
Fork 0
mirror of https://codeberg.org/noisytoot/notnotdnethack.git synced 2024-11-21 16:55:06 +00:00
notnotdnethack/dat/grue.des
chris a26a0d6f8c Monster smiths, pt 1
Smiths make items for the player if provided with raw materials. #chat with a smith to access their services. While a very early smith could possibly be used to fill out the PCs own armor or weapons, the main use-case is probably to help equip pets in a mythical beastmaster run. However, magic smiths can duplicate GoP and the like in metals other than iron, useful for iron-haters.

(Part 2 will have to wait untill after I yoink forges from EvilHack <.<)

Add an esmt struct to track the various resource types, the knowledge of the smith, and (eventually) their home forge if applicable.
-Whether or not a monster is_smith_mon is determined only by having one of these structs.
-Structs are added when monsters are created on the basis of is_smit_mtyp
-Provides fields for more material types than are currently used. For example, "gold" is provided but no smith does goldsmithing.

Generic smith monsters:
-goblin smiths
--can make goblin armor and weapons out of iron
-dwarf smiths
--can make dwarf armor and weapons out of iron
--can duplicate some magic items using silver
-treesingers
--unimplemented in this version, won't need raw materials
-mithril smiths
--can make elf mithril gear out of mithril, can duplicate some magic items
--a chunk of unrefined mithril from the moria dwarf quest can be turned in for 1000 mithril (3x the required starting amount)
--can make upgrade kits
-shadowsmiths
--can make drow armor out of mithril, can duplicate some magic items and insight weapons
--a chunk of fossil dark can be turned in for 1000 shadowsteel, 3x the required starting amount.
--can make upgrade kits
-human smiths
--can make generic (human) armor and weapons out of iron.
--1/3rd of armor and weapon shop shopkeepers will be human smiths
---The smith menu is accessable after the "services" menu
---Armor, weapons, and tools count as "known" for ID purposes
---Shop credit can be used to pay for commissions

Dracae "smiths"
-Can grow a variety of organic items for the PC
--Includes living armor
--Can duplicate cans of grease and unicorn horns.
-Only do "smith" work if tame
-Need to be fed food rather than material, it needs ~8 food rations to be ready to make the first item.
-Can grow loyal pets for the PC, there is a game limit of how many derived from Cha (tracked by u.dracae_pets).

Oona smithing services
-Will only perform smith services if tame.
-Makes a wide variety of weapons, eilistran armor, and harmonium armor
-Can duplicate a variety of magic armor
-Can make upgrade kits
-Planned to be able to create minions, but this is unimplemented.
-Items can be attuned to one of her elements. Offensive items (weapons, gloves, boots) get the offensive trait, armors get defensive axiomatic and elemental resistance.
--Plausibly quite useful for Monks, if they forgo artifacts in those slots.

Placement
-Oona is currently the only guaranteed smith monster in the game
-In games where dracae are the eladrin precursors, Oona's two dracae are also "smiths"
-Smiths are included in most throne-room prisoner and healer-quest plague lists.

Make some formerly-shopkeeper-specific functions safe to call with non-shopkeeper smiths

The smith struct will not be included if a monster is cloned, and is not included on summoned or non-intelligent (presumably zombie-templated) monsters.

Split metalic_material(mat) away from is_metallic(otmp) so that it can be used in the smith code if desired.

Increase the Grue platinum bar sizes to LARGE platinum bars (which contain enough platinum for an item from Oona).

Harmonium armor can come in various metals (ex: oona's platinum)
2023-07-18 18:30:50 -04:00

340 lines
14 KiB
Text

# SCCS Id: @(#) Grue.des
# Copyright (c) 1989 by Jean-Christophe Collet
# Copyright (c) 1990, 1991 by M. Stephenson
# NetHack may be freely redistributed. See license for details.
#
# These are the Grue's levels :
#
MAZE:"chall-5",' '
FLAGS: noteleport,shortsighted
GEOMETRY:center,center
# 1 2 3 4 5 6 7
#0123456789012345678901234567890123456789012345678901234567890123456789012345
MAP
0 ---- ---- ---- ---- -}}- -}}- ---- ---- ---- ----
1 -------- -------- -.-}}-.- ---}}---}}-.- --- -.- --- ---
2 | }}}}}} |
3 | { }}}}} .
4 |-| --- -.---..- -.- -- }---} -.-} --- --- --- |-|
5 |- | . | . | | |. }}. |} | | }. . | | | . -|
6 |- -.- -----..- -.- -- }}-.-} | | }--- --- -.- -|
7 |- } }}}} }}}} . | -|
8|- } }}}} }} . | -|
9| -.- ---}}-- -.-}}-.-}}-.- | | -.- --- |
0| | | | . }|-- | |}}| |}}| | . | | . | . |
1| -.- ---} -.- -.-}}-.-}}--- --- S#F -.- |
2|- }} }}}}}}}}} }}} . | -|
3 |- }}} }}}}}}}}}} }} | . -|
4 |- -.- ---} --- --- }---}} --- -.- | | -.----.- -|
5 |- | | | .}}. | | . }| .}} . | | . | | | . -|
6 |-| | | --- }--- -.- }---} -.- -.- -.- --- --- |-|
7 | -.- }}}}}} { | | |
8 | ---- }}}}}} | | |
9 ---}}--- --| |--}}---}}---}}--- ---}}---}}--- --- ---}}---
0 ---- ---- ---- -}}- -}}- ---- ---- ---- ---- ----
ENDMAP
#0123456789012345678901234567890123456789012345678901234567890123456789012345
# 1 2 3 4 5 6 7
# unlit light sources in the walls, waiting to be lit and/or looted
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"wax candle",(40,05)
OBJECT:'(',"wax candle",(33,15)
OBJECT:'(',"wax candle",(37,09)
OBJECT:'(',"wax candle",(37,11)
OBJECT:'*',"chunk of fossil dark",random
OBJECT[50%]:'(',"wax candle",random
OBJECT[50%]:'(',"wax candle",random
OBJECT[50%]:'(',"wax candle",random
OBJECT[50%]:'(',"wax candle",random
OBJECT[10%]:'*',"chunk of fossil dark",random
GEOMETRY:center,center
# 1 2 3 4 5 6 7
#0123456789012345678901234567890123456789012345678901234567890123456789012345
MAP
0 ---- ---- ---- ---- -}}- -}}- ---- ---- ---- ----
1 --------..--------..---}}---..---}}---}}---..---..---..---..---
2 |.................................}}}}}}......................|
3 |..............................{..}}}}}.......................|
4 |-|....---..--------..---..--.......}---}.---}.---..---..---....|-|
5 |-......| |..| |..| |..||......}}| |}.| |.}| |..| |..| |......-|
6 |-.......---..--------..---..--......}}---}.| |.}---..---..---.......-|
7 |-...................}.............}}}}.}}}}.| |.......................-|
8|-...................}.............}}}}.}}....| |........................-|
9|...............---..---}}--...---}}---}}---..| |..---..---...............|
0|...............| |..| |.}|--..| |}}| |}}| |..| |..| |..| |...............|
1|...............---..---}.---..---}}---}}---..---..S#F..---...............|
2|-.........................}}...}}}}}}}}}.....}}}..| |...................-|
3 |-.......................}}}.}}}}}}}}}}.......}}..| |..................-|
4 |-.......---..---}.---..---.}---}}.....---..---..| |..--------.......-|
5 |-......| |..| |}}| |..| |.}| |}}.....| |..| |..| |..| |......-|
6 |-|....| |..---.}---..---.}---}......---..---..---..--- ---....|-|
7 |....---...............}}}}}}..{....................| |......|
8 |...........----.......}}}}}}.......................| |......|
9 ---}}---..--| |--}}---}}---}}---..---}}---}}---..--- ---}}---
0 ---- ---- ---- -}}- -}}- ---- ---- ---- ---- ----
ENDMAP
#0123456789012345678901234567890123456789012345678901234567890123456789012345
# 1 2 3 4 5 6 7
# Dungeon Description
RANDOM_PLACES:(63,18),(64,19),(52,11),(72,09)
REGION:(00,00,75,20),unlit,"ordinary"
# Teleport: down to upstairs area, up to downstairs area
TELEPORT_REGION:(02,02,20,18),(0,0,0,0),down
TELEPORT_REGION:(55,02,73,18),(0,0,0,0),up
# Stairs
STAIR:(08,10),up
STAIR:(68,10),down
# Treasure
OBJECT:'#',"uncharged lantern",(62,18)
CONTAINER:'(',"sack",(62,18)
OBJECT:'#',"+2 blessed wrathful silver elven broadsword",contained
OBJECT:'(',"magic torch",contained
OBJECT:'#',"large platinum bar",contained
# Warning
ENGRAVING:(08,10), dust, "BEWARE OF GRUE"
# Non diggable walls
NON_DIGGABLE:(00,00,75,20)
# Objects
OBJECT:'%',"egg",random,"dark worm",0
OBJECT:'?',"light",random,blessed,0
OBJECT:'?',"light",random,cursed,0
OBJECT[50%]:'%',"egg",random,"dark worm",0
OBJECT[50%]:'%',"egg",random,"dark worm",0
OBJECT[50%]:'%',"egg",random,"dark worm",0
OBJECT[90%]:'!',"healing",place[0],blessed,0
OBJECT[50%]:'!',"extra healing",place[0],blessed,0
OBJECT[75%]:'%',"egg",place[1],"deep wyrmling",0
OBJECT:'%',"corpse",place[2],"Elvenqueen",0
OBJECT:'/',"light",place[2]
OBJECT:')',"elven broadsword",place[2],uncursed,1
OBJECT:'[',"cloak of displacement",place[2]
ENGRAVING:place[2], engrave, "Elbere-"
OBJECT:random,random,random
OBJECT:random,random,random
OBJECT:random,random,random
# Traps (to put out your lightsource)
TRAP:random,random
TRAP:"magic",random
TRAP:"rust",random
TRAP:"rust",random
TRAP:"rust",random
TRAP:"rust",random
TRAP:"rust",random
TRAP:"board",random
TRAP:"board",random
TRAP:"board",random
TRAP:"board",random
# Monsters
MONSTER:'U',"Grue",(68,10),asleep
MONSTER:'w',"dark worm",(68,11)
MONSTER:'w',"dark worm",(68,09)
MONSTER:'w',"dark worm",(66,10)
MONSTER:'w',"dark worm",(69,10)
MONSTER:'w',"dark worm",(60,07)
MONSTER:'w',"dark worm",(60,13)
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'P',"gray ooze",random
MONSTER:'B',"vampire bat",random
MONSTER:';',"giant eel",random
MONSTER:';',"giant eel",random
MONSTER:';',"piranha",random
MONSTER:';',"piranha",random
MAZE:"chall-6",' '
FLAGS: noteleport,shortsighted
GEOMETRY:center,center
# 1 2 3 4 5 6 7
#0123456789012345678901234567890123456789012345678901234567890123456789012345
MAP
0
1 |---.----| |---|
2 |-.- -.----.- -----|
3 |- }}}}}} ----.----|
4 |- }}}}}}}} -|
5 |-----| |- }}}}}} -|
6 |-- --| |- - -.-----.- |
7 |- --| |- -|- ---| |- |
8 | -.------.- -| | --.----| . -|
9 | --| | | |- -|
0 | | |-- . |--.--| |-.- -.--- -|
1 |- -- -.-- | |-.- -||-- --| | |
2 |- -||-.- -||- -- --| | ---|
3 |--.- -- |- -- -| |- -|
4 | -| |- --| | |
5 |-- -.-----.- -.-- --| | |
6 |- -| |-.- -- .-| | |
7 | | |- -.--||- - --| |- -|
8 | | |--.--| |-|---| |----|
9 |- -|
0 |-----.-----.---|
ENDMAP
#0123456789012345678901234567890123456789012345678901234567890123456789012345
# 1 2 3 4 5 6 7
# unlit light sources in the walls, waiting to be lit and/or looted
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'(',"tallow candle",random
OBJECT:'*',"chunk of fossil dark",random
OBJECT[50%]:'(',"wax candle",random
OBJECT[50%]:'(',"wax candle",random
OBJECT[50%]:'(',"wax candle",random
OBJECT[50%]:'(',"wax candle",random
OBJECT[10%]:'*',"chunk of fossil dark",random
GEOMETRY:center,center
# 1 2 3 4 5 6 7
#0123456789012345678901234567890123456789012345678901234567890123456789012345
MAP
0
1 |--------| |---|
2 |---........--------...-----|
3 |-....}}}}}}.................---------|
4 |-....}}}}}}}}.........................-|
5 |-----| |-......}}}}}}...........................-|
6 |--.....--| |-....-.............---------..............|
7 |-.........--| |-....-|-.........---| |-.............|
8 |............----------....-| |..-------| |............-|
9 |........................--| |..| |-..........-|
0 |........................| |--..| |-----| |---....-----.-|
1 |-.........--............----....| |---.....-||--.....--| |.|
2 |-.......-||---.................-||-.........--.....--| |.---|
3 |----.-- |-.................--................-| |-....-|
4 |.-| |-.................................--| |......|
5 |--.---------...----.........................--| |......|
6 |-...............-| |---..........--........--| |......|
7 |.................| |-.....----||-.-...--| |-....-|
8 |.................| |-----| |-|---| |----|
9 |-...............-|
0 |---------------|
ENDMAP
#0123456789012345678901234567890123456789012345678901234567890123456789012345
# 1 2 3 4 5 6 7
# Dungeon Description
RANDOM_PLACES:(31,11),(45,11),(50,02)
REGION:(00,00,75,20),unlit,"ordinary"
# Teleport
TELEPORT_REGION:(03,04,18,19),(0,0,0,0),down
# Stairs
STAIR:(13,18),up
STAIR:(66,15),down
# Treasure
OBJECT:'#',"uncharged lantern",(67,17)
CONTAINER:'(',"sack",(67,17)
OBJECT:'#',"+2 blessed wrathful silver elven broadsword",contained
OBJECT:'(',"magic torch",contained
OBJECT:'#',"large platinum bar",contained
# Non diggable walls
NON_DIGGABLE:(00,00,75,20)
# Objects
OBJECT:'%',"egg",random,"dark worm",0
OBJECT:'?',"light",random,blessed,0
OBJECT:'?',"light",random,cursed,0
OBJECT[50%]:'%',"egg",random,"dark worm",0
OBJECT[50%]:'%',"egg",random,"dark worm",0
OBJECT:'!',"gain level",random
OBJECT:'+',random,random
OBJECT:')',"golden arrow",random
OBJECT:random,random,random
OBJECT:random,random,random
OBJECT:random,random,random
# Warning
ENGRAVING:(13,18), dust, "BEWARE OF GRUE"
# An unlucky adventurer
OBJECT:'%',"corpse",place[0],"Elvenking",0
OBJECT:'/',"light",place[0]
OBJECT:')',"elven broadsword",place[0],uncursed,4
OBJECT:'[',"cloak of invisibility",place[0],cursed,-1
ENGRAVING:place[0], engrave, "Elbere-"
# Traps
TRAP:random,random
TRAP:random,random
TRAP:"rust",random
TRAP:"rust",random
TRAP:"board",random
TRAP:"board",random
TRAP:"board",random
TRAP:"board",random
TRAP:"board",(64,11)
# Monsters
MONSTER:'U',"Grue",(66,15),asleep
MONSTER:'w',"dark worm",(67,15)
MONSTER:'w',"dark worm",(65,15)
MONSTER:'w',"dark worm",(68,14)
MONSTER:'w',"dark worm",(64,14)
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:'w',"dark worm",random
MONSTER:';',"kraken",(36,04)
MONSTER:'L',"lich",place[1]
MONSTER:'W',"barrow wight",(41,15)
MONSTER:'d',"warg",(48,04)
MONSTER:'d',"warg",(49,04)
MONSTER:'d',"warg",(50,04)
MONSTER:'d',"warg",(51,04)