Lich script repository: Difference between revisions

From Elanthipedia
Jump to navigation Jump to search
Line 52: Line 52:
</pre>
</pre>


To see the usage of lich autostart, <code>;autostart</code> use the command <code>;autostart help</code>. It's advised to remove anything you've added to <code>;autostart</code> and add it to <code>;e autostart</code>. Do not remove any scripts you have not explicitly added, like dependency or lnet.
To see the usage of lich autostart, <code>;autostart</code> use the command <code>;autostart help</code>. Some scripts rely on lich autostart, like dependency, lnet, repository, and alias. It's advised to remove anything else you've added to <code>;autostart</code> and add it to <code>;e autostart</code>. Do not remove any scripts you have not explicitly added, like dependency, lnet, repository, or alias.


= Scripts =
= Scripts =

Revision as of 14:15, 15 August 2017


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/

Autostart

There are two autostart scripts. ;autostart and ;e autostart. The former is lich autostart and the latter is dependency autostart. It is advised to use dependency autostart instead of lich autostart. This means you should use ;e autostart to ensure that scripts are started in the proper order. Usage examples of dependency autostart are shown below:

;e autostart('script-name') will start the script called 'script-name' for all of your characters
;e autostart('script-name', false) will start the script for only this character
;e echo(list_autostarts) will show you the files being autostarted on a given character
;e stop_autostart('script-name') will remove an autostarted file from the list
;e autostart(['sanowret-crystal', 'textsubs', 'roomnumbers']) to add many scripts at once

To see the usage of lich autostart, ;autostart use the command ;autostart help. Some scripts rely on lich autostart, like dependency, lnet, repository, and alias. It's advised to remove anything else you've added to ;autostart and add it to ;e autostart. Do not remove any scripts you have not explicitly added, like dependency, lnet, repository, or alias.

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 in gear (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 as full_pouch_container. Up to eleven gem pouches can be appraised. This has been updated to also appraise your worn gem pouch if gem_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, and art
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


athletics

Athletics training script

Script usage:

Script arguments:

Settings used in this script:

have_climbing_rope: Set this to true to use a magic climbing rope for training. This currently requires zills.

UserVars used in this script:

Other scripts used by this script:


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 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: 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.
hide_type: Value of "stalk" changes hide type to "slip stalk". This will perform the command "stalk" instead of "hide" which activates "slip stalk". "Slip stalk" is only available for a number of professions and must be learned. Default value: hide. Uses hide as normal.
force_unhide: Value of true will always unhide after hiding via Stealth timer under training_abilities:.
dont_stalk: Value of true prevents stalk usage after hiding when hiding via Stealth timer under training_abilities:. Default value is false.

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.

Script usage:
;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.

Other scripts used by this script: mine, safe-room


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 item
  • gs - gets the given item and then stows the item
  • ct - toggles crossing-training on or off
  • tm - toggles training-manager on or off
  • fr - find room, searches for a room description matching provided text
  • ids - echos the current mapped connections from the room you're standing in
  • lr - echos the full data of the room you're standing in
  • cb and rec - these work as a pair, for recording room numbers (like setting up a hunting area); run cb to start, then rec in each room you want to record
  • hz - list all hunting zones alphabetically
  • fz - 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 will currently not receive any notification on setup.

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:


stack-scrolls

Scroll stacker manager script that stores and retrieves scrolls using stackers.

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:

Other scripts used by this script: smith, shape, sew