Back to Projects
FinishedJavaCase study

JavAttack

A complete libGDX lane-defense game: draft 9 heroes from a roster of 12, deploy them across three corridors against 12 waves of scaling enemies, and manage upgrades, manual skills, and formations in real time.

Problem

Hero-defense mobile games hide a lot of interlocking systems — drafting, lane pressure, role-based formations, skill timing — and the goal was to build that whole loop from scratch as a desktop Java game rather than a toy prototype.

Solution

JavAttack runs three independent battlefield corridors with moving frontlines where heroes and enemies fight in real time. On top sit a draft phase, preferred-lane bonuses, role-based formation behavior, a three-level upgrade-and-sell economy, nine manual skill keys with an auto-cast toggle, and a full Title → Battle → Result loop with difficulty modes and a star rating, all data-driven from config.

What I learned

Making the game data-driven from the start paid off constantly — balancing twelve heroes and twelve waves became config edits instead of code changes, which is the only way tuning stayed fun.

Tech Stack

JavalibGDXGradle

Screenshots

Screenshots will live here once this project has a stable UI worth showing.

More Java projects

Java

Java

Java Algorithms Lab

A collection of Java implementations for data structures and algorithm practice.