What if I put a license on a code I made for UT99?

Discussions about UT99
User avatar
Darkelarious
Skilled
Posts: 175
Joined: Sat Feb 08, 2014 12:02 pm
Personal rank: 333networks admin
Location: Phobos Moon
Contact:

Re: What if I put a license on a code I made for UT99?

Post by Darkelarious »

(note to admins/moderators: I finished typing my hour-long read, my session timed out, and I lost everything :thudown: )

Anyway, a few points and remarks that I learned about (and experienced) in the last few years are the following. This is based on EU and USA laws alike, but in the USA the enforcing works a bit different.

For everything that you write, you have the copyright or "author's right", as long as it satisfies a few conditions:
  • It is original work (you made it)
  • It is not based on other's material
  • It does not contain elements of other people's work
You don't have to do anything to get that copyright, you have that right as soon as you write something unique. The last point is however openly discussed (think about mashups where samples of other songs are transformed into an actually new song) and applies to programming too, because source code usually consists of a series of required steps in order to make something unique. I'm really surprised that nobody tried to patent the statement print "Hello World".

Epic Games may have the license for the game, but every mod you write is your copyright and your intellectual property. The only thing Epic could do about it is to include in their EULA that mods (or mods from certain authors) are not allowed to be played. Whether they would do that is something else.

When you want to license your code, you usually do that to provide more freedom for the end-user(s) or to restrict distribution and use. To provide more freedoms, you usually go for the MIT license or GNU-GPL, which basically states: "it's all yours, as long as you share it with my description and name, but you have zero guarantees and I'm not liable if you blow up your system". To restrict use, you usually fall back on the general copyright laws ("nope, no touching"), patent law ("nope, no touching without paying") or Creative Commons ("some restrictions apply, like no commercial use, no editing the code and only sharing as you found it").

Whichever version you pick, if you license your code, you'll have to go to the patent/licensing/trademark office where you pay a lot of money. You have to outline the extent and function of your code and that outline is kept with your license number. If anyone ever in the future wants to use your code, either partial or as a whole, they'll have to pay you for using it. If they use it without paying, you would usually start a lawsuit in order to get your right/money.

But (differences apply with the USA/EU) if somebody takes your mod with your code, puts it up his UT server, you could argue that this person is damaging your income, because he or she is using your mod to enhance his server and profiting (through more players joining your server) from your work. On the other hand, this person can waiver that because he is not making a profit (where profit does not necessarily mean money) from your work. An even different interpretation is that this person is the actual user of your product/mod, because he only uses it in his server and followed all the rules for correct/legal use (End User License Agreement, EULA). The last part can vary; if you only licensed the code, no laws were broken. If you licensed the entire mod, you could "rent out" your mod, so people pay for use per month/year/century, or accept a one-time fee for unlimited use of the mod in his server. It also depends if you do or do not distribute the (compiled) mod on your site or forum, because then your materials may be assumed to be freeware, unless you include the EULA with the mod distribution. If you post it online for everyone to find, but you still demand money for the use, you legally have a point (USA interpretation) or is waivered because your method did not demand agreeing with the EULA (EU interpretation; everyone could use the mod without reading the EULA, unless your mod contains a "click agree to continue" thing).

When you demand anything for your mod, there will be people who want to acquire it without returning everything (not focusing on the motives here). When you host your mod on your server, it can be seen as publishing on your behalf. People who join, automatically download a cached version of your mod (unless everything is server side) and can extract the mod and source code from there (plenty of packs/programs available for that). The player does not have to agree with anything (unless you include an EULA screen, which will make the mod very unpopular), which makes it pretty difficult to restrict use of your mod.

That's where licensing the source code itself comes in. When licensing your mod proves difficult or impractical, you license only your code. It's a bit cheaper, but equally as effective -- depending on the exact license, you restrict the use and re-use of your code in the mods of others. When everyone reads and respects that license, it's pretty straightforward, no harm done. But when people do extract your source code and use it in their own mods, you have to identify the persons who took, used and (re)distributed your source code in their work, and to make it even worse, you will have to crack open EVERY mod you ever come across in order to determine whether they used your mod. So in other words, you have to rip source code from cache (which you don't want others to do with your mod) and point the judge and jury to the person of whom you can prove that they took your intellectual property.

Now that's a daytime job, or you will have to sign up with a patent/trademark agency that does all the search-and-takedown-notice job for you, but for a (not so small) fee. In the entertainment industry there are a lot of those agencies who make gold mines on searching for people infringing intellectual property rights, sueing them and only paying you a small fraction of the settlements (if you are lucky). This is where the real profits are made when you decide to license your code. However, when somebody (anonymously) releases his mod with your source code, or simply pastes the source code online on something like nopaste or github, it is a lot more difficult to find the violator of your right, while there is really nothing you can do to stop your source code from spreading around the globe like a virus.

There are a few precautions you can take: do. not. ever. put. your. mod. online. That way nobody can see, steal, copy, clone, edit, use, re-use, share, distribute or violate your code and license ever.


I think the real question is not whether you want to license your code, but rather ask people not to steal your source code. The only real way to do that is to share everything freely, with the request to include your license/copyright/license notice within their work. That immediately provides a different attitude: you give something (code) and ask something (credit) in return. That gives a really different feelings. Instead of "NO TOUCHY!" you say "since you are going to use it anyway, at least you could include the proper credits to me", which is often for the real developers an incentive to praise you up high, or often (as seen with 333networks) a reason for developers to ask "hey, we saw your work, nice, we would like to use part of your code, can we please?". As an alternative for giving away your code freely, you could also consider a "Creative Commons" license.

Yes, you could license your code. The real question is whether you should.
--Darkelarious
Image
Masterserver | Discord Channel
Oh, and we still are ready to receive donations. The url works, right? It doesn't seem to be doing anything...
User avatar
papercoffee
Godlike
Posts: 10448
Joined: Wed Jul 15, 2009 11:36 am
Personal rank: coffee addicted !!!
Location: Cologne, the city with the big cathedral.
Contact:

Re: What if I put a license on a code I made for UT99?

Post by papercoffee »

Darkelarious wrote:(note to admins/moderators: I finished typing my hour-long read, my session timed out, and I lost everything :thudown: )
That's the reason why I always hit ctrl+a ctrl+c and click preview after a long typing session... if preview is successful no problem... if preview fails and I'm automatically logged out, log in again and hit ctrl+v. :mrgreen:
User avatar
PrinceOfFunky
Godlike
Posts: 1200
Joined: Mon Aug 31, 2015 10:31 pm

Re: What if I put a license on a code I made for UT99?

Post by PrinceOfFunky »

Darkelarious wrote:I think the real question is not whether you want to license your code, but rather ask people not to steal your source code.
I just wanted to know a way to share the code with everyone and make people use functions of that code and maybe modify it if needed. Why does everyone think I don't want people to use my code? :|
"Your stuff is known to be buggy and unfinished/not properly tested"
User avatar
papercoffee
Godlike
Posts: 10448
Joined: Wed Jul 15, 2009 11:36 am
Personal rank: coffee addicted !!!
Location: Cologne, the city with the big cathedral.
Contact:

Re: What if I put a license on a code I made for UT99?

Post by papercoffee »

The thread shifted more to a general discussion about license and code.
This happens sometimes here. Deal with it. :wink:
MrLoathsome
Inhuman
Posts: 958
Joined: Wed Mar 31, 2010 9:02 pm
Personal rank: I am quite rank.
Location: MrLoathsome fell out of the world!

Re: What if I put a license on a code I made for UT99?

Post by MrLoathsome »

Well that is easy then.

Just include the Classes folder with anything you release.
That's what I do.

I use minimal or no comments, which isn't really obfuscating, but does force
anybody who wants to use or modify the code to actually figure out what it is doing.

(That doesn't happen after its done. I write the stuff with no comments.....)
blarg
User avatar
Darkelarious
Skilled
Posts: 175
Joined: Sat Feb 08, 2014 12:02 pm
Personal rank: 333networks admin
Location: Phobos Moon
Contact:

Re: What if I put a license on a code I made for UT99?

Post by Darkelarious »

PrinceOfFunky wrote:I just wanted to know a way to share the code with everyone and make people use functions of that code and maybe modify it if needed. Why does everyone think I don't want people to use my code? :|
papercoffee wrote:The thread shifted more to a general discussion about license and code.
This happens sometimes here. Deal with it. :wink:
I am not implying whether you want to add restrictions or freedoms with a license, but rather going through all the angles and aspects involved. I tried to provide you with as much info and experience as I have, I hope it was useful to you.

For 333networks, I am working with this (click!) format, I think it's more or less the same as the MIT license: share all, but no guarantees that it even works. If you have your own website/host and you write a lot of mods of which you want to share source code, then "git" is a good way to do so-- git often implies (but not always!) that the code is open-source and often available for everyone to grab.

But all things apart, if you want people to share your materials, include the source-code with the original package/compiled mutator. It encourages people to look into it and how it works. If you want to be absolutely clear about the rules of sharing and using the code, you can always include the COPYING note (just a text file included in the pack/zip) where you simply spit your terms. As said in previous posts, people who want to disrespect those terms will do so anyway, but it gives the rest of us a way to know with which intentions you shared your code.
MrLoathsome wrote: I write the stuff with no comments.....)
This often works better than licensing your code :)
If you have to do a lot of work to understand somebody else's code, it is far often easier to write the same function from scratch. I once had a mod of which I did not want people to meddle with the source-code (custom CTF flag mod for my server that automatically logged me in as admin whenever I joined). So I simply removed all newlines, it was one garbled mess through which nobody did the effort to look around. When others started copying my nice custom flags, they got a bit of a surprise when I joined those servers. This type of pestering is often far more effective with the simpletons who are only in for stealing your mod, than a license/copyright note alone.
--Darkelarious
Image
Masterserver | Discord Channel
Oh, and we still are ready to receive donations. The url works, right? It doesn't seem to be doing anything...
User avatar
Wormbo
Adept
Posts: 258
Joined: Sat Aug 24, 2013 6:04 pm
Contact:

Re: What if I put a license on a code I made for UT99?

Post by Wormbo »

I feel like I need to M-M-M-M-MONSTER BUMP Bump bump this thread, because... showing off how liberal I am, and stuff. (j/k)

In the "aftermath" of this thread I spent some time thinking about the licensing on my code. As mentioned before, UnrealScript code isn't really copyleft-compatible due to the additional restrictions imposed by the game's EULA. I'm not a fan of big license texts in "lawyer speak" with all-caps writing and the like. (Lawyers just suck at typesetting and modern media text formatting.) Also, many of my older creations don't contain anything that would express my intentions on how people are allowed to reuse the code. That's why earlier this year, I came up with this "license" (or "terms of use"):
  1. This source code and any binaries compiled from it are provided "as-is", without warranty of any kind. (In other words, if it breaks something for you, that's entirely your problem, not mine.)
  2. You are allowed to reuse parts of this source code and binaries compiled from it in any way that does not involve making money, breaking applicable laws or restricting anyone's human or civil rights.
  3. You are allowed to distribute binaries compiled from modified versions of this source code only if you make the modified sources available as well. I'd prefer being mentioned in the credits for such binaries, but please do not make it seem like I endorse them in any way.
I also summed up the intentions behind it on a dedicated web page. Actually, I might put a copy of that page into every public download on my website.
User avatar
Carbon
Inhuman
Posts: 855
Joined: Thu Jan 17, 2013 1:52 pm
Personal rank: Hoarder.

Re: What if I put a license on a code I made for UT99?

Post by Carbon »

Off-topic, but the thread was bumped anyhow.

Type long posts in Notepad or Word, then just copy and paste. :)
Terraniux
Masterful
Posts: 717
Joined: Mon Jan 05, 2009 8:08 pm
Personal rank: Banished member

Re: What if I put a license on a code I made for UT99?

Post by Terraniux »

Can somebody explain the difference between copyright and copyleft?
This member can only post when permitted.
User avatar
Wormbo
Adept
Posts: 258
Joined: Sat Aug 24, 2013 6:04 pm
Contact:

Re: What if I put a license on a code I made for UT99?

Post by Wormbo »

Copyleft (a play on the word copyright) is the practice of offering people the right to freely distribute copies and modified versions of a work with the stipulation that the same rights be preserved in derivative works down the line. Copyleft software licenses are considered protective, as contrasted with permissive free software licenses.
So in essence, there are three big models of software licences:
  • Those that stress the author's copyright. (aka. "closed source" - even if the source code can be seen by anyone, they are usually not allowed to modify it or only under certain restrictive conditions. Technically this is the category for all of Epic's UnrealScript sources.)
  • Those that force derivative works to relinquish certain rights ("copyleft", such as the GPL)
  • Those that explicitly relinquish many of the author's rights (or at least vow to not exercise them), while allowing others to choose to not do the same. ("permissive" licenses, such as BSD or MIT license)
The latter two are both considered to be "Open Source" in the free software sense.
Terraniux
Masterful
Posts: 717
Joined: Mon Jan 05, 2009 8:08 pm
Personal rank: Banished member

Re: What if I put a license on a code I made for UT99?

Post by Terraniux »

Ah thanks man! It clears much up for me :) :gj: :tu:
This member can only post when permitted.
Post Reply