Lich script repository: Difference between revisions

From Elanthipedia
Jump to navigation Jump to search
Line 69: Line 69:
;e stop_autostart 'script-name' parenthesis do not matter
;e stop_autostart 'script-name' parenthesis do not matter
</pre>
</pre>
;e echo(list_autostarts) will show you the files being autostarted on a given character
;e autostart(['sanowret-crystal', 'textsubs', 'roomnumbers']) to add many scripts at once


= Scripts =
= Scripts =

Revision as of 13:08, 5 August 2019


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.

Also there is a newbie-friendly video guide - How to setup Lich: https://www.youtube.com/watch?v=Ty-seLTJSi4

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

Character settings are read from a YAML file.

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.

Debugging YAML files

Its helpful to use a YAML parser for diagnosing issues. http://yaml-online-parser.appspot.com/

Autostart

There are two autostart scripts.

;autostart is part of lich.

;e autostart is part of dependency, a lich script, which manages the start up process for scripts documented here.

Use dependency autostart (the second one) for any script on this page. This means you should use ;e autostart 'scriptname' or ;e autostart('scriptname') instead of ;autostart add scriptname

If any of the scripts on this page are in ;autostart list, you should remove them. Try the command ;autostart help if you need help.


Add an autostart

;e autostart('script-name') will start the script called 'script-name' for all of your characters
;e autostart 'script-name'
;e autostart('script-name', false) will start the script for only this character
;e autostart 'script-name', false

Parenthesis do not matter

Remove an autostart

;e stop_autostart('script-name') will remove an autostarted file from the list
;e stop_autostart 'script-name' parenthesis do not matter

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.
buy: Pay for the pouch out of your own money and keep it.
dump: Dump item after sale.

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 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:


almanac

Uses an almanac every 10 minutes. Pauses all other scripts, stows your left hand, studies it, then unpauses everything.

Script usage:

Script arguments:

Settings used in this script:

UserVars used in this script:

Other scripts used by this script:


appraisal

Trains the Appraisal skill by appraising your gear, zills, bundles, 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
- bundle
- 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 bundle setting appraises a worn bundle quick.
  • 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, bundle, 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:
astrology_training:
- ways
- observe
- rtr
- weather
- events
- moons
astral_plane_training:
  train_destination: crossing 
  train_source: shard

have_telescope: true

Script arguments:

Settings used in this script:

astrology_training: A list of training options. The possible options are ways, observe, rtr, weather, events, and moons. Things will be trained in the order they are listed
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_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:

wyvern: Climb wyverns instead of undergondola.
undergondola: Climb undergondola.
xalas: Climb in xalas

Settings used in this script:

have_climbing_rope: Set this to true to use a magic climbing rope for training. This currently requires zills.
held_athletics_items: A list of 1-2 items held while doing athletics to increase the difficulty. Each item adds difficulty. Uses get/stow, and the items don't need to be weapons.

UserVars used in this script:

Other scripts used by this script:


attunement

Trains attunement via power walking or in perceiving in a single room. Power walking rooms are based on your hometown setting unless the attunement_rooms setting is filled out. Moon mages will not powerwalk, but use perceive mana instead. This script will cast spells listed in the waggle_set called 'attunement' when it starts.

Script usage:

Script arguments:

Settings used in this script:

attunement_rooms: A list of room id's to use for power walking. This is useful for power walking near your safe room, in non-justice areas (necromancers), or if your hometown does not have power walking room data.
crossing_training_stationary_skills_only: Set to true to only train attunement in your current room. This setting does nothing for moon mages.
hometown: Town to train attunement in; most towns have a pre-defined list of rooms to power walk in. Using attunement_rooms overrides this.

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:


bankbot

Have a character act as a banker

Script usage:

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:

citizenship: Set citizenship to 'Zoluren' to skip a money check. Set to 'Ilithi' to use the north, west, south gates of Shard

Other scripts used by this script:


buff

Casts waggle sets defined in your yaml. Casts the default: waggle set if no args are given.

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:


chop-wood

Chops trees in a room while watching for danger

Script usage: Watches and chops out your current room, stowing or deeding anything in your tree list. Will run to a healer if injured.

Script arguments:

Settings used in this script:

lumber_buddy_tree_list: List of woods that you wish to chop.
lumber_implement: axe, greataxe, or hatchet type weapons
lumber_use_packet: Set to true to carry and use a deed packet, otherwise stow found wood

UserVars used in this script:

Other scripts used by this script: safe-room


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:


cleric-quests

Automatically does cleric quests you are eligible for. Currently does tamsine, eluned, eluned2, kertigen, hodiera, meraud, and glythtide commune quests if you are the right level.

Script usage:

Script arguments:

Settings used in this script:

UserVars used in this script:

Other scripts used by this script:


coordinator

Training manager script

Script usage:

Script arguments:

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:

aiming_trainables: Lets you train weapons in the offhand while aiming crossbows, slings, and bows. The weapon must be usable in the offhand for attacking/throwing. Large weapons require prime, etc. Swappable weapons are not supported for this option either. Also, it works in conjunction with the setting using_light_crossbow.
using_light_crossbow: Lets you designate that your Crossbow is light, this enables swinging attack options with aiming_trainables.
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_trainer_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:skip_repair: true if you want to skip repairing this item.
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
ambush_location: Set the ambush target for better backstab training for thieves.
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:Locks: Train locksmithing by picking pet boxes in combat.
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:Teach: Teach hunting_buddies if there are any in the room on this timer.
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_trainables: 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


craft

Crafts one item.

Script usage:

Script arguments:

outfitting: Knit.
forging: Forge a Blacksmithing item.
engineering: Shape one item.

Settings used in this script:

yarn_quantity: How much yarn to keep on hand for knitting, defaults to 100.
craft_max_mindstate: What mindstate to make running the script a noop. Defaults to 31

UserVars used in this script:

Other scripts used by this script:


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: attunement, 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:


fill-dirt

Fills a dirt stacker with dirt.

Script usage: Run the script in any room where dirt is forageable.

Script arguments:

Settings used in this script:

dirt_stacker: Name of dirt stacker to fill. Must be worn.

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:


glyph-of-mana

A script that will keep glyph of mana up always.

Script usage: Meant to be used as a during: in combat but can be used anywhere.

# Example usage:
hunting_info:
- :zone: cinder_beasts
  args:
  - d1
  stop_on:
  - Small Edged
  :duration: 55
  before:
  - go2 12345
  - mech-lore
  - athletics
  during:
  - glyph-of-mana

Script arguments:

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: Start the script while you and the other player are standing at a bank teller.

Script arguments:

character: The character

Settings used in this script:

UserVars used in this script:

Other scripts used by this script:


heal-remedy

Uses crafted remedies for healing

Script usage: This script will cycle through the remedies, from base-remedies.yaml, from the most potent to least potent. The script will pause a little bit, letting the remedies work to make scars, then apply scar remedies. Will need one hand free to use.

Script arguments:

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:


horse-trainer

Teaches all skills to a horse.

Script usage: This script will go through the list of skills and try to teach a horse. The order teaches is leadrope, saddle, animal, joust, kneel, prance, beg, spin, jump, combat, magic, war. You must be a Ranger to run this.

Script arguments:

Settings used in this script:

UserVars used in this script:

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_info:boxes: Sets the hunt as a box priority hunt, will stop or skip if you have box_loot_limit number of boxes if set to true
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:


join-thieves

Joins the thieves guild in Crossing.

Script usage:

Script arguments:

Settings used in this script:

UserVars used in this script:

Other scripts used by this script:


journal

A script to use an epistemic journal. Best used as an after:

Script usage:

Script arguments:

Settings used in this script:

UserVars used in this script:

journal_noun: Set the noun of your journal, defaults to journal

Other scripts used by this script:


levelup

Walks to your guild leader and levels up as many times as you can.

Script usage:
;levelup

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:


mm

A general purpose moon mage utility script

Script usage: Run the script without any arguments to see usage

Script arguments:

locate <name>: Locates the given name and reports the room number if the locate was successful
rift <name>: Locates and rifts the given name to your current room. Checks if the moons are up. Uses the same settings as ;mm locate

Settings used in this script:

waggle_sets['locate']: Optional. A waggle set called 'locate' with only the locate spell in it. Uses the data in DISCERN locate otherwise.
waggle_sets['rs']: Optional. A waggle set called 'rs' with only the locate Riftal Summons spell in it. Uses the data in DISCERN RS otherwise.

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:


newbie-gear

Crafts a set of gear for a new character.

Script usage:

Script arguments:

storage: The container in which to store finished items

Settings used in this script:

UserVars used in this script:

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:


paladin-quests

Completes the paladin Glyph quests for you.

Script usage:

Script arguments:

warding: Complete the Glyph of Warding Quest.

bonding: Complete the Glyph of Bonding Quest.

light: Complete the Glyph of Light Quest.

mana: Complete the Glyph of Mana Quest.

ease: Complete the Glyph of Ease Quest.

renewal: Complete the Glyph of Renewal Quest.

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

Script to train performance. Defaults to worn instrument but accepts an instrument setting

Script usage:

Script arguments:

Settings used in this script:

instrument: Optional. The instrument you would like to use. Defaults to worn instrument if none selected

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:

pets: Disarm boxes and place them in the pet box container
count: How many pet boxes to make
refill: Refill your lockpick ring

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.
picking_pet_box_source: The bag that disarmed pet boxes are stored in.
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:


release_cyclic

Releases all cyclic spells.

Script usage:

Script arguments:

Settings used in this script:

UserVars used in this script:

Other scripts used by this script:


ranger-companion

Summons a companion and feeds it milk or corn if it's a baby, handles raising a baby pet to young age. Meant to be used as a during: in combat but works anywhere as long as you are stationary.

Script usage:

Script arguments:

Settings used in this script:

UserVars used in this script:

Other scripts used by this script:


researcher

Does research on a single subject.

Script usage: Specify the subject as an argument, e.g. ;researcher augmentation

Script arguments:

missing

Settings used in this script:

missing

UserVars used in this script:

missing

Other scripts used by this script: missing


register

A script for searching your deed register.

Script usage: The script will search your deed register for the specified crafting material.

Example: ;register damite

   --- Lich: register active.
Output of reading register not shown here to save space.
      Results:
       45 -- a deed for a damite ingot (48V 91Q - pure Damite --Binu)
       46 -- a deed for a damite ingot (10V 86Q - pure Damite --Binu)
   [register]>stow right
   You put your register in your hunting pack.
   --- Lich: register has exited.

Script arguments:

query: The material you want to search for. Can also be information you entered in the deed note.

Settings used in this script:

crafting_container: The name of the container where you store your deed register.

UserVars used in this script:

Other scripts used by this script:


remedy

A script for crafting remedies using alchemy.

Script usage:

Script arguments:

Settings used in this script:

UserVars used in this script:

Other scripts used by this script:


restock

A script for restocking your supply of stackable and nonstackable items.

Script usage: Will parse your YAML for a restock set and make the appropriate purchases to maintain your desired quantity. This is called at the start of hunting-buddy as the preferred mechanism to maintain ammunition counts.

Script arguments:

Settings used in this script:

restock: list of item names or hashes. A name will be searched in base-consumables based on your hometown setting. It will go and purchase the appropriate version of that item found in that hometown. For example, lising "arrow" will purchase boar-tusk arrows in Crossing, but if your in Shard will purchase long arrows. Any of the values pulled from base-consumables can be overridden by providing by appropriate key-value-pair under the item name within your YAML. Not all cities have every type of item (for example only the Crossing sells rocks or sling/ammo). As such, you can explicitly define your own items within the YAML by setting the item name, with the following key-value-pairs: name, room, price, size (how many obtained in a single purchase transaction), stackable (t/f), and quantity (how many you want to maintain on hand at a given time). Here are some examples:
# This will purchase arrows from your hometown using all defaults; including quantity (which is 30)
restock:
  arrow

# This is the same as above, but with a custom quantity
restock:
  arrow:
    quantity: 45

# this is a completely custom item not contained in base-consumables. It will not change based on hometown. 
restock:
  super_cool_thing:
     name: cool thing
     room: 1337
     price: 10
     size: 3
     stackable: true
     quantity: 4

# Here are a list of generic items in base-consumables:
arrow
bolt
tk_ammo
rock

# Restock now supports custom Hometowns. This will be super useful if you use Shard as a hometown and need rocks from Hib. You can have as many as you want, but be reminded that we must support the hometown in base-towns.yaml. The hometowns will be visited in order from first to last, listed top to bottom.

hometown: Shard

restock:
  arrow:
    quantity: 50
  bolt:
    quantity: 50    
  rock:
    hometown: Hibarnhvidar
    name: smooth rocks
    room: 12172
    price: 45
    size: 30
    stackable: true
    quantity: 50

# restock can probably handle items with "charges" (i.e ritual foci) if they disappear/consumed once all charges are gone.

UserVars used in this script:

Other scripts used by this script:


rezz

A script to rezz corpses

Script usage: The script will either raise the person you specify, or if you don't specify someone it will raise all of the corpses in the room. You should add a rezz: waggle set so that it doesn't use default values for rejuv and rezz.

Script arguments:

player: The person you want to raise. Optional argument

Settings used in this script:

osrel_no_harness: true to infuse directly, false to harness first.


Waggle set to add. Customize the mana and cambrinth values to your skill level:

waggle_sets:
  rezz:
    Resurrection:
      abbrev: rezz
      mana: 17
    Rejuvenation:
      abbrev: rejuv
      mana: 10
      cambrinth:
      - 15

UserVars used in this script:

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 set of rooms and wait for 45 seconds for a player empath to heal you. You can list several PC empaths. The script will go to the nearest one from your current location. 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.
saferoom_health_threshold: Skips saferoom healing unless the 'force' argument is used. This is a number that represents your wound severity. The calculation of your wound score is Sum(wound level
2 * number of wounds at that level).
safe_room_empath: Name of PC empath healer.
safe_room_empaths: A list of PC empaths with their name and room ID
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.
force_healer_town: Override your hometown: setting to use an auto empath in a different town.

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:

sanowret_adjective: The adjective of your sanowret crystal. Default setting is sanowret. Only needed if your crystal has a different adjective.

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).
sell_loot_skip_exchange: If true, skip currency exchange.
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:


sell-pouches

Sell gem pouches for trading experience

Script usage: This script is called by crossing-training when you have 'Trading' listed as a training skill and 'sell_pouches_for_trading' set to true. You can also call it to sell a pouch.

Script arguments:

Settings used in this script:

hometown: Your hometown. This is used to determine which gemshop you will sell your pouches to
sale_pouches_container: Container where your pouches for sale are stored
waggle_set named 'sell-pouches': Casts these spells before selling a pouch. This is where you would include spell data for casting Finesse

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
  • cc - runs ;circlecheck to show your leveling status. it can take args, like cc 200
  • 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
  • lfr - echos the full data of the room a remote room number, pass the number to it
  • ls - shows all items in the current room you are in that are stealable that are not in base-stealing
  • 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
  • ez - list all escort 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. It should be all lowercase.

UserVars used in this script:

slack_token: The token used to authenticate to a Slack team.

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:


smash-pumpkins

Travel to the pumpkin vat, buy one, go one room away to smash and repeat until too injured. Then return to the safe room.

Script usage:

Script arguments:

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:


stabbity

Stabbity is designed for thieves, and relies on backstab and thrown weapons to kill things quickly. It's useful in invasions and events.

Script usage: When run without a mode specified (e.g. ;stabbity), stabbity will wield your weapon and hide, killing any mob in the room. If no mobs are present, it will wait in hiding for one to arrive.

Example Configuration

stabbity:
  weapons:
    preferred: glaes pasabas
    alternate: judge's gavel
    thrown: throwing club
  use_alternate_on:
    - archer
    - soldier
    - dryad
    - oshu
    - frostweaver
    - guardian
  use_thrown_on:
    - hawk
    - gryphon

Script arguments:

mode: Optional, can be one of:
  • equip: Wields your preferred weapon.
  • cleanup: Sheathes your preferred weapon.
  • single: Kills all mobs in the current room and exits. Does not wait for mob to arrive.
  • arena: Used to run the Dusk Ruin arena.
noloot: Do not loot mobs when killed.

Settings used in this script:

stabbity:weapons:preferred_weapon: The name of the weapon you wish to backstab with.
stabbity:weapons:alternate_weapon: The name of the weapon you wish to use for mobs defined in use_alternate_on.
stabbity:weapons:thrown_weapon: The name of the weapon you wish to use for mobs defined in use_alternate_on.
stabbity:use_alternate_on: List of mobs on which to use your alternate weapon.
stabbity:use_thrown_on: List of mobs on which to use your thrown weapon.

UserVars used in this script:

stabbity_debug: Turns on debugging messages.

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).
theurgy_prayer_mat_room: Room in which to use your prayer mat. Requires an object defined with an `id: roomid` format, ex.
theurgy_prayer_mat_room:
 id: 1234

UserVars used in this script:

Other scripts used by this script:


titlecheck

Checks for new titles since the last time you ran the script.

Script usage: Run the script and provide a set of titles to check (e.g. ;titlecheck moonmage). On the first run for that title set, all titles will be reported as new. Running the script afterwards will report only new titles.

Script arguments:

title_set

Settings used in this script:

UserVars used in this script:

titles

Other scripts used by this script:


trade

Do caravan trading in Zoluren

Script usage:

Script arguments:

Settings used in this script:

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.
training_manager_town_duration: Number of minutes to limit town training to before going hunting. This works when hunting priority is true or false
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


transfer-items

Transfers all items from one container to another. It may need to be run multiple times if you have a lot of stuff.

Script usage:

Script arguments:

source: Source container.

destination: Destination container.

Settings used in this script:

UserVars used in this script:

Other scripts used by this script:


truffenyi-commune-quest

Runs in the background to do all actions required during the truffenyi commune quest, praying to the gods presented in the visions and dropping any food items that appear in your hands. This should be run somewhere safe, without other scripts running because they can interfere. Start after drinking the vial created from your mini altar twice.

Script usage:

Script arguments:

Settings used in this script:

UserVars used in this script:

Other scripts used by this script:


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:


walkingastro

Runs as a background script whose aim is to keep your prediction pools filling and the Astrology Skill moving.

Script usage: On a 215 second timer, while not in combat (or while a series of other scripts are running), it will grab your telescope and if day observe the Sun, if night observe the Heart constellation. If your survival prediction pool fills, the script will instead align and predict against a survival skill. The aim of the script is to keep Astrology moving while you are out and about with your character, without having to rely on the ;astrology script.

Note, walkingastro will wait and not fire while the following scripts are running: 'steal', 'combat-trainer', 'pick', 'craft', 'shape', 'sew','bescort', 'remedy', 'forge', 'carve', 'performance', 'theurgy', 'hlctheurgy', 'astrology', 'astrology2', 'study-art', 'mech-lore', 'first-aid'.

Finally, this script assumes that you have a telescope and that Piercing Gaze is up. If is highly recommended that you add PG to your list of in/out of combat buff spells.

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.
workorder_min_items: Minimum number of items in the workorder required to accept.
workorder_max_items: Maximum number of items in the workorder required to accept.

UserVars used in this script:

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