Is it worth to use Unity Game Engine for Indie Game Developers?
The rules of Unity Engine have changed.
On September 12, Unity Company announced a new Runtime Fee based on above certain thresholds, annual revenue and game installs, starting January 1, 2024.
For instance, if indie developers used the free Unity Personal plan, getting $200k in revenue and 200k downloads in the last 12 months, then Unity company would charge $0.20 for every install above the threshold.
In fact with this announcement, Unity has become the enemy of indie game developers for many reasons.
Unity forum thread
The following Official Unity Forum tries to explain common questions/answers to this unlucky announcement:
If a user reinstalls/redownloads a game / changes their hardware, will that count as multiple installs?
A: Yes. The creator will need to pay for all future installs. The reason is that Unity doesn’t receive end-player information, just aggregate data.
Really?
Let's suppose the following scenario: a game is installed / uninstalled 10 times for every device of one single user, and will be counted as 10 installed games.
In this case, Unity will charge 10 times for running the game but the player has only paid once for it.
Do we agree this scenario is not a good deal for you as an indie developer?
It is clear you should consider another game engine instead of Unity.
Developers reactions to Unity Runtime fee
Game developers are angry and fuming about this new pricing model. It is insane, unfair and the worst, most devs do not trust Unity ever again.
So many questions are in the air:
How Unity will track game installs?
What about pirated installs?
Must I trust in just Unity track?
Can Unity change license conditions unilaterally?
What will happen with Unity games and Xbox Game Pass?
Is Unity Game Engine a good choice for building games?
I have spent some time analyzing which game engine is best for making indie games. In my opinion, Unity Game Engine is not a good choice to make indie video games regardless of this new Runtime fee.
Some reasons to avoid to choose Unity for making indie games:
Unity Engine is not open source, so you might wait for bug fixes until Unity decides on the best case.
Unity pricing model can be changed at any moment... just what they have done! This is not a fair deal.
Unity provides a pretty good visual editor but experienced developers will prefer to write code.
From my point of view, you should use Unity Engine for two reasons:
Quick demos or testing a game design idea.
You are planning to release the game the no-paid one.
Looking for Game Engine Alternatives
This comment from the official Unity Forum summarizes the lack of trust in Unity:
Question to the team: How are installs tracked on devices, I'm Not collecting any data from my players/clients and I don't plan to do so in the future. no data packages going out - Unity can't verify the numbers.
Will the game be FORCED to do it? In that case, I'll probably look at Godot for future projects, that's a big No for me.
Most indie developers disagree with this new Runtime fee, with many unclear arguments for updating the Unity pricing model.
How game installs will be tracked? It is an unclear question that should be answered by Unity company.
The way installs are counted is also outside of game developers' control. Is it enough to switch to another Game Engine?
Let's take a look at Game Engine based on C# programming language.
Godot Game Engine
I guess many Indie developers will switch from Unity to Godot, as the following comment extracted from the previous Unity Forum.
This is because Godot is absolutely free.
Godot provides a visual editor that works on Windows, MacOS and Linux. The officially supported programming languages for Godot are C#, C++ and GDScript.
Just visit the following Godot's FAQ to get answers to the following three questions:
What can I do with Godot?
How much does it cost?
What are the license terms?
The short answer is you could develop the same type of game using both engines Godot and Unity.
Download Godot 4.1 if you want to give it a try.
RayLib Library
Actually, Raylib is not a game engine but that’s a multiplatform, minimalistic, simple and easy-to-use library to build video games without visual helpers or specific editors, just coding with your favorite text editor.
Raylib has received some awards from Google and Epic Games in the last few years.
RayLib C# binding provides you with a way to use C# with the RayLib library, which is appropriate for senior experienced developers.
MonoGame
MonoGame is also an open-source C# Game Framework that currently supports Windows, macOS, Linux, iOS, Android, PlayStation 4, PlayStation 5, Xbox and Nintendo Switch.
It is a very interesting alternative to switch from Unity.
MonoGame also distributes tools to build content for your game.
. . .
Too many other Game Engines are out there to switch from Unity.
Let’s take a look at my story [Becoming an Indie Developer with Gideros Studio](Becoming an Indie Developer with Gideros Studio) if you want to develop games with a Lua-based and totally free game framework.
Happy switching!