If you ever played idle games before, you surely noticed how fast numbers in these games grow, even after only playing for a short amount of time. This exponential growth poses some challenges for developers though.
INNOGAMES STORIES

5 Years Quality Assistance
Quality Assistance… a new term? No, but an alternative name for QA which traditionally stands for quality assurance. Quality Assistance offers a fresh, automated approach to testing that complements the development of high-quality software. It allows the whole software delivery team to contribute across the entire software development life cycle, from planning to post-deployment. This […]

If Marie Kondo were a software engineer: an idea for a refactoring approach
Marie Kondo got famous by teaching people how to tidy up their homes – only once! It is so effective because she makes people really think about what kind of life they exactly want to live in these homes. She also brings several practical methods for tidying up.
Can these methods be applied to old, messy, untested, legacy code?

Testing iOS In-App Purchases
Testing in-app purchases can be a challenge, especially if you want to cover edge cases.
In this blog post, I discussed some of the difficulties we faced with the in-app purchase tests for iOS and an easier way to simulate payments without App Store Connect.

Testing Jenkinsfiles and Libraries
Jenkins is an open source continuous integration server to automate build, test and deploy pipelines and even more. Jenkins pipelines and libraries have a big benefit as they can be added to SCM. However, testing of pipelines and libraries can be a hassle sometimes, especially when not dealing with it on a daily basis. One […]

Be a productive developer within a distracting environment
I’m a software developer. I love to write code, design architectures, implement complicated algorithms and I refused to give up my passion to a schedule dictated by my environment.
I’m Friedrich Wessel, Senior developer at InnoGames, and I’m going to talk about how to be a productive developer within a distracting environment.

DungeonBurst (Building DungeonKeeper with Unity ECS and Burst) Part 2 – AI and Pathfinding
In this blog post I will continue the series on how to use Unity’s EntityComponentSystem as well as Burst compiled Jobs to build a dungeon builder game like the good old DungeonKeeper.
This time its about adding creatures that can navigate through the dungeon using pathfinding

HelpURL for Shaders
Summary Unity provides a convenient way to link custom documentation to Monobehaviours and ScriptableObjects by adding the [HelpURL] attribute to your class. When an instance of this class is selected in the Inspector users can click the help icon to open the given link in the attribute in a browser. It would be nice if we could use the same attribute also […]

The Player Setup Endpoint – Let the Frontend run Backend code
While developing a game it’s often required to have a player in a certain state. Especially when testing new features or bug fixes.
In a previous blog post I introduced you to our player setup system for backend integration tests. In this post I will explain how the frontend can use the same system without any additional effort!

Unity Assembly Definition Files
Use Unity Assembly Definition Files to improve compile time and project structure. Learn the basics and get in-depth knowledge with examples about how to migrate your project.