# ОБСЕССИЯ — ТЗ НА ФОРУМНЫЙ КОНКУРС

## 1. Общая идея

**ОБСЕССИЯ** — автоматизированная форумная игра на 7 дней.

Каждый зарегистрированный участник после окончания регистрации случайным образом получает другого участника — свою **«Обсессию»**.

Игрок знает, за кем наблюдает он, но **не знает, кто наблюдает за ним**.

В течение семи дней игрок получает секретные задания, связанные со своей Обсессией: наблюдать за её поведением на форуме, замечать привычки, пересекаться в темах, взаимодействовать, получать реакции, предугадывать ответы и т. д.

За выполненные задания начисляется **OBSESSION %**.

Цель — к концу седьмого дня довести шкалу до **100%**.

Главный принцип:

> Ты знаешь, кем одержим ты. 
> Но не знаешь, кто одержим тобой.

**Семь дней. Один человек. Совершенно нездоровое количество внимания.**

---

# 2. Регистрация

Сначала открывается отдельный этап регистрации.

Участник видит кнопку:

**[ УЧАСТВОВАТЬ ]**

После нажатия система сохраняет его **UID и ник**.

Важно: **во время регистрации Обсессия ещё никому не назначается.**

То есть нельзя назначать цель сразу после нажатия кнопки, потому что полный список участников ещё неизвестен.

После регистрации игрок видит примерно:

> ✓ ВЫ ЗАРЕГИСТРИРОВАНЫ 
> STATUS // REGISTERED 
> Ожидайте завершения регистрации.

Минимальное количество участников для запуска — **3 человека**.

---

# 3. Закрытие регистрации и распределение участников

После закрытия регистрации администратор нажимает:

**[ СФОРМИРОВАТЬ ЦЕПОЧКУ ]**

Система перемешивает всех зарегистрированных участников и создаёт **одну замкнутую цепочку**.

Например:

> Катя → Дима → Аня → Саша → Лена → Катя

Таким образом:

- у каждого ровно **одна Обсессия**;
- за каждым следит ровно **один другой игрок**;
- никто не получает самого себя;
- желательно исключить пары вида `Катя → Дима / Дима → Катя`.

До запуска администратор должен видеть получившуюся цепочку и иметь возможность:

**[ ПЕРЕМЕШАТЬ ЕЩЁ РАЗ ]**

или

**[ ПОДТВЕРДИТЬ И ЗАПУСТИТЬ ]**

Только после подтверждения игрокам становятся доступны их цели.

---

# 4. Что видит игрок после старта

В личном блоке:

> **OBSESSION // PERSONAL FILE**
>
> TARGET 
> **username**
>
> OBSESSION 
> `████░░░░░░ 37%`
>
> **ATTACHMENT**
>
> AVAILABLE LIMIT // 45%
>
> ACTIVE TASKS // 3

Ниже находятся **три персональных задания**.

Например:

> **ЭХО // +3%** 
> Естественно используй в разговоре характерное выражение своей Обсессии.
>
> [ ОТПРАВИТЬ ОТЧЁТ ]

Другие участники **не должны видеть**:
- чужую цель;
- чужие задания;
- отправленные доказательства;
- историю выполнения.

Это персональная информация конкретного UID.

---

# 5. Система OBSESSION %

Отдельных очков/баллов нет.

Единственная система прогресса — **OBSESSION % от 0 до 100**.

В зависимости от процента меняется стадия:

| OBSESSION | Стадия |
|---|---|
| 0–14% | INTEREST |
| 15–29% | CURIOSITY |
| 30–44% | ATTACHMENT |
| 45–59% | FIXATION |
| 60–74% | PREOCCUPATION |
| 75–89% | OBSESSION |
| 90–100% | CRITICAL |

Можно добавить подписи:

**INTEREST** — «я просто обратил внимание.»

**CURIOSITY** — «мне просто стало интересно.»

**ATTACHMENT** — «почему я опять читаю его сообщения?»

**FIXATION** — «это совпадение. четвёртое за сегодня.»

**PREOCCUPATION** — «мне просто нравится знать, что происходит.»

**OBSESSION** — «мне совершенно всё равно, где он. кстати, он сейчас онлайн.»

**CRITICAL** — «мы практически знакомы. он просто пока об этом не знает.»

---

# 6. Ограничение прогресса по дням

Нельзя набрать 100% в первый день.

Каждый день открывается новый максимальный предел:

| День | Максимум |
|---|---:|
| DAY 01 | 15% |
| DAY 02 | 30% |
| DAY 03 | 45% |
| DAY 04 | 60% |
| DAY 05 | 75% |
| DAY 06 | 90% |
| DAY 07 | 100% |

Если человек дошёл до дневного лимита, задания временно блокируются:

> DAILY LIMIT // 45% 
> CURRENT LIMIT REACHED 
> наблюдение будет продолжено завтра.

При этом работает **догоняющая система**.

Если игрок пропустил первый день и во второй имеет 0%, он всё равно может выполнять задания, пока не достигнет текущего лимита **30%**.

За пропуски наказания нет.

Если задание должно дать +5%, а до лимита осталось +2%, начисляются только эти +2%.

---

# 7. Система заданий

Нужна большая база — **ориентировочно 60–70 секретных заданий**.

Они заранее заносятся в систему и делятся по уровням сложности/этапам игры.

У каждого задания желательно хранить:

- ID;
- название;
- уровень;
- количество процентов;
- тип/тег;
- описание;
- требования к доказательству;
- можно ли повторять;
- дополнительные условия.

Типы заданий могут быть:

`OBSERVE` — наблюдение 
`PROFILE` — изучение поведения 
`CONTACT` — взаимодействие 
`RESPONSE` — добиться реакции/ответа 
`FOLLOW` — пересечения на форуме 
`CREATE` — творческое 
`PREDICT` — предсказать поведение 
`MIMIC` — повторить манеру/выражение 
`CHAIN` — задание, связанное с предыдущим

---

# 8. Как выдаются задания

Одновременно у игрока всегда **3 активных задания**.

Они выбираются системой **случайно из доступного пула**.

У разных участников задания должны отличаться.

После выполнения одного:

> задание → отчёт → проверка администратором → начисление % → новое случайное задание

То есть освободившееся место автоматически занимает новое задание.

Желательно не выдавать одновременно три почти одинаковых задания. Например, три задания только на реакции.

Для этого можно учитывать теги.

---

# 9. Открытие сложности по дням

В первый день доступны самые простые задания: наблюдение, профиль, небольшие пересечения.

Дальше постепенно добавляются новые уровни.

Примерно:

**DAY 1 — INTEREST** 
наблюдение и изучение человека.

**DAY 2 — CURIOSITY** 
небольшие пересечения и контакты.

**DAY 3 — ATTACHMENT** 
необходимо получать ответы и реакции.

**DAY 4 — FIXATION** 
более заметные взаимодействия и предсказания.

**DAY 5 — PREOCCUPATION** 
знание привычек и информации о цели.

**DAY 6 — OBSESSION** 
сложные цепочки взаимодействий, творчество, активное присутствие.

**DAY 7 — CRITICAL** 
финальные задания и завершение игры.

При этом открытие нового дня **не закрывает старые задания**. Они остаются в общей выборке.

Просто поздние задания должны постепенно выпадать чаще.

---

# 10. Примеры заданий

Чтобы программисты понимали механику, вот часть банка:

**НАБЛЮДАТЕЛЬ // +2%** 
Запиши три факта о своей Обсессии, которые узнал из её сообщений.

**ПОЧЕРК // +2%** 
Найди три характерных слова, выражения или речевые привычки.

**ЭХО // +3%** 
Естественно используй характерное выражение своей Обсессии.

**СЛУЧАЙНАЯ ВСТРЕЧА // +3%** 
Пересекитесь в двух разных темах.

**РЕКОМЕНДАЦИЯ // +4%** 
Попроси у Обсессии рекомендацию.

**ОТВЕТ ПОЛУЧЕН // +4%** 
Получи от Обсессии ответ.

**ПРИМАНКА // +5%** 
Начни обсуждение, в которое Обсессия добровольно включится. Без тега и прямого приглашения.

**ПО ИМЕНИ // +5%** 
Добейся того, чтобы Обсессия самостоятельно упомянула твой ник.

**Я ЗНАЛ // +5%** 
Предскажи конкретное слово или выражение, которое Обсессия использует в ответе.

**ПОЗОВИ МЕНЯ // +6%** 
Обсессия должна самостоятельно позвать или отметить тебя.

**СВЯТЫНЯ // +6%** 
Поставь фразу Обсессии в статус/подпись на 12 часов без объяснений.

**ТЫ БЫ ВЫБРАЛ... // +6%** 
Предскажи выбор Обсессии, затем естественно предложи ей этот выбор. Засчитывается при правильном прогнозе.

**ТЫ ОПЯТЬ ЗДЕСЬ // +7%** 
Обсессия сама замечает твоё подозрительно частое присутствие.

**ФАНАТСКОЕ ТВОРЧЕСТВО // +5%** 
Создай мем, коллаж, рисунок, стихотворение или другой небольшой материал по мотивам своей Обсессии.

**Я ТЕБЯ ИЗУЧИЛ // +7%** 
Администратор задаёт пять вопросов по Обсессии на основе предыдущих наблюдений. Нужно правильно ответить минимум на четыре.

Полный банк перед реализацией можно передать отдельным массивом/таблицей примерно из **60–70 заданий**.

---

# 11. Переброс задания

Раз в сутки игрок может бесплатно отказаться от одного задания:

**REROLL AVAILABLE // 1**

После использования:

**REROLL USED // 0**

Задание заменяется случайным новым.

Отдельно нужен вариант:

**TARGET UNAVAILABLE**

Например, если задание требует реакции или активности Обсессии, а человек весь день отсутствует.

Такая замена **не должна расходовать обычный reroll**. При необходимости её подтверждает администратор.

---

# 12. Отчёты

У каждого задания есть кнопка:

**[ ОТПРАВИТЬ ОТЧЁТ ]**

Игрок прикладывает ссылку/короткое пояснение/доказательство.

После отправки:

> REPORT // PENDING

Отчёт видит только администрация.

Администратор получает:

**[ ОТКРЫТЬ ДОКАЗАТЕЛЬСТВО ]** 
**[ ✓ ПРИНЯТЬ ]** 
**[ ✕ ОТКЛОНИТЬ ]**

После принятия система:

1. отмечает задание выполненным;
2. начисляет соответствующий OBSESSION %;
3. записывает его в историю;
4. выдаёт новое случайное задание.

---

# 13. История игрока

Желательно иметь личный:

**OBSERVATION LOG**

Например:

> DAY 01 
> ✓ НАБЛЮДАТЕЛЬ +2% 
> ✓ ЭХО +3% 
> ✓ ПЕРВОЕ КАСАНИЕ +3%
>
> DAY 02 
> ✓ РЕКОМЕНДАЦИЯ +4% 
> …

Историю видит сам игрок и администрация.

---

# 14. Публичная часть

Другие участники могут видеть **только уровень прогресса**, но не цель и не задания.

Например:

> **OBSESSION** 
> `██████░░░░ 63%`
>
> **PREOCCUPATION**

По мере роста процента оформление можно постепенно делать более «сломавшимся»: небольшой шум, glitch, смещения текста, системные сообщения и т. п.

Но без перегруза.

---

# 15. DAY 7 — FINAL PROTOCOL

На седьмой день открывается финальный блок.

Помимо обычных заданий появляются специальные.

### ДОСЬЕ // +5%

Игрок заполняет:

> ОБЪЕКТ №___ 
> Имя / ник: 
> Места регулярного появления: 
> Характерные выражения: 
> Интересы: 
> Типичное поведение: 
> Предсказуемая реакция: 
> Слабость: 
> Степень опасности: 
> Вероятность того, что объект меня вычислил: ___%

Использовать можно **только информацию, которую человек сам публично размещал на форуме**.

### ПОСЛЕДНИЙ КОНТАКТ // +5%

Последнее добровольное взаимодействие с Обсессией до окончания игры.

### ПОСЛЕДНЯЯ УЛИКА // +5%

Оставить намеренную подсказку, по которой Обсессия теоретически сможет вычислить игрока, но не признаваться напрямую.

### МАНИФЕСТ // +5%

Написать короткое анонимное обращение своей Обсессии.

Оно может быть смешным, странным, драматичным, криповым — романтический подтекст необязателен.

После окончания игры администратор публикует все манифесты одновременно.

Эти четыре задания **не обязательны для достижения 100%**. До 100% можно дойти и обычными заданиями.

---

# 16. FINAL GUESS

В конце каждый участник получает:

> **КТО БЫЛ ОДЕРЖИМ ТОБОЙ?**
>
> Ник: __________ 
> Уверенность: ___%
>
> [ ПОДТВЕРДИТЬ ]

Это **не даёт OBSESSION %**.

После отправки ответ изменить нельзя.

После закрытия игры публикуется настоящая цепочка:

> А → Б → В → Г → Д → А

и участники узнают, кто за кем следил.

---

# 17. Завершение

При достижении 100%:

> **OBSESSION // 100%** 
> `██████████`
>
> **STATUS: COMPLETE**
>
> SUBJECT LOST.

или:

> **NO FURTHER OBSERVATION REQUIRED.**

Единственного победителя нет.

Все участники, которые до конца DAY 7 достигли **100%**, получают:

**1 000 токенов + ваучер на удвоение 10 постов.**

Можно отдельно сделать шуточные номинации после раскрытия, но они не влияют на основной результат.

---

# 18. Админ-панель

Нужна отдельная административная часть:

> **OBSESSION // CONTROL PANEL**
>
> DAY 04 / 07 
> CURRENT CAP // 60% 
> PARTICIPANTS // 18 
> REPORTS PENDING // 7

Таблица примерно:

| PLAYER | TARGET | % | STATUS | REPORTS |
|---|---|---:|---|---:|
| user1 | user7 | 57% | FIXATION | 2 |
| user2 | user4 | 60% | CAP | 0 |

Администратор должен иметь возможность:

- видеть список зарегистрированных;
- закрыть регистрацию;
- сформировать цепочку;
- перемешать её заново до старта;
- подтвердить цепочку;
- запустить игру;
- видеть цель каждого игрока;
- видеть OBSESSION %;
- видеть активные задания;
- видеть историю;
- принимать/отклонять отчёты;
- заменять проблемное задание;
- переключать игровой день;
- открывать FINAL;
- завершать игру;
- раскрывать цепочку.

---

# 19. Состояния игры

Лучше сразу заложить пять глобальных состояний:

`REGISTRATION` 
регистрация открыта.

`READY` 
регистрация закрыта, администратор формирует цепочку.

`ACTIVE` 
основная игра DAY 1–6.

`FINAL` 
DAY 7 и Final Protocol.

`CLOSED` 
игра закончена, задания закрыты, результаты зафиксированы.

---

# 20. Что должно храниться в системе

Минимально:

**Для игры:** статус, текущий день, дневной лимит, список участников, сформированная цепочка.

**Для каждого участника:** UID, ник, цель/target UID, OBSESSION %, стадия, три активных задания, выполненные задания, ожидающие проверки отчёты, история, использован ли дневной reroll, Final Guess.

**Для каждого задания:** ID, название, описание, уровень/день открытия, награда в %, тег, условия, требования к доказательству, возможность повторения.

И критично: **цель и секретные задания одного игрока не должны быть доступны другим участникам через интерфейс.**

---

Вот **это** уже можно спокойно отдавать ребятам, которые делали Тамагочи. Тут им не придётся угадывать механику: есть состояния игры, структура хранения, рандом, цепочка, задания, отчёты, лимиты, админка и финал.

И я бы вообще **не заставляла их сразу заниматься красивым дизайном**. Сначала пусть сделают рабочий движок ОБСЕССИИ, а потом мы с тобой отдельно дадим им визуальное ТЗ под наш тёмный изумрудный `PERSONAL FILE / classified dossier` стиль. Так гораздо меньше шансов снова утонуть в технических мелочах.