# RaceNames

> Kinbarrow modding reference — content tree `45d0fe274f851548`, version `0.2.0+main.c05ef2b`.

`names/<id>.ron` — OURS; per-race name register (humans stay in `names.rs`; half-elves compose from both parents' tables — the README race-key contract). The `race` field is the file's id (not `id`).

**Note on syntax:** these files are RON, not JSON. The shapes below are exact,
but punctuation follows RON — read a real `data/*.ron` file alongside.

## Fields

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `given_female` | `string[]` | required | Female given names. |
| `given_male` | `string[]` | required | Male given names (glossed per line). |
| `given_unisex` | `string[]` | required | Unisex given names (a small chance to draw one); empty where the source distinguishes gender. |
| `place_elements` | `string[]` | required | Place-name elements for settlement/region naming; glosses ride as line comments. |
| `place_position` | `PlacePosition` | required | Whether place elements attach as a prefix, a suffix, or either. |
| `race` | `string` | required | The file's id — the race key this register serves (the README race-key contract). |
| `register` | `string` | required | The naming register/style label (e.g. "old-norse"). |
| `surnames` | `string[]` | required | Surnames — epithets ("the Old") or lineage forms; file comments say which. |

## Nested shapes

### PlacePosition

Where a name fragment sits relative to a place's stem — a prefix, a suffix, or either.

`Prefix`, `Suffix`, `Either`

