Quake

Started by
9 comments, last by Dawoodoz 10 years, 10 months ago

I came across this picture online and was curious how all these games have been derived from Quake? Is there some sort of public license-free source code of quake that we can use to develop from? If so does anyone know if its even worth it and if so where you could acquire this source? Not to mention, if they are all available, which would be best to develop from? Quake 1,2,or 3 src?

[spoiler]

ts9P9.jpg

[/spoiler]

Advertisement

The old idTech engines (1(quake)-4(Doom3/Quake4) are all available under the GPL(As is a bunch of other idSoftware sourcecode) and can be used freely for GPL licensed games, you can find all their free stuff here: https://github.com/id-Software

improved versions such as ioquake3 can be found at the respective projects website (ioquake3.org for ioquake3)

Some of the games in that graph use proprietary licenses (which you can obtain from Id (or Bethesda now i guess) if you got a load of cash to spend(Allthough the older engines are probably not that expensive these days) (You cannot use the GPL licensed engines for proprietary games)

[size="1"]I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!

You cannot use the GPL licensed engines for proprietary games

That's not exactly true. The GPL license would require that you distribute the source code for your game so that it may be learned from and modified by others, but that doesn't preclude the possibility of commercial software. You still retain the rights to your game content, and that essentially becomes what you are selling. The GPL does not transfer to your game content, and iD's content is not distributed with their GPL source code drops.

Practically speaking, distributing the source code may lower the bar for nastiness such as hacks, or make it easier for people to pirate your game content, but I wouldn't say that the potential consequences of releasing closed-source software are any different, just the barrier to entry. And although these are very real possibilities, its just as likely (if not more likely) that there will be good consequences as well -- bug fixes, feature enhancements, ports to other platforms, mods, etc.

throw table_exception("(? ???)? ? ???");

Damn, well that's still pretty cool. I wouldn't really use it for commercial anyways, just was curious if I could develop on their engine w/o paying for a license, thanks guys!

You cannot use the GPL licensed engines for proprietary games

That's not exactly true. The GPL license would require that you distribute the source code for your game so that it may be learned from and modified by others, but that doesn't preclude the possibility of commercial software. You still retain the rights to your game content, and that essentially becomes what you are selling. The GPL does not transfer to your game content, and iD's content is not distributed with their GPL source code drops.

Practically speaking, distributing the source code may lower the bar for nastiness such as hacks, or make it easier for people to pirate your game content, but I wouldn't say that the potential consequences of releasing closed-source software are any different, just the barrier to entry. And although these are very real possibilities, its just as likely (if not more likely) that there will be good consequences as well -- bug fixes, feature enhancements, ports to other platforms, mods, etc.

I didn't say anything about commercial.

The big problem really isn't that people are allowed to see, play with and improve/modify your code(That is a great thing for most games), the problem for commercial games is that competitors can legally use your code to quickly create competing products. competing against the world on asset quality and quantity alone isn't all that easy.

[size="1"]I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!

The way you had stated it, and in the context it was found, comes across as if you are speaking to the legality of doing so, rather than the business considerations -- that is to say, it came across as "you can't sell things that include GPL code", rather than "If you depend on GPL code, all your competitors can read your secret sauce".

As to the point of your rebuttal, it probably depends on the design and nature of the game, and on how much of it is defined externally to the source code (that is, in scripts), or in the code itself. I suppose that for very unique features tightly bound into the engine you can argue that giving that away enables exactly the scenario you describe, on the other hand, most commercial games (if that's what we're talking about) aren't terribly unique at all, and do, in fact compete on their assets and design alone. After all, how many games are built on Unreal or Unity? Not to dismiss the significant features that third parties have worked in, or modifications they've performed to the codebase, but this code is an expression of the design, rather than the other way around.

Even with your full source code, they can't clone your game, your assets, your story or characters. For large commercial games asset creation, writing, and design are by far the bulk of the development expenses -- programmer salary is a drop in the bucket, so it's not saving them a great deal of expense. It may reduce their time to market, but its still reactionary and therefore behind the curve you've already set. For a certain kind of game (typically content-light, gameplay-centered experiences) I concede there's a real concern here (e.g. Vlambeer) where a good game with programmer art could be upstaged by a source-clone and better assets, or by launching an identical game with different assets on a different platform (iOS market is rife with such knockoffs of android, PC, and flash games), but those are things that can be mitigated by your own business decisions.

Opinions are entitled to differ, of course, but I just don't see it as that big of a deal in most cases, if for no other reason that the design requirements will be apparent from the finished product regardless. From there is precious little work for a competitor to simply express their own code to achieve the same result. Deliberate exercise of the feature and standard reverse-engineering techniques will reveal necessary detail.

throw table_exception("(? ???)? ? ???");

Damn, well that's still pretty cool. I wouldn't really use it for commercial anyways, just was curious if I could develop on their engine w/o paying for a license, thanks guys!

That's the whole get-down with releasing the source to their (id's) engines, for developers to play with and create from. You will only need to worry about a license if you wish to sell your project as a stand-alone game.

The way you had stated it, and in the context it was found, comes across as if you are speaking to the legality of doing so, rather than the business considerations -- that is to say, it came across as "you can't sell things that include GPL code", rather than "If you depend on GPL code, all your competitors can read your secret sauce".

I never said anything about selling or about commercial games in my first post (You brought that up), i said that you cannot make proprietary games (or proprietary software in general) that includes GPL licensed code, doing so is illegal and the OP needs to understand that to avoid infringing on other peoples copyright (a crime, which in some jurisdictions can land you in jail).

It doesn't matter if the OP makes a commercial or non commercial game using GPL licensed code, it is 100% irrelevant(except from a business point of view, which i'd recommend against aswell (see my 2nd post)), the only thing that matters from a legal point of view is that its not proprietary and that all code (including any non system library it uses) is available

under a GPL compatible license for anyone who recieves a binary.

If the game is proprietary(or simply uses proprietary non system libraries) any copyrightholder to the code he is using has the right to revoke his license, sue him and/or file criminal charges against him, even if the game is given away for free as a hobby.

[size="1"]I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!

You will only need to worry about a license if you wish to sell your project as a stand-alone game.

No, you don't need a license to sell a stand-alone application based on GPL code. You need a license that preserves your source code's secrecy only if you want/need to keep your source code changes a secret.

However, when the original Quake code is modified under terms of the GPL, iD doesn't gain ownership of those changes. They cannot sell you a license to other people's work, so if you buy a quake engine license from iD, it would only be for the original GPL code (or whatever commercial codebase they might maintain) and not for any contributions that have been made since. Once code is GPL, the GPL terms can never be negated, revoked, or substituted for any other license. iD has no say in what goes on with the code they released under the GPL, unless someone fails to abide by its terms themselves.

throw table_exception("(? ???)? ? ???");

Yes Simon, I understand the distinction and agree with your points that the legal distinction falls upon whether the source is kept proprietary or not -- but its also reasonable to assume that the reason one would consider the trouble and expense of acquiring the source under terms which allow you to keep the source private is because they have commercial aspirations for the software (after all, you can modify GPL code for your own internal use without revealing your changes, you're only bound by the terms when you distribute the resulting software [freely or for-cost]).

You have fair points, and I may have misinterpreted your meaning, but I also tend to think that the distinction between proprietary and commercial, though crucial in legal terms, is splitting hairs for the purposes of this thread, and I just wanted clarify that the GPL does not prevent you from releasing for-cost products based upon it.

To summarize what the OP needs to know about the GPL (v2):

  • You can take, modify, and create derivative works from GPL code. You don't need anyone's permission to do so.
  • You retain the rights to your applications non-source-code assets, even if its code derives from a GPL'd source.
  • You can distribute the product (e.g. executable) of the derivative work, freely or for-cost.
  • Once you distribute the executable, you must also distribute the entirety of your source code for free and retain the original GPL license or a subsequent version of the GPL license. Failure to do so is a breach -- your license is revoked, and you can be sued.
  • When you contribute source code to the codebase it becomes GPL'd too; anyone can use it under the terms of the attached GPL, just like you did. If they violate those terms, you can sue them.

The GPL v2 license is detailed here if you want to know the full nitty-gritty.

throw table_exception("(? ???)? ? ???");

This topic is closed to new replies.

Advertisement