33 lines
3.5 KiB
Markdown
33 lines
3.5 KiB
Markdown
|
|
# CLAUDE.md — оглавление
|
|||
|
|
|
|||
|
|
Этот файл — **только навигация**. Содержание живёт в `docs/`, по одному файлу на тему.
|
|||
|
|
Читай нужный раздел, а не весь проект.
|
|||
|
|
|
|||
|
|
## Документация
|
|||
|
|
|
|||
|
|
| Файл | О чём | Когда открывать |
|
|||
|
|
|---|---|---|
|
|||
|
|
| [docs/00-overview.md](docs/00-overview.md) | что это за прототип, границы задачи | первое знакомство |
|
|||
|
|
| [docs/01-build-and-run.md](docs/01-build-and-run.md) | сборка, запуск, управление, dev-режимы CLI | собрать и потыкать |
|
|||
|
|
| [docs/02-architecture.md](docs/02-architecture.md) | карта модулей, порядок шага симуляции, правила зависимостей | перед любой правкой кода |
|
|||
|
|
| [docs/03-rendering.md](docs/03-rendering.md) | софтверный фреймбуфер, изометрия, сортировка, спрайты | рендер, камера, спрайты |
|
|||
|
|
| [docs/04-world.md](docs/04-world.md) | тайлмап, планировка уровня, DDA-рейкаст, коллизии, мишени | карта, LOS, коллизии |
|
|||
|
|
| [docs/05-squad-ai.md](docs/05-squad-ai.md) | **ядро**: LaneClear, решатель огневых позиций, резерв линий, стрельба | поведение отряда |
|
|||
|
|
| [docs/06-debug-and-tuning.md](docs/06-debug-and-tuning.md) | оверлей F1–F4, метрики, runtime-тюнинг, `--set` | отладка и балансировка |
|
|||
|
|
| [docs/07-milestones.md](docs/07-milestones.md) | журнал вех M0–M6: что сделано и чем проверено | история и статус |
|
|||
|
|
| [docs/08-decisions.md](docs/08-decisions.md) | отклонения от спека и почему, с замерами | «почему тут не как в ТЗ» |
|
|||
|
|
| [docs/09-acceptance.md](docs/09-acceptance.md) | критерии приёмки (спек 11) и их текущие цифры | приёмка |
|
|||
|
|
| [docs/10-atmosphere.md](docs/10-atmosphere.md) | **хоррор-слой**: свет, туман войны, трассеры, напряжение | картинка и атмосфера |
|
|||
|
|
| [docs/11-melee.md](docs/11-melee.md) | **ближний бой**: сектор удара, три фазы, свой круг, дуга | клинки, классы оружия |
|
|||
|
|
|
|||
|
|
## Быстрые факты
|
|||
|
|
|
|||
|
|
- Исходный спек: [SQUAD_PROTOTYPE_SPEC.md](SQUAD_PROTOTYPE_SPEC.md) — источник истины по правилам.
|
|||
|
|
- Сборка: `cmake -S . -B build && cmake --build build --config Release` → `build/bin/squad_proto.exe`.
|
|||
|
|
- Самопроверка: `squad_proto.exe --accept` печатает PASS/FAIL по всем измеримым критериям.
|
|||
|
|
- Все числа — в [src/tuning.h](src/tuning.h). Магических констант по коду быть не должно.
|
|||
|
|
- `src/ai/` не знает про рендер, изометрию и ввод. Это правило не нарушать.
|
|||
|
|
- Правило «не бить своих» одно на все классы оружия: у ствола это отрезок,
|
|||
|
|
у клинка — сектор. Ослаблять его нельзя нигде.
|
|||
|
|
- `RenderGame` принимает `const Game&` — эффекты физически не могут влиять на симуляцию.
|