#### Up-to-date config lives on Github: #### https://github.com/MarvinPA/MarvinPA.rc #### edited by Beraht Hraban < function ready() force_mores() end > #### Autopickup autopickup = $?!% ae := autopickup_exceptions ae = # Exceptions ae += (useless|evil)_item ae += dangerous_item.*scrolls? of (holy word|noise|torment) ae += scrolls? of (immolation|vulnerability) ae += potions? of (berserk rage|flight|invisibility|lignification) 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 -- Doesn't work properly at the moment, oops local function pickup_stackable(it, name) local class = it.class(true) local subtype = it.subtype() local ego = it.ego(true) if 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" or subtype == "crystal ball of energy") then if it.stacks() then return false end elseif class == "potion" or class == "scroll" or class == "missile" or class == "miscellaneous" then if it.stacks() then return true 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 & exploration travel_delay = -1 explore_delay = -1 rest_delay = -1 explore_greedy = true explore_stop = explore_stop += items,wands,rods,stairs,shops,altars,portals,runed_doors explore_stop += greedy_items,greedy_pickup_smart,greedy_visited_item_stack auto_sacrifice = true auto_butcher = 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 default_manual_training = true autopickup_starting_ammo = true auto_switch = false travel_open_doors = true easy_unequip = true equip_unequip = true jewellery_prompt = true show_uncursed = true easy_confirm = all allow_self_target = no confirm_butcher = never easy_eat_chunks = true auto_eat_chunks = true easy_quit_item_prompts = false easy_exit_menu = false ability_menu = true easy_floor_use = true sort_menus = true:equipped,identified,basename,art,ego,glowing,qualname,curse,charged,slot autofight_stop = 75 autofight_warning = 85 autofight_hunger_stop = 0 autofight_throw = true autofight_throw_nomove = true autofight_fire_stop = false autofight_caught = true autofight_wait = true autofight_prompt_range = false fail_severity_to_confirm = 3 easy_door = true warn_hatches = true enable_recast_spell = false #### Messages & display hp_warning = 75 mp_warning = 2 hp_colour = 100:green, 99:lightgray, 75:yellow, 50:red mp_colour = 100:green, 99:lightgray, 75:yellow, 50:lightred, 25:red stat_colour -= 3:red status_caption_colour = brown enemy_hp_colour = green green brown brown magenta red lightgrey clear_messages = false show_more = true show_newturn_mark = true show_game_turns = true item_stack_summary_minimum = 4 msg_condense_repeats = false msg_condense_short = true show_travel_trail = true skill_focus = true default_show_all_skills = true 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 cloud_status = true #tile_display_mode = hybrid #### 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 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 += 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 #### Key bindings # Useless commands bindkey = [R] CMD_NO_CMD_DEFAULT bindkey = [T] CMD_NO_CMD_DEFAULT bindkey = [O] CMD_NO_CMD_DEFAULT bindkey = [}] CMD_NO_CMD_DEFAULT # 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 # Wizmode # bindkey = [&] CMD_NO_CMD_DEFAULT # Targeting bindkey = [\] CMD_TARGET_OBJ_CYCLE_FORWARD bindkey = [^I] CMD_TARGET_CYCLE_FORWARD # Saving bindkey = [S] CMD_SAVE_GAME_NOW #### 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|curing|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 = # 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 += chunks of flesh in your inventory.*rotted away ignore += The winds around you calm down. ignore += Lightning arcs down from a storm cloud ignore += (crumbles|melts) away\. ignore += grinding sound ignore += contamination has completely 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 += (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 += Your hearing returns stop += Your transformation is almost over stop += back to life stop += time is quickly running out stop += life is in your own hands stop += is no longer charmed stop += Your skin stops crawling : 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 : end more += The mighty Pandemonium lord .* resides here more += You pick up the .* rune and feel its power # Religion more += press .* to convert to Beogh more += welcomes you( back)?! more += You have lost your religion more += grants you a gift more += offers you knowledge of more += believes you are ready to make a new sacrifice more += may now remember your ancestor more += may now specialize your ancestor # Abyss more += is wielding.*distortion more += there is a.*distortion more += of distortion comes into view. more += You are cast .*into the Abyss more += The Abyss bends around you more += Found a gateway leading out of the Abyss more += a gateway leading .* appears more += Found .* abyssal rune of Zot # Interrupts more += You don't .* that spell more += You fail to use your ability more += You miscast.*(Blink|Borgnjor|Door|Haste|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 # Bad things more += Your surroundings flicker more += You cannot teleport right now more += You fall through a shaft more += You fall into the water more += You fall into the lava more += Careful! more += You focus on prolonging your flight 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) : if you.race() ~= "Ghoul" then more += flesh rotting :end 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 += You are slowing down more += Space warps.*around you more += Space bends around you more += watched by something more += flickers and vanishes! more += breaks free of your control 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 # Prompts more += You bow before the missionary of Beogh more += You .* the altar of more += will bless one of your weapons more += will bloody your weapon with pain more += will brand one of your weapons more += will supercharge a wand or rod more += It is a scroll of amnesia more += It is a scroll of brand weapon more += It is a scroll of enchant armour more += It is a scroll of enchant weapon more += It is a scroll of identify more += It is a scroll of recharging more += This is a scroll of acquirement more += You feel more experienced more += A flood of memories washes over you more += There's only one card left more += The deck only has .* cards more += The deck has exactly five cards more += You draw the first five cards more += You deal a card # 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 #### 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 msc += mute:slurping|squelching msc += mute:splits in two msc += mute:You feel.*(less hungry|power returning|better) # Uskayaw msc += mute:force your foes to # Spellcasting spam reduction (by dianne) # 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 msc += mute:chunks of flesh in your inventory.*rotted away msc += mute:Eating .*chunk msc += mute:You butcher # 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.* #################### ##### Webtiles ##### #################### tile_font_crt_family = Anonymous Pro tile_font_stat_family = Anonymous Pro tile_font_msg_family = Anonymous Pro tile_font_lbl_family = Anonymous Pro #################### ##### Lua code ##### #################### { --------------------------------------- ---- Begin conditional force_mores ---- --------------------------------------- -- See README.md for documentation. last_turn = you.turns() fm_patterns = { -- General early game threats {pattern = "adder|gnoll|hound", cond = "xl", cutoff = 2, name = "XL1"}, -- Problems for chars with 20, 60, 90, or 120 mhp {pattern = "orc|Ogre", cond = "maxhp", cutoff = 20, name = "20mhp"}, {pattern = "orc priest", cond = "maxhp", cutoff = 40, name = "40mhp"}, {pattern = "centaur [^wzs]|drake|blink frog|spiny frog|basilisk" .. "|raven|komodo dragon|blink frog|snapping turtle|black mamba" .. "|(redback|trapdoor) spider|hill giant|deep elf (summoner|mage)" .. "|gargoyle|sixfirhy|sun demon", cond = "maxhp", cutoff = 60, name = "60mhp"}, {pattern = "hydra|death yak|tarantella|(wolf|orb|jumping) spider" .. "|alligator|catoblepas|(fire|ice) dragon|spriggan (rider|druid)" .. "|torpor|yaktaur|vault guard|manticore|harpy|faun|merfolk|siren" .. "|water nymph|mana viper|a wizard|[0-9]+ wizards|ogre mage" .. "|deep elf (knight|conjurer)|tengu conjurer|green death" .. "|shadow demon", cond = "maxhp", cutoff = 90, name = "90mhp"}, {pattern = "centaur warrior|yaktaur captain" .. "|(quicksilver|storm|shadow|iron) dragon|alligator snapping turtle" .. "|satyr|naga sharpshooter|merfolk avatar|anaconda|shock serpent" .. "|emperor scorpion(stone|frost|fire) giant|titan|entropy weaver" .. "|thorn hunter|sphinx|war gargoyle|preserver" .. "|vault (warden|sentinel)|convoker|monstrosity|tengu reaver" .. "|deep elf (master archer|blademaster|death mage" .. "|sorcerer|demonologist|annihilator)" .. "|octopode crusher|yaktaur captain|spriggan (defender|air mage)" .. "|reaper|balrug", cond = "maxhp", cutoff = 120, name = "120mhp"} } -- end fm_patterns active_fm = {} -- Set to true to get a message when the fm change notify_fm = false -- Wrapper of crawl.mpr() that prints text in white by default. if not mpr then mpr = function (msg, color) if not color then color = "white" end crawl.mpr("<" .. color .. ">" .. msg .. "") end end function init_force_mores() for i,v in ipairs(fm_patterns) do active_fm[#active_fm + 1] = false end end function update_force_mores() local activated = {} local deactivated = {} local hp, maxhp = you.hp() for i,v in ipairs(fm_patterns) do local msg = "(" .. v.pattern .. ").*into view" local action = nil local fm_name = v.pattern if v.name then fm_name = v.name end if not v.cond and not active_fm[i] then action = "+" elseif v.cond == "xl" then if active_fm[i] and you.xl() >= v.cutoff then action = "-" elseif not active_fm[i] and you.xl() < v.cutoff then action = "+" end elseif v.cond == "maxhp" then if active_fm[i] and maxhp >= v.cutoff then action = "-" elseif not active_fm[i] and maxhp < v.cutoff then action = "+" end end if action == "+" then activated[#activated + 1] = fm_name elseif action == "-" then deactivated[#deactivated + 1] = fm_name end if action ~= nil then local opt = "force_more_message " .. action .. "= " .. msg crawl.setopt(opt) active_fm[i] = not active_fm[i] end end if #activated > 0 and notify_fm then mpr("Activating force_mores: " .. table.concat(activated, ", ")) end if #deactivated > 0 and notify_fm then mpr("Deactivating force_mores: " .. table.concat(deactivated, ", ")) end end local last_turn = nil function force_mores() if last_turn ~= you.turns() then update_force_mores() last_turn = you.turns() end end init_force_mores() ------------------------- ---- End force_mores ---- ------------------------- } runrest_ignore_message += blood rots? away runrest_ignore_message += Your icy armour runrest_ignore_message += Your skin is crawling a little less runrest_ignore_message += infusion is running out runrest_ignore_message += shroud begins to fray runrest_ignore_message += You feel.*sick as := ability_slot as ^= End Trans: h as ^= Evoke Invis: i as ^= Turn Visibl: j as ^= Evoke Fligh: l as ^= Fly: l as ^= Stop Flying: m as ^= Evoke Telep: t as ^= Spit: q as ^= Breath: q ss := spell_slot ss ^= Apportation: o ss ^= Blink: d ss ^= Lesser Beck: e ss ^= Portal Proj: J ss ^= Warp Weapon: W ss ^= Passage of: g ss ^= Phase Shift: p ss ^= Summon Fore: F ss ^= ontrolled B: C ss ^= Control Tel: k ss ^= Song of Sla: y ss ^= Missiles: f ss ^= Flight: l ss ^= Regeneratio: R ss ^= Shroud of G: h ss ^= Spectral We: W ss ^= Ozocubu: h ss ^= Haste: H ss ^= Ensorcelled: z ss ^= Confuse: x ss ^= Tukima's Da: t ss ^= Invisibilit: I ss ^= Enslavement: v ss ^= Dazzling Sp: q ss ^= Animate Ske: b ss ^= Sublimation: Z ss ^= Corpse Rot: r ss ^= Control Und: U ss ^= Dispel Unde: u ss ^= Animate Dea: E ss ^= Vampiric Dr: v ss ^= Sticks to S: s ss ^= Spider Form: O ss ^= Ice Form: I ss ^= Blade Hands: u ss ^= Statue Form: Y ss ^= Dragon Form: T ss ^= Stone Skin: s ss ^= Passwall: c ss ^= Lee's Rapid: l ss ^= Summon Butt: B ss ^= Aura of Abj: A ss ^= Summon Ligh: L ss ^= Conjure Fla: j ss ^= Mephitic Cl: m ss ^= Olgreb's To: t ss ^= Poisonous V: v ss ^= Cure Poison: w ss ^= Bolt: w ss ^= Fireball: e is := item_slot is ^= ring of protection from fire:f is ^= ring of protection from cold:c is ^= ring of protection from magic:m is ^= ring of poison resistance:o is ^= ring of teleport control:k is ^= ring of flight:l is ^= ring of see invisible:s is ^= ring of stealth:x is ^= ring of slaying:y is ^= ring of teleportation:t is ^= ring of invisibility:i is ^= amulet of resist mutation:j is ^= of resist corrosion:g is ^= amulet of regeneration:r is ^= blowgun:q is ^= throwing net:Z is ^= scroll of remove curse:N is ^= scroll of identify:R is ^= scroll of teleportation:T is ^= scroll of blinking:B is ^= scroll of magic map:M is ^= potion of curing:Q is ^= potion of haste:H is ^= wand of heal:h is ^= wand of acid:A is ^= wand of conf:C is ^= wand of digg:D is ^= wand of ensl:E is ^= wand of iceb:I is ^= wand of ligh:L is ^= wand of clou:O is ^= wand of para:P is ^= wand of scat:S is ^= wand of flam:V is ^= food:z is ^= box:U is ^= sack:W is ^= phial:X is ^= lamp:Y force_more_message += You have reached level force_more_message += You fall through a shaft force_more_message += You enter a teleport trap force_more_message += You are suddenly yanked force_more_message += interdimensional caravan force_more_message += distant snort force_more_message += Found a gateway leading out of the Abyss force_more_message += Found a gateway leading deeper into the Abyss force_more_message += Found .* abyssal rune of Zot force_more_message += Careful! force_more_message += You are starting to lose your buoyancy force_more_message += You miscast Flight force_more_message += filled with .* inner flame force_more_message += grabs you force_more_message += skill increases force_more_message += starts rolling force_more_message += looks more exp force_more_message += plume of calc force_more_message += vile air hits you force_more_message += engulfs you in water force_more_message += breathes miasma force_more_message += You feel your flesh start force_more_message += Found * staircase leading down force_more_message += You are engulfed in seething chaos force_more_message += You are slowing down force_more_message += You are confused force_more_message += fire storm spell force_more_message += Your guardian golem overheats force_more_message += offers itself force_more_message += volcano erupts force_more_message += Uskayaw prepares the audience for your solo force_more_message += Something reaches out for you force_more_message += You become entangled in the net force_more_message += Xom smiles on you force_more_message += wielding.* distortion.* comes? into view force_more_message += dream sheep.* comes? into view force_more_message += serpent.* comes? into view force_more_message += hydra.* comes? into view force_more_message += centaur.* comes? into view force_more_message += killer bee.* comes? into view force_more_message += 's ghost.* comes? into view force_more_message += demonologist.* comes? into view force_more_message += fiend.* comes? into view force_more_message += tzitzi.* comes? into view force_more_message += pandemonium lord.* comes? into view force_more_message += cacodemon.* comes? into view force_more_message += neqoxec.* comes? into view force_more_message += wretched star.* comes? into view force_more_message += shining eye.* comes? into view force_more_message += electric eel.* comes? into view force_more_message += hellion.* comes? into view force_more_message += tormentor.* comes? into view force_more_message += orb.* of fire.* comes? into view force_more_message += (?-i:[A-Z]).* comes? into view force_more_message += Found a gate leading to another region of Pandemonium force_more_message += You found a shaft runrest_stop_message += You found a shaft flash_screen_message += You are slowing down ### Portals force_more_message += ticking.*clock force_more_message += dying ticks force_more_message += distant snort force_more_message += coins.*counted force_more_message += tolling.*bell force_more_message += roar of battle force_more_message += creaking.*portcullis force_more_message += portcullis is probably force_more_message += wave of frost force_more_message += crackling.*melting force_more_message += hiss.*sand force_more_message += sound.*rushing water force_more_message += rusting.*drain force_more_message += drain falling apart force_more_message += heat about you force_more_message += falling.*rocks force_more_message += rumble.*avalanche of rocks force_more_message += crackle.*arcane power force_more_message += crackle.*magical portal force_more_message += distant wind force_more_message += whistling.*wind force_more_message += rapidly growing quiet ### Species, Job, God conditions : if you.race() == "Ghoul" then auto_eat_chunks = false auto_butcher = full : else auto_eat_chunks = true : end : if true and (you.race() == "Spriggan" or you.race() == "Vine Stalker" or you.race() == "Gnoll") then default_autopickup = false : else default_autopickup = true : end : if you.race() == "Ghoul" then chunks_autopickup = true : else chunks_autopickup = false : end #: if you.race() == "Ghoul" or you.race() == "Felid" or you.race() == "Troll" or you.race() == "Kobold" then easy_eat_chunks = true #: end : if you.race() == "Ghoul" or you.race() == "Mummy" then ae += scrolls? of torment : end : if you.race() == "Formicid" then ae += >wand of dig : end : if you.race() == "Tengu" or you.race() == "Merfolk" or you.race() == "Barachi" or you.race() == "Octopode" then ae += >potions? of flight : end : if you.race() == "Vampire" or you.race() == "Mummy" or you.race() == "Ghoul" or you.race() == "Demonspawn" then ae += >scrolls? of holy word : end : if you.god() == "Trog" then ae += >potions? of brilliance ae += >potions? of berserk : end : if you.god() == "Zin" then ae ^= potions? of ambro : end : if you.god() == "Cheibriados" or you.race() == "Barachi" then force_more_message += comes? into view : end : if you.god() == "Fedhas" then autoinscribe += fruit:!e : end : if false then ae += >potions? of brilliance ae += >book ae += >ring of int : end fsim_rounds = 100000