stop := runrest_stop_message ignore := runrest_ignore_message #explore_auto_rest = false #stop += of experience #stop += of aquirement unusual_monster_items = show_more = false # always_show_zot = true #explore_stop += greedy_items explore_stop = runes easy_confirm = all ################## ### Autopickup ### ################## # Add staves, misc; note you can't use += with this option. #autopickup = $?!:"/}| autopickup = $?!:/} ae := autopickup_exceptions #ae += scrolls? of silence ae += 0 then local hp_difference = previous_hp - current_hp local mp_difference = previous_mp - current_mp if max_hp_increased or max_hp_decreased then if max_hp_increased then crawl.mpr("You now have " .. current_hp .. "/" .. max_hp .. " hp.") else crawl.mpr("You now have " .. current_hp .. "/" .. max_hp .. " hp.") end else --On losing health if (current_hp < previous_hp) then if current_hp <= (max_hp * 0.30) then crawl.mpr("You take " .. hp_difference .. " damage, and have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.50) then crawl.mpr("You take " .. hp_difference .. " damage, and have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.70) then crawl.mpr("You take " .. hp_difference .. " damage, and have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.90) then crawl.mpr("You take " .. hp_difference .. " damage, and have " .. current_hp .. "/" .. max_hp .. " hp.") else crawl.mpr("You take " .. hp_difference .. " damage, and have " .. current_hp .. "/" .. max_hp .. " hp.") end if hp_difference > (max_hp * 0.20) then crawl.mpr("MASSIVE DAMAGE!!") end end --On gaining more than 1 health if (current_hp > previous_hp) then --Removes the negative sign local health_inturn = (0 - hp_difference) if (health_inturn > 1) and not (current_hp == max_hp) then if current_hp <= (max_hp * 0.30) then crawl.mpr("You regained " .. health_inturn .. " hp, and now have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.50) then crawl.mpr("You regained " .. health_inturn .. " hp, and now have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.70) then crawl.mpr("You regained " .. health_inturn .. " hp, and now have " .. current_hp .. "/" .. max_hp .. " hp.") elseif current_hp <= (max_hp * 0.90) then crawl.mpr("You regained " .. health_inturn .. " hp, and now have " .. current_hp .. "/" .. max_hp .. " hp.") else crawl.mpr("You regained " .. health_inturn .. " hp, and now have " .. current_hp .. "/" .. max_hp .. " hp.") end end if (current_hp == max_hp) then crawl.mpr("Health restored: " .. current_hp .. "") end end --On gaining more than 1 magic if (current_mp > previous_mp) then --Removes the negative sign local mp_inturn = (0 - mp_difference) if (mp_inturn > 1) and not (current_mp == max_mp) then if current_mp < (max_mp * 0.25) then crawl.mpr("You regained " .. mp_inturn .. " mp, and now have " .. current_mp .. "/" .. max_mp .. " mp.") elseif current_mp < (max_mp * 0.50) then crawl.mpr("You regained " .. mp_inturn .. " mp, and now have " .. current_mp .. "/" .. max_mp .. " mp.") else crawl.mpr("You regained " .. mp_inturn .. " mp, and now have " .. current_mp .. "/" .. max_mp .. " mp.") end end if (current_mp == max_mp) then crawl.mpr("MP restored: " .. current_mp .. "") end end --On losing magic if current_mp < previous_mp then if current_mp <= (max_mp / 5) then crawl.mpr("You now have " .. current_mp .. "/" ..max_mp .." mp.") elseif current_mp <= (max_mp / 2) then crawl.mpr("You now have " .. current_mp .. "/" ..max_mp .." mp.") else crawl.mpr("You now have " .. current_mp .. "/" ..max_mp .." mp.") end end end end --Set previous hp/mp and form at end of turn previous_hp = current_hp previous_mp = current_mp previous_form = current_form was_berserk_last_turn = you_are_berserk end > # Crawl Init file # See the README for further details: # https://github.com/gammafunk/dcss-rc/blob/master/README.md # NOTE: This RC has things enabled only for my username. If you're just # including this RC file in your own with # # include = gammafunk.rc # # then you don't have to worry about these. However if you're copy all or parts # of gammafunk.rc directly into your own RC file, look for any sections # conditioned on my username and follow notes in the comments for removing or # modifying them. ################ ### RC files ### ################ # Only load RandomTiles.rc under my username. If copying this part of my RC # directly into your own, remove this section including the beginning and # ending lines with '{' and '}'. If you don't want RandomTiles, you don't need # to replace it with anything. If you do want RandomTiles, replace this section # with the line: # # include = RandomTiles.rc # # and see the comments in the ready() function section as well. { if you.name() == "gammafunk" then -- Prevent gammaspeed.rc from trying to load this file twice. gammafunk_rc_loaded = true crawl.read_options("RandomTiles.rc") end } ############### ### 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,good_neutral:brown monster_list_colour += trivial:darkgrey,easy:lightgrey,tough:yellow monster_list_colour += nasty:lightred ############### ### Console ### ############### 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 item += potions? of.*heal wounds:white item += potions? of.*berserk:brown item += potions? of.*might:yellow item += potions? of.*brilliance:cyan item += potions? of.*magic:lightcyan item += potions? of.*(lignification|ambrosia|attraction):blue item += potions? of.*experience:lightred item += potions? of.*resistance:green item += potions? of.*(haste|invisibility):lightgreen item += potions? of.*cancellation:magenta item += potions? of.*mutation: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.*summoning:yellow item += scroll.*acquirement:white item += scroll.*identify:cyan item += scroll.*magic mapping:lightcyan item += scroll.*(silence|vulnerability|immolation):blue item += scroll.*(fog|teleport):green item += scroll.*(fear|blink):lightgreen item += scroll.*enchant:magenta item += scroll.*brand weapon:lightmagenta ### Wands ### item += wand of.*random effects:blue # Single target damage. item += wand of.*flame:brown item += wand of.*mindburst:yellow # "Transmutations" item += wand of.*polymorph:green item += wand of.*digging:lightgreen item += wand of.*acid:cyan item += wand of.*iceblast:lightcyan # Hexes item += wand of.*paralysis:magenta item += wand of.*charming:lightmagenta ### General Identification ### item += (identified|known).*(jewellery|magical staff):brown item += unidentified.*(potion|scroll|jewellery|wand|magical staff).*:lightblue item += manual:lightcyan ### Jewellery ### item += identified.*artefact.*(jewellery):white item += unidentified.*artefact.*(jewellery).*:lightmagenta item += (a )?stones?$:lightgray # 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):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_full_screen = false tile_map_pixels = 3 ################### ### 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 += 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 ### Potions ### menu += lightgrey:potions? of.*(curing|flight) menu += white:potions? of.*heal wounds menu += brown:potions? of.*berserk menu += yellow:potions? of.*might menu += cyan:potions? of.*cancellation menu += lightcyan:potions? of.*mutation menu += blue:potions? of.*(lignification|ambrosia|attraction) menu += lightred:potions? of.*experience menu += green:potions? of.*resistance menu += lightgreen:potions? of.*(haste|invisibility) 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 += yellow:scroll.*(summoning) menu += white:scroll.*acquirement menu += cyan:scroll.*identify menu += lightcyan:scroll.*magic mapping menu += blue:scroll.*(noise|silence|vulnerability|immolation) menu += green:scroll.*(fog|teleport) menu += lightgreen:scroll.*(fear|blink) menu += magenta:scroll.*enchant menu += lightmagenta:scroll.*brand weapon ### Wands ### menu += blue:wand of.*random effects # Single target damage. menu += brown:wand of.*flame menu += yellow:wand of.*mindburst # "Transmutations" menu += green:wand of.*polymorph menu += lightgreen:wand of.*digging # AOE damage. menu += cyan:wand of.*acid menu += lightcyan:wand of.*iceblast # Hexes menu += magenta:wand of.*paralysis menu += lightmagenta:wand of.*charming ### General identification ### menu += lightcyan:manual menu += lightmagenta:unidentified.*artefact.* menu += white:.*artefact.* menu += lightblue:unidentified .*(potion|scroll|wand|jewellery|spellbook|rod|magical staff) menu += inventory:lightgray:.*(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 equip_unequip = true sort_menus = true:equipped,identified,basename,art,ego,glowing,qualname,charged,slot ability_menu = false autofight_stop = 67 autofight_caught = true autofight_wait = false #bindkey = [~] CMD_LUA_CONSOLE 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 = [5] CMD_NO_CMD_DEFAULT bindkey = [b] CMD_NO_CMD_DEFAULT bindkey = [h] CMD_NO_CMD_DEFAULT bindkey = [j] CMD_NO_CMD_DEFAULT bindkey = [k] CMD_NO_CMD_DEFAULT bindkey = [l] CMD_NO_CMD_DEFAULT bindkey = [n] CMD_NO_CMD_DEFAULT bindkey = [u] CMD_NO_CMD_DEFAULT bindkey = [y] CMD_NO_CMD_DEFAULT bindkey = [B] CMD_NO_CMD_DEFAULT bindkey = [H] CMD_NO_CMD_DEFAULT bindkey = [J] CMD_NO_CMD_DEFAULT bindkey = [K] CMD_NO_CMD_DEFAULT bindkey = [L] CMD_NO_CMD_DEFAULT bindkey = [N] CMD_NO_CMD_DEFAULT bindkey = [U] CMD_NO_CMD_DEFAULT bindkey = [Y] CMD_NO_CMD_DEFAULT bindkey = [Del] CMD_NO_CMD_DEFAULT bindkey = [Ins] CMD_NO_CMD_DEFAULT bindkey = [End] CMD_NO_CMD_DEFAULT bindkey = [Home] CMD_NO_CMD_DEFAULT bindkey = [PgUp] CMD_NO_CMD_DEFAULT bindkey = [PgDn] CMD_NO_CMD_DEFAULT ############################ ### Travel & Exploration ### ############################ rest_wait_both = true travel_delay = -1 explore_delay = -1 rest_delay = -1 show_travel_trail = true ################ ### Messages ### ################ channel.multiturn = mute msc := message_colour 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|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) force_more_message = gfhdfh 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|Maxwell) 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 += 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 += You are blasted by holy energy! more += You are (blasted|electrocuted)! more += You are confused 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 you but more += watched by something more += doesn't seem very happy more += is no longer charmed #zigstuff more += rusting more += flickers and vanishes! more += enough gold #more += dispelling energy hits you #more += You are poisoned #more += Space warps.*around you #more += Space bends around you # 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 += 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 :if you.god() == "Xom" then stop += god: :else ignore += god: :end # Bad things stop += A huge blade swings out and slices into you stop += starving stop += wrath finds you stop += lose consciousness stop += hell_effect: # 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 # Annoyances ignore += contamination has completely ignore += your breath back ignore += You are no longer poisoned. ignore += talk: ignore += talk_visual: ignore += friend_spell: ignore += friend_enchant: ignore += friend_action: ignore += sound: ########################### ### Spell/Ability slots ### ########################### ability_slot += Fly|flight:lF ability_slot += Stop Flying:L ability_slot += Breathe:t ability_slot += Invisibility:iv # Abilities prone to miskeys. ability_slot += Blink:IB ability_slot += Berserk:k ability_slot += Corrupt:C ability_slot += Enter the Abyss:E # 4 letters from words of the spell name at (1) beginning, (2) end, # of words in the spell, (3) anywhere from the spell name, or (4) from the # names of the spell schools, in order of preference. spell_slot += Alistair's intoxication:aisn spell_slot += Apportation:anpt spell_slot += Airstrike:ae spell_slot += Agony:aygn spell_slot += Animate dead:adet spell_slot += Animate skeleton:asen spell_slot += Beastly appendage:baye spell_slot += Blade hands:bhes spell_slot += Blink:BKLN spell_slot += Bolt of magma:bmta spell_slot += Borgnjor's revivification:BRSN spell_slot += Borgnjor's vile clutch:bvch spell_slot += Call canine familiar:cflr spell_slot += Call imp:cilp spell_slot += Cause fear:cfer spell_slot += Controlled blink:cbdk spell_slot += Corona:carn spell_slot += Chain lightning:clng spell_slot += Confusing touch:ctgh spell_slot += Conjure flame:cfej spell_slot += Corpse rot:cret spell_slot += Dazzling Flash:dfgh spell_slot += Darkness:aed spell_slot += Death channel:dtcl # Upper-case to prevent miskeys. spell_slot += Death's door:DROT spell_slot += Discord:DCSR spell_slot += Disjunction:iuoe spell_slot += Dispel undead:ndp spell_slot += Dispersal:iea spell_slot += Dragon form:dgrf spell_slot += Dragon's call:dcl spell_slot += Ensorcelled hibernation:ehnd spell_slot += Eringya's Toxic Bog:bteg spell_slot += Excruciating wounds:ewgx spell_slot += Fire storm:fsmt spell_slot += Fireball:flbr spell_slot += Foxfire:fxro spell_slot += Freezing cloud:fcgd spell_slot += Freeze:fezr spell_slot += Frozen Ramparts:frnt spell_slot += Fulminant prism:fpmt spell_slot += Gell's Gravitas:glvt spell_slot += Haunt:htna spell_slot += Ice form:crmf spell_slot += Ignition:ntg spell_slot += Iron shot:stnr spell_slot += Inner flame:frn spell_slot += Invisibility:iyvb spell_slot += Irradiate:ierd spell_slot += Iskenderun's battlesphere:ibne spell_slot += Leda's Liquefaction:lanq spell_slot += Lee's rapid deconstruction:ldr spell_slot += Lesser Beckoning:lbg spell_slot += Lehudib's crystal spear:lcsb spell_slot += Lightning bolt:lbgt spell_slot += Magic dart:mdtc spell_slot += Malign gateway:mgy spell_slot += Manifold Assault:madt spell_slot += Maxwell's Capacitive Coupling:mclp spell_slot += Mephitic cloud:mcdp spell_slot += Metabolic englaciation:mcn spell_slot += Monstrous menagerie:mst spell_slot += Necromutation:eou spell_slot += Olgreb's toxic radiance:oia spell_slot += Orb of destruction:dbn spell_slot += Ozocubu's armour:oau spell_slot += Ozocubu's refrigeration:cbz spell_slot += Pain:pnai spell_slot += Passage of golubria:uoi spell_slot += Passwall:aeu spell_slot += Petrify:pyt spell_slot += Poisonous vapours:pvs spell_slot += Portal projectile:oei spell_slot += Sandblast:zst spell_slot += Searing ray:sry spell_slot += Shadow creatures:scw # Upper-case to prevent miskeys. spell_slot += Shatter:STH spell_slot += Shock:zok spell_slot += Simulacrum:scm spell_slot += Silence:SLC spell_slot += Slow:swlh spell_slot += Spellforged servitor:spvt spell_slot += Spider form:sprf spell_slot += Static discharge:tdc spell_slot += Statue form:stmf spell_slot += Sticky flame:yfk spell_slot += Sting:zptg spell_slot += Stone arrow:wtn spell_slot += Storm form:somf spell_slot += Summon forest:ftms spell_slot += Summon guardian golem:gds spell_slot += Summon horrible things:hts spell_slot += Summon hydra:hsy spell_slot += Summon ice beast:bct spell_slot += Summon lightning spire:lst spell_slot += Summon mana viper:vms spell_slot += Summon small mammal:zsm spell_slot += Swiftness:ieao spell_slot += Teleport other:tprh spell_slot += Tornado:TDN spell_slot += Tukima's Dance:dkc spell_slot += Vampiric draining:vnd spell_slot += Wereblood:wbld spell_slot += Yara's violent unraveling:yvgl # Default letters spell_slot += .*:XYZ ################## ### Item slots ### ################## ## Rings, in order of letter used. item_slot += ring of dexterity : Dd item_slot += ring of evasion : Ee item_slot += ring of .*fire : Ff item_slot += ring of (ice|protection from cold) : Cc item_slot += ring of intelligence : Ii item_slot += ring of flight : L item_slot += ring of magical power : Mm item_slot += ring of positive energy : Nn item_slot += ring of poison resistance : P item_slot += ring of resist corrosion : R item_slot += ring of strength : Ss item_slot += ring of see invisible : v item_slot += ring of willpower: Ww # Need numeric match to not trigger for rF/rC rings item_slot += \+[0-9]+ ring of protection : Tt item_slot += ring of slaying : Yy item_slot += ring of wizardry : Zz ######################## ### Autoinscriptions ### ######################## show_god_gift = unident ai := autoinscribe ai += potions? of berserk rage:!q ai += scrolls? of silence:!r ai += of faith:!P ai += manual of:!d # Prevent melee with all staves; if we want to melee with one, it's safe to # require removing the annotation. #ai += magical staff:!a ai += (large rock|throwing net|of dispersal):=f # Convenient shortcuts ai += curing:@q1 ai += potions? of heal wounds:@q2 ai += potions? of haste:@q3 ai += scrolls? of teleportation:@r2 ai += identify:@r1 ai += curare:@f1 =f ai += poisoned:@f2 ############## ### Morgue ### ############## note_hp_percent = 10 note_all_skill_levels = true note_chat_messages = false user_note_prefix = >> 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,royal 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