Comments on: President Forever http://tleaves.com/2004/04/18/president-forever/ Creativity x Technology Sat, 17 Mar 2012 05:09:58 +0000 hourly 1 http://wordpress.org/?v=3.3.1 By: Ben Sizer http://tleaves.com/2004/04/18/president-forever/comment-page-1/#comment-231 Ben Sizer Tue, 20 Apr 2004 13:47:09 +0000 http://tleaves.com/?p=80#comment-231 From what I hear (ie. not first hand experience, admittedly) much game industry code is too bad to re-use anyway. It ends up barely hanging together by the time of the game's release, and the first thing you want to do on a new project is fix all the hacks. Since most of this stuff is presumably warped beyond the point where simple refactoring will suffice, you throw it out and start over. But sadly there's never enough time to fix as much as you want and the cycle begins anew... From what I hear (ie. not first hand experience, admittedly) much game industry code is too bad to re-use anyway. It ends up barely hanging together by the time of the game’s release, and the first thing you want to do on a new project is fix all the hacks. Since most of this stuff is presumably warped beyond the point where simple refactoring will suffice, you throw it out and start over. But sadly there’s never enough time to fix as much as you want and the cycle begins anew…

]]>
By: Robert 'Groby' Blum http://tleaves.com/2004/04/18/president-forever/comment-page-1/#comment-230 Robert 'Groby' Blum Mon, 19 Apr 2004 05:18:42 +0000 http://tleaves.com/?p=80#comment-230 Oh come on now. What's the one place where you're not reusing code? :) Anyways - the industry is not quite as bad. I did see reuse happen, once or twice :) Kidding aside, our current game builds completely on the foundation laid by the previous one. Doesn't mean we're not ripping out large parts, and replace others. We also do use internal libs for common things. So you might say we're slowly getting into a sane place. (It happens at other companies, too. The rising costs force people to reuse) Oh come on now. What’s the one place where you’re not reusing code? :)

Anyways – the industry is not quite as bad. I did see reuse happen, once or twice :)

Kidding aside, our current game builds completely on the foundation laid by the previous one. Doesn’t mean we’re not ripping out large parts, and replace others. We also do use internal libs for common things. So you might say we’re slowly getting into a sane place. (It happens at other companies, too. The rising costs force people to reuse)

]]>
By: peterb http://tleaves.com/2004/04/18/president-forever/comment-page-1/#comment-229 peterb Mon, 19 Apr 2004 02:55:47 +0000 http://tleaves.com/?p=80#comment-229 Interesting. Thanks, guys! Groby's second point is something that I think is really tragic (not with respect specifically to SDL -- it's clear that there are real reasons why one might not use that.) I was friends with a developer at a huge software house working on a real time strategy game...ok, it was Activision, and the game was Dark Reign. And he described to me the game, and that he was working on the AI. And I said "Wow, that's great that it's an RTS, because presumably you can basically use the same harness as all the other 3,000 RTS games and just slap on new art and stuff and rework the AI, right?" It was then that he explained to me that no one in the game industry ever reuses any code, ever. No matter how good the code from the previous project is, the very first thing the 23 year old hotshot you hire to work on the next project does is say "this code sucks. I'm going to rewrite the [render engine / parser / scripting language] from scratch. Then it will be better!" That was the day I decided I was happier playing games than developing them (for money, anyway). Now I develop distributed filesystems. We reuse code.(*) Maybe I exaggerate. But not much. (*) please don't ask me about the one specific place where we're egregiously not reusing code. Interesting. Thanks, guys!

Groby’s second point is something that I think is really tragic (not with respect specifically to SDL — it’s clear that there are real reasons why one might not use that.)

I was friends with a developer at a huge software house working on a real time strategy game…ok, it was Activision, and the game was Dark Reign. And he described to me the game, and that he was working on the AI. And I said “Wow, that’s great that it’s an RTS, because presumably you can basically use the same harness as all the other 3,000 RTS games and just slap on new art and stuff and rework the AI, right?”

It was then that he explained to me that no one in the game industry ever reuses any code, ever. No matter how good the code from the previous project is, the very first thing the 23 year old hotshot you hire to work on the next project does is say “this code sucks. I’m going to rewrite the [render engine / parser / scripting language] from scratch. Then it will be better!”

That was the day I decided I was happier playing games than developing them (for money, anyway). Now I develop distributed filesystems. We reuse code.(*)

Maybe I exaggerate.

But not much.

(*) please don’t ask me about the one specific place where we’re egregiously not reusing code.

]]>
By: Robert 'Groby' Blum http://tleaves.com/2004/04/18/president-forever/comment-page-1/#comment-228 Robert 'Groby' Blum Mon, 19 Apr 2004 02:03:51 +0000 http://tleaves.com/?p=80#comment-228 Why don't game developers SDL? I can't speak for all of them, but from what I've seen so far, there seem to be three overriding themes: #1 - Legal departments have problems with OpenSource licenses. Sure, the official explanation is "Who do we sue if it contains IP that doesn't belong there", but that applies to commercial stuff too - most EULAs just deny responsibility. Then again, I'm not a lawyer, nor do I play one on TV. (Sidenote - ActiveState is making a lot of money out of repackaging OpenSource stuff (Perl, Python) and adding support and a liablility waiver on top of that - there's a business opportunity, if anybody wants to go for it.) #2 Hey - we're the industry that invented "Not Invented Here". There's plenty of guys out there who would refuse to touch any code that hasn't been written by the game team itself. #3 Cross platform is expensive. SDL will not take care of all the issues in development. But even worse, development is only part of the cost. You need to do compatibility testing for the other platforms, write installers, manuals, etc. #1 & #2 can be fixed quite easily, but #3 is a problem. Why don’t game developers SDL? I can’t speak for all of them, but from what I’ve seen so far, there seem to be three overriding themes:

#1 – Legal departments have problems with OpenSource licenses. Sure, the official explanation is “Who do we sue if it contains IP that doesn’t belong there”, but that applies to commercial stuff too – most EULAs just deny responsibility. Then again, I’m not a lawyer, nor do I play one on TV.

(Sidenote – ActiveState is making a lot of money out of repackaging OpenSource stuff (Perl, Python) and adding support and a liablility waiver on top of that – there’s a business opportunity, if anybody wants to go for it.)

#2 Hey – we’re the industry that invented “Not Invented Here”. There’s plenty of guys out there who would refuse to touch any code that hasn’t been written by the game team itself.

#3 Cross platform is expensive. SDL will not take care of all the issues in development. But even worse, development is only part of the cost. You need to do compatibility testing for the other platforms, write installers, manuals, etc.

#1 & #2 can be fixed quite easily, but #3 is a problem.

]]>
By: Ben Sizer http://tleaves.com/2004/04/18/president-forever/comment-page-1/#comment-227 Ben Sizer Mon, 19 Apr 2004 01:54:28 +0000 http://tleaves.com/?p=80#comment-227 As a hobbyist game developer, I can sadly report that in my experience, SDL isn't in the same league as DirectX. If you use OpenGL you have arguably comparable 3D capabilities but support for networking, input, sound etc is inferior. And despite being primarily a 2D API, it still doesn't have proper accelerated graphics capabilities, instead relying on functionality equivalent to DirectDraw in DirectX 5. Development on SDL proceeds at a glacial rate and the eagerly-awaited SDL 2 iteration has been patiently-awaited for over 2 years now. Of course, SDL is a wrapper rather than a platform, so it is always destined to be (at least) one step behind DirectX on Windows, which doesn't help matters. As a hobbyist game developer, I can sadly report that in my experience, SDL isn’t in the same league as DirectX. If you use OpenGL you have arguably comparable 3D capabilities but support for networking, input, sound etc is inferior. And despite being primarily a 2D API, it still doesn’t have proper accelerated graphics capabilities, instead relying on functionality equivalent to DirectDraw in DirectX 5. Development on SDL proceeds at a glacial rate and the eagerly-awaited SDL 2 iteration has been patiently-awaited for over 2 years now.

Of course, SDL is a wrapper rather than a platform, so it is always destined to be (at least) one step behind DirectX on Windows, which doesn’t help matters.

]]>