Детективная текстовая игра по мотивам романа Агаты Кристи «Пять поросят».
Вы — Эркюль Пуаро, который заново расследует убийство художника Эмиаса Крейла спустя 16 лет. Допрашивайте подозреваемых, собирайте улики и найдите настоящего убийцу.
Игра работает в браузере (Flask + HTML/JS), ответы подозреваемых генерируются нейросетью Llama 4 Scout через Groq API.
Англия, 1938 год. Шестнадцать лет назад был отравлен Эмиас Крейл. Его жену осудили, она умерла в тюрьме. Теперь её дочь просит вас доказать невиновность матери.
Пять подозреваемых, пять историй, пять версий правды. Вам предстоит раскрыть тайну, которая долгие годы скрывалась даже от самого Пуаро.
- Допрос – каждому подозреваемому можно задавать вопросы в свободной форме.
- Нейросеть – персонаж отвечает в своём характере, может врать, уклоняться или нервничать. Следит за контекстом.
- Улики – выделяйте мышкой фрагменты ответов, чтобы сохранить их в блокнот.
- Вынесение приговора – допросив всех, ответьте на вопросы викторины и укажите убийцу.
- Реиграбельность – каждый диалог уникален.
git clone https://github.com/ваш-username/пять-поросят.git
cd TS2026pip install -r requirements.txtСоздайте файл core/config.py с вашим ключом:
GROQ_API_KEY = "gsk_..."python Response/WorkWithHTML.pyПерейдите по адресу http://127.0.0.1:5000
.
├── core/
│ ├── config.py # Ваш API-ключ Groq
│ ├── Central.py # Класс персонажа
│ └── Requests.py # Функции взаимодействия с Groq
├── Docs/ # Файлы с описанием персонажей (*PRESS.txt)
├── Response/
│ ├── WorkWithHTML.py # Flask-приложение
│ ├── static/ # Изображения и звуки
│ └── templates/
│ └── index.html # Основной шаблон игры
├── requirements.txt
├── .env
├── .gitignore
└── README.md
Каждый персонаж имеет файл Docs/<Name> - PRESS.txt с дополнительной информацией о характере, мотивах и секретах.
Пример содержимого для Elsa - PRESS.txt:
Ты была любовницей Эмиаса. Ты до сих пор его любишь и не веришь, что могла стать причиной его гибели.
Твоя соперница – Кэролайн. Ты ненавидела её, но прямых доказательств твоей вины нет.
Эти файлы можно редактировать, влияя на отыгрыш модели.
- Начало: пройдите вступительные экраны.
- Допрос: кликните на портрет подозреваемого → введите вопрос в поле ввода → Enter.
- Улика: выделите мышью фразу в ответе, она сохранится в блокнот.
- Блокнот улик: кнопка 🔍 в правом верхнем углу главного экрана.
- Приговор: кнопка ⚖️ внизу экрана (становится активной после допроса всех пятерых).
Во время допроса персонаж устаёт (шкала angry). Если она достигнет 100%, допрос прервётся.
Для публичного доступа можно использовать Render (бесплатный план):
- Загрузите проект на GitHub.
- Создайте новый Web Service на Render, подключив репозиторий.
- Build Command:
pip install -r requirements.txt
Start Command:python Response/WorkWithHTML.py - В переменных окружения укажите
GROQ_API_KEY. - После деплоя замените
fetch('/ask', ...)вtemplate.htmlна полный URL вашего сервера.
- Flask – веб-фреймворк
- Groq API – быстрый вывод языковых моделей
- Llama 4 Scout 17B (meta-llama/llama-4-scout-17b-16e-instruct)
- HTML5, CSS3, JavaScript (ванильный)
Разработано в рамках Хакатона. Основано на романе Агаты Кристи «Пять поросят».