Legends of ProgMeth is a turn-based strategy RPG developed using Java and JavaFX.
Players assemble a team of heroes and battle progressively stronger monsters through strategic skill usage, cooldown management, and elemental advantages.
- Java 17 or newer
- Gradle
gradlew run
./gradlew run
To ensure the project runs correctly on the course virtual machine.
sudo apt update
sudo apt install openjdk-17-jdk
Verify installation:
java -version
sudo apt install openjfx
git clone <repository-url>
cd LegendsOfProgMeth
./gradlew run
application {
applicationDefaultJvmArgs = [
"-Dprism.order=es2,sw",
"-Dprism.verbose=true"
]
}
java --module-path "C:\JavaFX\openjfx-24.0.2_windows-x64_bin-sdk\javafx-sdk-24.0.2\lib" --add-modules javafx.controls,javafx.fxml,javafx.graphics,javafx.media -jar "progMethLab06-1-with-sources.jar"
Legends of ProgMeth is a turn-based combat game where players choose heroes and fight monsters across multiple stages.
Players must strategically manage:
- Hero abilities
- Skill cooldowns
- Element advantages
- Team survival
As stages increase, monsters become stronger, requiring better planning and coordination between heroes.
- Player selects 3 heroes out of 4 available heroes
- Player enters battle
- Heroes perform actions
- Monsters perform actions
- Stage is cleared
- Heroes scale and prepare for the next stage
- Loop continues until the team is defeated
There are 4 hero classes in the game.
A high-damage scaling attacker.
Abilities:
- Skill – increases bow stack
- Ultimate – deals area damage based on bow stacks
Strengths:
- Extremely high damage potential
- Powerful AoE attacks
Weaknesses:
- Low survivability
A magic damage dealer that buffs itself.
Abilities:
- Skill – deals damage and increases own attack
- Ultimate – deals AoE magic damage
Strengths:
- Strong burst damage
- Self-buff capability
Weaknesses:
- Low defense
A sustain damage dealer.
Abilities:
- Skill – deals damage and heals self
- Ultimate – deals damage based on enemy maximum HP
Strengths:
- Self-healing
- High durability
Weaknesses:
- Lower burst damage
A defensive support hero.
Abilities:
- Skill – heals a single ally
- Ultimate – gives shield and attack buff to team
Strengths:
- Team protection
- Healing support
Weaknesses:
- Low damage output
Monsters are generated dynamically using a MonsterFactory system.
Monster types:
| Type | Description |
|---|---|
| Type1 | High HP monster |
| Type2 | High attack monster |
| Type3 | Balanced monster |
Each stage increases monster stats through scaling formulas.
During battle:
- Select hero action
- Select target
- Execute ability
Heroes act first, followed by monsters.
- 6833290021 Abhabhichaya B.
- 6833073221 Naphat H.
- 6833135521 Norraphat R.
- 6833203521 Puttisan K.
Course: Programming Methodology
Possible extensions for the project:
- Equipment system
- More hero classes
- More monster types
- Save/load system
- PvP mode
- Difficulty modes
- Expanded stage system
This project was developed for educational purposes as part of the Programming Methodology course.