##### Crawl Init file ###############################################
# For descriptions of all options, as well as some more in-depth information
# on setting them, consult the file
# options_guide.txt
# in your /docs directory. If you can't find it, the file is also available
# online at:
# https://github.com/crawl/crawl/blob/master/crawl-ref/docs/options_guide.txt
#
# Crawl uses the first file of the following list as its option file:
# * init.txt in the -rcdir directory (if specified)
# * .crawlrc in the -rcdir directory (if specified)
# * init.txt (in the Crawl directory)
# * ~/.crawl/init.txt (Unix only)
# * ~/.crawlrc (Unix only)
# * ~/init.txt (Unix only)
# * settings/init.txt (in the Crawl directory)
##### Some basic explanation of option syntax #######################
# Lines beginning with '#' are comments. The basic syntax is:
#
# field = value or field.subfield = value
#
# Only one specification is allowed per line.
#
# The terms are typically case-insensitive except in the fairly obvious
# cases (the character's name and specifying files or directories when
# on a system that has case-sensitive filenames).
#
# White space is stripped from the beginning and end of the line, as
# well as immediately before and after the '='. If the option allows
# multiple comma/semicolon-separated terms (such as
# autopickup_exceptions), all whitespace around the separator is also
# trimmed. All other whitespace is left intact.
#
# There are three broad types of Crawl options: true/false values (booleans),
# arbitrary values, and lists of values. The first two types use only the
# simple =, with later options - which includes your options that are different
# from the defaults - overriding earlier ones. List options allow using +=, ^=,
# -=, and = to append, prepend, remove, and reset, respectively. Usually you will
# want to use += to add to a list option. Lastly, there is := which you can use
# to create an alias, like so:
# ae := autopickup_exceptions
# From there on, 'ae' will be treated as if it you typed autopickup_exceptions,
# so you can save time typing it.
#
##### Other files ###################################################
# You can include other files from your options file using the 'include'
# option. Crawl will treat it as if you copied the whole text of that file
# into your options file in that spot. You can uncomment some of the following
# lines by removing the beginning '#' to include some of the other files in
# this folder.
# Some useful, more advanced options, implemented in LUA.
# include = advanced_optioneering.txt
# Alternative vi bindings for Dvorak users.
# include = dvorak_command_keys.txt
# Alternative vi bindings for Colemak users.
# include = colemak_command_keys.txt
# 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
game_scale = 2
tile_viewport_scale = 1.5
macros += M q y
macros += M U q
macros += M w k
macros += M k w
macros += M e u
macros += M u e
macros += M a h
macros += M h a
macros += M d l
macros += M l d
macros += M y b
macros += M b y
macros += M s j
macros += M j s
macros += M x n
macros += M n x
macros += M r z*
macros += M R Z*
macros += M z r
bindkey = [tab] CMD_AUTOFIGHT_NOMOVE
autofight_nomove_fires = false
view_delay = 125
###############
# 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
}
show_more = false
force_more_message += malevolent force
force_more_message += into view
-- Mutators
force_more_message += .*Cacodemon.* come
force_more_message += .*Neqoxec.* come
force_more_message += .*Orb of fire.* come
force_more_message += .*Shining eye.* come
-- Tormentors
force_more_message += .*Brimstone Fiend.* come
force_more_message += .*Curse skull.* come
force_more_message += .*Curse toe.* come
force_more_message += .*Death knight.* come
force_more_message += .*Fenstrider witch.* come
force_more_message += .*Ice Fiend.* come
force_more_message += .*Imperial myrmidon.* come
force_more_message += .*Mummy priest.* come
force_more_message += .*Necromancer.* come
force_more_message += .*Tormentor.* come
force_more_message += .*Tzitzimitl.* come
-- Other bad stuff
force_more_message += .*Floating eye.* come
force_more_message += .*Guardian serpent.* come
force_more_message += .*Golden eye.* come
force_more_message += .*Ghost moth.* come
-- Unique Monsters
force_more_message += .*Agnes.* come
force_more_message += .*Aizul.* come
force_more_message += .*Amaemon.* come
force_more_message += .*Antaeus.* come
force_more_message += .*Arachne.* come
force_more_message += .*Asmodeus.* come
force_more_message += .*Asterion.* come
force_more_message += .*Azrael.* come
force_more_message += .*Bai Suzhen.* come
force_more_message += .*Blork.* come
force_more_message += .*Boris.* come
force_more_message += .*Cerebov.* come
force_more_message += .*Crazy Yiuf.* come
force_more_message += .*Dispater.* come
force_more_message += .*Dissolution.* come
force_more_message += .*Donald.* come
force_more_message += .*Dowan.* come
force_more_message += .*Duvessa.* come
force_more_message += .*Edmund.* come
force_more_message += .*Enchantress.* come
force_more_message += .*Erica.* come
force_more_message += .*Ereshkigal.* come
force_more_message += .*Erolcha.* come
force_more_message += .*Eustachio.* come
force_more_message += .*Fannar.* come
force_more_message += .*Frances.* come
force_more_message += .*Frederick.* come
force_more_message += .*Gastronok.* come
force_more_message += .*Geryon.* come
force_more_message += .*Gloorx Vloq.* come
force_more_message += .*Grinder.* come
force_more_message += .*Grum.* come
force_more_message += .*Grunn.* come
force_more_message += .*Harold.* come
force_more_message += .*Ignacio.* come
force_more_message += .*Ijyb.* come
force_more_message += .*Ilsuiw.* come
force_more_message += .*Jessica.* come
force_more_message += .*Jorgrun.* come
force_more_message += .*Jory.* come
force_more_message += .*Joseph.* come
force_more_message += .*Josephine.* come
force_more_message += .*Josephina.* come
force_more_message += .*Khufu.* come
force_more_message += .*Kirke.* come
force_more_message += .*Lernaean.* come
force_more_message += .*Lodul.* come
force_more_message += .*Lom Lobon.* come
force_more_message += .*Louise.* come
force_more_message += .*Mara.* come
force_more_message += .*Maggie.* come
force_more_message += .*Margery.* come
force_more_message += .*Maurice.* come
force_more_message += .*Menkaure.* come
force_more_message += .*Mennas.* come
force_more_message += .*Mlioglotl.* come
force_more_message += .*Mnoleg.* come
force_more_message += .*Murray.* come
force_more_message += .*Natasha.* come
force_more_message += .*Nergalle.* come
force_more_message += .*Nessos.* come
force_more_message += .*Nikola.* come
force_more_message += .*Pargi.* come
force_more_message += .*Parghit.* come
force_more_message += .*Pikel.* come
force_more_message += .*Polyphemus.* come
force_more_message += .*Prince Ribbit.* come
force_more_message += .*Psyche.* come
force_more_message += .*Robin.* come
force_more_message += .*Roxanne.* come
force_more_message += .*Royal Jelly.* come
force_more_message += .*Rupert.* come
force_more_message += .*Saint Roka.* come
force_more_message += .*Serpent of Hell.* come
force_more_message += .*Sigmund.* come
force_more_message += .*Snorg.* come
force_more_message += .*Sojobo.* come
force_more_message += .*Sonja.* come
force_more_message += .*Terence.* come
force_more_message += .*Tiamat.* come
force_more_message += .*Urug.* come
force_more_message += .*Vashnia.* come
force_more_message += .*Vv.* come
force_more_message += .*Xtahua.* come
force_more_message += .*Zenata.* come