Building a Mobile Game Solo: What I Learned in the First 6 Months
Unicorn Rivals Team
Starting With Too Many Features
Every indie developer's story starts the same: "I have a great game idea." Then reality arrives.
Unicorn Rivals's first design had 12 different product types, 8 departments, 3 currencies, and global multiplayer. It looked perfect on paper. In practice, nothing got finished.
Lesson learned: MVP isn't about cutting features. It's about deciding what to cut first.
Choosing a Tech Stack
As a solo developer, your tech stack choice is critical. Too many new technologies = too much learning time = the game never ships.
My choices:
| Layer | Choice | Why |
|---|---|---|
| Mobile | React Native + Expo | JS knowledge, cross-platform, huge ecosystem |
| Backend | Node.js + Fastify | Fast, TypeScript, minimal boilerplate |
| Database | Supabase (PostgreSQL) | Hosted, realtime built-in, free to start |
| Timer Queue | Redis | Low latency for game timers |
| Auth | JWT | Simple, stateless, scalable |
Choosing React Native might seem odd. "Real games are made in Unity," right? But Unicorn Rivals is an idle/strategy game — it doesn't need Unity's 3D rendering power. The React Native ecosystem is more than sufficient for this genre.
Server-Authoritative Design: Why It Matters
The biggest trap in multiplayer games: trusting the client.
If you store money balances on the client, they can be hacked. If you calculate timers on the client, they can be manipulated.
When designing Unicorn Rivals, I adopted one core principle: All critical calculations happen on the server. The client only renders.
This has a cost: more API calls, more backend code. But long-term, it minimizes cheating problems.
The GDD: Think Like a Writer, Execute Like an Engineer
Writing a Game Design Document is fun. Implementing it is not.
My GDD went through 6 versions. Each version simplified one layer and deepened another. Looking back at version 1, I barely recognize it.
Advice: After writing the GDD, ask: "Can I build this alone in 3 months?" If the answer is no, cut more.
Monetization: The Last Thing You Think About, The First Thing You Should Design
Games that think about money as an afterthought always show it. "Where do I put the monetization?" should be a question the core mechanics can absorb without breaking.
Unicorn Rivals's monetization is built on three principles:
- Sell speed, not power — Paying players grow faster, not stronger
- Cosmetics always sell — Profile frames, company name packs
- Subscription > one-time — Recurring revenue, predictable growth
Balancing F2P is perhaps the hardest part of game design. You have to satisfy the free player while genuinely rewarding the paying one.
Wrap-Up
What changed after 6 months?
- Product types dropped from 12 to 1 (for MVP)
- Multiplayer went from global to regional servers
- Tech stack stayed the same (right call)
- The GDD is still evolving in version 6
Solo indie development is a marathon, not a sprint. Small and finished > large and half-done.
Follow the development on X and LinkedIn. And don't forget to join the early access list.
Curious about Unicorn Rivals?
Join the iOS beta list and be the first to know when it launches.
Join Early Access →