Why Helix Core Was the Obvious Choice to Ravn Studio for Version Control
One of the biggest challenges facing any game development studio is ensuring that everyone is working toward the same set of business goals. Norwegian-based Ravn Studio addresses this by using Perforce Helix for version control, which enables both the development and business teams to collaborate and communicate with each other more effectively. Helix enables visibility of information across the entire organization, regardless of data volumes, locations, or number of users.
Ravn is an award-winning game development studio based in Norway that is growing and beginning to make its presence felt worldwide. With its original roots in TV production, Ravn now provides a full range of interactive content across various media, including the computer games market. Ravn's portfolio contains titles such as "Snakeball" for the Sony PlayStation, "Angel Crash" for the PC, and a variety of Nintendo DS games targeted at a younger audience.
Ravn's development team currently consists of nine people based in Drammen, close to Oslo, Norway's capital city. While some development is outsourced to contributors in other countries, the majority of development work is carried out in house using home-grown tools. Art assets are created using industry standard programs.
How Ravn Has Benefited
Scaled implementation beyond anything they'd previously imagined
Added changelists without adding extra risk
Implemented jobs feature removing need for third-party tools
Moving to Helix has been a major help in achieving what we want to do faster and better. The performance is unbelievable."
Development Environment at a Glance
- Company name: Ravn Studio
- Headquarters: Drammen, Norway
- Industry: Game Development
- Perforce customer since: 2008
- Number of Helix users: 1,700
- Previous version control system: VSS and Subversion
Helix Enhances Communication and Collaboration
Ravn operates in an increasingly competitive and fast-paced market. Ensuring that projects run smoothly to the agreed-upon deadline and that its customers are happy with the results is essential to the business. This is where Ravn has found Perforce Helx to be invaluable.
Morten Brenna, lead programmer, explains: "Versioning encourages a more collaborative atmosphere and ups the level of communication between different camps. For instance, my job is very different from the administration team's job, so version control helps us to appreciate each other's issues."
Version control helps everyone understand the bigger picture and ensures teams have access to the very latest information and are working from the correct versions. If Morten and his team put an exciting new feature into a game, it helps the marketing team to know about this as early as possible; and when speaking to customers, the business team needs to be aware of the latest versions of a game, too.
With version control , authorized users are able to check documents in and out, not only ensuring that the very latest file versions are available, but that previous versions or versions being worked on by another team, are available. Different levels of permission, access, or functionality can be applied. For example, the business team only needs to see the very latest version of a game, not the different development branches that the development team might be pursuing.
Benefits of Helix
Prior to Helix, Ravn was using open source-based version control system, and although this approach worked well enough in the early stages, the company found that performance was affected when projects went above a certain scale. With Ravn's continued growth, this was clearly a problem that was not going to go away. Morten was beginning to look around the market when he saw Perforce Helix in action at a customer's site.
"The customer has a much bigger database than ours, and we saw Helix scaling to meet their requirements without any problems. We said to ourselves, 'We want Helix!' Since getting Helix, updating the database has gone from taking half an hour or more to just one minute. Helix works like a charm."
Although Ravn's primary driver for choosing Helix was speed of performance and the ability to cope with an ever-growing database, Morten has found other features useful, too, such as changelists. "We use changelists for two reasons: one is to be able to sort the file check-outs, so you know which files are checked out and for what reason; and two, when we assemble the final build versions, it is important to only get the updates we need. It's like having risk management built in for free, and it's easy for the rest of the team to continue working without adding more risk."
"For instance, when we do a final gold master candidate build, we continue to improve the product, fix bugs, and so on. Essentially, we assume the builds will fail on submission. Changelists make the turnaround shorter when the builds actually do fail. If there is only a small fix required to pass, we only want to include that one fix and re-submit as soon as possible, and not get all the rest of the fixes as they introduce extra risk. Some fixes are large, requiring multiple files from multiple people, so batching up and naming the check-ins correctly becomes very important."
Morten also rates the Helix Jobs feature, which removes the need to use a third-party bug tracking tool: "Using Helix Jobs means we have fewer products to maintain and is very convenient for us. In the future, we will link Jobs to changelists to keep better track of bug fixes."
One Database for Everyone
With Helix, Ravn now has just one database for all of its projects, rather than one dedicated server per project, and Morten and his team feel comfortable that Helix will be able to meet escalating demand in the future. "We are very confident in the scalability of Helix because we have seen it in use in much larger settings."
Morten concludes, "I wouldn't want to work without version control ever again. It has become an integral part of the way we work and ensures everyone is working on the right things and not colliding with one another. And moving to Helix has been a major help in achieving what we want to do faster and better. The performance is unbelievable."
For Ravn, version control is not just about eliminating the risk; it tangibly helps the company to achieve its business goals more effectively, and enables this small but exciting and fast-growing firm to compete on the world stage.
All trademarks or registered trademarks are property of their respective owners.