1) The concept of the game. First of all, you need to figure out what you are going to create. Will it be a 2D game or a 3D game? Shooter, arcade, RPG, or something else? Researching potential competitors is a helpful step. Browse the Google Play app store to find similar games. Try to understand why this game is so popular and what can be improved in it. Based on these observations, you can create your own project.
2) The choice of tools for creating a game. You can create a game using almost any programming language and any engine, but there are more or less convenient tools. We advise you to pay attention to Unity. It is the most versatile engine available today. It has developed many cool games not only for Android and IoS, but also for consoles and PCs.
Here are some examples of successful games built with Unity:
Hearthstone, Genshin Impact, Lara Croft Go, Monument Valley (1, 2), our Realmcraft game, and many more. Pros of Unity:
1) A component-oriented approach: the developer prescribes components to the object, such as the ability to control the object and the behavior model;
2) A large library of assets and plugins that can be used to prototype and complete the game. For example, you can import an AI model for enemies;
3) Unity supports the latest rendering technologies like ray tracing, and you can make games with photorealistic graphics.
4) You can quickly create cross-platform games; Despite the relative ease of creating games with Unity, the developer should be familiar with programming (C#). But if you don’t want to be a professional developer, but just want to create cool games for yourself and your friends, then you can use such constructors as GameMaker, Construct 2, GameSalad, etc. These are visual constructors that don’t require programming knowledge.