As our aim was to keep everything as faithful to the PC original as possible, we knew it would be mainly a coding job, with relatively little work needed on the art side. It broke down into a number of tasks - converting the engine itself to get it running on the 360 platform, and the areas where we needed to make changes to better suit the platform - such as the control system, the front end and the integration of Xbox Live.
As I am sure regular readers of Chris’ column will know, “Prey” is based on an enhanced version of the Doom3 engine. It was initially suggested to us that we would use the conversion of this engine that was being done over at Raven to bring “Quake 4” to the 360, but after waiting nearly 3 months for sight of that code, and it being apparent when we saw it that those guys were very much still in the process of development, shall we say, at the time- we felt that we had little choice but to do it ourselves rather than spend the next six months simply merging their code with Human Head’s without any forward progression ourselves. Taking this approach meant it was then much more likely that we would be in a position to resolve any problems we encountered.
In the last week of June 2005 Kevin Franklin, our lead coder here, and Ben Cosh rolled up their sleeves and started to convert the Prey code base from scratch. Their first move was to get the engine running on the PC in Direct X rather than Open GL, and then port that code across onto 360. The approach of hitting the PC first had the advantage that the turnaround time for compilation and execution could be much shorter than it currently was on 360 at the time. The guys did a great job- getting it running on 360, albeit at a low framerates, in around 8 or 9 weeks. There were still plenty of effects and graphical tricks to add at this point, but already it had the distinctive look of “Prey” and now we could let the rest of the programming team loose on it.
Prey really stretches the Doom3 engine, sometimes in ways it wasn’t designed for. It aims to create a convincingly organic-looking alien world full of curves and natural shapes from an engine designed around box-shaped rooms, and features many additional shaders and special effects that take the visuals far beyond the original Doom3 engine. This extra load meant the coding team had to work hard on optimising the code, removing bottlenecks and spreading the load across the three cores at the heart of the 360 to hit our target of a constant 30fps framerate. We have also had one coder, Mick, working for the best part of 6 months using the 360 performance analysis tools to identify the slower areas of code and rewrite, or in many cases replace routines with low-level machine code to squeeze the best from the machine.
I feel confident in saying that we are now graphically pixel-perfect with the PC version.
After the departure of our network programmer in the last week of November 2005, we had a difficult choice to make - whether to take his code and complete it, fixing any bugs we found and hoping we could patch around any problems we uncovered, or throw it all away and start again. This was a difficult call, as time was running short for an area of the game which is always known to be a challenging one to implement.
We took the option we all felt was right, which was the braver/more foolish one of replacing it all. Steve Sharp, the coder we tasked with it has done a great job in a short time in a coding area he was previously unfamiliar with, and we now have all of the Live support in place and working well. The recent addition of speech to the online game over the past few weeks has also added greatly to the player experience.
Over to Mark Sample, normally our game designer/ producer here, for a little on the controller code.
Our task for Xbox 360 was to make sure the game played right with the console controller. This is harder than most think as many gamers take the highly responsive keyboard and mouse feel of the home PC for granted and we knew from the outset that we wanted to be as faithful as possible to the way the game plays on PC rather than changing the experience for the gamer.
Assigning the action buttons to the pad was easy, however the fun started with getting the feel of the player movement and looking around right with the sticks. Using a vast array of tweakable values we set about tuning the turn-rate and acceleration. From the get-go we knew it was vitally important that the player felt completely in control at all times. They need to have enough low-down sensitivity to make small delicate moves, as well as fast response for sweeping, super-quick 180’s – as you never know who might pop up behind you =). After much testing and tuning, the stick controls now feel robust and razor-sharp; we’re really pleased with the results and think the gamer will be ready in no time to take out a hunter or two with what we have delivered.
Our QA team in LA recently suggested that the game could also benefit from a facility for user-assignable weapon switching on the D-pad, and we added this into the game. We designed a method which allows the player to assign and re-assign weapons to those buttons quickly at any time as they play, as simply as programming stations in on a car radio. It works great, and we confidently expect to see other games following suit soon.
Over to Phil Nixon, the artist redesigning the front end for 360.
“We had to replace the existing front end to allow for input via gamepad rather than mouse-driven “point and click” of the PC, and the idea behind the user interface we chose to adopt for 360 was to try and get as far away as possible from the established look of PC FPS’s.
I like the idea that the user interface should relate to the theme of the game itself as much as possible. I'll try and explain a little better what I'm on about...Tommy is aided throughout the game by Talon, his hawk, and we thought it would be cool to use this idea as a concept for the user interface. We focused on a super close-up of the eye, making the pupil dilate and contract in response to flashing lights around it (representing gunfire, or perhaps a smashed up computer). Occasionally the eye looks around too, adding movement in the background. The deeper you get into the interface, the deeper you zoom into Talon’s eye.
Stylistically, as far as the menu graphics, framing graphics and fonts are concerned, I tried to draw cues from the GUIs and designs that are featured in the game, again trying hard to ensure that our front end matched the 'look' that Human Head already had in place. Overall it works well, and I like to think it ties the game elements together a little better than some titles out there manage to do.”
XBOX LIVE ACHIEVEMENTS
Achievements are becoming a big thing within the Xbox 360 community, with websites springing up to cover the topic and gamers competing for bragging rights based on which achievements they have unlocked in the games they are playing, so we wanted to make sure we included a very full implementation of achievements in Prey. Over to Bruce Brodie who helped design this part of the game.
“The achievements have been a lot of fun to create! Currently there are 33 achievements in “Prey” which will be worth a total of 1000 points to a player’s Gamer Score. These achievements are spread out between single and multiplayer modes. Major achievements such as game completion and death match kills are all present and correct, level-specific awards have also been included for players that attempt the game on the “Wicked” difficulty – we want people to explore the world of Prey and really master it in order to unlock some of the harder achievements – be warned, some of the multiplayer ones will take a lot of skill to unlock!
There are also a number of secret achievements that players will have to look harder to find, which will be worth a good haul of points when discovered.
Our artists have created some great icons for the achievements, and they are looking good (I hate it when a game uses the same icon for everything). The final number of points to be awarded for each is still in discussion and tends to change depending on how evil the designer is feeling that day.
Doing “Prey” has necessitated putting progress on our other, unannounced, next-gen title on hold for over 6 months, and I’d like to acknowledge the patience of our art team assigned to that project for soldering on with their work on it whilst almost all of our programming resources were diverted to bringing “Prey” to 360. Thanks Guys!
Peter Johnson - Studio Head
Venom Games - Newcastle upon Tyne, UK
as per the Bolded text in the beginning, thank goodness they took the route they did.