Didn't the IRC match beta release violate the GPL?

Sparkette

Member
According to the wiki, the release was confined to the #srb2fun IRC channel because a public release would have required them to release the source code, which they didn't want to do. This doesn't add up.


First of all, #srb2fun, to my understanding, is a public IRC channel. This may not have been the case back then, but either way, that's a moot point, because it seems like someone misunderstood the terms of the GPL. (Not that it isn't a moot point anyway now that the source code is out.)


The GPL doesn't just say you need to publicly release the source code if you publicly release binaries. It says that anyone to whom you distribute binaries must also have access to the source code. So unless those people in the IRC were offered the source code as well, whoever originally posted the beta build did so in violation of the GPL.


Again, it doesn't really matter now. I just thought I'd make the team and the community aware of what the terms really say.
 
I read through the GPL terms to double check. Yep, you're right.

I don't think that it ever mattered, even at the time (briefly delaying the release of the source code to avoid spoilers doesn't really violate the spirit of the rules), but I suppose that technically the devs screwed up a bit.
 
I don't get it, isn't the SRB2 engine based off Doom Legacy? If so then the sourcecode is still available right?
 
I don't get it, isn't the SRB2 engine based off Doom Legacy? If so then the sourcecode is still available right?
Yes, but if you add your own modifications to a program (or any copyrighted work) and then distribute your modified version, that's generally considered copyright infringement. Usually this is made clear by the EULA that you click through when installing software. The GNU General Public License (or GPL) is a more permissive EULA created by people who (like myself) aren't happy with this state of affairs, and believe people should always have the right to study and modify the software they use.


The main thing the GPL does is give permission for anyone to use the software for any purpose, including studying and modifying its operation in any way one pleases. The only limits are on distributing the software once you've modified it. You aren't allowed to do that unless you also make the full source code just as freely available to them. And you also have to put your modifications under the same license, to ensure your additions remain free (as in free speech) as well.


It does appear that the SRB2 team made a good-faith attempt to comply with that requirement, but they misunderstood it somewhat. They thought that if they limited distribution to only the people in the IRC channel, they could still legally keep the source code private from them, as they weren't making the software public. (Not that a public IRC channel is legally any different from a public Web page anyway.) In reality, the GPL doesn't make a distinction between public and private.


If it were really a private IRC channel (and I don't know for a fact it wasn't back then) then while it's true that they wouldn't be required to make the source code public, they'd have to at least make it available to everyone to whom they gave the binary version, however many or few people that was. And they'd need to give them the full rights under the GPL as well, which means if any of those people decided to leak it, they'd have to let them. (I'm not sure whether banning them from the forum as the wiki mentioned would be prohibited, but they at least couldn't take them to court over it or anything.)


To be completely honest, I'm actually against copyright entirely, so I technically couldn't justify taking moral issue with them even if they did intentionally violate the license. (Unless they went as far as taking legal action against them for doing things like reverse engineering the compiled beta and patching it to load WAD's or something.) I just felt like posting this thread because I wasn't sure anyone else noticed that they previously violated the GPL.


Obligatory disclaimer: I'm not a lawyer, and none of the above should be taken as legal advice.


EDIT: Actually, if they still haven't released the source code for that exact version, I think they'd still technically be in violation.
 
Last edited:
It's a gray area, I'm not going to say I understand 100% how GPL works in a situation like this, but the match beta was for both a test of the multiplayer system to a small group of people, and a way to see who could/could not be trusted to be brought into Sky Sanctuary. It was not a release in the traditional sense, it was not even the fully featured game. In much the same way, we gave 2.2 to Discord moderators without the source before release day so that they could actually moderate and know what spoilers are and not have to split focus, as well as get a bit of last minute external testing in. To what extent GPL applies in these circumstances, I don't know. But these weren't public releases as such.
 
It's a gray area, I'm not going to say I understand 100% how GPL works in a situation like this, but the match beta was for both a test of the multiplayer system to a small group of people, and a way to see who could/could not be trusted to be brought into Sky Sanctuary. It was not a release in the traditional sense, it was not even the fully featured game. In much the same way, we gave 2.2 to Discord moderators without the source before release day so that they could actually moderate and know what spoilers are and not have to split focus, as well as get a bit of last minute external testing in. To what extent GPL applies in these circumstances, I don't know. But these weren't public releases as such.


Doom Legacy is published under GPL version 2+, meaning you're allowed to follow the terms of either version 2 or version 3 of the GPL, at your choice. Both versions (v2 §2, and v3 §5) give permission to copy and distribute modified versions of the Doom Legacy source code (such as SRB2's source code) under certain conditions. Both versions (v2 §3, and v3 §5) also allow you to copy and distribute the compiled form of that code, but no matter which version of the license you choose, you're required to provide them with access to the source code as well, or at least offer it to them. That is, even if they could ask you for the source code and you'd give it to them, you're still technically violating the license if you don't tell them they have that option.


Remember when I said "under certain conditions" before? One of those conditions—again in both versions (v2 §2b, and v3 §5c)—is that when distributing the source code (even if only because you're required to) you must license it to them, and anyone who receives it from them, under the GPL, in turn giving them all the same freedoms to redistribute it. I'm not sure if you're required to do the same with the PK3 files (or whether such a provision would be enforceable even if you are) but this requirement at least applies to the source code. (I can't imagine you'd be prohibited from providing incentives not to, however—like access to the Sky Sanctuary thing you mentioned, or even the right to continue using the forums/Discord.)


The GPL FAQ is also worth a read, especially "Does the GPL allow me to distribute a modified or beta version under a nondisclosure agreement?"


Again, I'm not going to report you or anything, but it's definitely something you should be aware of.
 
This is just an educational exercise. GPL violations aren't 'reported' anywhere, it is up to the plaintiff to bring a civil lawsuit against the defendant to compel them to comply with the terms.

What are you gonna do, pay big bucks to a lawyer and sue STJr? Nobody even has the source code to that version. Would you make us remove historical versions of SRB2 simply because we don't have the equivalent source code available to provide for that particular build?

From a practical standpoint, for what it's worth, the v2.0 source code is a superset to the 1.1 match beta with respect to content. You're not missing anything. This is likely true for other copies of the source code floating around with respect to prior releases, as well.

It's people like you why we can't have nice things.
 
This is just an educational exercise. GPL violations aren't 'reported' anywhere, it is up to the plaintiff to bring a civil lawsuit against the defendant to compel them to comply with the terms.

What are you gonna do, pay big bucks to a lawyer and sue STJr? Nobody even has the source code to that version. Would you make us remove historical versions of SRB2 simply because we don't have the equivalent source code available to provide for that particular build?

From a practical standpoint, for what it's worth, the v2.0 source code is a superset to the 1.1 match beta with respect to content. You're not missing anything. This is likely true for other copies of the source code floating around with respect to prior releases, as well.

It's people like you why we can't have nice things.
I meant I wasn't going to report that to any of the developers further upstream to follow up on (which they realistically probably wouldn't anyway) partially because like you said, there'd be no purpose or value in doing so unless I just wanted to stir up trouble. And yeah I agree, it's better to have those historical versions up anyway, even if it's technically a violation of the license because the source code no longer exists. Doesn't do any harm.
 
SRB2 was a thing made out of love and it wasn't be C&D in 20+ years of existence because unlike Nintendo, Sega is fine with fangames and romhacks (as long as you legally own the original game).


As they say when you close the game "we lose money anyway"
 
It's a gray area, I'm not going to say I understand 100% how GPL works in a situation like this, but the match beta was for both a test of the multiplayer system to a small group of people, and a way to see who could/could not be trusted to be brought into Sky Sanctuary. It was not a release in the traditional sense, it was not even the fully featured game. In much the same way, we gave 2.2 to Discord moderators without the source before release day so that they could actually moderate and know what spoilers are and not have to split focus, as well as get a bit of last minute external testing in. To what extent GPL applies in these circumstances, I don't know. But these weren't public releases as such.

this must've been what banned rob. dont see whats wrong here.
 

Who is viewing this thread (Total: 0, Members: 0, Guests: 0)

Back
Top