The Problems With Porting Games
mr_sifter writes "There's a large lexicon of monosyllabic, four-letter words for describing something you don't like — but only PC gamers use the word 'port' with such a fervent degree of repulsion. Common complaints about console ports include meager graphics options, dodgy third-person camera angles, poorly-thought-out controls and sparsely distributed save points. In this feature, Bit-tech talks to developers of games such as Dead Space, Red Faction and Tales of Monkey Island to find out why porting games between the three major consoles and the PC is so difficult. Radically different CPU, graphics and memory architectures play their part, as do the differences in control methods and the rules Microsoft, Sony and Nintendo set about how games should work on their systems."
Ported game,
Crying shame.
Like lesser lather,
Endless flame.
Burma Shave
Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
Well I'm a PC gamer and PC's are the far superior platform, as any real gamer like me knows. Anyone who doesn't use a mouse and keyboard is clearly inferior to me and lacks my intelligence and superior taste in gaming. If you want to know more on the subject, just come to the videogame store where I work sometime. I regularly spend hours there snobbishly berating console game buying customers and informing them of my superiority.
Now if you'll excuse me, I'm off to play the pompous villain in an 80's teen flick. Ferrari is the ONLY car to drive, you know.
SJW: Someone who has run out of real oppression, and has to fake it.
Since the vast majority of developers can achieve the vast majority of technical feats with enough time and effort. The problem is the fact time and effort costs money. The Guitar Hero 3 port was crap because no-one put any real money behind it, simply because chances are, no-one would buy it. That only makes sense.
I understand a lot of what the devs are saying, but if I'm going to be really negative about this I couldn't help get an uneasy feeling reading about Dead Space. So, essentially he's saying "don't blame the consoles for the restrictive PC experience, blame us, we chose to make it restrictive!" Surely saying they designed it explicitly for consoles, so natrually it wouldn't work well on the PC, is the epitome of consolification? If I designed a game that only worked "as intended" on my Nokia 3210, and thus doesn't work well on anything else, claiming no-one can complain because it was originally designed for a phone is not an excuse. It's still just poor design choices.
Is it just my observation, or is eldavojohn an idiot?
All the stuff about CPU architectures and rendering pipelines and things falls into the "Hard; but we have smart people who can do that, if EA gives them enough time" pile.
Making an interface that actually works properly on both Mouse+keyboard and gamepad(never mind wii stick) falls into the "squaring the circle with world peace" pile.
Hey man, let's use a more relevant example, like no blood in Mortal Kombat on the SNES while Genesis had the blood code!
Reviewing just the first hour of video games.
Having trouble making a good conversion from pad to keyboard is one thing, but not being able to remap the keys is just stupid.
And I thought port was just some kind of wine... :|
Life is too good to waste... Read!
"...only PC gamers use the word 'port' with such a fervent degree of repulsion"??
How about Mac OS X users!!?
Every time they give us a "port" these days, it's just someone repackaging the PC game code around the Cider engine, tweaking some of Cider's parameters until it appears to "basically run ok" and then they turn around and charge full retail price for it, AFTER it's been out at least 3 months for the PC already!
Never-mind the PC version might ALREADY have just been ported from a console.....
Anyhow, the box and disc looked like a legitimate, licensed wii game not some homebrew game.
Do you even lift?
These aren't the 'roids you're looking for.
The PC port of RE4 did not even contain a option to exit the game and even though it was a FPS did not allow mouse control.
Troll is not a replacement for I disagree.
Actually these days middleware and the use of thirdparty engines is becoming hugely important. Thus the software part isn't an afterthought so much as outsourced to someone more competent. The biggest problem in porting tends to be when someone tries to bring a game developed for consoles to the PC, or vice versa. Essentially the console is dramatically underpowered versus contemporary PCs. So console games are developed "close to the metal" to gain as much power as possible from coding tricks, and therefore don't code well. PC games find themselves on a platform without the horsepower to run properly with a serious rewrite to add those sorts of tricks. Again, middleware can eliminate this sort of issue by dealing with the resource-squeezing in advance.
No kidding!!! What do you say at this point?
If done right, almost any FPS should be portable from console to PC, and be FAR better on PC. (Mouse + keyboard is a superior control mechanism for FPS games.)
Most RPGs aren't too bad either, especially if you plug in a joypad to the PC.
Of course, frequently ports are NOT done right - the PC port of Final Fantasy VII is a notorious example of a port being done so lazily as to break compatibility very rapidly within about a generation of hardware releases. Nowadays it's often easier to get the PSX version running in an emulator than to get the PC port working.
Even after you just use these game types you still end up with far too many good games that you can't change the controls. The most recent example of this is the pc version of Arkham Asylum (batman game). A standard usb analog stick logitech pad messes up and has the up be down, down be up. And there is no way to fix it. Every pc game should either have customizable controls or tested well enough so they know that all devices are going to work with it. Sigh...
How can DirectX games be hard to port between PC and XBox as they use DirectX for pretty much everything?
Am I the only one here wanting that? Seriously!! It's not like linux doesn't run great on high end hardware or anything. So, don't worry about the poor little consoles for a moment and PORT to Linux!!
It's very important to point out that the porting task has everything to do with where you start. The PC is simply not the best development environment anymore, the Xbox 360 is-- and even Carmack would agree with me, here. You can get a game going really fast on 360, then it's a bit less difficult to go to PC. We can call this the best case scenario. Rapid time to market with superior development tools on 360 with familiar API's for cross-platform development on PC, along with similar TCR requirements between GFW and 360.
Let's say you started on the PS3, though. Maybe you took the time to learn the architecture and really take advantage of the cell architecture, so your game is basically hardcoded around the flexible pipeline and mass pararllelization, now it does things that even PC games cannot. Porting it to the 360 might not be so bad, but going to the PC is going to be a rough letdown. It feels like a dog when porting a console game.
So maybe your game started out nicely organized and clean in design, but in that last few months before release while your publisher is driving you up a wall to release, you're going to have so many hacks and messy revisions to the model to ship within your ridiculous timeframe- plus all the devs are tired and need vacations and such. Suddenly, the game is not so portable. It's the same for any platform, really- you go balls to the wall optimizing our game for the platform and you're going to spend a lot of your smooth portability.
Pay no attention to the "specs" of consoles vs. PC, it's basically meaningless. Consoles often run games almost directly, plus they have all sorts of architecture enhancements and little hardware tricks you don't find in PC's. A PC needs to have brutally more power to really match the sort of speed and power you can squeeze out of a console.
Let's say you developed on nintendo wii first... well, it's game over already, you just developed a last-gen, almost Xbox-looking game and tied it to the wiimote. Good luck porting that. That's part of why American studios don't throw big games at it, because it's too limited in power and the publishers just don't want to risk it. There are too many "hardcore" games, which need to push the envelope. The Wii is basically doomed to casual games and childrens' games because of this, because the marketing figures will always point it in that direction--and that's what really runs the game industry.
Technically speaking, you can probably see why people like the Unreal Engine or Source Engine, given the fact that all the porting work is done for you... well you still have to deal with the insane, i mean ABSOLUTELY insane requirements each console has for release... everything from trademarks to menu formats to the way control is expressed in the interface. The amount of attention to detail necessary blows away months of work. Consoles are not a free-for-all, you have to use the hardware in a very specified way.
In short.. yeah, it's rough. More difficult than most people will ever really know.
Not so much on current-gen consoles, where you have multiple GHz level CPUs and somewhat copious amounts of RAM (I'm excluding the Wii for the moment). The Xbox360 has three 3GHz PowerPC cores and 512MB of shared memory (CPU-GPU), while the PS3 has 2 3GHz PowerPC cores, 7 DSP cores, and 256MB of system RAM plus 256MB of VRAM for the GPU. This is enough so that they actually run an OS. The original Xbox ran everything in kernel mode, but the Xbox360 is powerful enough that the kernel-user mode switching isn't a big deal. Heck, it's probably multiprocess capable too, though you probably only have your game application, and the OS shell application (the one that handles the Guide button when you press it). I would expect the PS3 to have a similar architecture as well - an OS ("GameOS") that runs the games but is effectively a multitasking OS and the game runs in usermode.
Heck, horsepower wise, these consoles don't hold a lick to a gaming PC, but are probably fairly competitive to the usual sub-$500 PCs bought today, or more powerful.
Which may be why PC gaming is as bad as it is right now - it's hard writing a game to run on a $300 netbook with Intel graphics. Or a budget $500 PC, again with Intel level graphics. You pretty much have to step up to a $700+ PC if you want the hint of ATI or nVidia graphics. That and the quality of drivers most of these computers have.
The Wii is a special case - it's console design is similar to previous generations - software developers have full access to hardware, and its firmware basically is just hardware device drivers. It's why software updates are kinda wierd on the Wii - every game library release (IOS) isn't binary compatible, so when you start a game, it's gotta load the right version for each game, and your Wii has copies of every version up to that point. Honestly, I'm not sure why Nintendo doesn't just have the developer ship the IOS library with the game to save storage space in the flash.
All three consoles now have USB ports. Let us use a mouse and keyboard with games that are appropriate for this kind of setup (FPS, RTS, etc).
You don't play MegaMan with a godamn keyboard and mouse and you don't play Starcraft with a godamn gamepad.
I confess I'm a game porter, I'm deep into the bowels of finishing off a port of the original Call of Duty to Xbox 360 and PS3 at the moment. Most of the time the ports are outsourced to companies like ours rather than developed in-house by the original developers. We usually have a short development schedule and are pretty much stuck with the code as is, as excellent or crappy as it might be, and we do our best to make what we can from it. I actually find it very intellectually challenging and fun. The schedules are short, and there's always a new project to look forward to while being stuck in the muck of the current project. :) I get to look at a lot of different source code from a lot of different games and learn something new each time usually. Each project is different, sometimes it's easy (if the code is designed well or uses middleware that's available on the platform we're porting to) or a complete nightmare (very platform specific or the middleware it's using isn't available for the platform). At this point I've ported to or from just about every platform out there. Xbox -> PC, PC -> PS3,Xbox, DS -> iPhone, PC -> Mac, etc.
It does not, nor has it ever meant "Personal Computer with Microsoft Windows Operating System installed".
You must be 2 years old then. Apple has been using a decades plus old campaign that says exactly that.
Chicken achtung Gertrude coriander buffalo 0xfe30 had had had had had had had had had had had had off in whose tool shed they were whacking. And I think we all know what that means!
The big flaw in all this is an assumption that any video game publisher wants consoles to be killed.
Some people develop video games but do not do so as a full-time day job. They want consoles to be killed because console makers (especially Nintendo) have an overt bias against teams who work from home. This means games developed in part-time have to be self-published for PC. And even among major labels, there have been a couple stories on Slashdot over the past couple days about publishers whining about console makers' fee structures. See, for example, this story and this story.
They're often called "rail shooters."
I find it amusing that the final paragraph states that PCs is being taken at least as serious as consoles for gaming. Remember when this generation of consoles was first introduced? The talk then was that PC gaming was doomed.
It's been the same sort of nonsense the last few generations. People get excited about these new consoles and because they offer a technological leap over the previous generation they start expecting some sort of revolution. Once the consoles have been around a while people start noticing PCs again.
Consoles naturally have to offer a clear technological leaps given their relatively long life expectancies. PCs, however, never stop progressing so that within months they surpass anything consoles are capable of. And actually, at least with this generation it was more consoles caught up to the capability of PCs than that they actually surpassed them.
I expect that eventually the market will move towards a more unified platform. Given how complex games are getting developers will be pushing hard for something like this. And hardware makers are being put into a difficult spot where they basically have need to be confident their console will be successful because if it isn't developers will abandon them. Look at the challenges facing would-be competitors the handheld market. And it's almost pointless to even compete on hardware at least for consoles. I say competition will come from the games themselves and motion-control peripherals. Perhaps not for the next generation of consoles, but eventually.
The problems with porting games really come down to getting through customs. If they would just declare everything, and not try to sneak in those exotic fruits, everything would be okay. Maybe next time they should just fly in, instead of sea passage...
I use irony whenever I can, but my shirts are still wrinkled...
Except Xbox/Playstation games are more censored than GameCube/Wii games. GameCube had the only uncensored version of BMX XXX for example, and Conker's Bad Fur Day was 10x more censored on the Xbox re-release than on the N64 original.
"We need to get over this notion, that, for Apple to win... Microsoft must lose." - Steve Jobs, 1997
Final Fantasy XI on the 360 allows you to use a USB keyboard as a controller, to include full WASD movement and not just typing messages.
The problems with ported software exist with all software, they are just much harder to hide in games.
An awful lot of software that appears to be available on more than one platform is smooth, sweet, and stable on one of those platforms, and weird, clunky, and unreliable on another. Things like odd screen refresh bugs. Sometimes, applications that just don't look or act like good citizens of the world then run in. Sometimes, the application will seem to run all right but there's some difference in buffering or caching or memory management strategy, and on the "bad" platform it will have a tendency to freeze up mysteriously for unpleasantly long periods of time, or crash. Or work fine when installed in the exact place the installer puts it by default but act funny if you put it somewhere else. Or fail to follow the proper OS conventions for where preferences and configuration settings and other persistent program "state" should be placed. Or show you a literal view of your disk volume and directory structure instead of the slightly abstract view that "normal" programs show (e.g. "Desktop" at the top, root level in Windows).
I think it's wonderful that gamers are able to yell and scream and try to exercise some market discipline about this. I think it's because a game you don't enjoy is valueless. Alas, when it comes to "productivity" software it's hard to quantify things like "feels klunky."
"How to Do Nothing," kids activities, back in print!
Agreed, but targeting Wine is not "porting to Linux".
That was before the ESRB. Nintendo doesn't do that any more.
Canada: The US's more awesome sibling.
Well I love all the old Williams arcade games and playing defender is very hard on anything apart from the layout on the old Arcade machine. The ergonomics of this can only be slightly improved. Bring back Williams arcade games. Every other games sucks!
All cows eat grass!