Skip to content

underplayer673/aaaaaa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎭 Нейро-Мафия

Стриминговая игра «Мафия» с AI-игроками. Backend на FastAPI ведёт игру и оркестрирует вызовы моделей, frontend на React показывает круглый стол, реплики игроков и журнал событий в реальном времени.

🚀 Быстрый старт

Windows:

ЗАПУСК.bat

Linux / macOS:

./start.sh

В меню:

  1. УСТАНОВКА (первый раз) — поставит Python и Node.js зависимости
  2. ЗАПУСК ИГРЫ — откроет интерфейс с круглым столом
  3. Играйте на http://localhost:3000

📋 Требования

  • Python 3.9+ — backend (AI логика)
  • Node.js 16+ — frontend (UI). Без Node.js доступен только API.

🔑 API ключи

Положите ключи в Примеры/scout_keys.json:

{
  "openrouter": ["sk-or-..."],
  "gemini": ["..."],
  "cerebras": ["..."],
  "github": ["ghp_..."]
}

Альтернативно — задайте переменные окружения: OPENROUTER_API_KEY, GEMINI_API_KEY, CEREBRAS_API_KEY, GITHUB_TOKEN.

Если ключей нет — игра работает в offline-режиме (заглушка вместо AI), все фазы и логика по-прежнему отрабатывают.

🎮 Как играть

Через интерфейс (http://localhost:3000)

  1. Жмёте «+ Новая игра»
  2. Указываете название и число игроков
  3. На вкладке «Настройки» раздаёте роли (мафия, мирные, комиссар, доктор, маньяк)
  4. Кнопка «▶ Следующая фаза» прокручивает игру по фазам — или «▶▶ Авто» для автостриминга
POST /games/create
{ "name": "Моя игра", "players": ["A","B","C","D","E","F"], "season": "season_1" }

POST /games/{game_id}/setup
{ "mafia": 2, "civilian": 2, "commissioner": 1, "doctor": 1, "maniac": 0 }

POST /games/{game_id}/night-actions
POST /games/{game_id}/discussion
POST /games/{game_id}/voting
GET  /games/{game_id}
POST /games/{game_id}/auto-step   # автоматически продвигает на следующую фазу

🤖 AI модели

Подбираются автоматически из ваших ключей с фолбэком при ошибке:

  • OpenRouter — Llama 3.3 70B, Qwen 2.5 72B (бесплатные)
  • Cerebras — Llama3.1 8B (быстрая)
  • Google Gemini — Flash
  • GitHub Models — GPT-4o, GPT-4o Mini

При ошибке провайдера запрос автоматически переходит к следующему доступному.

🎯 Роли

  • 🔴 Мафия — убивает ночью
  • 🟢 Мирный — ищет мафию голосованием
  • 🔵 Комиссар — ночью проверяет игрока
  • 💚 Доктор — ночью защищает игрока
  • 🟣 Маньяк — убивает в одиночку, играет сам за себя

📊 Структура

backend/
  app/
    ai/            # AI оркестратор (мультипровайдер + offline-stub)
    game/          # роли, состояние, движок фаз
    memory/        # заметки игроков между фазами
    main.py        # FastAPI приложение
  requirements.txt

frontend/
  src/
    components/    # RoundTable, SidePanel, NewGameDialog
    styles/        # стили круглого стола
    App.jsx
  package.json

Примеры/
  scout_keys.json  # ⭐ ваши ключи

ЗАПУСК.bat         # ⭐ Windows-лаунчер
start.sh           # ⭐ Linux/macOS-лаунчер

🐛 Проблемы?

ЗАПУСК.bat3. ТЕСТ + ПРОВЕРКА покажет состояние Python/Node/бэкенда. Логи backend идут в /tmp/neuro-mafia-backend.log.

💡 Полезное


Приятной игры! 🎭🎮

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors