# 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
# Alternative vi bindings for Neo users.
# include = neo_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
# Recommended settings
sound_on = true
sound_pack += https://osp.nemelex.cards/build/latest.zip:["init.txt"]
one_SDL_sound_channel = false
sound_fade_time = 0.5
# OSP + BindTheEarth example settings
# sound_on = true
# CNC Open Sound Pack
# sound_pack += https://osp.nemelex.cards/build/latest.zip:["init.txt"]
# BindTheEarth Sound Pack
# sound_pack += https://sound-packs.nemelex.cards/Autofire/BindTheEarth/BindTheEarth.zip
# https://osp.nemelex.cards/build/latest.zip (SOUND PACK)
# CNC Open Sound Pack: https://l.abstr.net/cnc-osp
# Example1 (Default): sound_pack += https://osp.nemelex.cards/build/latest.zip3:["init.txt"]
# Example2 (Default + Xobeh): sound_pack += https://osp.nemelex.cards/build/latest.zip:["xobeh.txt", "init.txt"]
# Example2 (Default + Trog): sound_pack += https://osp.nemelex.cards/build/latest.zip:["trog.txt", "init.txt"]
# Example4 (Default + Zin): sound_pack += https://osp.nemelex.cards/build/latest.zip:["zin.txt", "init.txt"]
#EXTRA SOUND STUFF--------------------------------------
# https://sound-packs.nemelex.cards/crawler/2018-03-27/DCSS.22.zip (SOUND PACK)
# Crawler's Sound Pack
# Example1 (Default): sound_pack += https://sound-packs.nemelex.cards/crawler/2018-03-27/DCSS.22.zip:["사운드 적용하는법.txt"]
# Example2 (Default + Zin): sound_pack += https://sound-packs.nemelex.cards/crawler/2018-03-27/DCSS.22.zip
#
# https://sound-packs.nemelex.cards/Autofire/BindTheEarth/BindTheEarth.zip (SOUND PACK)
BindTheEarth Sound Pack: https://github.com/Autofire/BindTheEarth/tree/master
# Example: sound_pack += https://sound-packs.nemelex.cards/Autofire/BindTheEarth/BindTheEarth.zip
#---------------------------------
<
function ready()
char_dump()
load_message()
AnnounceDamage()
OpenSkills()
fmore_early_threats()
end
>
####################
# Opens skill menu #
####################
{
local need_skills_opened = true
function OpenSkills()
if you.turns() == 0 and need_skills_opened then
need_skills_opened = false
crawl.sendkeys("m")
end
end
}
## Warns before leaving upstairs from a Lab
## Note, need to macro > to ===safe_upstairs
## Or add the following:
## macros += M < ===safe_upstairs
{
function safe_upstairs()
if you.branch() == "Gauntlet" then
crawl.formatted_mpr("Really leave this Gauntlet?", "prompt")
local res = crawl.getch()
if string.lower(string.char(res)) == "y" then
crawl.sendkeys("<")
end
else
crawl.sendkeys("<")
end
end
}
{
----------------------------
---- Begin load_message ----
----------------------------
function control(c)
return string.char(string.byte(c) - string.byte('a') + 1)
end
-- See README.md for documentation.
message_color = "white"
-- 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 .. "" .. color .. ">")
end
end
function save_with_message()
if you.turns() == 0 then
crawl.sendkeys("S")
return
end
crawl.formatted_mpr("Save game and exit?", "prompt")
local res = crawl.getch()
if not (string.char(res) == "y" or string.char(res) == "Y") then
crawl.formatted_mpr("Okay, then.", "prompt")
return
end
crawl.formatted_mpr("Leave a message: ", "prompt")
local res = crawl.c_input_line()
c_persist.message = res
crawl.sendkeys(control("s"))
end
function load_message()
if c_persist.message and c_persist.message ~= "nil"
and c_persist.message ~= "" then
mpr("MESSAGE: " .. c_persist.message, message_color)
c_persist.message = nil
end
end
-----------------------------------
---- End leave message on save ----
-----------------------------------
}
{
-------------------------
---- Begin char_dump ----
-------------------------
local dump_count = you.turns()
local dump_period = 500
function char_dump()
if you.turns() >= dump_count then
dump_count = dump_count + dump_period
crawl.dump_char()
end
end
-----------------------
---- End char_dump ----
-----------------------
}
{
local fmet = true
function fmore_early_threats()
if you.xl() > 13 and fmet then
crawl.setopt("force_more_message -= centaur.* comes? into view")
crawl.setopt("force_more_message -= hydra.* comes? into view")
crawl.setopt("force_more_message -= killer bee.* comes? into view")
crawl.setopt("force_more_message -= electric eel.* comes? into view")
fmet = false
end
end
}
{
local cheiwalk = true
function toggle_cheiwalk()
if cheiwalk then
crawl.setopt("force_more_message -= comes? into view")
crawl.mpr("Cheiwalk mode is off.")
else
crawl.setopt("force_more_message += comes? into view")
crawl.mpr("Cheiwalk mode is on.")
end
cheiwalk = not cheiwalk
end
}
###############
# Damage Calc #
###############
{
local previous_hp = 0
local previous_mp = 0
local previous_form = ""
local was_berserk_last_turn = false
function AnnounceDamage()
local current_hp, max_hp = you.hp()
local current_mp, max_mp = you.mp()
--Things that increase hp/mp temporarily really mess with this
local current_form = you.transform()
local you_are_berserk = you.berserk()
local max_hp_increased = false
local max_hp_decreased = false
if (current_form ~= previous_form) then
if (previous_form:find("dragon") or
previous_form:find("statue") or
previous_form:find("tree") or
previous_form:find("ice")) then
max_hp_decreased = true
elseif (current_form:find("dragon") or
current_form:find("statue") or
current_form:find("tree") or
current_form:find("ice")) then
max_hp_increased = true
end
end
if (was_berserk_last_turn and not you_are_berserk) then
max_hp_decreased = true
elseif (you_are_berserk and not was_berserk_last_turn) then
max_hp_increased = true
end
--crawl.mpr(string.format("previous_form is: %s", previous_form))
--crawl.mpr(string.format("current_form is: %s", current_form))
--crawl.mpr(string.format("max_hp_increased is: %s", max_hp_increased and "True" or "False"))
--crawl.mpr(string.format("max_hp_decreased is: %s", max_hp_decreased and "True" or "False"))
--crawl.mpr(string:format("you_are_berserk is: %s", you_are_berserk and "True" or "False"))
--crawl.mpr(string:format("was_berserk_last_turn is: %s", was_berserk_last_turn and "True" or "False"))
--Skips message on initializing game
if previous_hp > 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
}
bindkey = [~] CMD_LUA_CONSOLE
show_more = False
###########
# prompts #
###########
flash_screen_message += You feel strangely unstable
flash_screen_message += Strange energies course through your body
more := force_more_message
# distortion
more += Space warps horribly around you
more += hits you.*distortion
more += Space bends around you\.
more += Your surroundings suddenly seem different.
more += Its appearance distorts for a moment.
# ghost moths/antimagic
more += watched by something
more += You feel your power leaking
# torment/holy wrath
more += You convulse
# dispel breath
more += dispelling energy hits you
# early unseen horrors
more += It hits you!
more += Something hits you
more += Something. *misses you.
# more += You have reached level
more += You fall through a shaft
more += Training target.*for.*reached!
more += You now have enough gold to buy
# abyss convenience prompts
more += Found an abyssal rune
more += Found a gateway leading out of the Abyss
more += Found a gateway leading deeper into the Abyss
# necromutation
more += Your transformation is almost over.
more += You feel yourself coming back to life
# summon greater demon
more += is no longer charmed
# Announcements of timed portal vaults:
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 += oppressive heat about you
more += crackle of arcane power
more += Found a gateway leading out of the Abyss
more += Found .* abyssal rune of Zot
more += You feel a terrible weight on your shoulders
more += .* resides here
# Interrupts
more += You don't.* that spell
more += You miscast (Controlled Blink|Blink|Death's|Borg|Necromutation)
more += You can't (read|drink|do) that
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
more += Something interferes with your magic
more += You enter a teleport trap
# Bad things
more += Your surroundings flicker
more += You cannot teleport right now
more += The writing blurs in front of your eyes
more += You fall through a shaft
more += A huge blade swings out and slices into you!
more += (blundered into a|invokes the power of) Zot
more += Ouch! That really hurt!
more += dispelling energy hits you
more += You convulse
more += You are (blasted|electrocuted)
more += You are.*confused
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 horribly around you
more += hits you.*distortion
more += Space bends around you\.
more += watched by something
more += A sentinel's mark forms upon you
more += Your limbs have turned to stone
more += You are slowing down
more += .*LOW HITPOINT WARNING.*
more += warns you.*of distortion
more += lethally poison
more += space bends around your
more += wielding.*of (distortion|chaos)
# Gods
more += you are ready to make a new sacrifice
more += mollified
more += wrath finds you
more += sends forces
more += sends monsters
more += Vehumet offers
# Hell effects
# Re-enabled
more += "You will not leave this place."
more += "Die, mortal!"
more += "We do not forgive those who trespass against us!"
more += "Trespassers are not welcome here!"
more += "You do not belong in this place!"
more += "Leave now, before it is too late!"
more += "We have you now!"
more += You smell brimstone.
more += Brimstone rains from above.
more += You feel lost and a long, long way from home...
more += You shiver with fear.
more += You feel a terrible foreboding...
more += Something frightening happens.
more += You sense an ancient evil watching you...
more += You suddenly feel all small and vulnerable.
more += You sense a hostile presence.
more += A gut-wrenching scream fills the air!
more += You hear words spoken in a strange and terrible language...
more += You hear diabolical laughter!
# Expiring effects
more += You feel yourself slow down
more += less insulated
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 += shroud falls apart
more += You start to feel a little slower
more += You flicker
more += You feel less protected from missiles
# Skill breakpoints
more += skill increases
# Others
# more += You have reached level
more += You have finished your manual of
more += Your scales start
more += You feel monstrous
more += zaps a wand
more += carrying a wand
more += is unaffected
more += Jiyva alters your body
# Any uniques and any pan lords - doesn't seem to work
more += (?-i:[A-Z]).* comes? into view
more += Agnes.*comes? into view.
more += Aizul.*comes? into view.
more += Antaeus.*comes? into view.
more += Arachne.*comes? into view.
more += Asmodeus.*comes? into view.
more += Asterion.*comes? into view.
more += Azrael.*comes? into view.
more += Blork the orc.*comes? into view.
more += Boris.*comes? into view.
more += Cerebov.*comes? into view.
more += Crazy Yiuf.*comes? into view.
more += Dispater.*comes? into view.
more += Dissolution.*comes? into view.
more += Donald.*comes? into view.
more += Dowan.*comes? into view.
more += Duvessa.*comes? into view.
more += Edmund.*comes? into view.
more += Enchantress.*comes? into view.
more += Ereshkigal.*comes? into view.
more += Erica.*comes? into view.
more += Erolcha.*comes? into view.
more += Eustachio.*comes? into view.
more += Fannar.*comes? into view.
more += Frances.*comes? into view.
more += Francis.*comes? into view.
more += Frederick.*comes? into view.
more += Gastronok.*comes? into view.
more += Geryon.*comes? into view.
more += Gloorx Vloq.*comes? into view.
more += Grinder.*comes? into view.
more += Grum.*comes? into view.
more += Harold.*comes? into view.
more += Ignacio.*comes? into view.
more += Ijyb.*comes? into view.
more += Ilsuiw.*comes? into view.
more += Jorgrun.*comes? into view.
more += Jory.*comes? into view.
more += Jessica.*comes? into view.
more += Joseph.*comes? into view.
more += Josephine.*comes? into view.
more += Jozef.*comes? into view.
more += Khufu.*comes? into view.
more += Kirke.*comes? into view.
more += Lamia.*comes? into view.
more += Lom Lobon.*comes? into view.
more += Louise.*comes? into view.
more += Mara.*comes? into view.
more += Margery.*comes? into view.
more += Maud.*comes? into view.
more += Maurice.*comes? into view.
more += Menkaure.*comes? into view.
more += Mennas.*comes? into view.
more += Mnoleg.*comes? into view.
more += Murray.*comes? into view.
more += Natasha.*comes? into view.
more += Nergalle.*comes? into view.
more += Nessos.*comes? into view.
more += Nikola.*comes? into view.
more += Norris.*comes? into view.
more += Pikel.*comes? into view.
more += Polyphemus.*comes? into view.
more += Prince Ribbit.*comes? into view.
more += Psyche.*comes? into view.
more += Purgy.*comes? into view.
more += Robin.*comes? into view.
more += Roxanne.*comes? into view.
more += Rupert.*comes? into view.
more += Saint Roka.*comes? into view.
more += Sigmund.*comes? into view.
more += Snorg.*comes? into view.
more += Sojobo.*comes? into view.
more += Sonja.*comes? into view.
more += Terence.*comes? into view.
more += The Lernaean hydra.*comes? into view.
more += The royal jelly.*comes? into view.
more += The Serpent of Hell.*comes? into view.
more += Tiamat.*comes? into view.
more += Urug.*comes? into view.
more += Vashnia.*comes? into view.
more += Wiglaf.*comes? into view.
more += Xtahua.*comes? into view.
more += 27-headed.*comes? into view.
more += .*player ghost.* comes? into view
more += .*Ancient Lich.*comes? into view.
more += .*Orbs? of Fire.*comes? into view.
more += .*Fiend.*comes? into view.
more += .*Hellion.*comes? into view.
more += .*Tormentor.*comes? into view.
more += .*Hell Sentinel.*comes? into view.
more += .*Executioner.*comes? into view.
more += .*Neqoxec.*comes? into view.
more += .*Cacodemon.*comes? into view.
more += .*Shining Eye.*comes? into view.
more += .*Greater Mummy.*comes? into view.
more += .*Mummy Priest.*comes? into view.
more += .*Curse Toe.*comes? into view.
more += .*Curse Skull.*comes? into view.
more += .*('s|s') ghost.*comes? into view.
more += .*shrike.*comes? into view.
more += .*wretched star.*comes? into view
more += .*lurking horror.*comes? into view
more += .*Juggernaut.*comes? into view.
more += .*Iron Giant.*comes? into view.
more += .*Tzitzimimeh.*comes? into view.
more += .*Tzitzimitl.*comes? into view.
# Paralysis enemies
more += .*Floating Eye.*comes? into view.
more += .*Lich.*comes? into view.
more += .*Ogre Mage.*comes? into view.
more += .*a Wizard.*comes? into view.
more += .*orc sorcerer.*comes? into view.
more += .*sphinx.*comes? into view.
more += .*Great orb of eyes.*comes? into view.
more += .*Vampire knight.*comes? into view.
# Other dangerous enemies
more += minotaur.*into view
more += *guardian serpent.*comes? into view.
more += .*vault sentinel.*comes? into view.
more += .*vault warden.*comes? into view.
more += .*ironbrand convoker.*comes? into view.
# Dancing weapon
more += Your.*falls from the air.
# Xom is scary
: if you.god() == "Xom" then
more += god:
: end
-----------------------------------------------------------------------------------
-- Armour/Weapon autopickup by rwbarton, enhanced by HDA with fixes from Bloaxor --
-----------------------------------------------------------------------------------
{
add_autopickup_func(function(it, name)
if name:find("throwing net") then return true end
local class = it.class(true)
local armour_slots = {cloak="Cloak", helmet="Helmet", gloves="Gloves", boots="Boots", body="Armour", shield="Shield"}
if (class == "armour") then
if it.is_useless then return false end
sub_type = it.subtype()
equipped_item = items.equipped_at(armour_slots[sub_type])
if (sub_type == "cloak") or (sub_type == "helmet") or (sub_type == "gloves") or (sub_type == "boots") then
if not equipped_item then
return true
else
return it.artefact or it.branded or it.ego
end
end
if (sub_type == "shield") then
if equipped_item then
return it.artefact or it.branded or it.ego
end
end
end
end)
}
game_scale = 2
force_more_message += channel is weakening
force_more_message += running out
force_more_message += Space warps
### BORROWED ###
# gammafunk (modified)
# Any uniques and any pan lords
force_more_message += (?-i:[A-Z]).* comes? into view
# Dangerous monsters we force_more when first seen.
# Things with ranged (or extremely fast), irresistable effects.
more += ((glass|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)|merfolk (avatar|siren)).*into view
more += (guardian serpent|draconian shifter|convoker|death cob).*into view
# Paralysis/Petrify/Banish
more += (ogre mage|great orb of eyes|sphinx).*into view
more += (vampire knight|basilisk|deep elf (sorcerer|demonologist)).*into view
# Torment/flay or hellfire
more += (flayed ghost|royal mummy|mummy priest|fiend|tzitzimitl).*into view
more += (tormentor|curse toe|curse skull|hell sentinel|hellion).*into view
more += (deep elf (sorcerer|high priest)|draconian scorcher).*into view
# Things that can hit for over 90+ damage in a turn that is either ranged or
# very fast.
more += ((deep elf|draconian) annihilator|tengu reaver).*into view
# == Reddit force_mores ==
# https://www.reddit.com/r/dcss/comments/6brrs8/formatting_force_more_message_option/dhpu179/
# PORTALS
force_more_message += Found a frozen archway
force_more_message += Found a gateway leading out of the Abyss
force_more_message += gateway.*Abyss
force_more_message += rune
force_more_message += Found a labyrinth entrance
force_more_message += Found a staircase to the Ecumenical Temple
force_more_message += The mighty Pandemonium lord.*resides here
force_more_message += distant snort
force_more_message += interdimensional caravan
force_more_message += invites you to visit
force_more_message += oppressive heat
force_more_message += roar of battle
force_more_message += sound of rushing water
force_more_message += The drain falls to bits
force_more_message += There is an entrance to a bailey on this level
force_more_message += tolling of a bell
force_more_message += wave of frost
# GODBITS
force_more_message += you are ready to make a new sacrifice
force_more_message += grants you a gift
force_more_message += mollified
force_more_message += wrath finds you
force_more_message += sends forces
force_more_message += sends monsters
force_more_message += Vehumet offers
# TIDBITS
force_more_message += You fall through a shaft
force_more_message += Your transformation is almost over
force_more_message += You are starting to lose your buoyancy
force_more_message += The blast of calcifying dust hits you
force_more_message += evaporates and reforms
force_more_message += sentinel's mark
force_more_message += Your lamp of fire has recharged.
force_more_message += You have got your breath back.
# ' end quote for lua syntax highlighting
# Bad things happening to you
more := force_more_message
more += corrodes your equipment
more += Your corrosive artefact corrodes you
more += are blown away by the wind
more += dispelling energy hits you
more += infuriates you
more += lose consciousness
more += mark forms upon you
more += MASSIVE DAMAGE
more += Ouch! That really hurt!
more += silver sears you
more += Space bends around you
more += Space warps horribly around you
more += surroundings become eerily quiet
more += Terrible wounds (open|spread) all over you
more += The acid corrodes your
more += The air around.*erupts in flames
more += The air twists around and violently strikes you in flight
more += You shudder from the earth-shattering force
more += The arrow of dispersal hits you[^r]
more += The barbed spikes become lodged in your body
more += The barbed spikes dig painfully into your body as you move
more += The blast of calcifying dust hits you[^r]
more += The poison in your body grows stronger
more += The pull of.*song draws you forwards
more += The.*engulfs you in water
more += You (are|feel) drained
more += You are (blasted|electrocuted)
more += You are blown backwards
more += You are burned terribly
more += You are encased in ice
more += You are engulfed in calcifying dust
more += You are engulfed in dark miasma
more += You are engulfed in mutagenic fog
more += You are knocked back
more += You are mesmerised
more += You are slowing down
more += You are trampled
more += You convulse
more += You feel a (horrible|terrible) chill
more += You feel haunted
more += You feel less vulnerable to poison
more += You feel your attacks grow feeble
more += You feel your flesh.*rot
more += You feel your power drain away
more += You feel your power leaking away
more += You feel yourself grow more vulnerable to poison
more += You stumble backwards
more += You.*re (confused|more confused|too confused)
more += You.*re (more poisoned|lethally poisoned)
more += Your body is wracked with pain
more += Your damage is reflected back at you
more += Your limbs are stiffening
more += Your magical defenses are stripped away
more += Your?.*suddenly stops? moving
# Abyssal Rune
more += Found .* abyssal rune of Zot
# Entrances, Exits, and Arrivals
more += Found a frozen archway
more += Found a gateway leading out of the Abyss
more += Found a labyrinth entrance
more += Found a staircase to the Ecumenical Temple
more += The mighty Pandemonium lord.*resides here
# Portal Timers
more += distant snort
more += interdimensional caravan
more += invites you to visit
more += oppressive heat
more += roar of battle
more += sound of rushing water
more += The drain falls to bits
more += There is an entrance to a bailey on this level
more += tolling of a bell
more += wave of frost
more += You hear the drain falling apart
more += You hear.*crackle.*magical portal
more += You hear.*crackling.*archway
more += You hear.*creaking.*(oriflamme|portcullis)
more += You hear.*hiss.*sand
more += You hear.*rumble.*avalanche
more += You hear.*rusting.*drain
more += You hear.*ticking.*clock
# https://crawl.xtahua.com/crawl/rcfiles/crawl-0.19/quik.rc
force_more_message += Deactivating autopickup
force_more_message += You now have enough gold to buy
force_more_message += hits you.*distortion
# Gained mutation
force_more_message += Gained mutation
# A mob wielding a weapon of distortion shows up
force_more_message += is wielding a .* of distortion
# And flashes the screen
flash_screen_message += distortion