Java
Java Algorithms Lab
A collection of Java implementations for data structures and algorithm practice.
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.
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.
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.
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.
Java
A collection of Java implementations for data structures and algorithm practice.