Originally posted by Mindf!3ldzX
But I thought this comment brought up a good discussion. I think the whole XQuake GPL debacle back in 2002 has really hurt us. Let me explain why ...
What is the GPL
The GPL is the "General Public License". When ID Software decided to release the source code for Quake to the community, it was licensed under the GPL.
If you ...
1. Make changes to the source code for Quake or any project that was based on the source code for Quake
2. and Distribute your new executable
... you are required --this is NOT an option-- to release your source code to the public. The GPL requires this and the Quake source code was licensed under the GPL.
DarkPlaces, JoeQuake, ProQuake, QRack, Telejano, Vengeance R2 and all the other majors engines fully comply with the GPL.
Trujen the XQuake author felt he was special and did not release his source in 2002. He got his site shut down.
Here is the story of XQuake ...
What was XQuake
XQuake was a beefed up version of ProQuake with cool particle effects, easy to play vs. the bots, full keypad support, support for custom crosshairs and support for ProQuake loc files and Quakeworld loc files. Later XQuake had support for 24 bit textures, I believe.
Despite some criticism that 5 features of XQuake were sort of cheats, and by strict definition they were, XQuake was like ProQuake but more fun, more exciting and better to look at and highly geared towards multiplayer use.
The 5 features consider quasi-cheats in the Quake community, although accepted practice in Quakeworld:
1. Quad and Pents glow thru walls - advantage over other clients
2. Straight shaft (<--- I don't view that as a cheat)
3. Players colors a little brighter - advantage over other clients
4. Easier to see rocket trails - advantage over other clients
5. Ability to look straight up and down - advantage over other clients
This was what the purists felt. JoeQuake and QRack have all of these except #1 and #3. Some felt
But this wasn't what the fiasco was about.
ProQuake Vs. XQuake
JP Grossman, the author of the popular ProQuake and the popular CRMOD, like any good developer, regularly released his source codes for each release as the GPL requires.
Trujen, the XQuake author, felt that if he released his source as he was required to do by the GPL (not an option), others would improve it and his creation would be obsoleted. Pretty hypocritical, considering that he took ProQuake 2.00 and did exactly that.
JP Grossman implemented cheat-free protection in ProQuake 3.10 that only allowed ProQuake servers to only allow ProQuake clients with unmodified pak files to connect using a security code. JP Grossman did not initially release the source, fearing that this would allow cheaters to hack it.
GPL Letters to and from Grossman:
http://proquake.planetquake.gamespy.com/gpl.html
Emails between Grossman and Trujen:
http://proquake.planetquake.gamespy.com/bill.html
After receiving letters from John Carmack stating that no exception to the GPL would be made in this case, JP Grossman released the source for ProQuake 3.10 and decided to bundle the security module, with modifications, separately. ProQuake 3.20 was released with the source, the security module did not require the release of source code -- being a separate and completely optional module distributed separately.
XQuake Gets Shut Down
During this discussion, Grossman and many others did not feel it was fair that Trujen did not release the XQuake source. In email exchanges, Trujen kept saying he always had planned to release his source, but never did.
PlanetQuake shut down the XQuake site for failure to comply with the GPL.
How Did This Hurt Us
So, the Quake community was left in a position where basically the best and most popular Quake engine ... XQuake ... can never be improved.
XQuake is a dead project. It does not have the critical broadband/modem router fix required for every server except IHOC (which has an experimental fix developed by Yugo2Heck).
XQuake can never have new features added to it. Bugs cannot be fixed. It cannot get a server browser added to it. It cannot get any improvements that more recent engines have implemented.
But, if you truly want to see how this hurt the Quake community, there is no better example than the quantum leap of the mighty FuhQuake client.
2002 - XQuake vs. 2002 FuhQuake.net
While the Quake community was stuck with a dead end in XQuake, the Quakeworld community, led by Fuh, radically changed Quakeworld forever.
The FuhQuake community was a model of cooperation. FuhQuake implemented numerous enhancements all rolled into one client include massive HUD customization, 24 bit texture support, demo menus, a security module, built in MP3 player ... even support for Half-Life maps.
After about 3 years of service, when the FuhQuake board closed in 2004 it had 1358 members and numerous big time helpers like Moondrunk, Oldman and other made textures, made weapon models, made character sets, wrote code, tested.
FuhQuake was a model community where the GPL was honored and the community kept it "clean".
Fuh quit developing further enhancements in 2005. The EZQuake engine uses FuhQuake as a base and added many new features and graphical effects.
So while Quakeworld had the honorable Fuh, and his work lives on today in EZQuake ... we had the dishonorable Trujen and he Fuh'ked us.
And if you take a look of where Quakeworld clients capabilities are vs. regular Quake multiplayer, Quakeworld is light years ahead of us in technology and the XQuake GPL fiasco was a large part of it.
Thanks Trujen!
Fortunately, Jozsef Szalontai ported almost all of FuhQuake's graphical capabilities to JoeQuake and Sputnikah has his own JoeQuake derivative, QRack, which he has been adding features to like a mad man.
Comment