Skip to content

JRSkates/loop-adventure-rpg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CLI Adventure RPG

Author: Jack Skates

Project Overview

CLI Adventure RPG is a text-based role-playing game (RPG) built in C++. Players explore a grid-based map, encounter enemies, collect items, and complete quests. The game includes:

  • Turn-based combat system
  • Inventory management
  • Player progression through leveling and stat upgrades
  • Storyline with a main quest and optional side quests

Focus

This project aims to master C++ fundamentals, including:

  • Object-Oriented Programming (OOP)
  • Data structures (e.g., vectors, arrays)
  • Algorithms for combat, map generation, and progression
  • File I/O for optional save/load functionality

Tools and Technologies

Programming Language

  • C++ (Standard 17 or higher recommended)

Development Environment

  • VS Code with Code Runner extension
  • clang++ compiler for C++

Libraries

  • Standard Template Library (STL) for vectors, strings, etc.
  • Optional: ncurses for advanced CLI formatting (if time permits)

Version Control

  • Git and GitHub for source control

Documentation

  • Markdown for README and project documentation

Project Goals

Core Mechanics

  • Grid-based exploration with random events
  • Turn-based combat system
  • Player leveling and stat progression

Additional Features

  • Inventory management with collectible items
  • Main quest and optional side quests
  • Save/load system for replayability (optional)

Presentation

  • Polished CLI experience with clear menus and feedback
  • ASCII art for visual enhancement (if time permits)

Sprint Plan

Sprint 1: Week 1 (Core Development)

Focus: Build the core game mechanics and systems.

Day Task
1 Set up project structure in C++. Implement the Player and Map classes. Build a basic game loop with input handling.
2 Implement the turn-based combat system. Add basic enemy types and random encounters.
3 Create the inventory system. Add basic items (e.g., healing potions, weapons).
4 Introduce leveling and stat progression for the player.
5 Add text-based feedback for actions and outcomes.

Sprint 2: Week 2 (Polish and Advanced Features)

Focus: Add narrative, polish, and optional features.

Day Task
1 Add a main quest and optional side quests with storylines. Implement quest tracking and player progression.
2 Add a challenging boss battle.
3 Implement optional save/load functionality using file I/O.
4 Enhance user experience with a help menu and ASCII art.
5 Final testing, bug fixes, and documentation.

Deliverables

Game

  • Fully functional CLI Adventure RPG
  • Key features: exploration, combat, inventory, and progression
  • Optional save/load functionality

Documentation

  • README.md with:
    • Game overview
    • How to play
    • Key features and screenshots
  • Commented code for readability

Presentation

  • Uploaded project to GitHub with a polished README
  • Include example gameplay in the documentation

Timeline

Week Milestones
1 Game loop, player mechanics, map exploration, combat system, and inventory management
2 Quests, boss battle, save/load system, UI enhancements, testing, and final documentation

Risks and Mitigation

Risk Mitigation
Scope Creep Keep the feature set minimal and focus on polishing core mechanics.
Learning Curve Allocate time to research and troubleshoot issues in C++.
Time Constraints Prioritize essential features and mark optional features clearly.

How to Play (Placeholder)

Detailed instructions on how to play will be added here as the game develops.


Acknowledgments

This project is part of a sprint learning initiative to master C++ fundamentals through hands-on application.


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published