Skip to content

QuadDarv1ne/Star-Courier

Repository files navigation

Star Courier — Текстовая RPG-игра

ORCID Python License

Star Courier — это интерактивная текстовая RPG в космической тематике.

Игрок управляет капитаном Максом Веллом и его командой на борту звездолёта «Элея».

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


Оглавление


Особенности

🎮 Игровые механики

  • Интерактивные диалоги — развилки сюжета с последствиями выборов
  • Система отношений — развитие связей с членами экипажа
  • Три ветви способностей:
    • 🔬 Алхимия — создание эликсиров и усилителей
    • 🧬 Биотика — управление энергией живых организмов
    • 🧠 Психика — чтение мыслей и влияние на сознание

📖 Сюжет

  • Атмосфера космического приключения с элементами драмы и интриги
  • Постепенное раскрытие тайн артефакта
  • Романтика и личные истории персонажей
  • Конфликты с пиратами и внутренние конфликты команды

Установка

Требования

  • Python 3.8 или выше
  • pip (менеджер пакетов Python)

Шаги установки

  1. Клонируйте репозиторий:

    git clone https://github.com/QuadDarv1ne/Star-Courier.git
    cd Star-Courier
  2. Создайте виртуальное окружение (рекомендуется):

    # Windows
    python -m venv venv
    venv\Scripts\activate
    
    # Linux/macOS
    python3 -m venv venv
    source venv/bin/activate
  3. Установите зависимости:

    pip install -r requirements.txt

Запуск игры

Основной запуск

python main.py

Утилита для извлечения текста из .docx

Если вы хотите конвертировать документы с главами и персонажами в текст:

python tools/extract_docx.py

Или в режиме командной строки:

# Обработать один файл
python tools/extract_docx.py file chapters/Star_Courier_Chapter_1.docx

# Обработать всю папку
python tools/extract_docx.py dir chapters/

Игровой процесс

Управление

  • Меню — выбор цифрами (1, 2, 3...)
  • Диалоги — выбор варианта ответа
  • Сохранение — автоматическое в конце глав

Система способностей

Способность Описание Пример использования
Алхимия Создание эликсиров и стабилизаторов Лечебный эликсир, усилитель энергии
Биотика Управление биополями Защитный щит, ментальный барьер
Психика Влияние на сознание Чтение мыслей, убеждение

Отношения с персонажами

Статус Значение
Близкие 80-100
Дружеские 60-79
Профессиональные 40-59
Знакомые 20-39
Холодные 0-19

Структура проекта

Star Courier/
├── main.py                 # Точка входа в игру
├── requirements.txt        # Зависимости Python
├── README.md              # Документация
├── LICENCE                # Лицензия
│
├── src/                   # Исходный код игры
│   ├── __init__.py
│   ├── config.py          # Конфигурация
│   ├── characters.py      # Система персонажей
│   ├── abilities.py       # Система способностей
│   ├── dialogues.py       # Диалоговая система
│   ├── save_system.py     # Сохранения
│   └── utils.py           # Утилиты
│
├── tools/                 # Инструменты разработки
│   └── extract_docx.py    # Конвертер .docx → .txt
│
├── chapters/              # Главы игры (.docx)
│   ├── Star_Courier_Chapter_1.docx
│   ├── Описание глав первой части.docx
│   └── scripts/
│
├── characters/            # Описания персонажей (.docx)
│   ├── Макс_Велл.docx
│   ├── Алия'Наар.docx
│   ├── Афина.docx
│   └── ...
│
├── new_characters/        # Дополнительные персонажи
├── ideas/                 # Идеи и заметки
└── saves/                 # Сохранения игр (создаётся автоматически)

Разработка

Добавление нового диалога

from src.dialogues import Dialogue, DialogueNode, Choice

dialogue = Dialogue(
    id="my_dialogue",
    title="Мой диалог",
    start_node="start"
)

dialogue.add_node(DialogueNode(
    id="start",
    speaker="Персонаж",
    text="Приветствие!",
    choices=[
        Choice("hello", "Привет!", "next_node")
    ]
))

Добавление способности

from src.abilities import AlchemyAbility, AbilityTier

new_ability = AlchemyAbility(
    id="new_potion",
    name="Новый эликсир",
    description="Описание эффекта",
    ability_type=AbilityType.ALCHEMY,
    tier=AbilityTier.BASIC,
    energy_cost=15
)

Вклад

Проект открыт для сотрудничества!

Как помочь:

  1. Форкните репозиторий
  2. Создайте ветку (git checkout -b feature/amazing-feature)
  3. Внесите изменения и сделайте коммит
  4. Отправьте изменения (git push origin feature/amazing-feature)
  5. Создайте Pull Request

Что нужно:

  • ✍️ Авторы контента (главы, диалоги)
  • 🎨 Художники (концепт-арты, иллюстрации)
  • 🐛 Тестировщики
  • 💡 Идеи для геймплея

Персонажи

Основной экипаж «Элеи»

Персонаж Роль Описание
Макс Велл Капитан Главный герой, опытный командир
Афина ИИ корабля Искусственный интеллект с эмпатией
Алия'Наар Пилот Хладнокровный пилот с планеты с суровыми условиями
Ирина Лебедева Учёный Исследователь артефакта, специалист по аномалиям
Рина Мирай Навигатор Тактик с отличной интуицией
Надежда Офицер безопасности Бывший спецназовец с кодексом чести
Екатерина Кибербезопасность Талантливая хакерша

Лицензия

Этот проект лицензирован под MIT License — свободное использование и модификация с указанием авторства.

См. файл LICENCE для подробностей.


Контакты


Спасибо за интерес к проекту «Star Courier»! 🚀

About

Проект «Star Courier» — это интерактивная текстовая RPG в космической тематике. Игрок управляет капитаном Максом Веллом и его командой на борту звездолёта «Элея». Главная задача — доставить загадочный артефакт, раскрывая тайны, сражаясь с врагами и развивая отношения с членами экипажа

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages