MMA Manager is a simulation game where you have to manage MMA fighters. You have to develop your gym and be ably to manage your fighters.
Stepico Team received backend code in Cake PHP (including admin panel for balancing game on
the fly and full backend logic), and protocol based on JSON, where some requests could exceed 100 kb.
On the client side the project used NGUI as UI framework, not utilizing correctly neither it’s atlas generation, nor masking features, relying on raw images and panels. Also, Unity project used manual animation transitioning for over 100 animations, instead of using Animation Controller and animation blending.
When Stepico was brought to the project, we were tasked with rewriting core of the client, full rewrite of a backend, to support an array of feature changes and new features, that was not possible with old backend in very short timespan (below three month)
Dedicated team of skilled specialists
The dedicated team of lead backend developer, full stack developer and two unity developers, spend time analyzing the project requirements, scalability options, and current project problems.
After that Stepico team has successfully carried out the task of changing, adapting and rewriting project to customer’s satisfaction. After estimating the task at hand and consulting with leads, the team decided to use our best experiences with most applicable technologies to meet the expected deadline.
We used Photon and PUN with proprietary in-house serialization solution, to improve connection speed and reliability, as well as added ability for event pushing/broadcasting from server within the same protocol that whole game is based around. Also, the size of the largest response dropped below 7kb (due to object description optimization, drop of HTTP overhead and binary serialization). We have also rewritten server in C# (using IIS and ASP.net) to allow code reusability between client and server.
On client side, the team updated Unity to more modern version (unity 4.5 to 5.4 migration) and improved NGUI usage in the project, by more appropriate use of atlases and shaders (materials), which resulted in visible performance boost and memory optimization throughout the project.