Testing Content-Heavy Games with AI Bots

Case Study: Die Gute Fabrik’s Saltsea Chronicles

Saltsea Chronicles is a new story-driven adventure game from the award-winning indie studio Die Gute Fabrik (Mutazione, Sportsfriends), released in October 2023.   

Company

Die Gute Fabrik, an independent game studio funded by Take-Two Interactive’s Private Division, is known for its innovative game concepts. They draw inspiration from folk plays to story-driven games inspired by soap operas, ensemble cast storytelling, television, and theater pushing the boundaries of game design. 

Game

Saltsea Chronicles

Platforms

PC, Switch, PlayStation 5

About the Game

The Saltsea Chronicles is an adventure game set in a post-flood world called Saltsea, made using the Unity Engine. In this game, players must guide a ship crew through different islands while encountering unique communities, uncovering deep conspiracies, and making choices on where to go and which crew members to investigate to find their captain, Captain Maja. In Saltsea Chronicles, the player guides the entire crew through the story. In each chapter, the player picks which island to visit and who to send on the expedition. These choices unlock different content, help them develop relationships, and give them a chance to resolve (and create) tensions within the crew. In this game, players must navigate twists and turns, demanding challenges and pleasant surprises to chart a successful journey.

The Challenge

Die Gute Fabrik has a team of approximately 20 employees. For the development of Saltsea Chronicles, only one person was dedicated to quality assurance (QA), with access to some external on-demand QA contractors. This created a significant challenge to test all possible combinations of choices manually, especially considering that Saltsea Chronicles is a complex branching narrative game structure with hand-authored text. The game consists of 20 chapters, each taking around an hour to complete.

To make things more complex, Die Gute Fabrik created a mini-card game within the game called Spoils that required the identification of any edge cases.

To ensure there were no invisible objects in the game that could be triggered or interacted with accidentally, they needed to detect any and every unintentional object implementation in the game scenes. They also needed to ensure that the player couldn’t access story points by accident before meeting other conditions, which made manual testing extremely challenging. They were determined not to release their game until they had tested every single possibility.  

modl.ai’s Solution

modl:test automatic exhaustive testing.

modl.ai leveraged its out-of-the box testing bot solution and customized it to simulate random interactions and choices to fully test a chapter of Saltsea Chronicles and its mini-card game within the game. Die Gute Fabrik provided save files to the bot to categorize its runs by chapters, making it easier to organize and review the results. The testing bot was also flexible, allowing Die Gute Fabrik to extend it and add additional events after the initial setup was completed by modl.ai. 

By setting up custom events in the game code, Die Gute Fabrik was able to have an overview of not only bugs and errors in the game but they could also see which dialogues were triggered and locations visited without needing to scan the game logs or rewatch the test video in full.

Once the bot was implemented it could play an indefinite amount of time, and I just had to spend several minutes to review spreadsheet. In a few minutes I could get outcomes from an entire play through of the game, which would take over 10 hours to complete”

Mikaël Bourget, QA Lead for Die Gute Fabrik

Result

modl:test helped Die Gute Fabrik detect crashes and edge cases faster than would have been possible with manual testing. Die Gute Fabrik implemented modl:test early in the process, even before a QA process was established, which meant it was enforced in most testing cycles. 

modl’s exploratory testing bot’s main use case was to identify game crashes. Due to the game’s high branching factor with lots of chapters, the bot was able to more easily see if chapters loaded properly and then play to the end to ensure there were no crashes. The testing bot  was also instrumental in helping the programmers find issues that would have otherwise gone unnoticed. For instance, the bot identified problems where the player would not have been able to proceed or where the game would have frozen completely. Additionally, the exploratory bot detected unintentional buttons on the screen that were invisible to the player but still had functionality such that the player could interact with them. 

modl:test also played a crucial role in the card game Spoils, as it was the part of the game that required the most testing. Before the implementation of modl:test, a developer had to manually test the card game. However, after modl:test was added to the game, the developer was able to run the tests and reduce most manual testing, sending it directly to QA.

modl:test’s API made the testing process even more streamlined. Die Gute Fabrik uploaded a build at the end of their work day and had all their 60+ levels tested on the modl platform overnight. In the morning, programmers viewed the test reports generated overnight for each level and immediately started working on fixes for the bugs found.


After extensive testing to ensure an excellent game experience, Die Gute Fabrik successfully released Saltsea Chronicles.