A simple text-based 2D Role-Playing Game (RPG) implemented in Java, based on object-oriented principles.
Grid Adventure is a Java-based, console role-playing game (RPG) where players navigate a 2D grid, battle monsters, and strategize their way to victory. Designed using Object-Oriented Programming principles, the game demonstrates class inheritance, encapsulation, polymorphism, and game state management in a modular fashion.

- ๐งญ Explore a 2D grid-based map
- ๐พ Battle AI-controlled monsters with randomized movement
- โ๏ธ Turn-based combat system with attack/defense strategies
- ๐ง Object-Oriented design using Java abstract classes and inheritance
- ๐ Replayable gameplay with customizable map size, difficulty, and player name
- ๐จ Color-coded console output for enhanced visualization
- The player is placed on a 2D grid map.
- Monsters move randomly each round.
- The player can move in four directions and engage in combat.
- The game ends when all monsters are defeated or the player dies.
- Language: Java 17+
- IDE: IntelliJ IDEA / Eclipse / VSCode
- No external libraries required (pure Java)
main/java/uoa/assignment/
โโโ character/
โ โโโ GameCharacter.java # Abstract base class for characters
โ โโโ Monster.java # Monster subclass with random movement
โ โโโ Player.java # Player subclass with attack/defense logic
โโโ game/
โโโ Game.java # Manages game lifecycle and round logic
โโโ GameLogic.java # Controls character movement and combat
โโโ Map.java # Manages map grid and character layout
โโโ RunGame.java # Main entry point and user interaction loop