The process of game software porting fascinates me. Porting (I believe from the “port” in transport or portable) is taking software from one platform and getting it to run on another platform. Every company does it differently, some do it better than others, and some do it horribly.

A recent and upcoming example is Halo. Bungie was primarily a Macintosh developer who thrived on the dearth of entertainment titles on that platform. Back in 1994 or so when everyone in the world was playing DOOM on the PC, Bungie was making a killing selling their FPS Marathon to the Mac users who wanted in on the fun. At some point they decided to start working on Halo. Originally a 3D RTS, they changed it to a third person action game. The graphics were amazing and the big question was: would it be PC or Mac? They confirmed they were working with both platforms, but refused commentary on which would get the game, or if they both would. Then in late 2000 or so it was announced that Microsoft was buying Bungie. Gamers smelled what was coming. At the insistence of Microsoft, Halo was transformed into a FPS and was released in November 2001 as an Xbox launch title. Some time later Bungie announced that they had not “started” on the PC port, and had handed it off to Gearbox Software to do. It’s about to be released (nearly two years after the game hit Xbox) and soon a Mac port will “start”. The maneuver paid off for Microsoft – they sold millions of Xboxes and almost every single one has a copy of Halo to match.

Then there’s Electronic Arts. EA is in the lucky position of having a few franchises which translate well onto multiple platforms. Their crown jewel is their EA Sports line, which contains their flagship title, their Madden NFL franchise. The game Madden NFL 2004 was released fairly recently for PS2, Xbox, GameCube, PC, GBA and PSOne (BTW, the traditional moniker for the PlayStation (1) was always PSX, which was short for PlayStation X, the original code name for the retargeted SNES CD-ROM drive Sony tried to do with Nintendo – but now that they’ve announced a new PS2 with DVD writing and TiVo capabilities named PSX, most people – myself included – now refer to the system as the PSOne to avoid confusion. Too bad it looks stupid). The “next gen” (or is it “current gen” now?) consoles have more or less identical versions, and I think the PC version is the same as these. I can’t vouch for the GBA version, but as far as I can tell, the PSOne version is simply Madden 2003 with new rosters and updated jerseys. Since there’s obviously no code shared between the PSOne/GBA/”next gen” versions, by some definitions the GBA/PSOne versions aren’t “ports”, but rather “versions”. No one says the “GBA Port” of Madden 2004 since they’re clearly have different source code.

But then there’s the GBA “port” of DOOM, which I don’t believe actually uses the DOOM source code (I’d be willing to bet it’s able to achieve what it does on the GBA due to assembly language) but it still gets considered a “port” since it’s essentially trying to be the same game.

EA also finds themselves in charge of the Harry Potter games. Their second title, Harry Potter and the Chamber of Secrets, released in conjunction with the movie, was on seven platforms – PC, Xbox, PS2, GC, GBA PSOne and even GBC. For the most part they were completely different games. I think it also has the distinction of being the (so far) last GBC game.

Recently the aforementioned Madden NFL 2004 was released and the PS2 version outsold the GameCube version 35 to 1, and the Xbox version 5 to 1. However another high profile game also recently saw a simultaneous console release – Soul Calibur II. The original Soul Calibur was only released on the Dreamcast console (and in arcades, running on PSOne hardware), and many people bought a Dreamcast to play it. Soul Calibur II was released on each console with one major difference (other than improved graphics to compliment the capabilities of each platform) – an exclusive playable character. The PS2 version has a character from Tekken, the Xbox has Spawn from the MacFarlane comics, and the GameCube has Link, from the Zelda series. So far the GameCube version is outselling the PS2 version 5 to 1, and is even outselling the marginally graphically superior Xbox version. This says that people will buy cross-platform games for the GameCube when there is compelling reason to do so (and it also says that there are considerably fewer casual gamers buying SCII.)

Of course SCII and Madden NFL 2004 benefit from simultaneous release – it’s not uncommon for a game to come out on a platform, sell a ton, and then sell considerably less when released for other platforms. Part of this lies with the perception that the game was done best on the original platform (not always the correct assumption), the fact that most people have already purchased it on the original platform, and the fact that some games just don’t hold people’s fascination as long as others.

The one exception to this seems to be when one platform is a console and the other is the PC. These platforms are sufficiently different that people don’t have a problem buying or re-buying the game multiple times. A good test of this will be whether or not the PC port of Halo will sell. Knights of the Old Republic is Xbox only now, but many people are holding out for the later PC port. Another reason is that often the PC is immune to exclusivity agreements (like with the Grand Theft Auto games).

And it’s not always taking advantages of strengths that works either. The game Splinter Cell was released on the Xbox and its developed with the intention of exploting its abilities to the fullest, including shadows and such. As a result, it simply couldn’t be recreated on the PS2 accurately, so to make up for it that version contained extra levels. It fared better on the GameCube, but to make up for the differences they programmed the game to link up with a Game Boy Advance to serve as a radar – a nifty feature at least. Neither sold all that well.

Sometimes ports don’t make sense. Sim City was ported to the SNES and sold badly – one magazine said titles like this were “too computery” to work on a console. Conversely, Star Wars: Rogue Squadron was lambasted on the PC but hailed on the Nintendo 64. My favorite conundrum was the port of Quake 3: Arena to the Sega Dreamcast – despite the best efforts of the porting team to make the game work for a controller, they also included the ability to use the Dreamcast Mouse and Keyboard for players used to playing on the PC. Why these gamers would then not just play it on the PC is beyond me. But then again the PSOne port of Civilization II sold pretty well despite the technical limitations of the PSOne – speculation as to why mostly centers on the fact that no other PSOne games were quite like it.

To some, Gearbox is a porting house. I suppose that’s unfair since they have done some original titles – albeit expansion packs. But most of their games are ports of other games. Some places do their own ports, others outsource them. id Software used to do all of their own console ports, but they haven’t done one of their own in years – though that may change as they say they are “commited to delivering” DOOM 3 on the Xbox. Any ports to other consoles will have to be done by other people.

In so far as ports amongst Windows, Mac and Linux are concerned, most modern development is layered – when properly done the layer that interfaces the game from the platform itself is the only thing that has to be rewritten. To an extreme, all development can be done this way – this is how those games like The Hulk and Spider-Man can hit all three consoles and the PC on the first day. The trick is that a lot of important decisions have to be made from day one – witness Neverwinter Nights. The plan/promise was to deliver on all the major platforms on day one – Linux, Windows, MacOS and even BeOS. The BeOS port was scrapped when Be, Inc. got out of the OS business (they got bought by Palm and more or less dismantled), but the other three were a go. Seems the developer Bioware got fed up with their Interplay contract so they got Infogrames to get them out. Consequently, when the Windows port of NWN was done first, Infogrames ensured it was shipped first. The Linux and MacOS ports were in unfinished states. Though the initial plan was a few weeks at best, the Linux port was out over a year after the Windows version and the Mac version was later after that – and due to licensing issues, the movie cut scenes couldn’t be in the Linux version (not sure about Mac though). In addition, the rich toolset only exists on Windows.

Another factor in porting is the costs involved. As we’ve seen, when planned ahead of time actual development costs can be minimized with forward thinking, but sometimes the costs in manufactuiring and distributions aren’t worth it. The Dreamcast port of Half-Life was cancelled even after the porting development efforts were finished, since the dwindling market share in the wake of the console’s cancellation meant the cost of manufacuring copies wasn’t worth it. When it became apparent that modifications and multiplayer would be impossible, the Macintosh port of Half-Life was abandoned as well. Quake 3: Arena was released on Windows, Macintosh and Linux simultaneously in 1999 in separate boxes. 95% of the sales were to Windows, over 4% were to Macintosh, and less than 1% were to Linux, mostly because of Loki’s lesser distribution power and the fact that most Linux gamers dual boot with Windows anyway. Simply put, often times porting to a niche platform simply isn’t worth it.

In any event, I have a good PC, a GameCube, an Xbox and a PS2, so I’m pretty much set. Of course since most people have at best one, maybe two consoles, it makes porting possible – if everyone had all the consoles then ports to multiple consoles systems wouldn’t be neccessary – just make the one version and everyone will buy it. The only way I’m screwed is if the game is Macintosh or Linux only.

But that never happens.