Skip to content

gryyaa/ConsoleRPG

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ConsoleRPG

Текстовая RPG на C++

Небольшая консольная ролевая игра с пошаговыми боями, магазином, сохранениями и случайными событиями. Проект делался как учебная командная разработка, поэтому в нём есть и рабочие механики, и задел на будущие улучшения.

Скрин проекта


Описание игры

В ConsoleRPG игрок создаёт героя, распределяет характеристики (по схеме 15, 14, 13, 12, 10, 8) и проходит серию боёв против волны противников. В основе боевой системы — броски кубиков:

  • d20 определяет попадание/криты и часть проверок;
  • d8 (или другое значение грани у персонажа) влияет на урон;
  • лечение и побег тоже завязаны на вероятности.

Дополнительно в игре есть:

  • магазин предметов (покупка за золото),
  • инвентарь,
  • сохранение/загрузка прогресса,
  • случайное событие с мини-игрой (казино).

Что важно знать

  • Проект ориентирован на Windows-консоль (Windows.h, SetConsoleCP, system("cls")).
  • Часть систем (например, спецатака, отдельные эффекты предметов) пока в упрощённом или заготовочном виде.

Запуск проекта

Запуск через Visual Studio (рекомендуется)

  1. Откройте файл решения ConsoleRPG.sln.
  2. Выберите конфигурацию Debug или Release.
  3. Нажмите F5 (или Start Without Debugging).

Альтернативно, через Developer Command Prompt (MSVC):

cd /d <путь_к_репозиторию>\ConsoleRPG
msbuild ConsoleRPG.sln /p:Configuration=Debug
.\x64\Debug\ConsoleRPG.exe

Пример запуска в кодовом стиле: ConsoleRPG.exe


Системные требования

Компонент Минимум Рекомендация
ОС Windows 10 Windows 10/11
Компилятор MSVC с поддержкой C++17 Последняя Visual Studio 2022
ОЗУ 2 ГБ 4+ ГБ
Место на диске ~200 МБ 500 МБ
  • Нужна поддержка стандартной консоли Windows и кодировки CP1251.
  • Для сборки важны инструменты C++ в Visual Studio.

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

ConsoleRPG/
├─ main.cpp              # точка входа и игровой цикл
├─ character.*           # персонаж, характеристики, инвентарь, базовые действия
├─ battle.*              # state-machine хода игрока/врага
├─ shop.*                # магазин и покупка предметов
├─ savesystem.*          # сохранение/загрузка в saves/save.txt
├─ casino.*              # случайное событие и мини-игра
├─ character_creator.*   # создание героя и распределение статов
├─ dice.*                # броски кубиков
├─ user_interface.*      # прогресс-бар, загрузочные анимации
├─ item.*                # модель предметов
├─ map.*, astar.*        # задел под исследование/поиск пути
└─ animations/           # ASCII-анимации

Объяснение основных модулей

  1. Игровое ядро (main.cpp) — создаёт игрока/врагов, запускает магазин, события и бой по волнам.
  2. Модуль персонажа (character.*) — хранит HP, золото, фляги лечения, урон, статы и методы действий.
  3. Боевая система (battle.*) — реализует паттерн состояний: ход игрока ↔ ход врага.
  4. Экономика (shop.*, item.*) — витрина предметов, покупка и пополнение инвентаря.
  5. Прогресс (savesystem.*) — запись/чтение состояния в текстовый save-файл.
  6. Контент и UX (casino.*, user_interface.*, animations/) — события, текстовые сцены и визуальные эффекты консоли.
Планы развития Больше контента, баланс статов, развитие карты и доработка специальных умений.

About

Привет от РПО

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C++ 98.7%
  • C 1.3%