Enhance school creation functionality by introducing support for name sets in the API and UI. Update the catalog to include skills, traits, body attributes, needs, and name sets, improving character generation capabilities. Revise localization strings for better user guidance and update tests to validate the new name set functionality and ensure robustness in school creation processes.
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
# Фаза 7. Люди в школе
|
||||
|
||||
## Зависимости
|
||||
|
||||
- [Фаза 6](06-people-generator.md)
|
||||
- [Фаза 2](02-school-worker.md)
|
||||
|
||||
## Зачем
|
||||
|
||||
Школа создаётся с людьми, они живут в её `World` и переживают перезапуск сервера. Экран пока
|
||||
не меняется — это фаза про данные.
|
||||
|
||||
## Задачи
|
||||
|
||||
- [ ] Ванильная карта дорабатывается до одиннадцати кабинетов; подписи кабинетов становятся
|
||||
номерами помещений («204»), а не именами классов
|
||||
- [ ] Компоненты Arch под слои человека; сущности собираются из записей генератора
|
||||
- [ ] Класс как сущность: параллель, литера, закреплённый кабинет
|
||||
- [ ] Нужды тикают вместе со школой — механика есть, скорость в `core` нулевая
|
||||
- [ ] `saves/{id}.people.json`: сид, люди, семьи, классы. Пишется **только** при изменении
|
||||
состава, не по таймеру; `saves/{id}.json` остаётся маленьким и частым
|
||||
- [ ] Загрузка ростера при старте школы; ростер, не сходящийся с картой, оставляет школу
|
||||
незапущенной и файл нетронутым — как сейчас с картой
|
||||
- [ ] Воркер публикует неизменяемый снимок ростера, как публикует `SchoolState`
|
||||
|
||||
## Критерий готовности
|
||||
|
||||
- Создать школу — все ученические места и должности заняты
|
||||
- Перезапустить сервер — те же люди с теми же именами и характеристиками
|
||||
- Файл ростера не переписывается каждые тридцать секунд
|
||||
- `dotnet test` проходит
|
||||
|
||||
## Стоп
|
||||
|
||||
Ни панели, ни фильтров, ни HTTP списка людей. Никакого поведения: люди существуют и стоят.
|
||||
Reference in New Issue
Block a user