squad-proto/docs/23-endgame.md

183 lines
12 KiB
Markdown
Raw Permalink Normal View History

Документация: границы движка, работа через модель, дизайн игры до лейтгейма 18-engine.md границы Tile2D, проекции 2D, формат проекта, второй проект 19-agent.md инструменты --tool, скиллы, терминал в редакторе 20-gdd.md акты, петли, рост отряда, закон масштаба, бюджет 200 часов 21-damage.md семь стихий, статусы, десять реакций, формулы, триггеры 22-loot.md редкости, аффиксы, артефакты, зачарования, материалы 23-endgame.md Бездна, мутации, лидерборды, 262 ачивки Плюс правки 01/02/07/15/16/17 под переехавшие пути и новые правила забега. Дизайнерская часть держится на одном законе: угроза растёт квадратично, сила отряда — линейно с затуханием, разрыв закрывается ЗНАНИЕМ, а не числами. Из него выведены и экономика опыта (41 млн против 44 млн дохода), и то, почему реакции считаются от глубины, а не от урона оружия, и почему в Бездне множитель HP разрешён, а во всём авторском контенте запрещён. .claude/commands: скиллы /tile2d, /room, /floor — правила этого движка, которые нельзя вывести из кода. Главное записано первым: не отчитываться об успехе без прохода --tool validate. Числа в этих документах — вход для инструментов, а не украшение. Расхождение между таблицей и выводом инструмента означает, что неправ документ. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-14 01:07:45 +07:00
# 23 — Лейтгейм: Бездна, лидерборды, ачивки
Продолжение [20-gdd.md](20-gdd.md). Здесь то, что начинается после сотого этажа
и не кончается.
## 1. Что такое лейтгейм этой игры
Не «ещё контент». После акта VI у игрока собран отряд из пяти, три гнезда
артефактов и сборка, которую он строил восемьдесят часов. Дальше игра меняет
вопрос: не «пройду ли я», а **«как глубоко»**.
Это переход от прохождения к соревнованию, и он должен быть заметным: на D101
меняются правила, а не только цифры.
## 2. Бездна: честная беговая дорожка
Ниже сотого этажа авторского содержимого больше нет — и притворяться, что есть,
нельзя. Поэтому здесь включается то, что до сих пор было запрещено.
### 2.1. Отмена правила о множителях
В [16-descent.md](16-descent.md) записано: **глубина меняет, КТО выходит, а не
сколько у него HP**. Это правило держало весь авторский контент, и оно верное:
«тот же бредущий, но втрое толще» — не страшнее, а дольше.
С D101 оно снимается:
```
HP,урон тварей ×= 1 + 0.045·(d 100)
```
Почему это допустимо здесь и нигде больше: в Бездне игрок не проходит контент, а
**меряет сборку**. Он уже видел всё, что игра хотела показать; дальше ему нужна
не новизна, а линейка. Множитель — это и есть линейка, и он честно назван
беговой дорожкой, а не «новым уровнем сложности».
Умножение линейное, а не экспоненциальное: экспонента обрывает лестницу на
конкретном этаже одинаково для всех, и лидерборд превращается в проверку, у кого
чуть больше урона. Линейный рост против затухающей силы отряда даёт лестницу
длиной в сотни этажей, где каждый следующий шаг стоит заметно дороже
предыдущего.
### 2.2. Мутации — то, что делает Бездну не только дорожкой
Каждая тварь глубже D101 получает `floor((d 100) / 25) + 1` мутаций из пула.
Мутация меняет ПОВЕДЕНИЕ, а не число.
| Мутация | Что делает |
|---|---|
| Зеркальная | отражает 25% полученной стихии в атакующего |
| Роящаяся | при смерти делится на двух вдвое слабее (до 3 поколений) |
| Голодная | лечится на 30% нанесённого урона |
| Слепая | не видит свет, но слышит стрельбу вдвое дальше |
| Якорная | не отбрасывается, KIN по ней даёт 50% |
| Заражённая | на смерти оставляет облако RAD |
| Стеклянная | 60% HP, +150% урона |
| Тихая | не издаёт звука и не подсвечивается в тумане |
| Насыщенная | иммунна к первому наложенному статусу |
Мутации стоят места в бюджете опасности этажа: мутировавшая тварь стоит
`danger × (1 + 0.35 · мутаций)`. Поэтому глубокий этаж — это не «те же сорок
тварей, но злее», а **меньше тварей, каждая из которых задача**. Потолок тел
(`MAX_LEVEL_SPAWNS = 64`) остаётся нетронутым, и это не совпадение: именно бюджет
опасности переводит рост угрозы в качество, когда мест больше нет.
### 2.3. Пороги Бездны
Каждые 25 этажей — **Порог**: этаж-аномалия с фиксированными правилами.
| Порог | D | Правило этажа |
|---|---|---|
| Первый | 125 | света нет вообще; работает только фонарь |
| Второй | 150 | эвакуация закрыта до убийства всех элит |
| Третий | 175 | стихии инвертированы: сопротивления становятся уязвимостями |
| Четвёртый | 200 | отряд входит без сумки |
| Дальше | +25 | правила смешиваются по два |
Порог — единственное место, где игра прямо проверяет знание, а не сборку.
## 3. Лидерборды
### 3.1. Три доски, а не одна
| Доска | Что мерит | Зачем отдельно |
|---|---|---|
| **Глубина** | максимальный этаж за сезон | главная, ради неё всё |
| **Скорость** | время до D100 с нуля профиля | другой навык, другие сборки |
| **Голыми руками** | глубина без артефактов | иначе доска — это лотерея дропа |
### 3.2. Счёт
```
score = 1000·D + 40·E + 12·A 250·W
```
| Символ | Что |
|---|---|
| `D` | достигнутая глубина |
| `E` | число успешных эвакуаций в сезоне |
| `A` | убитые элиты на глубинах ниже рекорда |
| `W` | вайпы |
Штраф за вайп — четверть этажа. Достаточно, чтобы «просто прыгнуть вниз и
посмотреть» имело цену, и слишком мало, чтобы делать доску страховкой от риска.
### 3.3. Сезоны
Сезон — 8 недель, общий сид генерации на всех. Один и тот же набор этажей у
всех игроков: без этого доска сравнивает удачу, а не игру. Профиль в сезонном
режиме отдельный и стартует с нуля — иначе первое место занимает тот, кто начал
раньше.
По окончании: рекорды в вечную таблицу, сезонный профиль сливается в основной
(материалы — половина, артефакты — все, опыт — весь).
## 4. Ачивки: 262 штуки
Ачивки — это не список задач, а **карта того, что игра считает достойным**.
Поэтому они собраны по категориям, и почти каждая формулируется правилом, а не
вручную.
| Категория | Кол-во | Как строятся |
|---|---|---|
| Глубина | 24 | D5, D10, …, D100 (20) + D125/150/175/200 (4) |
| Экстракшен | 22 | вынести N предметов; уйти на 1 HP; эвакуация без выстрела; 10 подряд без потерь |
| Отряд | 26 | набрать 2/3/4/5; довести оперативника до D50 без смертей; вылазка соло на D40 |
| Бой | 34 | убийства по видам (9×2), убийство залпом, TTK-рекорды, бой без урона |
| Стихии | 30 | по 3 на каждую из 7 (наложить/добить/сборка) + 9 на реакции |
| Реакции | 20 | каждая из 10 по разу + каждая 1000 раз |
| Предметы | 28 | редкости, тиры, полный комплект тира, конверсия 85% |
| Артефакты | 24 | найти N, собрать 3 гнезда, пройти D80 с одним, с самым дорогим |
| Крафт | 18 | операции, залом успешный, залом неудачный (да, за провал тоже) |
| Экономика | 16 | материалы, полное дерево ветви, все 200 уровней узлов |
| Хоррор | 12 | пройти этаж без света; без единого выстрела; не потревожив никого |
| Мета | 8 | сезонные места, три доски, вечная таблица |
**Итого 262.**
### 4.1. Правила, по которым ачивки не превращаются в мусор
1. **Ни одной за время.** «Играйте 100 часов» — это не достижение, а счётчик.
2. **Ни одной невозможной без удачи.** Всё, что зависит от дропа, имеет пити.
3. **Каждая пятая — за необычный способ, а не за повторение.** «Пройти этаж, не
потревожив никого» стоит рядом с «убить 10 000 тварей», и вторая нужна только
как фон для первой.
4. **За провал тоже.** Неудачный залом, вайп на D1, потеря артефакта — это
истории, а истории и есть то, что люди рассказывают о такой игре.
### 4.2. Примеры именованных
| Имя | Условие |
|---|---|
| «Первый свет» | пройти D1 |
| «Тише воды» | этаж без единого выстрела на D20+ |
| «Экономный» | эвакуация с полной сумкой и полным боезапасом |
| «Пирокинетик» | 1000 Растрескиваний |
| «Не мой день» | залом рассыпал реликт тира 9 |
| «Он был хорошим» | потерять оперативника, дошедшего до D50 |
| «Голыми руками» | D60 без единого артефакта |
| «Кто там?» | пройти Порог 125 без фонаря |
| «Полный набор» | все 200 уровней узлов |
| «Ниже некуда» | D200 |
## 5. Почему это удержит игрока после сотого этажа
Три независимых причины возвращаться, и ни одна не завязана на новый контент:
1. **Число.** Рекорд глубины — это одна цифра, которую можно улучшить сегодня.
2. **Сборка.** Материалы и залом дают потолок, до которого почти никто не
доходит: идеальная вещь всегда на один рискованный шаг впереди.
3. **Сезон.** Раз в восемь недель поле выравнивается, и лучший результат снова
решается игрой, а не тем, кто дольше играл.
## 6. Проверки
| Утверждение | Чем меряется |
|---|---|
| множитель Бездны даёт лестницу, а не обрыв | `--tool wall 100 300` (новый): где стена при сборке N |
| мутации не разносят потолок тел | `--tool floor <d>``spawnsDropped` обязан быть 0 |
| счёт лидерборда не выигрывается вайп-фармом | симуляция стратегий в `--tool score` (новый) |
| ачивки достижимы | `--tool achievements` (новый): для каждой — глубина и условия |
| сезонный сид даёт всем один набор этажей | `--tool map <d> <seed>` на двух машинах |