Warhorse Studios Replaces Subversion with Helix Core to Enable Agile Workflows and a Continuous Integration Pipeline
Helix Core, the enterprise-class versioning engine by Perforce, empowers sophisticated game development at Warhorse Studios. In the studio’s quest to take players to the height of Medieval Europe, Helix Core streamlines support for large binary files and feeds into their continuous integration (CI) pipeline.
Although Warhorse Studios as a company is relatively new to the gaming industry, its founders and staff are not. Based out of Prague, members of the 100-person team has been involved in the design and development of “Mafia I,” “Mafia II,” “Operation Flashpoint: Dragon Rising,” “Operation Flashpoint: Resistance,” and more. The studio is gearing up to release its first title, “Kingdom Come: Deliverance” in February 2018.
Warhorse Studios aims to shake up the genre with its historically accurate, first-person RPG, which boasts “dungeons, but no dragons.” After a successful Kickstarter campaign earned the studio more than £1 million from backers, Warhorse Studios and publishing partner Deep Silver are set to release the game for PlayStation 4, Xbox One, and PC.
Why Helix Core
Storing of Binary Files
Integration with Build Tools
“Game Development is different than other forms of engineering. You can’t plan for it with the same accuracy you might plan your housing renovations or landscaping projects,”
Development Environment at a Glance
Company name: Warhorse Studios
Headquarters: Prague, Czech Republic
Industry: Game Development
Perforce customer since: 2004
Number of Helix users: 75
Number of development sites: One
Number of files: 2 Million (3 TB)
Client platforms: Windows
Challenges in Game Development
Storing Binary Files
Before Perforce, the studio was using Subversion for binary files and Mercurial for code. As Warhorse Studios ramped up, scale and performance concerned the team. Like many gaming studios, they needed to streamline binary file management and saw the benefit in consolidating all of their digital assets onto a single platform, including the resulting artifacts coming out of their CI and automated build process.
The ability for Helix Core to manage large files and allow the team to fulfill their vision of Agile by enabling CI/CD made Perforce the obvious choice for Warhorse Studios.
Agile in Game Development
“(Game) Development is different than other forms of engineering. You can’t plan for it with the same accuracy you might plan your housing renovations or landscaping projects,” says Martin Klíma, Executive Producer at Warhorse Studios and long-time advocate of Agile workflows and CD.
“When you build new software, you’re building something that doesn’t exist; you might think something will take two months, but it could also take three or four. Therein lies the central tenets of Agile development: embracing change and adapting to it.”
According to Klíma, Agile in a game development environment varies greatly from how it is used to develop business applications. In contrast to an environment where you are interacting with customers, capturing and refining their requirements, developing new features based on that feedback, and releasing them in short iterations, the benefits of Agile for Warhorse Studios come from taking the team’s design and copy, and efficiently building the software to bring it to life. The biggest impact from that process is the visibility into the progress, and the ability for the team to see working code throughout a prolonged period of gestation.
Storing Binary Files: Check
Warhorse Studios knew they needed a better version control system when it was proving more inconvenient to manage their large binary files in Subversion. Helix Core has allowed individual contributors to free themselves of Subversion’s unwieldy “pristine copies,” which took twice the space on their hard drives. Strictly enforced file-locking further streamlined design iterations on large binary files, eliminating a lot of wasted time, effort, and frustration among team members.
Integrating with Build Tools: Double Check
With the implementation of Helix Core, Warhorse Studios was able to reap the benefits of CI. Today, Helix Core fires off automated builds into the studio’s nine TeamCity build servers. The process keeps the project moving forward while simultaneously safeguarding all of the artifacts that come out for their build servers. The team uses the Helix API for Python, P4Python, to support a variety of automated tasks, many related to proprietary applications that are invoked to prepare graphics for the build process.
Disaster Recovery: Bonus Point
Helix Core and P4Python have allowed Warhorse Studios to build a robust disaster recovery plan for their development environment. Developers and designers sync and submit work daily so that nothing escapes version control. The main server is mirrored in real-time to a replica server on premise. Automation created by Warhorse Studios generates checkpoints every night and copies new and changed files, along with all necessary metadata, into AWS cloud for backup.
With more expansive audio and greater visual quality, file sizes and game complexity continue to grow. The team is pushing past the traditional limitations of CD methodology in game development by expertly and innovatively building out their CI pipeline to avoid feature creep, keep up with shifting priorities, and speed up delivery. Warhorse Studios knows it has found a version control solution that will grow with them, so they can focus on employing the technology of the future to tell the stories of the past.