ArenaNet은 "Guild Wars"의 거의 모든 자산을 관리하고 저장하기 위해 Helix VCS를 선택했습니다.
Perforce ensures that all assets are reproducible and traceable. Users can revisit and reproduce any past version of the software or asset under Helix Versioning Engine's control, and use any version as the baseline for patches or new development.
AreaNet이 자산을 관리하기 위해서 Helix를 선택한 이유
Helix는 프로그래머와 아티스트 모두에게 유용합니다.
파일 충돌을 신속하고 쉽게 해결하십시오.
트랙에 벗어나지 않고 별도의 분기에서 개발
수십 명의 ArenaNet 직원은 생산성, 신뢰성 및 커뮤니케이션을 향상시키기 위해 이러한 Helix 기능을 매일 사용합니다.
Guild Wars의 엄청난 양의 아트와 코드 데이터베이스를 사용하더라도 사용자는 매우 짧은 시간 내에 Helix 데이터베이스와 로컬 파일을 동기화할 수 있습니다.
Development Environment at a Glance
ArenaNet was established in 2000 by three key members of the Blizzard Entertainment development team. ArenaNet's mission is to create a state-of-the-art, interactive game network, and to design and publish premier multiplayer online games for dedicated game players.
In December 2002, ArenaNet was acquired by NCsoft Corp., the world's largest online game company.
ArenaNet's first title, "Guild Wars," was released on April 28, 2005 and became an instant number-one seller around the globe. More than one million copies have been sold, and the numbers continue to increase. "Guild Wars" is a competitive online role-playing game that rewards player skill more than time played. Players explore a rich fantasy game world, acquire skills, build personalized characters, and compete in head-to-head guild battles with players from around the world.
ArenaNet followed up with a new campaign, "Guild Wars Factions," which was released in Spring 2006.
Development Challenge
Guild Wars was developed over the course of five years. Because of the extraordinarily large size of the project — millions of lines of code, hundreds of design documents, and thousands of individual art assets — the key challenge to ensuring a smooth development process was to keep track of each file's complete change history.
The Solution: Helix VCS Provides Complete and Fast Asset Management
ArenaNet chose Helix Core to manage and store virtually every one of Guild Wars' assets.
Perforce ensures that all assets are reproducible and traceable. Users can revisit and reproduce any past version of the software or asset under Helix Versioning Engine's control, and use any version as the baseline for patches or new development.
"When a problem arises with a given file," said Vickers, "we use Helix to trace file histories and find out who to contact in order to correct the problem."
Developers can also easily call up old versions of a file or compare two revisions of a single file.
"Dozens of ArenaNet employees use these Helix features on a daily basis to improve their productivity, reliability, and communication," said Vickers. "Even with Guild Wars' huge database of art and code, users are able to synchronize their local files with the Helix database in a very short amount of time."
Helix Appeals to Both Programmers and Artists
Helix provides a number of client interfaces, two of which are widely used across the Guild Wars team. Programmers heavily use the command-line interface for everyday tasks such as editing files and submitting changelists, as well as for more esoteric tasks such as batch automating complex processes. Artists and designers, on the other hand, tend to use the P4Win graphical user interface for most Helix tasks.
The team also relies on a proprietary "build server" that generates new versions of Guild Wars executables and DLLs for both the client and servers. The build server uses the Helix command-line interface (P4) to manage tasks such as checking out the current code and art, labeling new builds, and checking in code that's modified during the build process.
The Guild Wars Team Relies on Helix Versioning Engine's Powerful Parallel Development
"Parallel development is essential to the effectiveness of our development team," Vickers said. "This is especially true for our programmers, who are often working on different sections of the same files."
When file conflicts arise, Helix provides the necessary tools to resolve them quickly and easily.
The Helix Branching Model Makes Multiple Releases and Multileveled Development Lines Traceable
The development team also makes heavy use of the branching and integration features in Helix. At any one time, there can be several active code and art branches: one for development, one for the current version of Guild Wars that's running live, and another for testing changes that are about to go live.
"Helix has made it possible for us to develop in separate branches without losing track of the full change history of each file," explained Vickers. "It has also allowed us to seamlessly integrate changes from one branch — for example, the testing branch — into another, such as the live branch."
Helix Versioning Engine's change-oriented model, complete with atomic change transactions, ensures that the overall history of the source code moves forward in a traceable, understandable process.
"Helix plays an instrumental role in the release and ongoing development of Guild Wars," Vickers concluded. "Helix is a great product, and our entire programming team, many of whom are SourceSafe refugees, is as enamored with Helix as one can possibly be about version control software."
Experience first-hand how Helix Core helps teams to deliver their vision. Try Helix Core — with all the extras — for free. No limits on features and functionality, and no end date.