Skip to content
Adam Sechrest edited this page Mar 3, 2022 · 2 revisions

What is YAML?

YAML is a human friendly file format that we use to store settings. 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 lootables) of item nouns:

lootables:
- bolt
- arrow
- coin
- map
- scroll

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 if I want more help starting out?

YAML Basics: Part 1

What all can I configure?

That's a good question! Take a look at the the list of settings on Elanthipedia. Click EXPAND next to each script name to get more info on each one.

Debugging YAML files

http://yaml-online-parser.appspot.com/

Clone this wiki locally