2025 · Solo build — coursework
Archived
CrossyAnt
A Frogger/Crossy Road-inspired game with a hand-rolled 2D engine — custom collision detection, sprite rendering, and task scheduling, no game engine underneath any of it.
Built at LSU as a first serious engineering project, modeled on Frogger and Crossy Road: dodge traffic, collect coins, spend them on power-ups and debuffs, survive.
There's no game engine underneath it — Swing provides the window and the paint surface, and everything from there is custom: a collision handler tracking sprite bounds, a sprite-component system for rendering and animation state, and a decoupled task scheduler running spawn timers, buffs, and the clock independent of the render loop.
It's archived because it's finished, not because it's disowned — the collision and scheduling code is the part worth showing, and it hasn't needed touching since it shipped.
What it does
- Custom 2D collision detection between the player, enemies, and hazards
- Sprite rendering and animation pipeline built on Swing's paint surface
- Decoupled task scheduler driving enemy spawns, timers, and power-up buffs
- In-game currency, shop, power-ups, and debuffs
- High-score persistence
What it taught me
- Structuring a real-time render loop without a framework underneath it
- Decoupling game timing from rendering so one can't stall the other
- Object-oriented design under the constraint of an actual deadline