A downloadable game

I redo the logging system, this included the client and server-side logs, local logs, and also those that were transmitted to the cloud. It was made in C# and distributed by NuGet for C# projects and by PackageManager for Unity projects. In the end, I had the chance to make a tool for the development team where everyone could choose which logs they would like to see happening.

I performed the analysis of the performance of artificial intelligence, the game's pool system, and client flow. From the moment the game was opened until the end of each game. Tracking how performance changed throughout the game. During the analysis raising possible solutions to specific problems and other solutions in the architecture as a whole. In addition to the solutions, some first notes of requirements for the implementation of each one of them.

I performed a CPU slice on the game's artificial intelligence tick rate to distribute the processing cost of the more than 100 artificial intelligence agents running at the same time. With this, we eliminated the processing peaks that these agents caused on the server.

Restructured the artificial intelligence architecture of the game's troops and turrets. Migrating from a structure based on Behavior Trees to a new structure where we merge Behavior Tree with State Machine, with that, we were able to isolate behaviors and facilitate maintenance, besides having fewer artificial intelligence agents asking for new decisions without needing to.

I modified the life bars system to ensure an expressive performance gain over UI.

I restructured the game's startup flow, organizing the code and applying SOLID concepts as much as possible during this flow. This way we built an easily editable and manageable execution list so that the control over what would be done at startup was greater, maintenance better, and also the way to handle problems as well. For example, restarting the game in critical cases or even loss of connection.

Leave a comment

Log in with itch.io to leave a comment.