Remove off-queue.md and add new design documentation files including README.md, defs.md, near-term.md, projects.md, runtime.md, people.md, staffing.md, and schedule.md to outline the structure and agreements for the game's design phases.
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
# Фаза 6. Библиотека генерации
|
||||
|
||||
## Зависимости
|
||||
|
||||
- [Фаза 5](05-people-defs.md)
|
||||
|
||||
## Зачем
|
||||
|
||||
Из каталога, карты и сида получаются люди — семьями и детерминированно. Библиотека тестируется
|
||||
без мира, без сокета и без хоста, как `HSchool.Content` сейчас.
|
||||
|
||||
## Задачи
|
||||
|
||||
- [x] Новый проект `HSchool.People` и `tests/HSchool.People.Tests`; ссылка только на
|
||||
`HSchool.Content`, ни Arch, ни ASP.NET
|
||||
- [x] Записи `Person`, `Family`, `SchoolClass`, `Roster` — простые данные, не сущности
|
||||
- [x] Ёмкость из карты: `PupilSlots` по кабинетам и `RoomDef.positions` дают, сколько нужно
|
||||
учеников и каких работников
|
||||
- [x] Генерация семьями: взрослые → дети нужных возрастов → раскладка детей по параллелям и
|
||||
взрослых по должностям
|
||||
- [x] Совмещение ролей: работник может оказаться родителем ученика той же школы
|
||||
- [x] Порядок бросков зафиксирован: тело первым, навыки после, `bodyLimits` применяются зажимом
|
||||
- [x] Склонения: модели в коде, явная таблица из def перекрывает модель
|
||||
- [x] Сид школы приходит снаружи; сид каждой семьи выводится из него
|
||||
|
||||
## Тесты, без которых фаза не закрыта
|
||||
|
||||
- [x] Тот же сид, карта и набор имён — ровно тот же ростер
|
||||
- [x] Тринадцатая семья не меняет, как разыграны первые двенадцать (фамилия, состав, имена).
|
||||
Класс ребёнка при этом меняется — места раздаются вперемешку по школе, иначе братья и
|
||||
сёстры всегда оказывались одноклассниками; см. [`docs/design/02-people/people.md`](../../design/02-people/people.md)
|
||||
- [x] Фамилии, родовые формы и отчества внутри семьи согласованы
|
||||
- [x] Ученик с телосложением «полное» не получает высокую ловкость
|
||||
- [x] Все ученические места заполнены, все должности закрыты
|
||||
- [x] Школа из одного кабинета и школа из одиннадцати — обе собираются
|
||||
|
||||
## Критерий готовности
|
||||
|
||||
- `HSchool.People.Tests` зелёные
|
||||
- В проекте нет упоминаний сокетов, ECS и `DateTime.Now`
|
||||
|
||||
## Стоп
|
||||
|
||||
Не класть людей в `World`. Не трогать сервер, клиент и формат сейва.
|
||||
Reference in New Issue
Block a user