Development Log


Hi! Hello everyone, I’m GQ, an independent game developer. It’s been a year since I first posted my development logs. As a newcomer in the indie game scene, this past year has been truly enlightening—I’ve learned a lot and realized how incredibly complex creating an indie game actually is. Games, as a composite of art and science, involve so many facets. For someone transitioning from another industry, grasping the core principles of game development is crucial. Creating games and playing games are two entirely different endeavors. Despite my years of gaming experience, those seemingly minor details and features that go unnoticed during play require immense effort and time to implement in development.
After a year of learning, I finally grasped the specific usage of Unreal Engine. Although I haven’t mastered it yet, it’s already quite impressive for my game development. At first, I thought I couldn’t achieve some of the game features I envisioned alone, but in the end, I succeeded. While Unreal Engine’s features are too extensive and powerful for beginners, creating a visually appealing and playable indie game is actually quite simple—provided you understand the engine’s functionalities and technical standards.
Next, I will demonstrate some important features in my game and show you how they are implemented!
The first issue is character collision. In my game design, there are numerous units with diverse forms and significant size differences. I aim to achieve realistic collision effects from a first-person perspective, such as freely jumping onto the armor of other units and moving together with them, as well as directional shield penetration and blocking. The core of these features lies in collision channels. Unreal Engine comes with multiple built-in collision channels, allowing me to implement these functions effortlessly. Moreover, the engine supports customizing your own collision channels, which is crucial for my game. Although I spent considerable time to fully grasp the functionality of collision channels.
The second is the Animation Notify function, which enables crucial performance features through animated notifications. This serves as a vital visual expression tool for character scenes, allowing precise control over particle system placement and activation timing when releasing skills. Any system functionality requiring character animation integration can be achieved via Animation Notify. In fact, mastering this feature allows me to implement 80% of my character performance mechanics, significantly boosting my game production efficiency

The third one is the blueprint function. Well, the blueprint function should be the primary factor for all non programming developers to choose Unreal Engine. Although I have been exposed to programming in my early student life, I have not really studied it systematically due to professional reasons. Using blueprints to create games has become an important tool for me to save time in game development and learning. Using encapsulated blueprint nodes to write game functions is very efficient and fast. At first, I thought it was impossible to create some important game functions without programming languages, but later I realized that I was overthinking. In fact, for general independent games, using only blueprint functions can be well completed. Game development does not necessarily require very complex systems or functions to be fun, and game development is more of a complex design. By using those key blueprint nodes well, a lot of basic game functions can be completed. When it comes to programming and blueprints, some optimization issues are mentioned. When implementing complex system functions, the engine actually provides corresponding system blueprint functions and nodes. However, it is indeed difficult for beginners to master these functions of the engine. Beginners will repeatedly use some beginner blueprint function nodes to implement complex functional systems. Although this can cause optimization difficulties and system bloating, in my personal experience, it is actually necessary. For novice game developers, no matter how good the ideas and creativity are, they are useless if they cannot be implemented on the ground. It is important to use logic that you can understand to implement the gameplay or function you need. It is correct to continuously learn and find more optimized implementation methods, especially for single player game producers like me. The, Compared to spending a lot of time making a certain function extremely simple and efficient in the program, completing a relatively complete game is more important. (First add, then subtract)https://www.bilibili.com/video/BV1Y9UGByENn/?vd_source=7ce7bbc7cf4c23b60ba1fbb87a3ce9cb