# Vision & Scope

### **Паркур-режим — Vision &amp; Scope**

#### **1. Контекст и проблема**

На сервере существует режим строительства с ранговой системой, где строительство — это измеримый навык: игрок проходит оценку, получает ранг и открывает новые возможности. Паркур-режим расширяет эту концепцию на другой аспект Minecraft.

##### **Паркур решает три задачи одновременно:**

- Добавляет второй измеримый навык — соревновательное прохождение уровней с прогрессией, которая сохраняется между сессиями.
- Создаёт «режим отдыха» — метаигру между сессиями строительства, снижающую усталость от основного режима.
- Служит переходной стадией перед разработкой основного режима сервера, в который механика процедурной генерации уровней органично перерастёт. В дальнейшем паркур-режим станет частью метаигры основного режима.

#### **2. Целевая аудитория**

**Первичная аудитория** — игроки, уже присутствующие на сервере в строительном режиме. Им знакома ранговая система, они понимают ценность прогрессии. Паркур предлагает им альтернативное занятие без необходимости менять сервер.

**Вторичная аудитория** — новые игроки, которых привлекает именно паркур как жанр. Для них режим является точкой входа на сервер.

#### **3. Основной игровой цикл (Core Loop)**

Вход в режим → Лобби<span class="s2">  
</span><span class="s1"><span class="Apple-converted-space"> </span></span>↓<span class="s2">  
</span>Автоматическая генерация уровня<span class="s1"> (</span>по текущему рангу игрока<span class="s1">)</span><span class="s2">  
</span><span class="s1"><span class="Apple-converted-space"> </span></span>↓<span class="s2">  
</span>Прохождение уровня<span class="s2">  
</span><span class="s1"><span class="Apple-converted-space"> </span></span>↓<span class="s1"> (</span>успех<span class="s1">)<span class="Apple-converted-space"> </span></span>↓<span class="s1"> (</span>провал<span class="s1">)</span><span class="s2">  
</span>Получение опыта<span class="s1"> <span class="Apple-converted-space"> </span></span>Нет штрафа<span class="s1"> (</span>обычный уровень<span class="s1">)</span><span class="s2">  
</span><span class="s1"><span class="Apple-converted-space"> </span></span>↓<span class="s2">  
</span>Накопление опыта → порог ранга<span class="s2">  
</span><span class="s1"><span class="Apple-converted-space"> </span></span>↓<span class="s2">  
</span>Ранговый экзамен<span class="s1">:</span><span class="s2">  
</span>уровень повышенной сложности<span class="s2">  
</span>с механиками следующего ранга<span class="s2">  
</span><span class="s1"><span class="Apple-converted-space"> </span></span>↓<span class="s1"> (</span>успех<span class="s1">)<span class="Apple-converted-space"> </span></span>↓<span class="s1"> (</span>провал<span class="s1">)</span><span class="s2">  
</span>Получение нового ранга<span class="s1"><span class="Apple-converted-space"> </span></span>Штраф<span class="s1">: </span>снятие части опыта<span class="s2">  
</span>Разблокировка механик<span class="s1"> <span class="Apple-converted-space"> </span></span>Повторная попытка позже

##### **Важные детали цикла:**

- При входе в режим уровень генерируется **автоматически** — игрок попадает в него без ручного запуска.
- Штраф за провал (снятие опыта) действует **только на ранговом экзамене**, не на обычных уровнях. Это снижает барьер для casual-игроков и сохраняет напряжение именно в ключевой момент.
- Ранговый экзамен **заменяет** очередной обычный уровень при достижении порога опыта — отдельного вызова нет.
- При выходе из режима посреди уровня: **уровень удаляется**, при повторном входе игрок появляется в **лобби** и получает новый сгенерированный уровень. Прогресс незавершённого уровня не сохраняется.

#### **4. Независимые системы**

Режим состоит из четырёх полностью независимых систем. Каждая система разрабатывается, тестируется и обновляется отдельно. Взаимодействие между ними происходит **только через явно описанные контракты** (см. документ Subsystems Spec).

<table cellpadding="0" cellspacing="0" class="t1" id="bkmrk-%D0%A1%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0-%D0%9E%D1%82%D0%B2%D0%B5%D1%82%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE"><tbody><tr><td class="td1" valign="top">Система

</td><td class="td1" valign="top">Ответственность

</td><td class="td1" valign="top">Знает о других системах

</td></tr><tr><td class="td1" valign="top">Ранговая система

</td><td class="td1" valign="top">Прогрессия, очки, экзамены, награды

</td><td class="td1" valign="top">Нет

</td></tr><tr><td class="td2" valign="top">Процедурная генерация уровня

</td><td class="td2" valign="top">Построение геометрии по параметрам

</td><td class="td2" valign="top">Нет

</td></tr><tr><td class="td2" valign="top">Парсер уровней в конфиги

</td><td class="td2" valign="top">Перевод построенных карт в данные генерации

</td><td class="td2" valign="top">Нет

</td></tr><tr><td class="td2" valign="top">Система создания мира

</td><td class="td2" valign="top">Разворачивание мира со сгенерированным уровнем

</td><td class="td2" valign="top">Нет

</td></tr></tbody></table>

Единственная точка связи между системами — **Subsystems Spec**, где описан маппинг <span class="s3">ранг</span> <span class="s3">→</span> <span class="s3">параметры</span> <span class="s3">генерации</span>.

#### **5. Out of Scope — версия 1.0**

Следующие возможности явно исключены из текущей разработки. Их добавление требует отдельного решения и обновления документации:

- Кооперативный паркур (несколько игроков на одном уровне)
- Редактор уровней для игроков
- Сезонная система / временные ивенты
- Рейтинговые таблицы между игроками (лидерборд)
- Повтор / запись прохождения

#### **6. Критерии успеха**

Режим считается успешным при достижении следующих показателей:

- **Retention D3:** не менее 40% игроков, попробовавших режим, возвращаются на третий день.
- **Конверсия в ранг 2:** не менее 60% игроков, начавших режим, достигают второго ранга.
- **Среднее число попыток на экзамен:** не более 5 — сигнал о сбалансированной сложности.
- **Время сессии:** средняя сессия 15–30 минут — режим работает как «отдых», а не затягивает на часы.

#### **7. Принцип независимости систем**

Ни одна из четырёх систем не импортирует, не вызывает и не знает о внутреннем устройстве другой. Любое взаимодействие между системами проходит через контракт, описанный в Subsystems Spec. Нарушение этого принципа в коде требует обсуждения и обновления документации до мержа.

Этот принцип обеспечивает возможность замены любой системы (например, генератора уровней) без затрагивания остальных частей режима.