Files
ForbiddenStarsApp/docs/rules/README.md
T
NotBigGhostandClaude Opus 5 275d64e379 Правила: уточнения карт в Markdown и соглашения о формате блоков
cards-faq.md — «Уточнение карт» (декабрь 2020): общие положения и уточнения
по картам четырёх фракций, 93 блока. README.md — формат для #7/#10: маркер
блока с постоянным id и страницей PDF, kind для примеров, подписей и
связанных тем, словарь значков.

#6

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LqSoRj99iwVEH5U5fnZgsd
2026-09-19 11:51:49 +03:00

95 lines
7.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Правила Forbidden Stars в Markdown
Текст правил, разбитый на логические блоки. Из него строится поиск по правилам (веха v1.6):
на блоки навешиваются теги и синонимы (#7), затем их индексирует Meilisearch (#10).
| Файл | Источник | Страниц | Блоков |
|---|---|---|---|
| [rules.md](rules.md) | буклет «Правила игры» — `fs_rules_rus_web.pdf` | 16 | 184 |
| [reference.md](reference.md) | буклет «Справочник» — `fs_reference_rus_web.pdf` | 20 | 427 |
| [cards-faq.md](cards-faq.md) | «Уточнение карт», декабрь 2020 — `Уточнение_карт_Forbidden_Stars_декабрь2020.pdf` | 12 | 93 |
PDF в репозитории нет: они лежат вложениями в задаче #6. Правила и справочник — сканы без
текстового слоя, их текст распознан вручную по страницам. У «Уточнения карт» текстовый слой
есть, он взят за основу и сверен со страницами. Что не перенесено (обложки, художественный
текст, содержание), сказано в шапке каждого файла.
## Блок
Блок — наименьшая единица поиска: абзац под заголовком источника, пункт списка статьи
справочника или одна карта в уточнениях. Блок начинается маркером — HTML-комментарием,
который при отображении не виден:
```markdown
<!-- block: rules.battle.retreat.attacker; page: 15 -->
#### Атакующий отступает
Когда атакующий отступает, он должен переместить…
```
- **Граница блока — маркер.** Блок тянется до следующего маркера. Заголовок внутри блока
относится к нему. Если у абзаца нет своего заголовка, блок начинается прямо с текста.
- **Контекст блока** — цепочка заголовков над ним: `#` — файл, `##` — раздел или статья
глоссария, `###`/`####`/`#####` — подразделы. Первый блок раздела несёт его заголовок.
- **Нумерованные шаги** (подготовка к игре, шаги битвы) — отдельные блоки, заголовок шага
сохраняет номер источника: `### 2. Раунд битвы`, `#### а. Выберите Боевую Карту`.
- **Список** остаётся одним блоком вместе с вводной фразой, если пункты не имеют смысла
по отдельности. В справочнике каждый пункт статьи — самостоятельное правило, поэтому
каждый пункт — свой блок.
### Поля маркера
| Поле | Обязательно | Значение |
|---|---|---|
| `block` | да | постоянный id блока, уникальный во всей папке |
| `page` | да | страница PDF; `4-5`, если блок переходит на следующую страницу |
| `kind` | нет | тип не-правила (см. ниже); без `kind` блок — правило |
### Id
`<файл>.<раздел>[.<подраздел>…]` — латиница в нижнем регистре, слова через дефис, смысловые
английские слаги: `rules.orders.advance.limits`, `ref.retreats.defender.not-attacker-system`,
`faq.eldar.combat.psychic-lance`. Префикс: `rules.`, `ref.`, `faq.`. Вложенность id повторяет
вложенность заголовков, но не обязана совпадать с ней буквально.
**Id постоянны.** К ним привязываются теги, синонимы и ссылки «см. также» (#7), а через
них — поисковый индекс. Исправлять текст блока можно свободно. Id переименовывать нельзя:
новый блок получает новый id, а id удалённого блока больше не используется.
### `kind`
| Значение | Что это |
|---|---|
| `example` | врезка «Пример…» — иллюстрирует правило, но и сама может его уточнять |
| `caption` | подпись к схеме или иллюстрации. Если схема без подписи несёт информацию (например, раскладка тайлов), её описание составлено при переносе и выделено курсивом |
| `related` | строка «Связанные темы» из справочника — готовые связи между статьями |
## Текст
- Дословно, включая опечатки и авторскую пунктуацию источника. Ссылки «см. … на стр. N» —
номера страниц буклета.
- Переносы склеены, колонки и врезки выведены в порядке чтения.
- Выделение источника сохранено: жирный — `**…**`, курсив — `*…*`.
- Художественный текст (лор) не переносится.
## Значки
Значки внутри текста передаются словом в квадратных скобках. При отображении их можно
заменить картинкой, а для поиска они остаются словами.
| Запись | Значок |
|---|---|
| `[атака]`, `[защита]`, `[мораль]` | боевой значок на любом компоненте (мораль — боевой дух, аквила) |
| `[куб: атака]`, `[куб: защита]`, `[куб: мораль]` | значок на грани боевого куба |
| `[куб]` | куб, который нужно бросить |
| `[жетон: атака]`, `[жетон: защита]` | боевой жетон (значок в круге) |
| `[ресурс: кузница]`, `[ресурс: запасы]`, `[ресурс: подкрепление]`, `[ресурс: процветание]` | значок ценного ресурса на знамени мира |
| `[приказ: развертывание]`, `[приказ: планирование]`, `[приказ: доминирование]`, `[приказ: продвижение]` | жетон приказа |
## Проверка
Формальная проверка файлов (выполнялась при переносе, в репозиторий не входит): у каждого
маркера корректный формат, id уникален и имеет префикс своего файла, страница — в пределах
PDF, у каждого блока есть текст, каждая непропущенная страница дала хотя бы один блок, в
тексте только значки из таблицы выше, нет висячих переносов.