Overview
This podcast features Jonas Tyler, co-creator of Thronefall, a minimalist strategy game that sold a million copies in its first year despite being built by only two developers. Jonas reveals the technical architecture, development process, and business realities of indie game development. Whether you're a coder curious about game development or an aspiring game creator, this episode offers rare insights into the surprisingly practical and sometimes messy world of building successful indie games.
Actionable Insights
Fast Prototyping is Key to Finding the Right Game
Jonas explains that successful indie development starts with rapid prototyping. Rather than committing to one idea, he creates numerous mini-games in 1-2 days each, exploring different concepts. For a two-year project, he might spend two months just on prototyping.
"The thing that I think is important to realize is that you can make games very, very quickly. If you just want to make a simple prototype without any fancy graphics or menus or whatever, you can get that up and running super, super quickly. What takes the most amount of time is just polishing it up and bringing it to production quality."
To implement this approach:
- Set aside dedicated time for exploration (roughly 10% of your total project timeline)
- Create multiple quick prototypes with basic shapes and minimal code
- Test and evaluate each prototype for fun factor and market potential
- Only proceed with full development on ideas that pass both criteria
Separate Gameplay Prototyping from Visual Design
Jonas revealed they use a two-stage prototyping process:
- First, create gameplay prototypes with basic shapes and colors ("programmer art")
- Once the gameplay concept is settled, create separate visual prototypes with no functionality
"We scrap all of the gameplay once again... we start on an empty project without any gameplay whatsoever and we just build a scene without any logic. We just open my game engine and try to create a nice looking scene."
This separation allows faster iteration on both elements independently. For visual prototyping, they created hundreds of screenshots of different stylistic approaches before deciding on their visual direction.
Focus on Smaller, Focused Games for Better ROI
One surprising insight is that smaller games often have better return on investment than larger ones:
"The main thing that people or that new developers should know is that games don't automatically sell better if they're bigger. If you spend twice as long, then your game needs to make twice as much money to make up for it... smaller games are much easier to make successful because if you make a game in half a year, then it has much lower requirements to be successful."
For developers considering game creation:
- Set realistic scope based on team size (extremely important for solo or small teams)
- Focus on quality over quantity - a polished 5-hour experience is better than a mediocre 30-hour one
- Consider your audience's time constraints - many adult gamers prefer focused experiences they can actually complete
Use AI Tools Strategically to Speed Up Development
Jonas actively uses ChatGPT to accelerate his coding process:
"One very common thing I like to do is I like to write skeleton code... there are the functions in there, but in the functions there's just a todo write this function or something like this. And ChatGPT is incredibly good at filling that in for you."
He also uses it as a "translator" for unfamiliar coding domains like shader programming, asking it to explain complex code or suggest implementations. The key is knowing what it can and cannot do effectively.
Balance Between Making What You Love and What Will Sell
Jonas emphasizes the critical balance between personal passion and market viability:
"The one challenge that you face a little bit is that you need to find a compromise between something that you want to make and something you think that will sell. First of all, finding something that will sell is already difficult, but then finding something that will sell that you also like to work on, that is fairly tricky."
He uses this ice cream analogy: "It's not enough to sell the perfect ice cream. It needs to be the correct kind of ice cream. Because if you're making perfect garlic ice cream, everybody's like, yeah, sure, it's perfect garlic ice cream, but I don't want garlic ice cream."
Key Takeaways
Game Development Has Different Priorities Than Traditional Software Engineering
Game developers often skip practices that would be essential in other software contexts:
- Unit tests are rarely used; debugging is done with print statements
- Code reviews are uncommon, even in professional studios
- Pushing directly to main branch is normal
- "Spaghetti code" is accepted if the game works and is fun
This works because:
- Game code doesn't need the same long-term maintainability as services
- Games ship as complete products rather than continuously evolving
- The end user experience matters more than code quality
- Fun is difficult to test in automated ways
Game Architecture is Based Around Scenes and Objects
In Unity, games are organized into scenes (levels) containing game objects:
- Each scene represents a level or distinct area
- Game objects have components attached, including C# scripts
- Scripts inherit from MonoBehaviour class to define logic
- The same prefab (blueprint) can be used throughout the game
- Unity handles much of the rendering complexity
Jonas shared that UI programming takes up 40-50% of development time, which surprises many first-time developers.
Technical Challenges Often Center Around Player Experience
The most challenging technical aspects of Thronefall were:
- Pathfinding implementation (using A* algorithm)
- Handling different character types (some can pass through walls, others can't)
- Local avoidance for units to move naturally around each other
- Balancing difficulty for players when developers are much more skilled
Indie Game Distribution is Steam-First
For indie developers, Steam dominates the market: "If you want to make indie games, there's almost no way you're getting around Steam. Like in most cases, even if you have other platforms, Steam will still be 90% of the revenue."
When porting to consoles, most indie developers outsource the work to specialized companies for a revenue share, making it a low-risk approach to expanding their audience.
Novel Ideas
The "Snowball Effect" in Strategy Game Design
Jonas identified what he calls the "snowbally" nature of strategy games as a key design challenge:
"The problem with strategy games like Thronefall is that they are very, very, very snowbally. And snowbally means that if you're ahead, you get further ahead. If you're behind, you get further behind."
His solution was making enemies drop gold, creating a guaranteed income stream regardless of how well the player has built their economy. This flattens the difficulty curve and makes the game more predictable to balance.
Game Difficulty from a Developer's Perspective
There's a massive skill gap between developers and average players. Jonas revealed that skilled players can beat many levels using just the king character without building a single structure, while average players find these levels appropriately challenging.
When developing mini-games, he creates what he personally finds fun, making them significantly more difficult than the main game. These had to be moved to a more hidden area because early players found them too challenging.
Make Games Built for Your Schedule
Jonas observed that many adult gamers specifically seek shorter experiences they can actually complete:
"A lot of software engineers who have day jobs, working eight to ten hours a day at a company, going home, potentially having other things to do, you just don't have as much time. And sometimes I personally feel it's a better use of my time to pay for a game that is shorter but very enjoyable because I do not have time to go through the $70 game."
This creates a specific market opportunity for focused indie games.
Game School Value is Primarily in Connections
While Jonas did attend formal game design school, he suggests its primary value wasn't the education but the connections:
"The main thing university did for me is that it connected me to a lot of great people... they basically curated a list of really awesome people. And that was incredibly valuable."
He recommends looking at how selective a program is when considering game education, as the quality of your peers often matters more than the curriculum.
Critical Questions
- How do you balance between making a game you're passionate about versus one that will sell well?
- When is it appropriate to use informal development practices (like no testing or code reviews) versus more structured approaches?
- How should game difficulty be balanced when developers are significantly more skilled than average players?
- Is the current dominance of Steam healthy for the indie game ecosystem?
- How might AI tools like ChatGPT change indie game development in the coming years?
- What is the appropriate scope for a first-time indie game developer or small team?
- How important is formal education in game development compared to self-teaching and building connections?
Conclusion
Indie game development emerges as a fascinating blend of technical craftsmanship, creative vision, and practical business decisions. For engineers considering this path, the most valuable approach may be starting small, prototyping quickly, and finding that sweet spot between personal passion and market appeal. While the code behind successful indie games might be messier than enterprise software, the focus on user experience and fun factor creates products that resonate with players. If you've been considering building your own game, Jonas's journey demonstrates that with the right tools, process, and a healthy dose of persistence, a small team can create something truly remarkable.