Say hello to SnowCraft ![]()
What it is
A fast, cartoony snowball brawl where you command a lone fighter against a squad of snowball-chucking AI kids. Charge up your throws, duck behind cover, and bury the enemy team before they bury you. Easy to learn, genuinely tricky to master just like the original.
The good stuff
- Charge-and-throw combat hold to aim, watch the power grow, release to launch. No takebacks, so commit!
- Real snowball physics projectiles arc, miss, and can be dodged. Cover actually blocks line of sight.
- Lives & respawns get knocked out, pop back in with a few seconds of immunity while you’ve got lives left.
- Arena buffs grab extra lives, speed boosts, and immunity shields mid-fight.
- Multiple maps + AI difficulty from “gentle flurry” to “blizzard of pain.”
- Local leaderboard clear levels faster, on harder settings, with fewer lives spent = more points.
The nerdy part (r/gamedev, this one’s for you)
- Built with Three.js + TypeScript + Vite (Preact for the UI).
- 100% procedural art & audio every tree, kid, and snowball is made from primitives; all sound is synthesized with the Web Audio API. Zero asset files.
- 60 Hz fixed-timestep simulation fully decoupled from rendering (targets 144 FPS), ECS-inspired architecture.
Play it free in your browser
No install, no login, no Flash, just click and start throwing. Would love your feedback, high scores, and bug reports. Let it snow. ![]()
