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:
Leonid Pershin
2026-08-20 12:26:13 +03:00
parent 12cc36b4dd
commit a37a5eb82d
101 changed files with 1015 additions and 921 deletions
@@ -0,0 +1,34 @@
# Фаза 50. Навык учителя на уроке
## Зависимости
- [Фаза 48](48-lesson-teacher-present.md)
- [Фаза 12](../03-staffing/12-hiring-budget.md)
## Зачем
Соискатель с математикой 78 перестаёт отличаться от 41 только зарплатой.
## Задачи
- [x] `LessonLearning.TeacherFactor` — та же кривая, что `NeedFactor`: навык 0 → 0.25, 100 → 1
- [x] Навык учителя — среднее его значений по `SubjectDef.skills`; нет ключа — `Range.Min`
- [x] `Gain` умножает на этот фактор; учитель в кабинете по-прежнему обязателен (фаза 48)
- [x] Числа кривой в коде рядом с нуждой, не новый экран и не сейв
- [x] Лог не пишем: рост тише — это и есть сигнал
## Тесты, без которых фаза не закрыта
- [x] Учитель с навыком 20 даёт меньший прирост, чем с 80, при том же ученике и голоде
- [x] Предмет с несколькими скиллами берёт среднее, а не первый попавшийся в словаре
- [x] Нет ключа навыка у учителя — подставляется минимум шкалы, рост не падает в ноль
- [x] Учителя нет в кабинете — по-прежнему нулевой рост, фактор не спасает
## Критерий готовности
- Два учителя математики в тестовой школе: слабый класс растёт заметно медленнее
- `dotnet test` проходит
## Стоп
Не вводить оценки. Не менять формулу зарплаты. Не трогать тепло и учебник.