"Standards are great ... uh, we don't have to follow them do we?"

I must say I am a bit peeved. Some of the mod projects out there are doing a number of things to the engine source, which they intend to be completely incompatible with anything anyone else is doing with the engines. So far as I understand, these projects are planning to SELL their mods, which is their justification.

If you're one of these people and you're reading this, let me be quite frank with you:

  1. NOBODY is going to buy a Quake1 engine today. If you can produce a solid game for the engine, one which does not use Id Software's original game data or trademarks in any way (which some of you are not bothering to do), then maybe you might possibly have a chance. But making your own engine which completely violates standards just so it's different and other people have to use yours is frankly stupid of you.
     
  2. Without exception, every single project doing this is targetting win32 (ONLY!) with Linux a mere afterthough, if even that. This is no big deal if your engine follows established standards. Since the standards group is open to anyone working on an engine to contribute ideas and working code, you have no excuse to not even try to be involved with them. There are a lot of people out there using a lot of other operating systems. We won't be playing your game if it doesn't run on our OS. And we'll be telling people who run win32 exactly why we can't and they shouldn't either.
     
  3. Some of you have even been talking about finding ways to keep from releasing your source code in order to keep other engines from being able to play your mod. If you release an engine which has no source code and turn down requests for that source, you are violating Id Software's license on Quake - the GNU General Public License - and they WILL sue you to defend their Copyright.
     
  4. When John Carmack released the Quake source code, he asked primarily for one thing: Keep compatibility and share your work (on the engine at least) for the benefit of all. Far too many of you have said you are looking for ways to "get around" those limits so you can more easilym have somerhing you can make a profit on. If you have to try and circumvent Id's license or John's requests so you can turn around and sell it, then you don't deserve a profit. Talk about biting the hand that feeds you. Those of you doing this just suck, period.
     

I realize the above does not apply to a lot of engines out there, and if it doesn't that's good! The above comments are not directed at you anyway. I also am perfectly aware that the mods doing some of the above things are not doing all of them. If you're doing any of them though, it's a bad thing and you really should stop and think about what you're doing real hard.

Am I against selling stuff based on the Quake source? Not at all, I think it's cool if someone produces a game worth selling. Half Life, after all, is based on the Quake1 engine and look at it today. It has a few features that are BETTER THAN features found in Quake3, and people are still buying it today.

But what I do have a problem with is trying to keep secrets in the engine. As I said, a lot of you are targetting Win32 (why not, it's a big market after all..) That is FINE as long as you're not trying to keep other engines from being able to play your mod under Linux or a Mac or who knows what else. There's nothing you can add to the engine that someone else couldn't add to another engine. Trying to keep it all a secret and ignoring the standards groups is just a good way to make things incompatible. The problem is some of you believe that will lead you to more profits. You're wrong. Dead wrong.

Most players do not want to have 5-6 Quake engines laying around on their drives, even if they do play 5-6 Quake games. Speaking from my own engine's perspective, this is one of the biggest reasons why QuakeForge uses "base" now by default for its game directory rather than "id1". All you will have to do is pass on the command line a simple +set fs_gamebase id1 and you'll be able to play the original game. Simple right?

Well no, the problem is that it's not so simple and I know it. That's why you want your own engine. But I can write a win32 batch file to do that in QuakeForge real fast. I could put Nehahra's files in "nehahra" right next to id1 and pretty easily write a script or batch file that would start up that mod for me, no problem at all. You're not giving us that opportunity. And you want us to pay for the privelege of helping you do exactly what John Carmack asked engine developers not to do?

If this message has managed to convince some of you that what you're doing is a bad idea, please contact me and I'll try to help get you in contact with the QSG people. Suggest your ideas and engine enhancements to the QSG list and we can talk about how best to make it work. Not just for our engines, but for your engine as well. A few really good ideas have become even better as a result of the group hashing over them and finding the best way to make it happen. The standards group isn't about limits, it's about enhancing the engines in ways that don't step on other people's toes and giving us all a chance to support the same things.