Inspiration

I wanted to build a tower defense game that from its base design contains variation to how you can approach each level. I took inspiration from games like Bad North and its aesthetic + random enemy approach avenues, and Thronefall and its focus on a single hero unit to create King's Landing. I also took inspiration from city builder games and Kingdom Rush tower defense to figure out the UX flow for construction.

What it does

You are a single king armed with a bow and an assortment of defenses. Place your castle then set up your defenses to prepare for incoming enemies who want to destroy your base.

How we built it

Three.js for the base engine, and Claude Code + Gemini Flash as the AI tools.

Challenges we ran into

Visual readability was something I wanted to nail early on as the mobile requirement put additional tricky restrictions. The game had to look good, read well, yet be performant. I ended using a crisp low poly style with large buttons to fit this format. The UX for placing towers was also tricky, I had to figure out what was the best way to build buildings, did the king have to move to a specific spot to build, or could I freely build anywhere I wanted? In the end I took inspiration from classic building sim games to design my UX building flow.

Accomplishments that we're proud of

The game looks simple and hopefully is easy to learn, but I also wanted to make sure it was full of strategic depth.

What we learned

UX sequence is hard. Figuring out a good flow to onboard new users takes a lot more effort than you'd imagine. You can't simply just present all the mechanics up front, you have to ease the player in, and direct their attention in a very controlled way so that they understand every new mechanic that comes in.

What's next for King's Landing

Fancier towers, more enemies, more elaborate levels, and an overall per-island progression where you gain stars that you can then spend to strengthen your king or your buildings.

Built With

Share this project:

Updates

Submission history