February 25, 2015

Kinesthetic Games: A Big Fan of the “Version Everything” Ethos

At Kinesthetic Games, we’re a good example of an indie studio that has built version control into the core of everything we do. We’re currently hard at work developing Kung Fu Superstar, which aims to be both a compelling video game and a self-improvement tool, teaching people high quality martial arts.

We’ve been a 20/20 customer of Perforce since day one - the free use of an enterprise tool is a great way for a start up to reduce the costs of development. We’ve been a huge fan of the ‘version everything’ ethos and Perforce fits the bill in lots of ways.

Freedom to experiment without fear

It’s amazing to have the ability to record absolutely everything that you do and to be able to go back through any version, of any piece of work that you’ve ever done since you started. Perforce gives you peace of mind while you’re working and frees you from the fear that what you’re producing could be lost. So, you can experiment and change your mind in a very confident way, knowing that you can roll back to a previous version at any time, even in the future.

One place for everything

We use Perforce for everything, apart from things like Wikis, because there is no real need to have them in the version control repository. But, we use Perforce for all our character models, all our animations, all our sound assets…everything goes into the Perforce repository.

Single source of truth

At the end of the day, if you really want to find out what’s happening in your project in terms of your actual deliverables and actual tangible elements that might end up in your client’s hands, your Perforce log is really where to look. As a project manager, if I want to get a good idea of what's been happening in our projects in the past few days or weeks or months, Perforce is my first port of call.

Communications tool

Perforce is also a useful way for the team to communicate. It’s like a news-feed for a project. The Perforce log gives you a very clear status of what is happening in the project and it helps us to work closely with remote team members: we have a small core development team here in Guildford, but we collaborate with numerous other developers of varying backgrounds who are spread all over the world. Some of these people have never used version control before, so it is important that it is easy to use. With Perforce, they can usually learn to use it within a day or so. We’ve created our own user guides, but we supplement those with the Perforce video tutorials.

The most important tool in the box

The ability to integrate Perforce with other tools, such as Maya, Photoshop, 3D Studio, Unreal and Unity, has also been important to Kinesthetic. But I would argue that Perforce is probably the most valuable piece of all the various pieces of software that we use on a daily basis. Perforce version control is always there in the background, making sure everything works.