/ProjectPerfection

A text-based RPG.

Primary LanguageJava

Project Perfection

What is this project?

This is a text-based RPG I started as a freshman in college to practice some of the coding concepts I learned in class. As of January 2024, the game is completed.

How do I play the game?

Go here and download the ProjectPerfectPackage.zip folder. You can extract the contents anywhere on your computer (/Desktop, /Downloads, etc.) as long as you move the folder in its entirety. To then start the game, go into the folder and click on the .bat file. Enjoy!

What can you do in the game?

  • The Battle System
    • This game has a turn-based combat system, similar to Pokemon. This allows players to use the given characters to fight in battles against enemies by using unique attacks. Attacks can deal damage, apply a buff or debuff to a stat, or heal an ally.
  • The Game World
    • There are NPCs the player can talk to and potentially receive gifts from. These characters help make the game feel more alive and diverse. As players progress through the story, if they've been in certain areas, they might see what NPCs they can talk to either disappear or have new dialogue depending on the state of the world.
    • There are ~17 unique locations the player can explore. The locations affect the types of enemies encountered and their levels.
  • The Shop
    • There is also a shop system implemented in the game. Whenever the player wins or loses a battle, they will either receive or lose gold. That gold can be used to purchase items from the shops located in the various town locations.
    • Each town has a different list of items it sells. For example, the items sold in the first town you visit will not be the exact same in any of the other towns.

What have I learned while working on this?

I know and understand that a lot of systems I have in place are not the best, nor that the project as a whole is organized in the best way. I have worked on other projects for NDSU's ACM chapter, which has helped me understand better coding structures and organizations. When this project is done, I plan to revisit this text-based system and make a framework. That framework will allow me to optimize the game and create more in the future if I so desire.