############### ### Display ### ############### view_delay = 300 hp_colour = 100:green, 99:lightgray, 75:yellow, 50:lightred, 25:red mp_colour = 100:green, 99:lightgray, 75:yellow, 50:lightred, 25:red hp_warning = 50 monster_list_colour = monster_list_colour += friendly:green,neutral:brown monster_list_colour += good_neutral:brown,strict_neutral:brown monster_list_colour += trivial:darkgrey,easy:lightgrey monster_list_colour += tough:yellow,nasty:lightred ############### ### Console ### ############### # Enable use of darkgrey. bold_brightens_foreground=true equip_bar = true ## For item_glyph, subsequent matches override previous ones. item := item_glyph ## Reasonable defaults item += potion:lightgrey item += scroll:lightgrey item += wand:lightgrey item += dangerous_item:blue item += useless_item:darkgrey ### Potions ### item += potions? of.*(curing|flight):lightgrey : if you.race() == "Vampire" then item += potions? of blood:lightgrey : end item += potions? of.*berserk:brown item += potions? of.*might:yellow item += potions? of.*cancellation:cyan item += potions? of.*ambrosia:blue item += potions? of.*experience:lightred item += potions? of.*heal wounds:white item += potions? of.*(resistance|agility):green item += potions? of.*(haste|invisibility):lightgreen item += potions? of.*mutation:lightcyan item += potions? of.*brilliance:magenta item += potions? of.*magic:lightmagenta ### Scrolls ### : if you.race() == "Vampire" or you.race() == "Mummy" : or you.race() == "Ghoul" then item += scroll.*holy word:darkgrey item += scroll.*torment:brown : else item += scroll.*holy word:brown item += scroll.*torment:darkgrey : end item += scroll.*acquirement:white item += scroll.*(summoning):yellow item += scroll.*identify:cyan item += scroll.*magic mapping:lightcyan item += scroll.*(silence|vulnerability|immolation):blue item += scroll.*remove curse:lightgrey item += scroll.*(fog|teleport):green item += scroll.*(fear|blink):lightgreen item += scroll.*(recharging):magenta item += scroll.*(enchant|brand weapon):lightmagenta ### Wands ### # Sometimes dangerous item += wand of.*random effects:blue # Single target piercing. item += wand of.*lightning:brown item += wand of.*acid:yellow item += wand of.*flame:lightgrey item += wand of.*clouds:white item += wand of.*digging:green # Single-turn AOE item += wand of.*iceblast:cyan item += wand of.*scattershot:lightcyan item += wand of.*(disintegration|confusion|polymorph):magenta item += wand of.*(paralysis|enslavement):lightmagenta ### General Identification ### item += (identified|known).*(jewellery|magical staff):brown item += identified.*spellbook:magenta item += unidentified.*(potion|scroll|jewellery|wand|magical staff).*:lightblue item += unidentified.*book:lightmagenta item += manual:lightcyan item += manual of:cyan ### Jewellery ### item += known.*(ring of (dexterity|strength|intelligence|slaying|evasion|protection(?! from))|amulet of reflection):magenta item += identified.*artefact.*(jewellery):white item += unidentified.*artefact.*(jewellery).*:lightmagenta item += (a )?stones?$:lightgray ### Food ### item += chunks?.*flesh:lightgrey item += evil_eating.*chunk:red item += ( ration):green # Want this to override anything above item += useless:darkgrey # Only mark these types when forbidden; for other types it looks odd. item += forbidden.*(potion|scroll|food):red mons := mon_glyph # Monsters that can be easy to miss mons ^= * : ✱ mons ^= dancing weapon : cyan { mons ^= spectral weapon : lightcyan { # Classed Demonspawn mon += blood saint:9 mon += warmonger:9 mon += corrupter:9 mon += black sun:9 # Wall glyphs; requires a font and terminal that can render these. feature += crystal wall {░} feature += stone wall {▒} feature += metal wall {▓} feature += unnaturally hard rock wall {█} feature += altar {⚑} ############# ### Tiles ### ############# tile_window_width = 1300 tile_window_height = 700 tile_full_screen = false tile_map_pixels = 3 #tile_player_tile=tile:mons_jormungandr tile_player_tile = mons:ghost tile_weapon_offsets = 3,-4 tile_shield_offsets = 2,-2 #tile_player_tile = tile:mons_orb_guardian_fetus ################### ### Menu Colors ### ################### # These should match the item_glyph colours exactly when possible. # For menu_colour, the first match ignores subsequent matches. menu := menu_colour menu = # Many of the entries below come from dat/defaults/menu_colours.txt, # which we have to duplicate here since we want only some of the # entries from that file. menu += notes:white:Reached XP level ### General Inventory### # Items currently not affecting you. menu += darkgrey:(melded) # Items disliked by your god. menu += red:forbidden # Useless items, comes here to override artefacts etc. menu += darkgrey:.*useless.* # Handle cursed and equipped items early to override other colour settings. menu += lightred:.*equipped.* cursed menu += red: (a|the) cursed menu += inventory:lightgreen:.*equipped.* # Colouring of autoinscribed god gifts menu += pickup:lightred:god gift # Highlight (partly) selected items menu += inventory:white:\w \+\s menu += inventory:white:\w \#\s ### Food ### # Color chunks, put ordinary ones on lightgrey. menu += red:evil_eating.*chunk menu += blue:mutagenic.*chunk menu += lightgrey: +(chunks?$|chunks? +) # Other food menu += green:( ration) ### Potions ### : if you.race() == "Vampire" then menu += lightgrey:potions? of blood : end menu += lightgrey:potions? of.*(curing|flight) menu += brown:potions? of.*berserk menu += yellow:potions? of.*might menu += cyan:potions? of.*cancellation menu += blue:potions? of.*(lignification|ambrosia) menu += lightred:potions? of.*experience menu += white:potions? of.*heal wounds menu += green:potions? of.*(resistance|agility) menu += lightgreen:potions? of.*(haste|invisibility) menu += lightcyan:potions? of.*mutation menu += magenta:potions? of.*brilliance menu += lightmagenta:potions? of.*magic ### Scrolls ### : if you.race() == "Vampire" or you.race() == "Mummy" : or you.race() == "Ghoul" then menu += darkgrey:scroll.*holy word menu += brown:scroll.*torment : else menu += brown:scroll.*holy word menu += darkgrey:scroll.*torment : end menu += white:scroll.*acquirement menu += yellow:scroll.*(summoning) menu += cyan:scroll.*identify menu += lightcyan:scroll.*magic mapping menu += blue:scroll.*(noise|silence|vulnerability|immolation) menu += lightgrey:scroll.*remove curse menu += green:scroll.*(fog|teleport) menu += lightgreen:scroll.*(fear|blink) menu += magenta:scroll.*(recharging) menu += lightmagenta:scroll.*(enchant|brand weapon) ### Wands ### # Can be harmful menu += blue:wand of.*random effects # Damaging beam. menu += brown:wand of.*flame menu += yellow:wand of.*acid menu += white:wand of.*clouds menu += green:wand of.*digging # Explosion menu += cyan:wand of.*iceblast menu += lightcyan:wand of.*scattershot # MR-checking menu += magenta:wand of.*(disintegration|polymorph) menu += lightmagenta:wand of.*(paralysis|enslavement) ### General identification ### menu += cyan:manual of menu += lightcyan:manual menu += lightmagenta:unidentified.*artefact.* menu += white:.*artefact.* menu += lightblue:unidentified .*(potion|scroll|wand|jewellery|spellbook|rod|magical staff) menu += magenta:.*known .*(ring of (dexterity|strength|intelligence|slaying|evasion|protection(?! from))|amulet of reflection) menu += inventory:lightgray:.*(book|jewellery|magical staff) # Ego items menu += lightblue:unidentified.*weapon.*(runed|glowing|enchanted) menu += lightblue:unidentified.*armour.*(runed|glowing|embroidered|shiny|dyed) ################# ### Interface ### ################# default_manual_training = true easy_eat_chunks = true equip_unequip = true sort_menus = true:equipped,identified,basename,art,ego,glowing,qualname,curse,charged,slot ability_menu = false autofight_stop = 50 autofight_caught = true autofight_wait = false auto_butcher = engorged # bindkey = [~] CMD_LUA_CONSOLE ############################ ### Travel & Exploration ### ############################ rest_wait_both = true auto_sacrifice = true travel_delay = -1 explore_delay = -1 rest_delay = -1 # show_travel_trail = false explore_stop += greedy_items wall_jump_move = false ################## ### Autopickup ### ################## # Add staves, rods, misc; note you can't use += with this option. autopickup = $?!:"/%}|\ ae := autopickup_exceptions ae += scrolls? of silence ae += >(crystal ball of energy|disc of storm) # Don't ever need a second stave ae += staff of .* ################ ### Messages ### ################ channel.multiturn = mute msc := message_colour msc += mute:returns to your side msc += mute:a demon appears msc += lightgrey:The deck of cards disappears msc += mute:puff of smoke msc += mute:carefully avoids msc += mute:is recalled msc += mute:wall.*burn.*your msc += mute:dissolves? into (sparkling lights|shadows) msc += mute:(crumbles|melts) away\. msc += mute:(merges|forms) itself .* the air msc += mute:you swap places msc += mute:your.*(looks stronger|shudders|resists) msc += mute:your.*(stumbles backwards|holds.*ground) msc += mute:your.*(blinks|safely over) msc += mute:(phases out.*|misses) (your|something).* msc += mute:your.*(picks up|drops) msc += mute:your.*basks in the mutagenic energy msc += mute:your.*(struggles|tears|pulls away).*(web|net) show_more = false more := force_more_message : if you.god() == "Ashenzari" then more += You have a vision of.*gates? : end more += The mighty Pandemonium lord .* resides here # Interrupts more += You don't .* that spell more += You fail to use your ability more += You miscast.*(Blink|Borgnjor|Door|Invisibility) more += You can't (read|drink|do) more += You cannot .* while unable to breathe more += You cannot .* in your current state more += when .*silenced more += too confused more += There's something in the way more += There's nothing to (close|open) nearby more += not good enough to have a special ability more += You are too berserk more += no means to grasp more += That item cannot be evoked more += This wand has no charges more += You are held in a net more += You don't have any such object more += You can't unwield more += enough magic points more += You don't have the energy to cast that spell more += You are unable to access your magic # Bad things more += Your surroundings flicker more += You cannot teleport right now more += A sentinel's mark forms upon you more += (blundered into a|invokes the power of) Zot more += enter a teleport trap more += Ouch! That really hurt! more += dispelling energy hits you more += You are blasted by holy energy! more += You are (blasted|electrocuted)! more += You are.*(confused|poisoned) more += flesh rotting more += (starving|devoid of blood) more += god:(sends|finds|silent|anger) more += You feel a surge of divine spite more += disloyal to dabble more += lose consciousness more += You are too injured to fight blindly more += calcifying dust hits more += Space warps.*around you more += Space bends around you more += watched by something more += flickers and vanishes! more += doesn't seem very happy more += is no longer charmed # Hell effects more += hell_effect: # Expiring effects more += You feel yourself slow down more += You are starting to lose your buoyancy more += Your hearing returns more += Your transformation is almost over more += You have a feeling this form more += You feel yourself come back to life more += time is quickly running out more += life is in your own hands more += Your shroud falls apart more += You start to feel a little slower more += You feel less protected from missiles # Others more += You have reached level more += You rejoin the land of the living more += You have finished (your manual|forgetting about) more += Your scales start more += You feel monstrous more += Jiyva alters your body : if you.god() == "Xom" then more += god: : end # Dangerous monsters we force_more when first seen. # Things with ranged (or extremely fast), irresistable effects. more += ((floating|shining) eye|dream sheep|death drake).*into view more += (wretched star|apocalypse crab|death drake).*into view more += (entropy weaver|torpor snail|spriggan druid).*into view more += (vault (warden|sentinel)|merfolk (avatar|siren)).*into view more += (guardian serpent|draconian shifter|convoker|death cob).*into view more += (phantasmal warrior|air elemental).*into view # Paralysis/Petrify/Banish more += (orc sorcerer|(?> note_items += experience,of resistance, Archmagi note_items += crystal plate armour,pearl dragon scales note_items += artefact note_messages += You feel monstrous note_messages += You pass through the gate note_messages += cast .* Abyss # Noteable monsters # Undead note_monsters += ancient lich,curse skull,curse toe,greater mummy # Depths note_monsters += caustic shrike # Special hall_of_zot spawns note_monsters += killer klown,electric golem,orb of fire dump_message_count = 30 dump_order = header,hiscore,stats,misc,mutations,skills,spells,inventory dump_order += overview,screenshot,monlist,messages,skill_gains,action_counts dump_order += vaults,notes,kills,turns_by_place,xp_by_level ########### ### Lua ### ########### { -- Equipment autopickup (by Medar and various others) local function pickup_equipment(it, name) if it.is_useless then return end local class = it.class(true) if class == "armour" then local good_slots = {cloak="Cloak", helmet="Helmet", gloves="Gloves", boots="Boots"} st, _ = it.subtype() -- Autopickup found aux armour if 1) we don't have any or 2) it's artefact, -- or 3) if we don't have artefact or ego armour, and the found armour is -- ego. if good_slots[st] ~= nil then if good_slots[st] == "Gloves" and you.has_claws() > 0 then return end if it.artefact then return true end local cur = items.equipped_at(good_slots[st]) if cur == nil then return true end if cur.branded or cur.artefact then return end if it.branded then return true end -- Autopickup found body armour of the same kind we're wearing, according -- to conditions (2) and (3) above used for aux slots. elseif st == "body" then local cur = items.equipped_at("armour") if cur == nil then return end if cur.name("qual") ~= it.name("qual") then return end if it.artefact then return true end if cur.branded or cur.artefact then return end if it.branded then return true end end end return end add_autopickup_func(pickup_equipment) -- Spellcasting spam reduction by monqy local function generic_cast_spell(cmd) crawl.mpr('Cast which spell?') crawl.flush_prev_message() crawl.process_keys(cmd) end function cast_spell() generic_cast_spell('z') end function force_cast_spell() generic_cast_spell('Z') end }