Inspiration
When I first tried using Kiro, I was amazed by how incredibly convenient it was and became eager to challenge myself to see how complex software I could create. That's why I decided to make a game - something complex with fewer reference examples than ToDo apps.
While brainstorming what kind of game to create, I had an inspiration: could we do something similar to Vibe Coding in gaming? This led me to the idea of creating a real-time strategy game where you intervene through prompts.
What it does
This game is a Japanese-style real-time strategy game, but the innovative aspect is that all unit commands are given through prompts rather than mouse clicks or buttons. For example, if you want a soldier to defeat a monster, you simply type:
Soldier, attack the monster!
And the in-game units will start moving. Various commands are available such as "defend your territory," "use cannons," and "revive allies." The fun of the game lies in implementing the best strategies through prompts according to enemy tactics.
How we built it
When creating the game, we first let Kiro freely create a pilot version. This served as excellent Node.js sample code for the ECS architecture, which is typical for real-time strategy games. After the design was solidified through the pilot version, we created the official version.
Challenges we ran into
While Kiro is excellent, it sometimes would read code quite far from where we wanted implementation. So we decided to use a monorepo to split the scope that Kiro would examine. Also, with Vibe Coding, implementation speed became too fast, and information sharing with team members tended to be neglected. Therefore, we used GitHub MCP and Agent Hooks to create issues for what we wanted to implement and have Kiro automatically create PRs.
Accomplishments that we're proud of
First, we're proud that we were able to create a completely new game genre called "Vibe Gaming." We achieved an unprecedented experience of natural language real-time strategy gaming that goes beyond the framework of traditional games. This wasn't just a technical demo, but a complete game that people can actually play and enjoy.
Technically, being able to build a real-time strategy game with complex ECS architecture in collaboration with Kiro in a short period was a major achievement. We successfully operated a system that integrated many technical elements including natural language understanding through AWS Bedrock integration, real-time rendering, and game state management.
In terms of development process, we're also proud that we established a workflow that maximized Kiro's potential. Through scope management with monorepo, automated team collaboration with GitHub MCP + Agent Hooks, and a phased development approach (pilot version → official version), we achieved efficient and collaborative development.
What we're most proud of is creating that magical moment when a player simply types "Soldier, attack the monster!" and characters on screen actually start moving. This magical experience demonstrates new possibilities for AI-assisted development.
What we learned
We learned that the true value of AI-assisted development isn't writing code faster, but making new ideas realizable. In traditional game development, we would have been caught up in implementing complex UI design and event handling, never reaching the core idea of "controlling games through natural language."
We also learned that when using powerful tools like Kiro, proper scope management and team collaboration are crucial. Code division through monorepo and automated workflows through GitHub MCP + Agent Hooks were essential for balancing development speed with team coordination.
The most important learning was that in collaboration with AI, creative thinking about "what to build" becomes more important. We were able to focus on user experience design and game mechanics innovation rather than technical implementation.
What's next for Token Shogun
We want to increase the variety of enemy types and add more stage maps. Also, it's a major regret that we couldn't introduce sound, which is quite significant for games.
Built With
- bedrock
- next
- node.js
- phaser.js
- typescript
Log in or sign up for Devpost to join the conversation.