Project Description

THE CUSTOMER

Unless you have been living under a metaphorical rock outside of the gaming industry for almost 50 years, this client barely needs an introduction. Atari has been a household name for decades, bringing a vast array of arcade-inspired cult classics over the generations. Our project this time, Centipede: Recharged is not an exception. 

ABOUT

The task is rather simple: revitalize and rework legendary title Centipede up to the latest standards of video games nowadays or, going into more detail, stretch the game to match modern aspect ratios in 16:9, create visual design and effects, check and update the code involving game mechanics, rework UI and port the game to numerous platforms. 

THE CHALLENGE

While the concept and general tasks that were given to us were particularly usual to our studio, there was a small spanner in the works. Having a few other Recharged projects from the series in the plans meant that all of the base code, involving leaderboards, achievements, settings, audio and visual systems, user interface and the structure of the challenges had to be coded in such a way that it could be used in subsequent games. Essentially everything that is not related to the gameplay of the exact game must be transferable to other games.

THE SOLUTION

Projects of such magnitude might present a serious case of poorly managed work (and the fact that we had moved our offices amidst the project presented an even greater risk for that). With deadlines coming closer, some parts of the code might not be reviewed as they should be and the base code could stop working properly at all. We fixed this by implementing a structure where developers work on their separate branches and all of them were reviewed before being pushed into the repository. This helped monumentally to prevent new features from breaking the already existing code. 

In general, we worked on Centipede for about 6 months as we had to create base code from scratch. Other games in the series (Black Widow: Recharged and Asteroids: Recharged) took almost half of that time, thanks to the base code.

After finishing the project, we altered our work process once more where now we check the oncoming new code with all of our developers by doing pull requests. This change is already implemented as we are working on other installments in Recharged series. We have also moved all of the games into a single project as It saves us time. We do not have to move base code every time we start a new project and everything is arranged neatly in one place. Another benefit is that fixes automatically apply to all of the subsequent games and it eliminates the chance of a human error that might simply forget that some of the changes happened. 

Finally, for future projects, we have estimated that a significant time of the pre-production stage is needed to set our processes in line. We have also decided to update the written base code with our knowledge up to date. 

TECHNOLOGIES AND TOOLS

Game engine: Unity
Languages: C#
IDE: Visual Studio
Assets used:
I2Localization – localization
ReWired – controller support
Cinemachine – camera control
Shader Graph – Shader editor