QuakeII Indie Platform
by Prairie Games · in General Discussion · 03/15/2003 (5:10 am) · 98 replies
I have spent the last couple days reviewing Quake II again... in the context of an indie game project I may be launching...
I don't think Q2 is a very good fit for my retail interests... but for my indie development it could very well be...
Things I like about Q2:
1) The codebase is reasonably small, it's division lines are clear.. I can reasonably expect to refactor the code... the code has been bullet tested across many projects
2) Q2 has a small and streamlined art/code pipeline without tons of confusion for supporting "AAA" art content, which I don't have resources to produce anyway
3) The most lacking part of Quake2 for this project is skeletal animation which is trivial to add via Cal3d... this has 3dsmax and Milkshape exporters
4) It performs *incredibly* well on modern hardware, and will give people with older gear a smooth/enjoyable experience
5) It's networking was designed pre-broadband... again efficiency.. fully supports cooperative play
6) GPL means I can host a CVS with no worries.. allowing me to use Open Source development methodology... I view this as *extremely* important
7) Q2 is $10k for closed source use which I find reasonable... in a pinch, I can GPL the codebase and still sell the game for $$$.. GPL doesn't mean noncommercial, get it straight already :)
8) The platforms, doors, triggers, destructible brushes, etc are still very cool... has some excellect premade/editable game functionality
9) If I want to go lowend/avoid *all* hardware issues, it has a software renderer ...
10) I am *very* familiar with the q2 tools source code, and the engine I have found to be readily digestible
-J
I don't think Q2 is a very good fit for my retail interests... but for my indie development it could very well be...
Things I like about Q2:
1) The codebase is reasonably small, it's division lines are clear.. I can reasonably expect to refactor the code... the code has been bullet tested across many projects
2) Q2 has a small and streamlined art/code pipeline without tons of confusion for supporting "AAA" art content, which I don't have resources to produce anyway
3) The most lacking part of Quake2 for this project is skeletal animation which is trivial to add via Cal3d... this has 3dsmax and Milkshape exporters
4) It performs *incredibly* well on modern hardware, and will give people with older gear a smooth/enjoyable experience
5) It's networking was designed pre-broadband... again efficiency.. fully supports cooperative play
6) GPL means I can host a CVS with no worries.. allowing me to use Open Source development methodology... I view this as *extremely* important
7) Q2 is $10k for closed source use which I find reasonable... in a pinch, I can GPL the codebase and still sell the game for $$$.. GPL doesn't mean noncommercial, get it straight already :)
8) The platforms, doors, triggers, destructible brushes, etc are still very cool... has some excellect premade/editable game functionality
9) If I want to go lowend/avoid *all* hardware issues, it has a software renderer ...
10) I am *very* familiar with the q2 tools source code, and the engine I have found to be readily digestible
-J
#82
Quake II is pretty much a viable indy platform. You can export .md2 from Milkshape or similar, you can create .map files in QuArK, all that's missing is a quake 2 compatible bsp compiler.
Heck, if that's the problem, I'll write one, and I'll charge a lot less than five grand for it. ;)
03/20/2003 (6:25 pm)
What's the big stumbling block? The BSP compiler?Quake II is pretty much a viable indy platform. You can export .md2 from Milkshape or similar, you can create .map files in QuArK, all that's missing is a quake 2 compatible bsp compiler.
Heck, if that's the problem, I'll write one, and I'll charge a lot less than five grand for it. ;)
#83
Maybe I'm silly, but if I made a GPL'd game that was popular enough to be pirated, I'd be ecstatic :)
03/21/2003 (5:51 am)
I read earlier on about everyone's piracy concerns with a GPL engine.Maybe I'm silly, but if I made a GPL'd game that was popular enough to be pirated, I'd be ecstatic :)
#85
Just use Quark for editing... Use id's GPLed command line tools and GPL engine. No license fees....
03/21/2003 (3:23 pm)
The Quake2 tools are GPL. Only the editor (Radiant) isn't. I've kinda lost track of what exactly it is Joshua is upset about. Just use Quark for editing... Use id's GPLed command line tools and GPL engine. No license fees....
#87
Also, I did a quick google search and found the following at www.machinima.com, you may want to email id yourself to be safe, since this is now like a 3rd hand report:
>>>>> Included Text >>>>>
Ok, this is fantastic news.
There has recently been some serious concern over the status of the compile tools for Quake 2 maps - are they GPL or not? Well, Pat Aftermoon over at the Quake Standards Group put my own investigative journalism to shame, and managed to get the official word out of Todd Hollenshead, id CEO:
To: Todd Hollenshead
Subject: Re: Licencing question about Quake2 tools QBSP, VIS and RAD
I'm sorry to request you again, but in fact, all 3rd party level editors (Worldcraft, Quark, Qoole ...) provide editing capabilities, but are using "externally" the ID software tools QBSP3, QVIS3 and QRAD3 for compiling bsp maps. All 3rd party program existing for these 3 tools available on the net are derived from ID source code provided on your FTP site :
ftp://ftp.idsoftware.com/idstuff/quake2/source/old/q2source_12_11.zip
I suppose that all derived tools are under your licence agreement ...
So, if I'm right, it is actually impossible to distribute commercially a software based on the GPL Quake2 engine without paying $5,000 to IDSoftware, or rewrite the 3 needed tools from scratch (or remove bsp support !!!!). Or maybe it is possible to distribute the software commercialy and the map for free, but isn't it a trick ?
Is the use of the 3 tools QBSP3, QVIS3 and QRAD3 really included in your licence agreement concerning the $5,000 dollars or only QE4, the IDSofware level editor ?
Best regard,
Pat AfterMoon
quote:
To: "pat*aftermoon.net"
From: Todd Hollenshead
Subject: Re: Licencing question about Quake2 tools QBSP, VIS and RAD
The compile tools are not the same as the level editor. We charge for the level editor; the compile tools are free under the GPL.
tsh"
Great stuff! Thanks to Pat, to Todd for clearing that up, and apologies for any confusion that may have been generated!
03/21/2003 (4:19 pm)
Did you ask anyone at idsoftware (via email, etc) if you could use them for your needs? I'd be extremely surprised if the tools weren't also opened up (maybe not GPL..but freely usable), though maybe they did a poor job of communicating this fact. If the tools still use the old license, many of the forks that have popped up based on Quake2 would be SOL. Not to mention I'm 100% positive they GPLed the Quake1 tools.Also, I did a quick google search and found the following at www.machinima.com, you may want to email id yourself to be safe, since this is now like a 3rd hand report:
>>>>> Included Text >>>>>
Ok, this is fantastic news.
There has recently been some serious concern over the status of the compile tools for Quake 2 maps - are they GPL or not? Well, Pat Aftermoon over at the Quake Standards Group put my own investigative journalism to shame, and managed to get the official word out of Todd Hollenshead, id CEO:
To: Todd Hollenshead
Subject: Re: Licencing question about Quake2 tools QBSP, VIS and RAD
I'm sorry to request you again, but in fact, all 3rd party level editors (Worldcraft, Quark, Qoole ...) provide editing capabilities, but are using "externally" the ID software tools QBSP3, QVIS3 and QRAD3 for compiling bsp maps. All 3rd party program existing for these 3 tools available on the net are derived from ID source code provided on your FTP site :
ftp://ftp.idsoftware.com/idstuff/quake2/source/old/q2source_12_11.zip
I suppose that all derived tools are under your licence agreement ...
So, if I'm right, it is actually impossible to distribute commercially a software based on the GPL Quake2 engine without paying $5,000 to IDSoftware, or rewrite the 3 needed tools from scratch (or remove bsp support !!!!). Or maybe it is possible to distribute the software commercialy and the map for free, but isn't it a trick ?
Is the use of the 3 tools QBSP3, QVIS3 and QRAD3 really included in your licence agreement concerning the $5,000 dollars or only QE4, the IDSofware level editor ?
Best regard,
Pat AfterMoon
quote:
To: "pat*aftermoon.net"
From: Todd Hollenshead
Subject: Re: Licencing question about Quake2 tools QBSP, VIS and RAD
The compile tools are not the same as the level editor. We charge for the level editor; the compile tools are free under the GPL.
tsh"
Great stuff! Thanks to Pat, to Todd for clearing that up, and apologies for any confusion that may have been generated!
#88
Hm... Hm... Hm... well, it would definately be another gun in the arensal... thanks George, I'll follow up...
-J
03/21/2003 (4:56 pm)
Hm... that contradicts a "very reliable source"... there is no GPL notice in any of the Q2 tools source... and there was a specific GPL Q1 tools source release... Hm... Hm... Hm... well, it would definately be another gun in the arensal... thanks George, I'll follow up...
-J
#89
No plans to use Q2 myself, just somewhat curious as to what the real situation is.
03/21/2003 (7:14 pm)
Yeah no problem, I hope it works out. And if you could post what you find out, I'd be interested. No plans to use Q2 myself, just somewhat curious as to what the real situation is.
#90
I've been getting my head around this stuff... the initial process being to strip all of Quake2 specifics out of the codebase leaving only the network simulation code, world, and basic entities like buttons, doors, lifts, exploding brushes, triggers, etc.
I entitled this work MicroQ2 ... and it's pretty small :)
Compiled sizes:
Client/Server => from 354kb to 192kb
Gameplay => from 388kb to 124kb
Woohoo, a highly functional core to factor into Nebula :)
I put up some "concept" video of the 3d MUD Dungeon Crawler: Video (in DivX format)
Yes, that's MicroQ2 in all of it's 256 color .wal texture format glory... .wal textures are the 1st thing to go, goodbye brown, hello COLOR :)
-J
03/25/2003 (4:16 am)
Well, still awaiting the status of the tools... though, I am "pretty sure" they are GPL... sure enough to move forward at leastI've been getting my head around this stuff... the initial process being to strip all of Quake2 specifics out of the codebase leaving only the network simulation code, world, and basic entities like buttons, doors, lifts, exploding brushes, triggers, etc.
I entitled this work MicroQ2 ... and it's pretty small :)
Compiled sizes:
Client/Server => from 354kb to 192kb
Gameplay => from 388kb to 124kb
Woohoo, a highly functional core to factor into Nebula :)
I put up some "concept" video of the 3d MUD Dungeon Crawler: Video (in DivX format)
Yes, that's MicroQ2 in all of it's 256 color .wal texture format glory... .wal textures are the 1st thing to go, goodbye brown, hello COLOR :)
-J
#91
Wow!
03/25/2003 (6:38 am)
Quote:Client/Server => from 354kb to 196kb
Gameplay => from 388kb to 124kb
Wow!
#92
Client/Server => from 354kb to 192kb
Whee!!!
A very cool thing is that the client and server can be seperated... no need to give away the server with the farm :)
Edit:
You can download the MicroQ2 source code: HERE
I also updated my .plan with some juiciness...
Edit2:
How's this for modular... I (trivially) split the quake2.exe into q2client.exe(156kb) and q2server.exe(140kb) ... no server in the client and no client in the server... slick, really slick... near time to start thinking about packages...
-J
03/25/2003 (7:19 am)
Make that:Client/Server => from 354kb to 192kb
Whee!!!
A very cool thing is that the client and server can be seperated... no need to give away the server with the farm :)
Edit:
You can download the MicroQ2 source code: HERE
I also updated my .plan with some juiciness...
Edit2:
How's this for modular... I (trivially) split the quake2.exe into q2client.exe(156kb) and q2server.exe(140kb) ... no server in the client and no client in the server... slick, really slick... near time to start thinking about packages...
-J
#93
You can grab a PyQ2 prerelease HERE
I have some cleaning up to do in the build script, but it should give some ideas how wigged out cool this'll be :)
From the example scripts:
Server Side
Server, Client, GL, and Game extension modules operative... can build from Python distutils or from Visual Studio via automatically generated Workspace...
SWIG is integrated to quickly expose a few key spots... VROOOOOOMMMM VROOOOOMMMM :)
DuNgEoN CrAwLeR .... RAWRRRR!!!!
-J
PS: I took the liberty of removing ' chars from the code above, as they turn into ugliness inside code blocks...
03/27/2003 (8:55 am)
Muhahahaha..... building on the foundation of MicroQ2 ----> You can grab a PyQ2 prerelease HERE
I have some cleaning up to do in the build script, but it should give some ideas how wigged out cool this'll be :)
From the example scripts:
Server Side
import pyquake.q2server as server import pyquake.q2game as game args=[+set,dedicated,1] server.ServerMain(len(args),args) server.SetGameAPI(game.GetGameAPI()) while 1: server.ServerTick()Client Side
import pyquake.q2client as client
import pyquake.q2gl as gl
args=[+connect,127.0.0.1]
client.ClientMain(len(args),args)
client.SetRefAPI(gl.GetRefAPI())
while 1:
client.ClientTick()Server, Client, GL, and Game extension modules operative... can build from Python distutils or from Visual Studio via automatically generated Workspace...
SWIG is integrated to quickly expose a few key spots... VROOOOOOMMMM VROOOOOMMMM :)
DuNgEoN CrAwLeR .... RAWRRRR!!!!
-J
PS: I took the liberty of removing ' chars from the code above, as they turn into ugliness inside code blocks...
#94
03/27/2003 (12:31 pm)
I'm starting to get visions of Joshua as being a mad scientist, sitting in his basement/labratory guffawing away to himself in a deep booming voice, while coding this stuff! :)
#96
The q2gl module can now render to a wxGLCanvas ... meaning anywhere a wxGLCanvas can render, so can the game :)
http://www.wxwindows.org
http://www.wxpython.org
I also hooked picking up... so with the mouse you can click on doors and have them open, click on buttons and have them depress, select monsters and items, etc... fun stuff
I am currently investigating a very cool OODBMS/Concurrency/Security solution which I really hope works out...
Feels great to be working on a game.
Vibes,
-J
04/01/2003 (4:04 am)
*small status update*The q2gl module can now render to a wxGLCanvas ... meaning anywhere a wxGLCanvas can render, so can the game :)
http://www.wxwindows.org
http://www.wxpython.org
I also hooked picking up... so with the mouse you can click on doors and have them open, click on buttons and have them depress, select monsters and items, etc... fun stuff
I am currently investigating a very cool OODBMS/Concurrency/Security solution which I really hope works out...
Feels great to be working on a game.
Vibes,
-J
#97
04/08/2003 (1:34 pm)
For those "Delphers" (like me) who might be interested, there is a GPL port of Quake2 to Delphi/Kylix at SourceForge.
#98
John.
04/08/2003 (2:39 pm)
I'm not a Delpher, but I am a brother Borland user (BCB, same interface though). I think that officially makes the grand total 15 Borland users ;). You're actually only the second person I've ever seen even mention Borland. I love the product and the VCL makes a great framework (ya I'm still using the Windows specific code :)).John.
Torque Owner Mike Stoddart