As far as I know, Halo 2 won't be for PC. I'll have to buy an Xbox or something.
The development of the PC version didn't start immediately after the Xbox version was released. I don't remember the date, but I do remember a Randy Pitchford interview where he stated that when they were approached to do Halo PC, they were flabbergasted that someone wasn't already doing it. They had figured someone else was about 1/2 of the way done with the port, but MS apparently sat on it for some time, probably to maximize Xbox Halo sales. I'll try and come up with the quote or the date or something. But no matter how much time GB had to do the port, if MS didn't want them completely ripping apart and reconstructing the game from scratch, GB's hands were tied.
And oh...yes... the PXCL screenies. *commences nostalgic drooling*
I don't know. It seems to me that moving from a PC platform that's aiming at a TNT-based graphics pipeline to the Xbox is a pretty big freakin' move. I do know that Halo originally underwent two
seperate engine rewrites before Bungie was aquired by MS. They were adjusting the scope of the game pretty drastically (from an RTS to a MMOG-style FPS to standard FPS when they moved to the Xbox).
What does that mean for the code? Well, moving from OpenGL to DirectX, and rewriting/redesigning how the game interacts with the hardware. Fixing the framerate. Realizing they can kick up everything because they have a fixed, lower resolution to hit (and they cranked it up as far as possible - even Xbox Halo slows down sometimes).
There was salvagable code - it sounds to me like Bungie must have left stuff in there for when Halo was to go to the PC. Once Gearbox shut off the autoaim, for example, the mouse/keyboard thing worked perfectly, no additional tweaking needed. That didn't happen by accident. Generally, just uncommenting or commenting a section of code doesn't result in a clean activation/deactivation of a feature, unless it was planned. If that was in there, there might have also been other stuff in there as well - maybe. Bungie was programming for the Xbox, and they're weren't about to make the Xbox version rock less just because one day someone was going to bring it to the PC.
Programming for a fixed set of hardware by its very nature leads to very strange coding - I did MIPS assembly programming during school, where we were programming a specific processor. That definitely
required some strange and confusing programming. That's one of the biggest hurdles when moving from a console to a PC - moving the code base away from a single configuration and making it friendlier to a wide range of hardware. Bugs crop up when the code you've written interacts with itself, the OS or the hardware in unforseen ways - and a port is a prime place for such strangeness to happen.
Similarly, moving code from a PC to the Xbox and back to the PC has the same potential for not working very well. And I'm not sure in any case that Bungie gave Gearbox their pre-Xbox code to begin with.
I'm not going off on you, Sat - it's just that there is so much negativity out there for this game (all of it not necessarily undeserved) that I want to make a positive noise whenever I can. The game's out, and Gearbox is still working on it, and that's exactly how I want it to be. I want new patches and the Halo Editing Kit, and co-op. I don't want them to get buried under a mountian of negativity and flaming, and decide that it isn't worth it and move on their next project.
As far as the SP campaign is concerned... yeah, I really dislike the Library. The levels following are fun enough to keep me interested, but are no where near as good as the opening levels. I would really have liked to see what the SP campaign would have been like if MS hadn't rushed it out as a flagship game for the Xbox. I don't really even play SP anymore. It's MP all the way!