# Up-to-date config lives on CDO: # http://crawl.develz.org/configs/trunk/MarvinPA.rc ******** *SKILLS* ******** default_manual_training = true ############## # Meatsprint # ############## # channel.god = mute # channel.intrinsic_gain = mute # heap_brand = none # default_autopickup = false # { # function choose_stat_gain() # crawl.sendkeys('d') # end # } ############## # Autopickup # ############## pickup_mode = multi autopickup = $?!:"/%|\ ae := autopickup_exceptions ae = ae += useless_item ae += (amulet|ring|staff|rod|tome) of ae += scrolls? of (torment|noise|curse) ae += potions? of (flight|mutation|paralysis|.*poison) ae += potions? of (lignification|decay|degeneration) ae += wand of (confusion|enslavement|flame|frost|invisibility) ae += wand of (magic darts|random effects|slowing) ae += <(phial|lamp|stone|fan) of : local branch = you.branch() : if branch == "Pan" or branch:find("Zig") then autopickup = $ ae = ae += 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 } ################### # Message colours # ################### $inedible := darkgrey $evil := red $preferred := yellow $rot-inducing := lightred $mutagenic := magenta $dangerous := magenta $poisonous := lightgreen $contaminated := brown ### standard colours to be used for message highlighting $danger := lightred $warning := yellow $boring := darkgrey $item_dmg := $danger msc := message_colour msc = menu := menu_colour menu = # Multi-turn channel.multiturn = mute # Allies msc += mute:returns to your side msc += mute:a demon appears 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 away msc += mute:you swap places msc += mute:your.*(looks stronger|shudders|resists) msc += mute:(stumbles backwards|holds.*ground) msc += mute:(something|your).*(misses|does no damage) msc += mute:your.*(blinks|safely over|gestures) msc += mute:(phases out.*|misses) (your|something).* msc += mute:your.*but does no damage msc += mute:your.*(picks up|drops) msc += mute:your.*basks in the mutagenic energy 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 # Interface 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 msc += mute:melds.* msc += mute:Switching to.* msc += mute:Switching back.* # Other msc += mute:This raw flesh tastes terrible msc += mute:melds into your body 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 # 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 += $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.*oriflamme msc += $warning:oriflamme 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 menu += inventory:white:\w \+\s menu += inventory:white:\w \#\s menu += darkgrey:(melded) menu += darkgrey:.*useless_item.* menu += red:.*evil_item.* menu += lightred: cursed menu += inventory:lightgreen:.*equipped.* menu += lightmagenta:.*misc.*rune( of Zot)? menu += lightmagenta:.*orb.*Zot menu += white:.*artefact.* menu += lightblue:^unidentified .*(potion|scroll|wand|jewellery).* 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 += $inedible:.*inedible.* menu += $evil:.*evil_eating.* menu += $rot-inducing:.*rot-inducing.* menu += $mutagenic:.*mutagenic.* menu += $poisonous:.*poisonous.* menu += $contaminated:.*contaminated.* ######### # Items # ######### item := item_glyph item += potion:lightgrey item += (hasting|teleportation|heal wounds|blinking|speed|magic):yellow item += useless.*(potion|scroll):darkgrey item += unidentified.*(potion|scroll).*:lightblue #################### # Autoinscriptions # #################### autoinscribe += (bad|dangerous)_item.*potion:!q autoinscribe += (bad|dangerous)_item.*scroll:!r autoinscribe += of faith:!P autoinscribe += rod of:!a autoinscribe += lightning rod:!a autoinscribe += manual of:!d autoinscribe += staff of (Wucad Mu|energy|wizardry|power):!a autoinscribe += ambrosia:!e autoinscribe += wands? of (heal wounds|hasting|teleportation):!d : if you.race() == "Vampire" then autoinscribe += of blood:@*1 autoinscribe += of coagulated blood:@*2 autoinscribe += chunks? of:@*3 : else autoinscribe += chunks? of:@*1 : end : if you.god() == "Fedhas" then autoinscribe += fruit:!e : end ############### # Keybindings # ############### #Autoexplore # Useless commands # Macro keys bindkey = [`] CMD_NO_CMD_DEFAULT bindkey = [1] CMD_NO_CMD_DEFAULT bindkey = [2] CMD_NO_CMD_DEFAULT bindkey = [3] CMD_NO_CMD_DEFAULT bindkey = [4] CMD_NO_CMD_DEFAULT bindkey = [6] CMD_NO_CMD_DEFAULT bindkey = [7] CMD_NO_CMD_DEFAULT bindkey = [8] CMD_NO_CMD_DEFAULT bindkey = [9] CMD_NO_CMD_DEFAULT bindkey = [0] CMD_NO_CMD_DEFAULT # Wizmode # Targeting bindkey = [\] CMD_TARGET_OBJ_CYCLE_FORWARD bindkey = [^I] CMD_TARGET_CYCLE_FORWARD # Saving bindkey = [S] CMD_SAVE_GAME_NOW ######### # Notes # ######### 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 note_hp_percent = 30 note_all_skill_levels = true ############### # Spell slots # ############### # Utility spells spell_slot += Dispel Undead:q spell_slot += Alistair's Intoxication:Q spell_slot += Abjuration:w spell_slot += Mass Abjuration:W spell_slot += Apportation:e spell_slot += Recall:r spell_slot += Summon Butterflies:R spell_slot += Control Teleport:t spell_slot += Ozocubu's Armour:aA spell_slot += Stoneskin:aA spell_slot += Phase Shift:aA spell_slot += Shroud of Golubria:aA spell_slot += Swiftness:s spell_slot += Repel Missiles:d spell_slot += Deflect Missiles:d spell_slot += Darkness:D spell_slot += Flight:f spell_slot += Ring of Flames:F spell_slot += Regeneration:g spell_slot += Silence:G spell_slot += Haste:h spell_slot += Disjunction:H spell_slot += Invisibility:j spell_slot += Death's Door:J spell_slot += Borgnjor's Revivification:L spell_slot += Blink:b spell_slot += Controlled Blink:B spell_slot += Sublimation of Blood:n spell_slot += Necromutation:M spell_slot += Cure Poison:Z # Transformations spell_slot += Beastly Appendage:zxc spell_slot += Spider Form:zxc spell_slot += Ice Form:zxc spell_slot += Blade Hands:zxc spell_slot += Statue Form:XC spell_slot += Dragon Form:XC # Low-level spells spell_slot += Freeze:z spell_slot += Magic Dart:z spell_slot += Flame Tongue:z spell_slot += Pain:z spell_slot += Shock:z spell_slot += Sandblast:z spell_slot += Sting:z spell_slot += Ensorcelled Hibernation:z spell_slot += Corona:z spell_slot += Infusion:z spell_slot += Animate Skeleton:Z spell_slot += Confusing Touch:Z spell_slot += Confuse:x spell_slot += Slow:x spell_slot += Vampiric Draining:x spell_slot += Song of Slaying:x spell_slot += Summon Small Mammal:zx spell_slot += Throw Frost:zx spell_slot += Throw Flame:zx spell_slot += Searing Ray:zx spell_slot += Call Imp:zx spell_slot += Static Discharge:ZX spell_slot += Iskenderun's Battlesphere:ZX spell_slot += Mephitic Cloud:cC spell_slot += Spectral Weapon:c # Mid-level spells spell_slot += Stone Arrow:zxcv spell_slot += Dazzling Spray:zxcv spell_slot += Iskenderun's Mystic Blast:zxcv spell_slot += Force Lance:zxcv spell_slot += Sticky Flame:zxcv spell_slot += Throw Icicle:zxcv spell_slot += Venom Bolt:zxcv spell_slot += Call Canine Familiar:zxc spell_slot += Summon Scorpions:zxc spell_slot += Summon Ice Beast:zxc spell_slot += Summon Demon:zxc spell_slot += Airstrike:zxc spell_slot += Agony:zxc spell_slot += Fulminant Prism:XC spell_slot += Lee's Rapid Deconstruction:XC spell_slot += Poisonous Cloud:XC spell_slot += Freezing Cloud:XC spell_slot += Ozocubu's Refrigeration:ZX spell_slot += Control Undead:ZX spell_slot += Animate Dead:XC spell_slot += Olgreb's Toxic Radiance:XC # High-level spells spell_slot += Lightning Bolt:xcv spell_slot += Fireball:xcv spell_slot += Bolt of:xcv spell_slot += Iron Shot:xcv spell_slot += Poison Arrow:xcv spell_slot += Orb of Destruction:xcv spell_slot += Lehudib's Crystal Spear:xcv spell_slot += Chain Lightning:XCV spell_slot += Fire Storm:V spell_slot += Ice Storm:V spell_slot += Shatter:V spell_slot += Tornado:V # Default letters spell_slot += .*:yuiopYUIOP ################# # Miscellaneous # ################# char_set = unicode show_player_species = true # Features cset_unicode = item_gold:£ cset_unicode = cloud:# feature = explore horizon {.,,green} feature = (closed|runed|sealed) door {+,,} ################## # Lua autopickup # ################## # Disabled/unfinished { local function autopickup(it, name) local class = it.class(true) local branch = you.branch() -- For multi-Zig runs. local zigscumming = false if it.is_useless then return false end -- For Pan runs. if branch == "Pandemonium" or branch:find("Zig") then if class == "wand" and not zigscumming then if name:find("heal wounds") or name:find("hasting") or name:find("teleportation") then return true end end if class == "scroll" then if name:find("acquirement") or name:find("identify") or name:find("magic mapping") then return true end if not zigscumming and (name:find("amnesia") or name:find("blinking") or name:find("enchant armour") or name:find("enchant weapon") or name:find("fog") or name:find("holy word") or name:find("recharging") or name:find("remove curse") or name:find("teleportation")) then return true end end if class == "jewellery" and not it.identified then return true end if class == "potion" then if name:find("cure mutation") or name:find("experience") or name:find("gain") or name:find("magic") or name:find("restore abilities") then return true end if not zigscumming and (name:find("curing") or name:find("heal wounds") or name:find("porridge")) then return true end end if class == "food" then if name:find("ambrosia") or name:find("royal jelly") then return true end end -- For normal gameplay. elseif not zigscumming then -- Armour autopickup by rwbarton. if class == "armour" then local good_slots = {cloak="Cloak", helmet="Helmet", gloves="Gloves", boots="Boots"} st, _ = it.subtype() if good_slots[st] ~= nil and items.equipped_at(good_slots[st]) == nil then return true end end if class == "wand" then if name:find("confusion") or name:find("enslavement") or name:find("flame") or name:find("frost") or name:find("magic dart") or name:find("random effects") or name:find("slowing") then return false else return true end end if class == "scroll" then if name:find("detect curse") or name:find("fear") or name:find("torment") or name:find("unholy creation") or name:find("vorpalise weapon") or name:find("vulnerability") then return false else return true end end if class == "jewellery" and not it.identified then return true end if class == "potion" then if name:find("blood") and you.race() ~= "Vampire" or name:find("levitation") or name:find("water") then return false else return true end end if class == "book" then if name:find("tome of Destruction") then return false else return true end end if class == "staff" and not it.identified then return true end if class == "food" then if name:find("ambrosia") or name:find("honeycomb") or name:find("ration") or name:find("royal jelly") then return true end end end if you.god() == "Nemelex Xobeh" and class == "miscellaneous" and name:find("deck") then return true end return false end -- add_autopickup_func(autopickup) }