Lich script repository
This page documents the collection of scripts that are available from an external repository located at https://github.com/rpherbig/dr-scripts, and not through the in-game ;repository
functionality.
Each script listed on this page has some brief documentation in its header, but better documentation can be found on our github wiki:
- https://github.com/rpherbig/dr-scripts/wiki/List-of-All-Scripts
- https://github.com/rpherbig/dr-scripts/wiki/Introduction-to-Character-Settings
We are working on migrating this content to this page.
If you have some feedback or suggestions, please contact us in-game (Torgro or Etreu) or open pull request. We look forward to hearing from you!
accept-sell
Accepts an outstanding trade offer for a pouch/bundle, appraises it and sells it. Returning coins, item, and a profit report to the owner.
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
addroom
add a series of rooms to the lich map
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
afk
Basic keep alive alive script with simple health/death monitoring.
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
automap
bescort
bootstrap
carve
circlecheck
reports your progress towards circling
combat-trainer
Train combat skills in your current room.
Script usage: Trains combat skills in your current room, maintains listed buffs, uses TM/debil as specified, trains certain non combat actions on timers. Skins, loots.
Script arguments:
- d#: Dance threshold, keep N mobs alive to train defenses against, where dN is the provided argument.
- r#: Retreat threshold, stay at missile range when N mobs are present and use ranged combat options, where rN is the provided argument.
- construct: overrides empath non attack settings.
- debug: Enables debug mode.
- custom: Extra arguments will be used to load in extra yaml files. ;combat-trainer back would load in Yourname-back.yaml.
Settings used in this script:
- storage_containers: List of containers to make sure are open before starting hunting.
- dance_threshold: Same as d# argument.
- retreat_threshold: Same as r# argument.
- dance_skill: Weapon skill to have active when dancing with enemies, ideally allows parry. Note this is the SKILL not the weapon.
- combat_train_action_count: Number of attacks to make with a given weapon before cycling.
- combat_trainer_target_increment: Number of mind states of exp to get before cycling weapons.
- weapon_training: Hash of weapon skills to the weapon names that you use to train that skill. Brawling should map to an empty string. This controls what weapons are cycled through for training.
- gear: List of gear that will be used in this script. Armor and Weapons.
- gear:name: Noun of the item.
- gear:is_leather: true if this is repaired at the leather repair npcs.
- gear:hinders_lockpicking: true if should be removed for lockpicking.
- gear:is_worn: true if the item is worn such as armor, shields, wearable weapons.
- gear:swappable: true if this is a swappable weapon.
- gear:tie_to: This is the name of what this weapon is tied to, e.g toolstrap.
- gear:adjective: Used to differentiate items with the same name, if TAP ADJECTIVE NAME doesn't work then these settings are wrong.
- gear:bound: true if the item bonded for hurl/invoke.
- gear_sets:standard: A list of ADJ NAME for each item that should show up in INV COMBAT when you're ready for combat. If it shows up in inv combat it must be here. This gear set will be equipped at the start of combat.
- summoned_weapons: List of summoned weapons/moonblades.
- summoned_weapons:name: The skill to make a summoned weapon for.
- summoned_weapons:turn: true to turn the summoned weapon
- summoned_weapons:pull: true to pull the summoned weapon
- summoned_weapons:push: true to pull the summoned weapon.
- summoned_weapons_element: Element to summon your weapon as, defaults to stone.
- summoned_weapons_ingot: noun of ingot to use for rare metal summoning.
- stances: Userd to override defense selection for a given weapon skill, normally used to prevent parrying with ranged weapons or offhand. See base.yaml for usage.
- use_stealth_attacks: true to attempt to hide before attacking to use ambush/poach while stealth skill is not mindlocked.
- ambush: true to use stealth attacks to train backstab.
- backstab: true to use backstab to train backstabbing skill, defaults to ambush if the mob can't be backstabbed.
- charged_maneuvers: Hash of charged maneuvers to use for each weapon skill.
- fatigue_regen_threshold: Will use bob instead of an attack when fatigue drops below this.
- aim_fillers: list of actions to take to fill time while aiming.
- aim_fillers_stealth: Used in place of aim fillers if stealth experience is not capped.
- dance_actions: List of actions to take while dancing with enemies.
- dance_actions_stealth: Used in place of dance actions while stealth is not capped.
- ignored_npcs: List of npc names to ignore, used to keep combat from trying to count/interact with pets, familiars, and roaming npcs. This is the single noun that identifies them, bear, warrior, Brokk. Currently caps sensitive.
- stance_override: remove custom stance logic and simply set stance to provided string. E.g. 100 80 0
- skinning: Hash of skinning related settings.
- skinning:skin: true to skin kills.
- skinning:arrange_all: true if you can use the arrange ALL command.
- skinning:arrange_count: Number of times to arrange
- skinning:arrange_types: Hash of creature noun to the type of arranging to do, eg rat:part. All arranging defaults to skin.
- skinning:tie_bundle: true to tie your bundles up to reduce weight and item count.
UserVars used in this script:
- combat_trainer_debug: Turns on debugging messages for combat.
Other scripts used by this script: tendme
common, common-crafting, common-money, common-summoning, common-travel
crossing-repair
repairs items
crossing-training
trains non-combat skills
dependency
drinfomon
echo
edityaml
equipmanager
events
expreset
favor
gets a favor from a given Immortal
forge
forges an item
gbox
gets all boxes from a container and gives them to a character
healme
A self healing script for empaths
Script usage: Will heal your own wounds, leaving external bleeders as desired. Uses Heal preferentially if configured and not attempting to keep bleeders. Targets wounds on potentially lethal body parts first, otherwise heals in severity order.
Script arguments:
- Bleeders: any body parts to leave external wounds on, quote two word body parts.
Settings used in this script:
- prep_messages: Used for spell casting matching and lives in base.yaml please submit custom prep messages as needed.
- cambrinth: noun for cambrinth used for casting
- held_cambrinth: true if you cannot charge your cambrinth worn
- stored_cambrinth: true if your cambrinth is stored in a container instead of worn
- empath_healing:HW: List of mana amounts. preps HW with the first the rest will be charged into cambrinth
- empath_healing:HS: List of mana preps for HS
- empath_healing:HEAL: List of mana preps for HEAL
UserVars used in this script:
- healme_debug: true enables debugging messages, false disables.
Other scripts used by this script:
hunting-buddy
Trains combat skills (using combat-trainer) in defined hunting areas
Script usage: Will move through a series of defined hunting spots, training at each one until specified conditions are met. Stops at the first empty room it finds in the hunting area, will search for hiding players and wait 10 seconds for them to take any actions in rooms with monsters, moving on if a player is already there.
Script arguments:
Settings used in this script:
- training_manager_hunting_priority: Set to true and and you will stay in hunting spots until stop_on skills are at 32/34, set to false and you will stay until stop_on or duration is met.
- hunting_zones: The set of hunting areas defined in base.yaml that can be directly reached with go2.
- escort_zones: The set of hunting areas defined in base.yaml that requires custom pathing to reach.
- hunting_info: In order list of hunts.
- hunting_info:zone: Name of hunting zone, must match one of the two zone lists above.
- hunting_info:args: List of arguments to call combat-trainer with at this hunting area.
- hunting_info:duration: Time in minutes to hunt here if hunting_priority is false.
- hunting_info:stop_on: List of skills that will stop hunting when they are all at 32/34
UserVars used in this script:
Other scripts used by this script: combat-trainer
mine
Mines a room while watching for danger
Script usage: Prospects and mines out your current room, stowing or deeding anything in your vein list. Will prospect careful for more materials after exhausting the room.
Script arguments:
Settings used in this script:
- mining_buddy_vein_list: List of metals and rocks that you wish to mine.
- mine_implement: Shovel or pick.
- mine_use_packet: Set to true to carry and use a deed packet, otherwise stow found minerals
UserVars used in this script:
Other scripts used by this script: safe-room
mining-buddy
Perform a single pass through the mines
Script usage: Will navigate through all listed mines, prospecting and stopping to mine anywhere it finds a resources it watches for. Can alternatively mine out each room it comes to, or merely look for resource rich rooms if you lack the skill to see resources. Will keep 1 plat on hand for repairs and buying deed packets. Will heal on injuries due to failed danger checks, or exit if buried.
Script arguments:
Settings used in this script:
- mining_buddy_rooms: Defined in base.yaml, links mine names to a list of rooms
- mines_to_mine: List of mine names to mine, matches up against mining_buddy_rooms.
- mining_skip_populated: Set to true will NOT prospect and mine in rooms with other players.
- mining_buddy_mine_every_room: Set to true will prospect and mine out each room regardless of minerals.
- mining_buddy_vein_list: List of metals and rocks that you wish to mine.
- mine_implement: Shovel or pick.
- mine_use_packet: Set to true to carry and use a deed packet, otherwise stow found minerals
UserVars used in this script:
- mining_debug: Turns on debugging messages for mining.
mining-manager
repeatedly mines in defined mining areas (using mining-buddy)
moonwatch
populates UserVars.moons with data related to the moons
performance-monitor
logs combat data for later parsing
pick
disarms, harvests, and unlocks boxes
roomnumbers
appends the Lich room ID# to your in-game room title
safe-room
Heals at a PC or NPC empath and shares items between characters by dropping them in a safe room
Script usage: Gets 4 gold (for autopath), goes to the auto empath and waits until healed. Alternatively can go to a specific room and wait for 45 seconds for a player empath to heal you. PC Empaths will heal themselves using healme, Necromancers will not attempt to go to an empath. Can be configured to stop by a room and pick up or drop any matching item types.
Script arguments:
Settings used in this script:
- safe_room_tip_threshold: Amount of copper to carry for npc healing, or if you have more than this amount donate to player empath.
- safe_room_id: Id of room for player empath healer or item exchanges.
- safe_room_empath: Name of PC empath healer.
- safe_room_tip_amount: Amount in coppers to donate player empath.
- safe_room: Id of room to heal self at as empath.
- safe_room_give: List of nouns to drop at safe_room_id, CAUTION will drop all items of this noun there, don't use for anything valuable.
- safe_room_take: List of nouns to pick up in safe_room_id.
UserVars used in this script:
Other scripts used by this script: healme
sell-loot
Sells gems and bundles; then deposits coin.
Script usage: Will sell bundles and any gems in opened gem pouches. Will make sure you have a spare gem pouch if defined.
Script arguments:
- Withdraw: Amount of coin to withdraw after depositing all. 3 silver, 5 gold, etc.
Settings used in this script:
- sell_loot_money_on_hand: Same as the Withdraw argument, overridden by the argument if both exist.
- sell_loot_pouch: Set true to sell any gems in a worn pouch.
- sell_loot_bundle: Set to true to sell a worn bundle.
- spare_gem_pouch_container: The container to store a spare gem pouch in, should NOT be the container a pouch stows to.
- gem_pouch_adjective: Adjective you use to request gem pouches, you should be able to tap ADJ pouch to tap your current pouch.
UserVars used in this script:
Other scripts used by this script:
setupaliases
adds a useful selection of aliases to the global list
sew
shape
skill-recorder
smartlisten
if someone teaches you an approved class you'll start listening
smarttransfer
safely transfer wounds from the target, avoiding useless injuries in fatal areas
smelt
smelts an ingot
smelt-deeds
combines deeds of like metals to save inventory space
smith
spellmonitor
spin
status-monitor
tendme, tendother
automatic wound tender
textsubs
provides in-game text substitution capabilities; by default comes with numerical substitutions for appraisal and combat messages
theurgy
train theurgy by working up devotion and doing some simple communes
train
trains attributes
training-manager
High level script for managing combat and non combat training
Script usage: Will alternate training in the crossing and hunting with a focus on either in or out of combat as specified. Heals and repairs after combat.
Script arguments:
Settings used in this script:
- training_manager_hunting_priority: Set to true will cause it to focus on combat training at the expense of out of combat.
- training_manager_priority_skills: List of combat skills to monitor when it should go hunting again, only used if hunting_priority is set true.
- mine_while_training: Set to true will cause town training to start with a mining loop.
UserVars used in this script:
Other scripts used by this script: mining-buddy, sell-loot, hunting-buddy, crossing-training, safe-room, crossing-repair
weave-cloth
workorders
completes a workorder for the given discipline
create_symlinks.bat
Useful if you are doing development on Windows. Set the LICH_SCRIPTS environment variable to the path to your lich/scripts/ directory.
create_symlinks.sh
Useful if you are doing development on OSX or Linux. Pass it an argument of the path to your lich/scripts/ directory.