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.
For script-specific documentation, see the appropriate section, below. For YAML documentation, see Introduction-to-Character-Settings.
If you have some feedback or suggestions, please contact us in-game (Sheltim or Etreu) or open an issue on GitHub. We look forward to hearing from you!
Introduction to Character Settings
What is YAML?
YAML is a human friendly file format that we use to store settings. It stands for YAML Ain't Markup Language (the name references itself as a kind of computer science joke). It's got a website and everything (http://yaml.org/), but there are only a few things you actually need to know:
Indentation matters. Use two spaces for each level of indentation.
If you see a line like train_with_spells: true
, that means that the train_with_spells
setting is being assigned a value of true
. This may also be referred to as a hash in which train_with_spells
is mapped to true
. Values can be true/false, numbers, text, hashes, or lists (see below).
A list (or array) is a series of values. For example, this creates a list named loot_additions
of item nouns that you want to loot:
loot_additions: - card - dira - bolt - arrow - stone
A comment is any line that starts with a #
. They are ignored when our scripts read your settings file. Comments are entirely for your own benefit (e.g. to leave yourself a note).
Don't worry, it'll make more sense if you go look at a YAML file. Try taking a look at some of these.
Loading YAML Files
YAML files are loaded in a predefined order. base.yaml
is loaded first, then YourCharacterName-setup.yaml
. If any arguments are given to a script (for example, ;combat-trainer BacktrainWeapons
), then YourCharacterName-BacktrainWeapons.yaml
will be loaded last.
If the same setting occurs in multiple YAML files, then the last version of that setting is used. For example, you could define dance_threshold
to be 1 in YourCharacterName-setup.yaml
and then redefine it to be 0 in YourCharacterName-BacktrainWeapons.yaml
.
base.yaml
provides defaults for many (but not all) of the settings. You should never modify base.yaml
directly; instead override settings in YourCharacterName-setup.yaml
or YourCharacterName-SomethingElse.yaml
. If you think something should be changed in base.yaml
, please contact us in-game or open a pull request. We welcome all feedback and suggestions.
What all can I configure?
That's a good question! Take a look at the List of All Character Settings.
Debugging YAML files
http://yaml-online-parser.appspot.com/
Scripts
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: Call the script when you have empty hands and an outstanding trade offer.
Script arguments:
- skip: Don't appraise and send profit summary to seller, faster for multiple pouches/bundles.
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. This script will checkout the mapdb, add the new rooms, and commit the mapdb. Automap is preferred to this script.
Script usage: To use this script send it an ordered set of directions to map. If you don't provide a direction no mapping will be provided.
For example, to add a Y branch to the north:
;addroom "north, northeast, southwest, northwest, southeast, south"
To add a store:
;addroom "go shop, out"
The travel delay defaults to 0.2.
Script arguments:
- debug: Turns on debugging messages.
Settings used in this script:
UserVars used in this script:
- add_room_debug: Turns on debugging messages.
Other scripts used by this script:
afk
Runs in the background to provide safety while you are afk. Basic keep alive alive script with simple health/spirit/death monitoring. Will exit on low health, low spirit, or death.
Script usage:
Script arguments:
Settings used in this script:
- health_threshold: Threshold at which you will exit (the same threshold is used for health and spirit)
UserVars used in this script:
Other scripts used by this script:
appraisal
Trains the Appraisal skill by appraising your gear, zills, gem pouches, and studying the art in the Crossing art gallery. Use the appraisal_training
setting to specify a training regimen.
Script usage: Define the appraisal_training
list in your settings file. It will train in the order listed.
- Example Settings
appraisal_training: - gear - zills - art - pouches full_pouch_container: backpack
- The
gear
setting appraises everything listed ingear
(where your armor and weapons are listed). - The
zills
setting appraises zills up to 250 appraisal ranks; after that you will get a warning to remove zills from your training list. - The
art
setting runs the study-art script which appraises art in the Crossing art gallery. - The
pouches
setting appraises gem pouches stored in the container you list asfull_pouch_container
. Up to eleven gem pouches can be appraised. This has been updated to also appraise your worn gem pouch ifgem_pouch_adjective
is defined, making the total pouches appraised twelve.
Script arguments:
Settings used in this script:
- appraisal_training: List of training options. Valid options are
zills
,pouches
,gear
, andart
- full_gem_pouch_container: The container where you store gem pouches for appraisal. This should not be the same container where you store empty ones
UserVars used in this script:
Other scripts used by this script: study-art
astrology
Trains astrology via by observing a known constellation which fills the most prediction pools and performing predictions aligned to those pools. If your character is above 99th circle the script can also walk the ways to train astrology. Walking is limited to one round-trip per hour.
Script usage: Start in any room where the heavens are observable or where moongate can be cast (if astral traveling).
- Example Settings:
astral_plane_training: train_in_ap: true train_destination: crossing train_source: shard have_telescope: true
Script arguments:
Settings used in this script:
- have_telescope: Set to true to indicate you have a telescope on you and it will be used to observe the heavens.
- astral_plane_training: Hash which contains the settings for astral training.
- train_in_ap: Set to true to indicate that you wish to walk the ways to train astrology. You will need to supply a destination and source as well.
- train_destination: indicate the shard destination in lowercase(this is a town, not the shard name). This is where you will walk to for training. Options are: shard, crossing, leth, riverhaven, merkresh, fang, raven, throne, muspari, aesry, taisgath, theren, steppes
- train_source: indicates the shard you wish to return to after arriving at the destination shard, options are the same as in
train_destination
.
UserVars used in this script:
- astral_plane_exp_timer: This is set to the current time on your computer once you emerge from the shard indicated in
train_destination
. It's used to check how long its been since you last walked.
Other scripts used by this script: bescort
automap
Mapping assistance script
Script usage: Start from an already mapped room. Records the commands you type to move around and maps new rooms as it encounters them. Will update existing paths if traveling through previously mapped areas. Run the script to start recording, then kill it when finished. Do not use your typeahead lines when this is running or you will damage the map.
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
bescort
A script for navigating certain problematic areas like swamp mazes, the wilds, and some river swims. Mostly used by other scripts. Can also be used for astral traveling.
Script usage: Start this script with no arguments to see a list of supported areas and destinations.
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
buff
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
carve
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
circlecheck
Circle check tells you how far you are from your next or target circle.
Script usage: Display circle progress:
;circlecheck
Display only skills needed for the next circle:
;circlecheck short
;circlecheck brief
;circlecheck next
Display progress towards circle 35
;circlecheck 35
Script arguments:
- debug: Turns on debugging messages.
- short: Uses short output mode, aliases brief, next
- target: Display progress towards target circle.
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
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 inYourName-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: Used 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. This will also attempt to hide before casting Vivisection.
- ambush: true to use stealth attacks to train backstab. Should only use either ambush or backstab flags at one time
- backstab: Valid settings are 'Small Edged', 'Offhand Weapon' or both. This will attack with either backstab or backstab left for the chosen skill. Ensure you have a suitable weapon for backstabbing setup in your 'weapon_training:' section for the desired weapon skill(s). This 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.
- lootables: Base list of nouns to loot, the noun must be at the end of the object name and not part of another word. Changes to this are better made through loot_additions and loot_subtractions. Pearl would loot "a tiny yellow pearl" but not "a pearl studded coat" nor would rock cause you to loot "a large crock".
- loot_additions: List of nouns to add into the base loot list, a common example is box nouns.
- loot_subtractions: List of things to remove from your looting list, for example ammunition you don't use.
- thanatology: Necromancer related settings, only partially implemented.
- thanatology:heal: If true, use necromancer-specific healing rituals and spells.
- thanatology:ritual_type: Name of the ritual to perform, i.e dissect
- spare_gem_pouch_container: Container that holds your spare gem pouch should your equipped one become full.
- gem_pouch_adjective: Adjective your gem pouch responds too.
- buff_spells: Hash of buff spells to maintain on you while hunting, the key to the hash must match the spells name exactly e.g buff_spells:See the Wind. Will generally cast buffs in the order listed here.
- buff_spells:Spell Name:abbrev: Abbreviation to use for prepping the spell.
- buff_spells:Spell Name:recast: Remaining duration in minutes on a buff to trigger a recasting. -1 will wait until the spell falls off.
- buff_spells:Spell Name:recast_every: Number of seconds to wait between recasts of this spell, for spells that recast or expire messages don't make sense.
- buff_spells:Spell Name:expire: A string that when seen will trigger this spell to be recast
- buff_spells:Spell Name:mana: Amount of mana to prep the spell with.
- buff_spells:Spell Name:cambrinth: List of charges to put into cambrinth, will use worn cambrinth that can't be charged worn, however don't list more than two charges or strange things can happen.
- buff_spells:Spell Name:prep_time: Time in seconds to wait before trying to cast the spell, optional, if not present waits until full prep.
- buff_spells:Spell Name:before: A custom action to take immediately before casting the spell.
- buff_spells:Spell Name:before:message: The message to send to the game.
- buff_spells:Spell Name:before:matches: List of strings that are possible responses for the message.
- buff_spells:Spell Name:after: A custom action to take immediately after casting the spell.
- buff_spells:Spell Name:after:message: The message to send to the game.
- buff_spells:Spell Name:after:matches: List of strings that are possible responses for the message.
- buff_spells:Spell Name:moon: true if spell requires a moon to cast.
- buff_nonspells: Nonspell buffs. Each has the format "action: timer", where 'action' will be output to the game every 'timer' number seconds.
- buff_nonspells:barb_buffs: Specific subsection for barbarian buffs. These require no timer, instead they trigger off of expiration and activation messaging. List by buff name, i.e. "Python", capitalization required.
- buff_nonspells:khri: Specfic sub section for Thief Khri. These require no timer. List skill by name. Capitalization not required.
- offensive_spells: TM and Debil spells to use. Debil spells will be recast when a mob dies or the expiration message is seen.
- offensive_spells:skill: Targeted Magic or Debilitation.
- offensive_spells:abbrev: Abbreviation used for preparing the spell.
- offensive_spells:recast_every: Number of seconds to wait between recasts of this spell, for spells that recast or expire messages don't make sense.
- offensive_spells:expire: String that will trigger a recast of the spell when seen.
- offensive_spells:mana: Amount of mana to prep the spell with
- offensive_spells:cambrinth: List of charges to put into cambrinth, will use worn cambrinth that can't be charged worn, however don't list more than two charges or strange things can happen.
- offensive_spells:prep_time: Time in seconds to wait before trying to cast the spell, optional, if not present waits until full prep.
- offensive_spells:before: A custom action to take immediately before casting the spell.
- offensive_spells:before:message: The message to send to the game.
- offensive_spells:before:matches: List of strings that are possible responses for the message.
- offensive_spells:after: A custom action to take immediately after casting the spell.
- offensive_spells:after:message: The message to send to the game.
- offensive_spells:after:matches: List of strings that are possible responses for the message.
- cambrinth: Cambrinth item to charge for casting.
- cast_messages: Casting messages, if we're missing your custom message let us know!
- prep_messages: Spell Prep messages, see cast_messages.
- empath_healing: a VH entry here will control the mana used when vit drops. List of values is prep followed by cambrinth charges.
- osrel_amount: Amount to infuse into OM each try.
- osrel_no_harness: true if you don't need to harness before infusing.
- kneel_khri: true if you have to kneel to activate khri.
- khri_preps: Khri activation messages, let us know if yours is missing.
- manipulate_threshold: Number of enemies before attempting to manipulate.
- training_abilities: Special one off trainers during combat. Hash is training type keyed to cooldown in seconds.
- training_abilities:PercMana: Moon mage attunement training, retreats first.
- training_abilities:Perc: Attunement training with perc.
- training_abilities:Perc Health: Empathy training with perc heal.
- training_abilities:Astro: Predict weather for astrology training.
- training_abilities:App: Train appraisal by appraising enemies. Requires Approx 100 ranks for learning.
- training_abilities:App Quick: See above.
- training_abilities:App Careful: See above.
- training_abilities:Tactics: Train tactics with weave, bob, and circle.
- training_abilities:Analyze: Train tactics by analyzing your opponent.
- training_abilities:Hunt: Train perception and possibly scouting with the hunt command.
- training_abilities:Pray: Pray to an immortal for theurgy.
- training_abilities:Scream: Train bardic lore with scream conc.
- training_abilities:Stealth: Train stealth with hiding and stalking.
- training_abilities:Recall: Uses 'recall' on a mob in the room, which trains Scholarship
- training_abilities:Ambush Stun: Uses settings stun_weapon, stun_weapon_skill and stun_skill
- stun_weapon: The weapon you want to use to Ambush Stun. IE club or broadsword
- stun_weapon_skill: The skill that stun_weapon trains or you would like to swap it to train IE Small Blunt or Large Edged
- stun_skill: Set to either Backstab or Debilitation for the skill to watch while using Ambush Stun
- training_abilities:Khri Prowess: Trains Debilitation with Khri Prowess.
- fatigue_regen_action: Action to take when low on fatigue.
- dual_load: true if you're capable of dual load
- dedicated_camb_use: Set to 'cyclic' or 'spell' with respect to the magical feat
- cycle_armors: List of armor types and corresponding items from gear to rotate for training purposes
- whirlwind_weapons: Barb specific section for telling the combat-trainer which weapon skills you want to train with whirlwind. It requires one-handed templates, doesn't support two handed weapons, and will use the weapon listed under weapon_training.
- wield: Set to true or false; If true, then it wields and sheaths your weapon. This is very useful if you have weapons in different containers. With this set to true on each weapon (e.g. :wield: true in your gear settings), it will return them back from where they came with the wield and sheath commands.
UserVars used in this script:
- combat_trainer_debug: Turns on debugging messages.
Other scripts used by this script: tendme
crossing-repair
Repair items in your gear list.
Script usage: It is intended to be used in The Crossing.
Script arguments:
Settings used in this script:
- repair_withdrawal_amount: Amount in coppers to withdraw to cover repairs.
- 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.
UserVars used in this script:
- crossing_repair_debug: Turns on debugging messages.
Other scripts used by this script:
crossing-training
Trains non-combat skills. Despite the name, crossing-trainer this works in other towns using the hometown setting.
Script usage: Cycles through skills training the lowest one in field experience at the time.
Skills that can be trained: Appraisal, Athletics, Astrology, Attunement, Augmentation, Warding, Utility, Debilitation, Empathy, Engineering, First Aid, Forging, Locksmithing, Mechanical Lore, Outdoorsmanship, Outfitting, Perception, Performance, Scholarship, Scouting, Sorcery, Stealth, Summoning, Theurgy, Thievery, Trading.
Additionally, the following skills can be trained only via research: Arcana, Life Magic, Holy Magic, Lunar Magic, Elemental Magic, Arcane Magic.
Script arguments:
Settings used in this script:
- classes_to_teach: List of subjects to teach people in your safe room
- climbing_target: Object to practice climbing on. Setting this causes you to climb practice during athletics training. Look in base-athletics for a list of climbing targets.
- use_research: Whether or not to use research when training magic skills. Requires train_with_spells to be true.
- outdoor_room: Used for spells requiring moons.
- perform_options: List in base-perform.yaml of playstyles sorted by difficulty.
- storage_containers: A list of containers to open before starting training.
- crossing_training_requires_movement: Skills which require movement as part of their training. This is used to avoid spamming the safe room with repeated entry/exit messages.
- trash_nouns: Nouns that can be thrown away without warning
- crossing_training: List of skills to train. Supported Skills - Appraisal (requires zills), Athletics, Arcana/Primary Magic(requires research enabled), Astrology, Attunement, Augmentation, Warding, Utilty, Debilitation(barb only?), Empathy, Engineering(workorders), First Aid (needs compendium), Forging (workorders or raw smithing), Locksmithing, Mechanical Lore, Outdoorsmanship, Outfitting(workorders or knitting), Perception, Performance(zills), Scholarship(blacksmithing book), Scouting(enough ranks for trails), Sorcery, Stealth (low ranks only), Summoning, Theurgy(see theurgy script), Thievery, Trading(workorders).
- safe_room: Room Id where you do any stationary training and listen for classes.
- exit_on_skills_capped: Whether or not to exit the game when all skills are locked
- crossing_training_sorcery_room: The room to use when training sorcery. MAKE SURE THIS ROOM IS LAWLESS by typing 'justice'.
- crossing_training_sorcery: Action to take when training sorcery
- listen: Whether or not you should attempt to listen to classes while training
- train_with_spells:
- cyclic_training_spells: Cyclic Spells to use when training.
- cyclic_cycle_skills: Skills to train with cyclic spells during crossing-training.
- training_spells: Spells to use when training magic skills. TODO: Make this its own page.
- research_skills:
- exp_timers: Cooldown timers between attempts to train a given skill
- training_nonspells:
- kneel_khri:
- khri_preps: If you use Khri for training, make sure their prep messages are recorded here
- prep_scaling_factor: This scaling factor is multiplied by your discerned max mana for a spell. The mana to be removed is rounded up, so anything < 1.0 will always result in at least one mana removed.
- cambrinth_cap: The maximum amount of mana your cambrinth can hold
- osrel_amount:
- osrel_no_harness:
- held_cambrinth: Whether or not you need to hold your cambrinth to charge it
- stored_cambrinth: Whether or not your cambrinth item is stored (false indicates worn)
- cambrinth: The noun for the cambrinth you use. Multiple cambrinth is not yet supported.
- prep_messages: If you cast spells for training, make sure their prep messages are recorded here
- cambrinth_cap: The maximum amount of mana your cambrinth can hold
- forage_item:
- hand_armor: Noun of any armor that needs to be removed when braiding
- braid_item:
- athletics_options:
- trail_override:
- art_options:
- train_workorders: Disciplines to train via workorders when training that skill
- work_order_disciplines: Disciplines to train via workorders when training Trading
- tithe: Whether or not to tithe (two boxes are supported), with a cooldown of 4 hours
- cleaning_cloth: The type of cleaning cloth to use when zills are dirty
- dedicated_camb_use: Set to 'cyclic' or 'spell' with respect to the magical feat
- wield: Set to true or false; If true, then it wields and sheaths your weapon. This is very useful if you have weapons in different containers. With this set to true on each weapon (e.g. :wield: true in your gear settings), it will return them back from where they came with the wield and sheath commands.
- dedicated_camb_use: Set to 'cyclic' or 'spell' with respect to the magical feat
UserVars used in this script:
- crossing_trainer_debug: Turns on debugging messages.
Other scripts used by this script: pick, sell-loot, theurgy, safe-room, workorders, sew, smith
dusk-labyrinth
Searches and loots the Duskruin Ratacombs/Labyrinth. Written for Duskruin 422
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
echo
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
edityaml
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
equipmanager
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
- equipmanager_debug: Turns on debugging messages.
Other scripts used by this script:
expreset
Resets your EXP window in Stormfront. This is useful for removing erroneous game output that gets 'stuck' in your exp window (usually during connection).
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
favor
Gets one favor by rubbing an orb repeatedly.
Script usage: It is intended to be used in The Crossing.
If an argument is passed to the script, that Immortal's name will be used. The default is Hodierna.
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
find
Finds an NPC in The Crossing.
Script usage:
Script arguments:
- npc: A unique name (or noun) of the NPC to find.
- follow: If present, the script will follow the NPC around.
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
first-aid
Trains the First Aid skill by reading compendiums or textbooks
Script usage:
Script arguments:
Settings used in this script:
- textbook: False if using a compendium, true otherwise.
- textbook_type: If not using a compendium, the name of the thing to study.
UserVars used in this script:
Other scripts used by this script:
forge
Forges an item. Adapted from a script by Mallitek.
Script usage: EXAMPLES:
;forge weaponsmithing 2 sword steel sword
;forge blacksmithing 6 "shallow metal cup" bronze cup
;forge blacksmithing 6 scratcher bronze scratcher
;forge temper sword
Script arguments:
- type: Type of book (blacksmithing, armorsmithing, weaponsmithing)
- chapter: Chapter of the book
- recipe: the name of the recipe
- metal: metal type of the ingot in your bag
- noun: item noun to make
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
gbox
Hand all boxes from a container (the first argument) to a character (the second argument).
Script usage:
Script arguments:
- container: The container
- character: The character
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
gmoney
Hand money to the given character. The money is given 10 plat at a time, depositing first to minimize coinage (i.e. hand off plat instead of copper where possible). Useful for F2P players who cannot deposit more than 10 plat at once.
Script usage:
Script arguments:
- character: The character
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
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: Turns on debugging messages.
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
- hunting_buddies: List of PC's that you're ok to share a hunting room with, remember proper Capitalization.
- empty_hunting_room_messages: List of messages to use when asking if a room is empty. A random message will be used each hunt.
- prehunt_buffs: Room number where you can cast buffs before beginning hunt. List buffs under waggle_sets: with same heading prehunt_buffs:.
- hunting_room_min_mana: Minimum mana level of an acceptable hunting room.
- hunting_room_strict_mana: If false, it will find any empty room in the event that no empty rooms are found above the minimum mana level.
- uservars=
UserVars used in this script:
Other scripts used by this script: combat-trainer, buff
jail-buddy
Handles being arrested in the crossing
Script usage: Keep running.
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
makesteel
Makes steel ingots. The script will handle acquiring the needed materials.
;makesteel count [type] [refine]
Script arguments:
- count: (required) number of ingots to produce
- type: Carbon content, defaults to high. Options are: [l, m, h]
- refine: If provided, refine the resulting ingot
Settings used in this script:
- hometown: City in which to make the ingots, defaults to Crossing
UserVars used in this script:
Other scripts used by this script:
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.
mining-manager
repeatedly mines in defined mining areas (using mining-buddy)
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
moonwatch
populates UserVars.moons with data related to the moons
Script usage: Moonwatch will populate UserVars with the following data:
UserVars.moons = {
'katamba' => { 'pretty' => 'Katamba is up for 35 minutes', 'rise' => nil, 'set' =>35 },
'yavash' => { 'pretty' => 'Yavash will rise in 150 minutes', 'rise' => 150, 'set' => nil },
'xibar' => { 'pretty' => 'Xibar is up for 5 minutes', 'rise' => -1, 'set' => 5 }
'visible' => ['katamba', 'xibar']
}
We suggest using an alias such as:
;alias add moon = ;eq respond("#{UserVars.moons['katamba']['pretty']} : #{UserVars.moons['yavash']['pretty']} : #{UserVars.moons['xibar']['pretty']}")
You can PERCEIVE an individual moon to reset its data or PERCEIVE MOONS to reset all if this is a first start (or you've been offline for a while and the data seems wrong).
Script arguments:
- debug: Turns on debugging messages.
Settings used in this script:
UserVars used in this script:
- moon_debug: Turns on debugging messages.
Other scripts used by this script:
oshu_manor
Navigates you through the Oshu Manor. Used to hunt Seordhevor kartais. Note there is an underscore in this script's name, not a dash.
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
pay-debt
Pays your debt. Optionally retrieves your sack of belongings from the guard house.
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
performance-monitor
Logs combat-related events such as damage, roundtime, etc. for later parsing.
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
pick
Disarms, harvests, and unlocks boxes
Script usage: The script will look for suitable disposal sources in the room, or drop refuse on the ground. Refills lockpicking ring after finished.
Script arguments:
Settings used in this script:
- stop_pick_on_mindlock: true to stop after the current box when your mind is full.
- use_lockpick_ring: Do you wear a lockpick ring?
- skip_lockpick_ring_refill: Set this to TRUE in order to skip buying lockpicks after mind-locked. This is important if you have crafted lockpicks on the ring, since you can't use lockpicks of differing qualities on the same ring.
lockpick_type: Type of lockpick to stock on ring.
- harvest_traps: true to harvest traps while disarming.
- picking_box_source: The bag that unopened boxes are stored in.
- picking_box_storage: The bag to put boxes into that are too difficult to disarm.
- lockpick_dismantle: If you have a custom dismantle type to use, put it here.
- lockpick_buffs:spells:abbrev: abbreviation of a buff to put up before picking.
- lockpick_buffs:spells:mana: amount of mana to use for prep.
- lockpick_buffs:spells:cambrinth: List of cambrinth charges, see crossing-training for cambrinth related settings.
- lockpick_buffs:khri: List of khri to turn on before lockpicking.
UserVars used in this script:
- lockpick_debug: Turns on debugging messages.
Other scripts used by this script:
roomnumbers
Adapted from a script by Geldan for Gemstone. Appends the Lich room ID# to your in-game room look. Example:
[Whistling Wood, Barrows] A mound of earth looks curiously out of place beneath the twisted and warped branches of the dead trees. Barren of all but the hardiest of grasses, the mound has several small holes in its side. You also see an Adan'f blood warrior, a chipped and weather-beaten sign, an Adan'f blood warrior and an Adan'f blood warrior. Obvious paths: southeast, southwest, northwest. Room Number: 9471
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
safe-room
Heals at a PC or NPC empath and shares items between characters by taking and 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 given item nouns.
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
sanowret-crystal
Runs in the background, gazing or exhaling your sanowret crystal. Checks for concentration and current mindstate.
Script usage:
Script arguments:
- run: If present, only run the script once (instead of in passive mode).
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
scroll-search
Searches through the given container for any and all spell scroll and displays them in a more readable way. Also allows for the player to grab a specific scroll or transfer scrolls between containers. This script allows you to search multiple containers and tracks the scrolls in each.
Script usage: Player specifies the container to search and the script looks through the container for any nouns matching scroll_nouns specified in base-items.yaml
Script arguments:
- search <container>: Searches the given container
- display: Displays the scrolls in all searched containers. Must have already searched or the list will be empty!
Settings used in this script:
- scroll_nouns: List of scroll nouns to search container for.
UserVars used in this script:
- owned_scrolls: Hashset of the scroll name and the container it resides in.
- scroll_counter: Global counter for the amount of scrolls owned.
- scroll_search_debug: Turns on debug messaging for scroll-search.lic script.
Other scripts used by this script:
sell-loot
Sells gems and bundles; then deposits coin. Defaults to keeping 3 silver on hand (the maximum amount that cannot be stolen by a Thief).
Script usage: Will sell bundles and any gems in untied gem pouches. Optionally will make sure you have a spare gem pouch. It is intended to be used in The Crossing.
EXAMPLES:
;sell-loot
# Uses the default: keeps 3 silver;sell-loot 12
# Uses one argument: keeps 12 silver, which is withdrawn as 1 gold and 2 silver;sell-loot 4 g
# Uses two arguments: keeps 4 gold
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.
- sell_loot_skip_bank: If true, skip bank parts of the script (currency exchange, deposit, withdrawal).
- bankbot_name: The name of the bankbot with whom you would like to deposit coin.
- bankbot_deposit_threshold: An amount of copper to keep on hand. Excess will be deposited with the bankbot. Your in-game bank will always be deposited into before the bankbot.
- bankbot_room_id: The room ID of the bankbot.
UserVars used in this script:
Other scripts used by this script:
setupaliases
adds a useful selection of aliases to the global list:
as
- accepts a trade offer and then stows the itemgs
- gets the given item and then stows the itemct
- toggles crossing-training on or offtm
- toggles training-manager on or offfr
- find room, searches for a room description matching provided textids
- echos the current mapped connections from the room you're standing inlr
- echos the full data of the room you're standing incb
andrec
- these work as a pair, for recording room numbers (like setting up a hunting area); runcb
to start, thenrec
in each room you want to recordhz
- list all hunting zones alphabeticallyfz
- search hunting zones and get room numbers, e.g.fz wark
returns a list of room numbers for warklins
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
sew
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
shape
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
skill-recorder
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
slackbot
If the status-monitor script detects an problem, it will use this script to send you a Direct Message on Slack.
Script usage: This script should not be run directly. Instead, status-monitor will run it if the slack_username setting is present. On first time setup you will communicate with a lichbot to get a slack token. The token lets you send messages to your username via the bot. You should receive a DM from the slackbot upon first-time setup (or if the token changes).
Script arguments:
Settings used in this script:
- slack_username: Your Slack username in the dragonrealms-ooc team. It should be all lowercase.
UserVars used in this script:
- slack_token: The token used to authenticate to the Slack team. You should not need to edit this manually.
Other scripts used by this script:
smartlisten
If someone teaches you an approved class you'll start listening.
Script usage: The default list of approved classes is all non-necromancer skills and no sorcery or thievery. Guild-specific skills are approved if you are of that guild. Some specific classes are also removed based on your guild (e.g. remove Arcana for Barbarians).
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
smarttransfer
safely transfer wounds from the target, avoiding useless injuries in fatal areas
Script usage:
Script arguments:
- bleed: If present, leave external bleeders.
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
smelt
Smelt the contents of a crucible. Assumes that material has already been placed into the crucible.
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
smelt-deeds
combines deeds of like metals to save inventory space
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
smith
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
sorcery
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
spin
This script is intended to be used in The Crossing.
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
status-monitor
Informs user of high-frequency game output and characters current health via a small window. Useful for keeping tabs on multiple characters.
Script usage: Trust status monitor then run it.
Script arguments:
- debug: Turns on debugging messages.
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
steal
Script usage:
Script arguments:
Settings used in this script:
- hide_to_steal: set to false if you do not wish to hide to steal.
- bin_stolen: set to true for Thieves who wish to bin stolen goods.
- stealing_bag: storage bag for stolen goods if bin_stolen: true
- slow_bin_speed: set to true to bin items slower. Resolves type-ahead issue for Genie users.
- steal_past_mindlock: set to true if you wish to continue stealing after Thievery is locked.
- dont_steal_list: list items by id# identified in base-stealing.yaml to skip these items when stealing.
- stealing_buffs: list of buffs to use before starting stealing run.
- stealing_high_acceptable_count: .
- stealing_low_acceptable_count: .
- npc_stealing_attempt_count: Numeric amount of stealing attempts on NPCs (minstrel, veteran, etc.)
- stealing_options: list of stealable items in base-stealing.yaml
UserVars used in this script:
Other scripts used by this script:
study-art
Walks through the Crossing art gallery and appraises each piece on display. Trains scholarship and appraisal.
Script usage: Just run it. e.g. ;study-art
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
tendme
Automatic wound tender for self. On start, checks HEALTH for bleeding wounds and tends them, then watches for messages to unbind or retend wounds.
Script usage:
Script arguments:
- train: If present, unwrap and rebind wounds for optimum learning.
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
tendother
Automatic wound tender for another player. On start, looks for bleeding wounds and tends them, then watches for messages to unbind or retend wounds.
Script usage:
Script arguments:
- player: Name of the player to tend.
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
textsubs
Provides in-game text substitution capabilities; comes with many defaults (e.g. appraisal and combat messages).
Script usage: Example of adding a sub: TextSubs.add('^(\s+)no (puncture|slice|impact|fire|cold|electric) damage','\1no (0/27) \2 damage')
Clear out all stored subs with TextSubs.clear()
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
theurgy
train theurgy by working up devotion and doing communes
Script usage: Recommended - Eluned (holy water)
Script arguments:
Settings used in this script:
- theurgy_supply_container: Container for storing wine, flint, and incense.
- water_holder: Vessel that you store holy water in.
- flint_lighter: Blade for lighting flint.
- immortal_aspect: for bead carving/meditation (must be aspect of god you last got a favor from).
UserVars used in this script:
Other scripts used by this script:
train
Train the given attributes. It is intended to be used in The Crossing.
Script usage: Arguments are the name of the attribute to train, with an optional number of trainings (Defaults to 1):
;train
No arguments: nothing happens
;train st
"st" is ambiguious between stamina and strength: nothing happens
;train sta w2
Trains stamina once and wisdom twice
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
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.
- favor_goal: Number of favors to work towards, if this is set will work on favors while training.
- favor_god: Desired immortal to request favor orb for Must be set for favor gathering to work properly.
- repair_timer: Time in seconds between each run of crossing-repair. Default is 10 minutes, or 600 seconds.
- repair_withdrawal_amount: Amount of currency to withdrawal for each repair. Default amount is 10,000.
- skip_repair: True/false setting. Use true to skip all crossing-repair functionality. Default is false.
UserVars used in this script:
Other scripts used by this script: mining-buddy, sell-loot, hunting-buddy, crossing-training, safe-room, crossing-repair
validate
Checks character yamls for common mistakes.
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
weave-cloth
This script is intended to be used in The Crossing.
Script usage:
Script arguments:
Settings used in this script:
UserVars used in this script:
Other scripts used by this script:
workorders
completes a workorder for the given discipline
Script usage:
Script arguments:
- type: Type of workorder to do, blacksmithing, tailoring, shaping.
Settings used in this script:
- crafting_container: Bag that materials, tools, and books are stored in.
- workorder_diff: difficulty of workorder to request.
- crafting_recipes: List of crafting recipes in base-crafting.yaml.
- forging_tools: List of tools used in forging.
- forging_belt: Set up this has if you have a toolbelt for this craft.
- forging_belt:name: Unique name of belt.
- forging_belt:items: List of items held on the belt.
- knitting_tools: List of tools used in knitting.
- outfitting_belt: Set up this has if you have a toolbelt for this craft.
- outfitting_belt:name: Unique name of belt.
- outfitting_belt:items: List of items held on the belt.
- shaping_tools: List of tools used in shaping.
- engineering_belt: Set up this has if you have a toolbelt for this craft.
- engineering_belt:name: Unique name of belt.
- engineering_belt:items: List of items held on the belt.
- carving_tools: List of tools used in carving.
UserVars used in this script: