# Ласкаво просимо до `millenaire-custom/`

Ця тека — **ВАША**. Millénaire ніколи не перезаписує і не видаляє
нічого з того, що ви сюди помістите, навіть під час оновлення моду.
Використовуйте її, щоб додавати нові будівлі, мешканців, культури,
мови, квести або будь-який інший контент.

Сусідня тека `millenaire/` належить моду й переcтворюється при кожній
зміні версії. Читайте її як довідник; не редагуйте її напряму.

## Модель суб-модів

Користувацький контент постачається як **суб-моди**: кожна пряма
підтека `millenaire-custom/` є одним суб-модом із власними піддеревами
`cultures/`, `languages/`, `gathering_type/` та/або `quests/`. Кілька
суб-модів можуть співіснувати; їхні внески накладаються детерміновано
(для файлів REPLACE перемагає перший суб-мод за алфавітом, інші
вносять адитивний внесок).

Імена тек суб-модів мають відповідати `[A-Za-z0-9_-]+`. Імена
`cultures`, `languages`, `gathering_type`, `quests` і `exports`
зарезервовані на верхньому рівні — **не** розміщуйте контент
безпосередньо під `millenaire-custom/cultures/...`. Мод відмовиться
завантажувати такі файли та запише WARN при запуску.

## Швидкий старт 1 — Додати будівлю до нормандської культури

```
millenaire-custom/
└── my-norman-tweaks/             # будь-яке ім'я [A-Za-z0-9_-]+ — ваш суб-мод
    └── cultures/
        └── norman/
            └── buildings/
                └── houses/
                    ├── my_house.json    # метадані плану (копія з _templates/)
                    └── my_house.nbt     # шаблон структури (експорт із гри)
```

`.nbt` створюється у грі за допомогою блоку **Import Table**. `.json`
копіюється з `millenaire/_templates/_template_building.json` та
редагується.

## Швидкий старт 2 — Створити абсолютно нову культуру

```
millenaire-custom/
└── viking-pack/                          # ваш суб-мод
    ├── cultures/
    │   └── viking/                       # id культури (має відповідати [a-z0-9]+)
    │       ├── culture.json              # обов'язково: name, language, biomes
    │       ├── namelists/
    │       │   ├── men_names.txt         # обов'язково: хоча б один namelist
    │       │   ├── women_names.txt
    │       │   └── family_names.txt
    │       ├── villagers/
    │       │   └── leaders/
    │       │       └── leader.json       # обов'язково: хоча б один тип мешканця
    │       ├── villages/
    │       │   └── basic_village.json    # обов'язково: хоча б один тип села
    │       ├── buildings/
    │       │   └── townhalls/
    │       │       ├── townhall.json     # обов'язково: хоча б одна ратуша
    │       │       └── townhall_a_0.nbt
    │       └── shops/
    │           └── townhall.json         # обов'язково: магазин для ратуші
    └── languages/
        └── en_us/
            └── viking_sentences.txt      # обов'язково, як мінімум en_us
```

## Гарячого перезавантаження немає

Контент завантажується один раз, при запуску сервера. Після редагування
будь-якого файлу під `millenaire-custom/` **перезапустіть сервер**, щоб
зміни набули чинності.

## Імпорт аддону Millénaire 1.12

Помістіть застарілий пак як підтеку `millenaire-custom/` (наприклад,
`millenaire-custom/MyOldPack/`). При наступному запуску Millénaire
автоматично перетворює його на `MyOldPack_converted/`. Сусідня тека
`_converted/` стає рантайм-суб-модом; оригінал зберігається як джерело.

## Орієнтири

- **Повний посібник**: `millenaire/_docs/content-guide.en.md`
  (розгортається при кожному запуску моду)
- **Шаблони** (скелети для копіювання): `millenaire/_templates/`
- **Довідкові каталоги** (ID цілей, спеціальні точки, ...):
  `millenaire/_reference/`
- **Репозиторій GitHub**: <https://github.com/Kinniken/Millenaire>
