To configure the Demographics plugin:
demographics.yml
Table of Contents
Both groups and demographic fields allow you to record information about a character - be it their eye color or hometown. Philosophically-speaking, groups are for things that associate characters with one another (e.g. everyone from France, all Marines, all Craftspeople, etc.)
Groups have a few extra features that regular demographics fields don’t:
The latter two are really only useful with a fixed list, but the census should work sensibly even when you have a freeform group.
You can enforce minimum and maximum age limits in chargen with the min_age
and max_age
values.
If you don’t want a limit, just set them to 0 and 99 respectively.
You are able to specify all of the demographics you’re going to use. Some tips:
fullname John Smith
).Any demographics you list in required_properties
are mandatory in chargen.
Any demographics you list in editable_properties
may be changed after chargen. You want to allow mutable things like hair color to change, but probably not birthdate or eye color.
Any demographics you list in private_properties
are secret. They will only show up when viewed by staff or by the character themselves.
If you set nickname_field
to the name of a demographic field (for example - callsign), that field will be shown alongisde the character’s name in places like the who list and room description. The field will also be included in ‘whois’ searches.
If you’re using the nickname field, you can control how the name and nickname are shown together using the nickname_format
config option. It’s a standard Ruby format string with two parameters: name and nickname. Here are some examples:
"%{name} (%{nickname})" Steve (Captain America)
"%{name}:%{nickname}" Steve:Captain America
Since demographics are so flexible, the help file refers players to the demographics
command to list the available demographic commands. If you want more detailed instructions, you can configure it as shown below. Any demographics not listed will show the standard help (e.g. hair <value>
).
physique: '%xcphysique <build/body type>%xn - athletic, wiry, slim, pudgy, etc.'
gender: '%xcgender <male/female/other>%xn'
The groups list is where you set up your game’s groups. Each group has a description and a list of possible values. Each value has a name and a description.
If you omit the values, the group will be freeform, allowing the player to specify any value they want. This is commonly used for Position if you don’t have a fixed list of available positions but still want Position to show up in census and whatnot like the other groups.
Faction:
desc: "Military faction."
wiki: some-page
values:
Navy: "Join the fleet, see the worlds."
Marines: "Semper fi."
The wiki page is optional, and the group directory will automatically link to that wiki page.
Ares will automatically create shortcuts for your group names - a singular one to set the group (e.g. faction <value>
for group/set <value>
) and a plural one to list the values (e.g. factions
for group faction
). If you have irregularly-spelled groups, you can add a custom value to the shortcuts
setting in the demographics config:
"colonies": "group colony"
Similarly, Ares will create shortcuts for your demographics (e.g. hair <value>
for demographics/set hair=<value>
).
In the unlikely event that you don’t want these auto-shortcuts, you can disable them by setting disable_auto_shortcuts
to true. Then you’ll be responsible for setting your own shortcuts.
You can configure which fields appear on the full census screen. For each field, you can specify the column title, width, and where to get the data. For example, this config makes two columns (25 wide and 15 wide) showing name and position.
- field: name
width: 25
title: Name
- field: group
value: position
width: 15
title: Position
A complete description of all available fields - and how to create custom fields - can be found in the “who_fields” option in the Who/Where Configuration.
The list of genders is configurable. For each gender, you need to specify the various pronouns and a noun, which may be used in coded commands.
Male:
possessive_pronoun: his
subjective_pronoun: he
objective_pronoun: him
noun: man