A text-based RPG adventure game built in Java. "Praxi Facit Perfectum" (Practice Makes Perfect) is a terminal-based role-playing game that combines classic RPG elements with simple yet engaging gameplay.
- 🎭 Character creation and development (Basic)
- ⚔️ Turn-based combat system (Basic)
- 👾 Dynamic enemy generation (Basic)
- 🏕️ Rest and recovery mechanics (Basic)
- 🎒 Inventory system [70%]
- 💰 Economy [0%]
- 📈 Experience and leveling system [10%]
- 💾 User authentication with Appwrite (Progress persistence) [0%]
- Java Development Kit (JDK) 11 or higher
- Git (optional, for cloning)
- Clone the repository:
git clone https://github.com/mr-andrej/Praxi-Facit-Perfectum-RPG.git
cd Praxi-Facit-Perfectum-RPG
- Compile the game (or run build.sh to build and run it automatically):
cd src/
javac -d build src/main/java/com/mrandrej/rpg/*.java src/main/java/com/mrandrej/rpg/entity/*.java src/main/java/com/mrandrej/rpg/map/*.java src/main/java/com/mrandrej/rpg/items/*.java
- Run the game:
java -cp build main.java.com.mrandrej.rpg.Main
- Start the game
- Enter your character's name
- Use the following commands in the main menu:
1
: Show Player Status2
: View Map3
: Travel4
: Explore Current Area5
: Rest6
: Quit
During combat:
1
: Attack enemy2
: Attempt to run
src/
├── main/
│ └── java/
│ └── com/
│ └── mrandrej/
│ └── rpg/
│ ├── Main.java
│ ├── Game.java # Game logic
│ └── entity/ # Game entities
│ └── items/ # Inventory & items logic
│ └── map/ # World map logic
Contributions are welcome! Feel free to:
- Fork the repository
- Create a new branch
- Make your changes
- Submit a pull request
This project was created as a Java practice exercise, demonstrating:
- Object-Oriented Programming principles
- Inheritance and abstraction
- Game state management
- User input handling
- Basic game mechanics
This project is currently in active development. Features and mechanics may change as development progresses. I also reserve the right to break things due to my own sheer incompetence or lack of foresight.