##### Crawl Init file ############################################### # For descriptions of all options, as well as some more in-depth information # on setting them, consult the file # options_guide.txt # in your /docs directory. If you can't find it, the file is also available # online at: # https://github.com/crawl/crawl/blob/master/crawl-ref/docs/options_guide.txt # # Crawl uses the first file of the following list as its option file: # * init.txt in the -rcdir directory (if specified) # * .crawlrc in the -rcdir directory (if specified) # * init.txt (in the Crawl directory) # * ~/.crawl/init.txt (Unix only) # * ~/.crawlrc (Unix only) # * ~/init.txt (Unix only) # * settings/init.txt (in the Crawl directory) ##### Some basic explanation of option syntax ####################### # Lines beginning with '#' are comments. The basic syntax is: # # field = value or field.subfield = value # # Only one specification is allowed per line. # # The terms are typically case-insensitive except in the fairly obvious # cases (the character's name and specifying files or directories when # on a system that has case-sensitive filenames). # # White space is stripped from the beginning and end of the line, as # well as immediately before and after the '='. If the option allows # multiple comma/semicolon-separated terms (such as # autopickup_exceptions), all whitespace around the separator is also # trimmed. All other whitespace is left intact. # # There are three broad types of Crawl options: true/false values (booleans), # arbitrary values, and lists of values. The first two types use only the # simple =, with later options - which includes your options that are different # from the defaults - overriding earlier ones. List options allow using +=, ^=, # -=, and = to append, prepend, remove, and reset, respectively. Usually you will # want to use += to add to a list option. Lastly, there is := which you can use # to create an alias, like so: # ae := autopickup_exceptions # From there on, 'ae' will be treated as if it you typed autopickup_exceptions, # so you can save time typing it. # ##### Other files ################################################### # You can include other files from your options file using the 'include' # option. Crawl will treat it as if you copied the whole text of that file # into your options file in that spot. You can uncomment some of the following # lines by removing the beginning '#' to include some of the other files in # this folder. # Some useful, more advanced options, implemented in LUA. # include = advanced_optioneering.txt # Alternative vi bindings for Dvorak users. # include = dvorak_command_keys.txt # Alternative vi bindings for Colemak users. # include = colemak_command_keys.txt # Override the vi movement keys with a non-command. # include = no_vi_command_keys.txt # Turn the shift-vi keys into safe move, instead of run. # include = safe_move_shift.txt ##### Ancient versions ############################################## # If you're used to the interface of ancient versions of Crawl, you may # get back parts of it by uncommenting the following options: # include = 034_command_keys.txt # And to revert monster glyph and colouring changes: # include = 052_monster_glyphs.txt # include = 060_monster_glyphs.txt # include = 071_monster_glyphs.txt # include = 080_monster_glyphs.txt # include = 0.9_monster_glyphs.txt # include = 0.12_monster_glyphs.txt # include = 0.13_monster_glyphs.txt # include = 0.14_monster_glyphs.txt ################################################ # My conf. file # # Uasge: Put "include = this_file_name" # at the end of "INIT.TXT" file # ################################################ # Override the vi movement keys with a non-command. include = no_vi_command_keys.txt bindkey = [5] CMD_NO_CMD_DEFAULT bindkey = [w] CMD_REST #### Autopickup autopickup = $?!/% ae := autopickup_exceptions ae = # Exceptions ae += (useless|evil)_item ae += dangerous_item.*scrolls? of (holy word|noise|torment) ae += potions? of (flight|lignification|mutation) ae += wand of (confusion|enslavement|fireball|flame|frost|lightning) ae += wand of (magic darts|paralysis|polymorph|random effects|slowing) ae += (beef jerk|pizza) : if you.race() ~= "Vampire" then ae += potions? of.*blood : end # Inclusions ae += 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 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 -- Autopickup of stackable items function inventory() return iter.invent_iterator:new(items.inventory()) end local function pickup_stackable(it, name) local class = it.class(true) local subtype = it.subtype() local ego = it.ego(true) if class == "potion" or class == "scroll" then for inv in inventory() do if class == inv.class(true) and subtype == inv.subtype() then return true end end elseif class == "missile" then for inv in inventory() do if class == inv.class(true) and subtype == inv.subtype() and ego == inv.ego(true) then return true end end elseif class == "miscellaneous" and (subtype == "fan of gales" or subtype == "lamp of fire" or subtype == "phial of floods" or subtype == "stone of tremors" or subtype == "disc of storms" or subtype == "lantern of shadows") then for inv in inventory() do if subtype == inv.subtype() then return false end end end return end clear_autopickup_funcs() add_autopickup_func(pickup_equipment) add_autopickup_func(pickup_stackable) } default_autopickup = true pickup_thrown = true assign_item_slot = forward pickup_menu_limit = 1 drop_filter = drop_filter += useless_item #### Travel travel_delay = -1 explore_delay = -1 rest_delay = -1 explore_greedy = true explore_stop = explore_stop += items,stairs,shops,altars,portals,runed_doors explore_stop += greedy_items,greedy_pickup_smart,greedy_visited_item_stack explore_stop += greedy_visited_item_stack,greedy_sacrificeable auto_sacrifice = true travel_key_stop = true auto_exclude = auto_exclude += oklob,statue,roxanne,hyperactive,lightning spire #### Resting runrest_safe_poison = 80:100 runrest_ignore_monster = runrest_ignore_monster += ^butterfly$:1 runrest_ignore_monster += ^wandering mushroom$:1 rest_wait_both = true rest_wait_percent = 100 #### Interface & commands remember_name = false default_manual_training = true autopickup_starting_ammo = true auto_switch = false travel_open_doors = true easy_unequip = true equip_unequip = true jewellery_prompt = false show_uncursed = true easy_confirm = all allow_self_target = no confirm_butcher = never easy_eat_chunks = false auto_eat_chunks = true easy_quit_item_prompts = false easy_exit_menu = false sort_menus = true:equipped,identified,basename,art,ego,glowing,qualname,curse,charged,slot autofight_stop = 30 autofight_throw = false autofight_throw_nomove = true autofight_fire_stop = false autofight_caught = true autofight_wait = true fail_severity_to_confirm = 3 easy_door = false #### Messages & display hp_warning = 50 mp_warning = 0 hp_colour = 100:green, 99:lightgray, 75:yellow, 50:lightred, 25:red mp_colour = 100:green, 99:lightgray, 75:yellow, 50:lightred, 25:red stat_colour = 99:lightgray status_caption_colour = brown enemy_hp_colour = green green brown brown magenta red lightgrey clear_messages = false show_more = false small_more = true show_newturn_mark = true show_game_turns = true item_stack_summary_minimum = 4 msg_condense_repeats = true show_travel_trail = false skill_focus = false 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 view_delay = 300 use_animations = use_animations += beam,range,monster_in_sight cloud_status = true #### Character dump & notes dump_on_save = true dump_item_origins = none dump_item_origin_price = -1 dump_message_count = 30 dump_order = header,hiscore,stats,misc,mutations,skills,spells,inventory dump_order += overview,screenshot,monlist,messages,action_counts,vaults dump_order += notes,kills dump_book_spells = true # user_note_prefix = - note_items = note_items += of Zot,experience,acquirement,running,of resistance, Archmagi note_items += crystal plate armour,dragon armour note_items += artefact,wand of (heal wounds|hasting|teleportation) note_monsters = note_monsters += orb of fire note_hp_percent = 10 note_all_skill_levels = true note_xom_effects = true note_messages = note_messages += Your scales start note_messages += You feel monstrous note_messages += protects you from harm note_messages += You (fall through|are sucked into) a shaft note_chat_messages = false note_dgl_messages = true #### Autoinscriptions ai := autoinscribe ai += (bad|dangerous)_item.*potion:!q ai += (bad|dangerous)_item.*scroll:!r ai += potions? of berserk rage:!q ai += scrolls? of silence:!r ai += of faith:!P ai += rod:!a ai += manual of:!d ai += staff of (Wucad Mu|conjuration|energy|power|wizardry):!a ai += wand of (heal wounds|hasting|teleportation):!d ai += (large rock|throwing net|curare|of dispersal):=f ai += scrolls? of identify:@r1 ai += potions? of curing:@q1 ai += potions? of heal wounds:@q2 ai += wand of heal wounds:@v2 ai += potions? of haste:@q3 ai += wand of hasting:@v3 ai += scrolls? of teleportation:@r4 ai += wand of teleportation:@v4 : if you.race() == "Vampire" then ai += potions? of.*blood:@q4 : end : if you.god() == "Fedhas" then ai += fruit:!e : end show_god_gift = unident #### Item colours item := item_glyph item = item += (potion|scroll|wand|jewellery):lightgrey item += spellbook:red item += wand of (heal wounds|hasting|teleportation):yellow item += scrolls? of (blinking|teleportation):yellow item += potions? of (haste|heal wounds|magic):yellow item += scrolls? of (acquirement|brand weapon|enchant|recharging):cyan item += potions? of (beneficial mutation|cure mutation|experience):cyan item += unidentified.*(potion|scroll|book|wand|jewellery):lightblue item += unidentified.*manual:white item += useless_item.*(potion|scroll):darkgrey # Food item += (corpse|chunk):white item += mutagenic.*(corpse|chunk):darkgrey item += forbidden.*(corpse|chunk):darkgrey item += inedible.*(corpse|chunk):darkgrey #### Messages ignore := runrest_ignore_message ignore = stop := runrest_stop_message stop = more := force_more_message more = # TODO: recheck all of this # Annoyances ignore += Jiyva gurgles merrily ignore += Jiyva appreciates your sacrifice ignore += Jiyva says: Divide and consume ignore += You hear.*splatter ignore += You feel.*sick ignore += disappears in a puff of smoke ignore += engulfed in a cloud of smoke ignore += standing in the rain ignore += engulfed in white fluffiness ignore += A.*toadstool withers and dies ignore += toadstools? grow ignore += You walk carefully through the ignore += Eating .*chunk ignore += This .*flesh tastes ignore += You .* eating ignore += The winds around you calm down. ignore += Lightning arcs down from a storm cloud ignore += (crumbles|melts) away\. ignore += (merges|forms) itself .* the air ignore += grinding sound ignore += contamination has completely ignore += chunks of flesh in your inventory.*rotted away ignore += rod.*has recharged ignore += your breath back ignore += pray: ignore += talk: ignore += talk_visual: ignore += friend_spell: ignore += friend_enchant: ignore += friend_action: ignore += sound: # Bad things stop += found.*trap stop += (blundered into a|invokes the power of) Zot stop += You fall through a shaft stop += A sentinel's mark forms upon you\. stop += A huge blade swings out and slices into you stop += sense of stasis stop += flesh start stop += (starving|devoid of blood) stop += wrath finds you stop += lose consciousness # Expiring effects stop += You feel yourself slow down stop += You are starting to lose your buoyancy stop += You lose control over your flight stop += Your hearing returns stop += Your transformation is almost over stop += back to life stop += uncertain stop += time is quickly running out stop += life is in your own hands stop += is no longer charmed : if you.race() == "Ghoul" then stop += smell.*(rott(ing|en)|decay) stop += something tasty in your inventory : end :if you.god() == "Xom" then stop += god: :else ignore += god: :end stop += hell_effect: # Important features : if you.god() == "Ashenzari" then more += You have a vision of.*gates? : else more += interdimensional caravan more += distant snort more += roar of battle more += wave of frost more += hiss of flowing sand more += sound of rushing water more += heat about you more += crackle of arcane power more += Found a gateway leading out of the Abyss : end more += Found .* abyssal rune of Zot more += The mighty Pandemonium lord .* resides here # Interrupts more += You miscast.*(Blink|Borgnjor|Door|Haste|Invisibility) more += You can't (read|drink|do) more += You cannot .* in your current state more += There's nothing to (close|open) nearby 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 have disarmed more += You don't have any such object more += do not work when you're silenced more += You can't unwield more += enough magic points more += You feel your control is inadequate # Bad things more += Your surroundings flicker more += sense of stasis more += ^Your amulet of stasis more += You cannot teleport right now more += You fall through a shaft 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 convulse more += You are blasted by holy energy! more += You are (blasted|electrocuted)! more += You are.*(confused|poisoned) more += flesh start more += (starving|devoid of blood) more += god:(sends|finds|silent|anger) more += You feel a surge of divine spite 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 += hits you.*distortion more += watched by something more += flickers and vanishes! # Hell effects more += hell_effect: # Expiring effects more += You feel yourself slow down more += You are starting to lose your buoyancy more += You lose control over your flight 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 += uncertain more += time is quickly running out more += life is in your own hands more += is no longer charmed 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 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 #### Message colours $danger := lightred $warning := yellow $boring := darkgrey msc := message_colour msc = menu := menu_colour menu = # TODO: recheck all of this # Multi-turn channel.multiturn = mute # Allies 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:(something|your).*(misses|does no damage) 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) msc += mute:constricts?.*no damage # Prayer channel.pray += mute # Jiyva : if you.god() == "Jiyva" then msc += mute:slurping|squelching msc += mute:splits in two msc += mute:You feel.*(less hungry|power returning|better) : end # Spellcasting spam reduction (by monqy) # Macro z and Z to ===force_cast_spell msc += mute:Cast which spell\? \( msc += mute:^Casting.* msc += mute:Confirm with \. or Enter, or press \? or \* to list all spells\. msc += mute:Press\: \? - help, Shift-Dir - straight line, f - you msc += mute:for a list of commands and other information { function force_cast_spell() crawl.mpr('Cast which spell?') crawl.flush_prev_message() crawl.process_keys('Z') end } # Other msc += mute:meld.*your body msc += mute:This .* flesh tastes msc += mute:begins to bleed from.*wounds msc += mute:writhes in agony as.*flesh msc += mute:An air elemental.*itself.*the air msc += mute:You feel a.*surge of power msc += mute:Your legs become a tail as you enter the water msc += mute:You cannot train any new skill msc += mute:Moving in this stuff is going to be slow # Default colours msc += $danger:drains you msc += $danger:feel drained msc += $danger:strangely unstable msc += $danger:curare-tipped.*hits you msc += $danger:Space warps.* around you msc += $danger:Space bends around you msc += $danger:sense of stasis msc += $danger:clumsily bash msc += $danger:goes berserk msc += $danger:Forgetting.* will destroy the book msc += $danger:The blast of calcifying dust hits you msc += $danger:You are engulfed in calcifying dust msc += $danger:is moving more slowly msc += lightgrey:Something appears (at your feet|before you) msc += $danger:^Something .* you msc += $danger:You block its attack msc += $danger:constricts you msc += $danger:you convulse msc += $danger:You feel a build-up of mutagenic energy msc += $danger:place you under penance msc += $item_dmg:acid corrodes msc += $item_dmg:catch(es)? fire msc += $item_dmg:freezes? and shatters? msc += $item_dmg:covered with spores msc += $item_dmg:devours some of your food msc += $item_dmg:rots? away msc += $warning:ticking.*clock msc += $warning:dying ticks msc += $warning:distant snort msc += $warning:odd grinding sound msc += $warning:creaking of ancient gears msc += $warning:floor suddenly vibrates msc += $warning:a sudden draft msc += $warning:coins.*counted msc += $warning:tolling.*bell msc += $warning:roar of battle msc += $warning:creaking.*portcullis msc += $warning:portcullis is probably msc += $warning:wave of frost msc += $warning:crackling.*melting msc += $warning:hiss.*sand msc += $warning:sound.*rushing water msc += $warning:rusting.*drain msc += $warning:drain falling apart msc += $warning:oppressive heat msc += $warning:rumble.*avalanche of rocks msc += $warning:crackle.*arcane power msc += $warning:crackle.*magical portal msc += $warning:fails to return msc += $warning:no longer ripe msc += $boring:You start (resting|waiting) msc += $boring:Unknown command msc += $boring:but (do no|doesn't do any) damage msc += $boring:(prevent|prevents) you from hitting # Selected items menu += inventory:white:\w \+\s menu += inventory:white:\w \#\s menu += darkgrey:(melded) menu += red:.*evil_item.* menu += lightred: cursed menu += darkgrey:.*useless_item.* menu += inventory:lightgreen:.*equipped.* menu += white:.*artefact.* menu += lightblue:^unidentified .*(potion|scroll|wand|jewellery|deck).* menu += lightblue:^unidentified .*weapon.*(runed|glowing) menu += lightblue:^unidentified .*armour.*(runed|glowing) menu += lightblue:^unidentified .*armour.*(embroidered|shiny|dyed) menu += yellow:heal wounds # Food menu += darkgrey:.*inedible.* menu += darkgrey:.*evil_eating.* menu += darkgrey:.*mutagenic.* #### Spell slots spell_slot += Swiftness:C spell_slot += Repel Missiles:A spell_slot += Deflect Missiles:A spell_slot += Blink:z spell_slot += Call Imp:d spell_slot += Magic Dart:a spell_slot += Conjure Flame:b spell_slot += Stone Arrow:abcd spell_slot += Dazzling Spray:abcd spell_slot += Iskenderun's Mystic Blast:abcd spell_slot += Force Lance:abcd spell_slot += Sticky Flame:abcd spell_slot += Throw Icicle:abcd spell_slot += Airstrike:abcd spell_slot += Agony:abcd spell_slot += Petrify:abcd spell_slot += Vampiric Draining:abcd spell_slot += Song of Slaying:abcd spell_slot += Spectral Weapon:abcd spell_slot += Confuse:abcd spell_slot += Gell's Gravitas:abcd spell_slot += Mephitic Cloud:cC spell_slot += Battlesphere:D # High-level spells spell_slot += Lightning Bolt:bcd spell_slot += Fireball:bcd spell_slot += Bolt of:bcd spell_slot += Iron Shot:bcd spell_slot += Poison Arrow:bcd spell_slot += Orb of Destruction:bcd spell_slot += Lehudib's Crystal Spear:bcd spell_slot += Fire Storm:d spell_slot += Glaciate:d spell_slot += Shatter:d spell_slot += Tornado:d spell_slot += Singularity:d # Default letters spell_slot += .*:yuiopYUIOP