[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4787: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4789: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4790: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4791: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
InsideQC Forums • View topic - QuakeC Source Code Licensing Status

QuakeC Source Code Licensing Status

Discuss programming in the QuakeC language.

Moderator: InsideQC Admins

Re: QuakeC Source Code Licensing Status

Postby motorsep » Tue May 28, 2013 4:04 pm

Well, then in this case people who want to make commercial game using DP and Quake's QuakeC can do it without releasing their QuakeC source (doesn't make much sense, but if they want to it's an option).
motorsep
 
Posts: 231
Joined: Wed Aug 02, 2006 11:46 pm
Location: Texas, USA

Re: QuakeC Source Code Licensing Status

Postby Spirit » Tue May 28, 2013 4:08 pm

What makes you think so? Copyright is implicit to any work (Berne Convention).
Improve Quaddicted, send me a pull request: https://github.com/SpiritQuaddicted/Quaddicted-reviews
Spirit
 
Posts: 1037
Joined: Sat Nov 20, 2004 9:00 pm

Re: QuakeC Source Code Licensing Status

Postby motorsep » Tue May 28, 2013 4:18 pm

Closed sources engine license copyright belongs to iD Software, however, licensee doesn't release source code. Same thing here - id Software is still the author of the code, yet the license (or absence of it) doesn't force you to release the source. You would have to mention in credits that 1.06 was used as base, however, you don't have to release it.
motorsep
 
Posts: 231
Joined: Wed Aug 02, 2006 11:46 pm
Location: Texas, USA

Re: QuakeC Source Code Licensing Status

Postby Spirit » Tue May 28, 2013 4:30 pm

Well, what rights do you have to use the source for anything not Quake? :wink:
Improve Quaddicted, send me a pull request: https://github.com/SpiritQuaddicted/Quaddicted-reviews
Spirit
 
Posts: 1037
Joined: Sat Nov 20, 2004 9:00 pm

Re: QuakeC Source Code Licensing Status

Postby motorsep » Tue May 28, 2013 4:37 pm

It's about license, not about copyright. License defines what I can use it for and what I can't use it for. Copyright delegates authority (who is the entity that made this). I still have to mention all copyrights of GPL app regardless where I use it, even if I changed the title of the GPL app.

So, I have any right to use QuakeC for whatever I want.
motorsep
 
Posts: 231
Joined: Wed Aug 02, 2006 11:46 pm
Location: Texas, USA

Re: QuakeC Source Code Licensing Status

Postby Spirit » Tue May 28, 2013 4:47 pm

This is about the QuakeC source of id1. If there was no license allowing you to use it, then there is no license allowing you to use it. I am not sure what you are talking about.

id released the source for people to use but forgot to specify a good free license. Technically you do not have a right to use it.

The entity holding the copyright can decide to release its works under a license of its choice. Unless that happens, you have no right to assume so.

Now, this is getting way out of hand. id wanted you to use it and so you should. But if you want to base some commercial work on it, you should be aware that you have no legal right to do so.


(By you I don't mean you of course, motorsep.)
Improve Quaddicted, send me a pull request: https://github.com/SpiritQuaddicted/Quaddicted-reviews
Spirit
 
Posts: 1037
Joined: Sat Nov 20, 2004 9:00 pm

Re: QuakeC Source Code Licensing Status

Postby motorsep » Tue May 28, 2013 5:06 pm

For once, QuakeC is not a piece of software. Technically, it's an assets from the game. So you can't even redistribute it for free (just like you can't redistribute art assets of Quake or any other game).

However:

http://en.wikipedia.org/wiki/License-free_software

http://www.law.cornell.edu/uscode/text/17/117

One can simply rewrite QuakeC using 1.06 as a reference, a white paper so to speak, and be free from the burden of dealing with license-free non-software thing.

The whole topic is moot, because no one gives a crap about QuakeC being used in commercial projects - we are heading into 2014, there is idTech 5.x roaming around. So unless a game that uses Quake engine derivative and QuakeC code will beat sales of Rage or any other idSftware/Beth games, chances are slim to none that Zenimax will care for what QuakeC code developer used (or if GPL Quake derivative engine is violating GPL license).
motorsep
 
Posts: 231
Joined: Wed Aug 02, 2006 11:46 pm
Location: Texas, USA

Re: QuakeC Source Code Licensing Status

Postby Spirit » Tue May 28, 2013 5:22 pm

Improve Quaddicted, send me a pull request: https://github.com/SpiritQuaddicted/Quaddicted-reviews
Spirit
 
Posts: 1037
Joined: Sat Nov 20, 2004 9:00 pm

Re: QuakeC Source Code Licensing Status

Postby motorsep » Tue May 28, 2013 5:27 pm

If you don't speak lawyer'ish, maybe you should refrain from any speculations on the subject? Maybe you should sod off?
motorsep
 
Posts: 231
Joined: Wed Aug 02, 2006 11:46 pm
Location: Texas, USA

Re: QuakeC Source Code Licensing Status

Postby Spirit » Tue May 28, 2013 7:41 pm

I do not understand how http://www.law.cornell.edu/uscode/text/17/117 is in any way relevant. If it is and you could elaborate, I would be grateful since in that case I would not have found the relevance hidden inside the lawyerspeak.

Just to make sure no one takes your words as plain truth: You can use the GPL'd 1.01 QuakeC Quake source code just fine for anything you like under the terms of the license. It is not an art asset (unless you want to go philosophical) but perfectly normal software source code. You can use it to create Superreal Tourney 2014 or cat it to /dev/dsp as music, perfectly fine.
Improve Quaddicted, send me a pull request: https://github.com/SpiritQuaddicted/Quaddicted-reviews
Spirit
 
Posts: 1037
Joined: Sat Nov 20, 2004 9:00 pm

Re: QuakeC Source Code Licensing Status

Postby motorsep » Tue May 28, 2013 7:55 pm

QuakeC is in fact an asset. You can't compile it into a lib or binary. It's a scripting language that can't exist outside of Quake engine. DP engine can run just fine without QuakeC being present.
motorsep
 
Posts: 231
Joined: Wed Aug 02, 2006 11:46 pm
Location: Texas, USA

Re: QuakeC Source Code Licensing Status

Postby qbism » Wed May 29, 2013 2:33 am

QIP Ultimate Regular Quake Patch on quaketastic
User avatar
qbism
 
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am

Re: QuakeC Source Code Licensing Status

Postby goldenboy » Wed May 29, 2013 2:47 am

I'm just now comparing 1.01 and 1.06 using diff.

By and large, the code is identical. The changes:

- client.qc has some changes in the spawnpoint selection and obituaries code and misc. minor changes (I assume QW has the latest version though)

- items.qc has some minor differences and has weapons missing from Dropbackpack() BUT the GPL QW source has the full function

- weapons.qc in v101 lacks some minor fixes and does not have CycleWeaponReverseCommand, but again the QW source has it

There might be one or two other small changes, but... that's it. And remember that any commercial game is going to rip out the monsters, weapons and items anyway and replace them. Same goes for the obituaries and probably even the multiplayer stuff. Hence changes in monster code between 1.01 and 1.06 are completely irrelevant anyway. All the core stuff you're gonna need for a new game is in 1.01 and Quakeworld, which are GPL.

So,

1) The changes between 1.01 and 1.06 are absolutely minor. Anyone could fix up 1.01 to make a game with in the course of an evening. And a case for GPL violation if you used 1.06 would be exceedingly hard to make because the codebases are almost identical.

2) The GPL QuakeWorld source has some of the stuff that is absent from 1.01 such as Cycleweaponreversecommand().

3) The sensible choice for anyone making a commercial Quake 1 based game is to simply use the GPL licensed 1.01, add some stuff from the GPL licensed QW if necessary, and release their source, unless they're writing everything themselves.

But like I said, it would be exceedingly hard to tell if a total conversion was based on 1.01 or 1.06 to begin with, since they're almost identical.
User avatar
goldenboy
 
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel

Re: QuakeC Source Code Licensing Status

Postby gnounc » Wed May 29, 2013 3:31 am

Took the v1.01 source, fixed norefs, uninitialized variables, empty return statements, duplicate frame macros and other minor inconsistancies.

Also added dropBackpack and CycleWeaponReverseCommand directly from Quakeworld's gpl'd source code to preserve
the gpl integrity of v1.01 by not pasting from the unlicensed v1.06.

Thanks to gb for that idea.

The result is a legally gpl quake source which is very very close to v1.06.

gb and I will be looking in the next few days for anything else v1.01 left out that Quakeworld has to offer.
my
gnounc's
User avatar
gnounc
 
Posts: 424
Joined: Mon Apr 06, 2009 6:26 am

Re: QuakeC Source Code Licensing Status

Postby motorsep » Wed May 29, 2013 3:40 am

Great job! Although I think if you used 1.06 and put GPL headers into the source files, no one at Zenimax would give a damn :)
motorsep
 
Posts: 231
Joined: Wed Aug 02, 2006 11:46 pm
Location: Texas, USA

PreviousNext

Return to QuakeC Programming

Who is online

Users browsing this forum: No registered users and 1 guest