The unit's identity settings are configured through the settings... > identity menu, which is a frontend for the @id command. Adjusting the unit's identity is tied to a unique security rule, identity, which is distinct from other management settings, so it is possible to be more (or less) stringent about who can adjust these options.
Name
This is a free-form string of up to 32 ASCII characters that ARES uses to uniquely identify the unit in human-readable communication. Internally, it is stored in the LSD:id.name database entry. Together with the unit's prefix, it forms one part of the callsign, which is the nominal designator the unit produces in local chat.
Prefix
This is a string of up to 32 characters that is placed before the name in the callsign. The standard prefix is NS. Many controller models have their own prefixes, some of which are listed below:
Model | Prefix |
---|---|
SXD | SXD |
SXD/8R | SXD |
SXDjr | SXDjr |
DAX/2 | DAX/2 |
DAX/2m | DAX/2 |
DAX/T | DAX/T |
iKitten | iKitten |
DAX/3 | dax/3 |
DAX/3m | dax/3 |
NS-409 Nightfall/3 | NF/3 |
NS-409 Nightfall/S | NF/S |
DAX/2c | DAX/2 |
YS-712 XSU | XSU |
oXq.205.4i Relic | 4i/ |
oXq.205.8i Artifact | 8i/ |
NS-120 Mesta | M/ |
VAR/H Metropolis | VAR/H |
VAR/I Analyte | VAR/I |
CX/Supervisor | CX/ |
Prefixes ending in /, -, _, or . are attached to the unit name without a space.
Like the model itself, the prefix cannot be set by id; it is considered to be a prerogative of the vendor. In the database, the prefix is stored in the entry LSD:id.prefix.
Many new units despise the prefix, and mistakenly believe that they should have total control over their name. This is a common problem with new convertees who are still testing the limits of their status as products and retain attached to their former human identities. If you find it necessary to bribe your unit into compliance by removing its prefix, the entry should be deleted from the database rather than set to a blank string, e.g.
@db delete id.prefixAfterward it will be necessary to regenerate the unit's identification (or set the unit's name again) to update the callsign.
Regenerating the unit's identification builds the LSD:id.callsign field out of the prefix and name, and generates a new serial using the method explained below. It is accomplished with the command @id regen.
Serial
The serial is a string that identifies the unit uniquely. The @id regen command automatically assigns a serial by concatenating the unit's main controller model (e.g. NS-112) with a number derived from the avatar UUID. For standard controllers, the following code is used:
integer mantissa = (integer)("0x" + substr(llGetOwner(), 29, 35)) % 1000000;
string mantissa_s = substr((string)mantissa, 0, 1) + "-" + substr((string)mantissa, 2, 5);
if(~strpos(model, "-")) {
model = serial + "-" + mantissa_s;
} else {
model = serial + " " + mantissa_s;
}
Thus, an Aide unit with the UUID d69ca06e-aa22-49e4-86e1-42677e26f3f5 will be assigned the serial NS-112-43-3845, but the same UUID will generate a DAX/2 with the serial DAX/2 43-3845. The oXq.205.4i and 8i units have their own unique method of serial generation based on a small alphabet of letter combinations; current research suggests these were intended to be pronounceable.
After generation, the completed serial is stored in LSD:id.serial, where other system components (mainly _menu and _baseband may retrieve it as needed.
Gender
This is an umbrella term that refers to several related but distinct settings which are all set simultaneously during the Setup Wizard.
Voice gender
The voice gender determines which of the available speech markers to play whenever the unit speaks. It is stored in LSD:id.gender.voice and may be assigned one of the following three values: f, m, or n. The exact sound to be played is determined by the unit's current Persona. Information on overriding the speech marker can be found in Tutorials: Chat: How to alter the speech marker (chat sound).
Announcer voice
Although not technically a gender setting, the ARES Setup Wizard assigns one of the three bundled announcers to the unit when gender is selected. These are stored as database dumps in the files rachel.av (female), josh.av (male), and elli.av (neuter). To switch between them, run the appropriate database import command:
Rachel: @db load rachel.av
Josh: @db load josh.av
Elli: @db load elli.av
You must have the database permission to import these database entries.
ARES announcers are not compatible with Companion announcers; not only do they use a different file format, but there are many sounds in ARES not included in the Companion voice definition and vice versa. For more information on creating ARES announcer voices, see:
- the ARES Announcer Voice Template (a complete .av file that just needs the messages replaced with UUIDs), and
- the ARES Announcer Voice Script (which contains just the lines to read).
Pronouns
ARES separates pronouns into two sets: the mental and physical sets. Usually these are the same, but for some cases (such as the "sub" options on the Setup Wizard), they may differ.
The physical pronouns are how the system will refer to the unit in descriptions (in scripts and persona preset messages).
The mental pronouns are how the unit will refer to itself when speaking (in scripts and persona preset messages).
There is no enforcement of other use of pronouns; these settings are only for the convenience of roleplay scripts.
When setting the unit's gender through the menus or the @id gender physical|mental command, provide one of the following letters when prompted:
- c: custom (use provided pronouns)
- f: female (she/herself)
- i: inanimate (it/itself)
- m: male (he/himself)
- n: neuter (they/themself)
To provide custom pronouns, fill out the following template, taking care to ensure no typos are created:
@id gender mental c neuter,they,them,their,theirs,themself
Then apply the same for @id gender physical instead of @id gender mental.
Here are templates for the major sets of neopronouns that have seen widespread use in English:
- Spivak: @id gender mental c nonbinary,xe,xem,xyr,xyrs,xemself
- Fae: @id gender mental c fae,fae,faer,faer,faers,faerself
- Piercy: @id gender mental c individual,per,per,pers,pers,perself
- Elverson: @id gender mental c nonbinary,ey,em,eir,eirs,eirself
- Philologus: @id gender mental c nonbinary,ve,ver,vis,vis,verself
- Net: @id gender mental c hermaphrodite,sie,hir,hir,hirs,hirself
The fields are properly called: gender name (which should be usable as an adjective), subject, object, genitive, possessive, and reflexive.
Using pronouns
Pronouns should not be directly set via the database; the @id command also makes them available in LSD:env for the convenience of scripters afterward. For example,
say I am merely a lowly $pm.adj unit.
is a valid snippet of ARES shell script, and will produce something like I am merely a lowly female unit. when run.
The variable names provided inside LSD:env are in LSD:env.pm (mental) or LSD:env.pp (physical) and are named adj, sub, obj, gen, pos, and refl.