I can say, unequivocally, if you’re starting a new game project, do not use Unity. If you started a project 4 months ago, it’s worth switching to something else. Unity is quite simply not a company to be trusted.
It’s on developers to sort through these two types of costs, meaning Unity has added a bunch of admin work for us, while making it extremely costly for games like Vampire Survivor to sell their game at the price they do. Vampire Survivor’s edge was their price, now doing something like that is completely unfeasible. Imagine releasing a game for 99 cents under the personal plan, where Steam takes 30% off the top for their platform fee, and then unity takes 20 cents per install, and now you’re making a maximum of 46 cents on the dollar. As a developer who starts a game under the personal plan, because you’re not sure how well it’ll do, you’re punished, astoundingly so, for being a breakout success. Not to mention that sales will now be more costly for developers since Unity is not asking for a percentage, but a flat fee. If I reduce the price of my game, the price unity asks for doesn’t decrease.
The reality is that it’s a lot of fuss for a game development company to switch engines but for an experienced individual developer it’s not a huge deal to switch engines. If you learn game development and design today using Unity then 100% of the game design knowledge is exactly transferable and 80-99% of the game development knowledge (depending on exactly what you’re doing) will transfer to Unreal or Godot or whatever else you might need to use later.
It’s like a musician switching from one audio production suite to another. The musical theory stays the same and while the exact details of how to make each bit of software do stuff is different, the actual stuff you’re making it do is broadly the same.