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

Discussions about UT99
User avatar
PrinceOfFunky
Godlike
Posts: 1192
Joined: Mon Aug 31, 2015 10:31 pm

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

Post by PrinceOfFunky »

Can I actually put a license on the codes I make? Like a copyright or copyleft?
Or it is licensed as the UT99 copyleft(if it has a copyleft)?
If I put a copyleft or copyright, can some methods of my code be used by other developers in other applications? And could them, for example, subclass some classes I made with this license?

Ty for the answer :D
"Your stuff is known to be buggy and unfinished/not properly tested"
User avatar
Wormbo
Adept
Posts: 258
Joined: Sat Aug 24, 2013 6:04 pm

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

Post by Wormbo »

You can generally put your code under whatever license you want, but note that strict copyleft licenses like GPL are incompatible to the copyrighted code Epic already shipped with the game. GPL'd code would probably disallow you from using built-in classes.
Permissive licenses like MIT, BSD, or even CC0, are no problem.

And a general thing: Nothing ever automatically falls under any specific license. Linking to GPL'd code may force you to pick GPL or a similar license, but the specific license is still your decision. If you are under some specific contract, it may force you to relinquish most of your rights on code you write to the other party of the contract, but I doubt that applies here.
User avatar
PrinceOfFunky
Godlike
Posts: 1192
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 »

Wormbo wrote:You can generally put your code under whatever license you want, but note that strict copyleft licenses like GPL are incompatible to the copyrighted code Epic already shipped with the game. GPL'd code would probably disallow you from using built-in classes.
Permissive licenses like MIT, BSD, or even CC0, are no problem.

And a general thing: Nothing ever automatically falls under any specific license. Linking to GPL'd code may force you to pick GPL or a similar license, but the specific license is still your decision. If you are under some specific contract, it may force you to relinquish most of your rights on code you write to the other party of the contract, but I doubt that applies here.
Do you know where I can see the restrictions imposed by Unreal Tournament(1999) license?

EDIT: For example, LMS++ says this on its classes: "All rights reserved." and "All rights belong to their respective owners.", does it mean that no one can copy-past their codes? Or it means that no one can even subclass their classes? Cause subclassing their classes would be like copying their code :/
"Your stuff is known to be buggy and unfinished/not properly tested"
User avatar
Wormbo
Adept
Posts: 258
Joined: Sat Aug 24, 2013 6:04 pm

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

Post by Wormbo »

Subclassing is not copying, but extending and replacing.
"All rights reserved" and similar statements are actually just stating the obvious: The creator has the last say about anything you do with the code. That's really always the case, unless the creator explicitly stated something else, e.g. through a license.

The Unreal Tournament license unfortunately is very generic and doesn't mention modding at all. You have to rely on Epic Games implying a right to create mods, because they included the editor and compiler. I suppose you can read the UT2004 and UT3 EULAs to figure out more about what they might have implied back then.

Generally, you will probably want to talk to a lawyer or similarly knowledgeable person in this field of expertise before applying any more complex license than what I mentioned before. However, under the "Berne Convention", which most countries of the world signed, your work is automatically copyrighted. Just make sure you include some notice of how people can contact you in case they want to ask you about using your code in specific ways.
User avatar
PrinceOfFunky
Godlike
Posts: 1192
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 »

Wormbo wrote:Subclassing is not copying, but extending and replacing.
"All rights reserved" and similar statements are actually just stating the obvious: The creator has the last say about anything you do with the code. That's really always the case, unless the creator explicitly stated something else, e.g. through a license.

The Unreal Tournament license unfortunately is very generic and doesn't mention modding at all. You have to rely on Epic Games implying a right to create mods, because they included the editor and compiler. I suppose you can read the UT2004 and UT3 EULAs to figure out more about what they might have implied back then.

Generally, you will probably want to talk to a lawyer or similarly knowledgeable person in this field of expertise before applying any more complex license than what I mentioned before. However, under the "Berne Convention", which most countries of the world signed, your work is automatically copyrighted. Just make sure you include some notice of how people can contact you in case they want to ask you about using your code in specific ways.
Oke, Thank you very much :D
"Your stuff is known to be buggy and unfinished/not properly tested"
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 »

Hmmm... I have been laboring under the impression that any mods written in UScript was property of Epic.
Regardless of whatever type of notice you put on it.

Wormbo is probably right, but I thought Epic had something in the license regarding mods.

I am pretty sure he is right if you were talking about Java/Javascript or something like that, but I am not a lawyer, or even very smart.

I thought the only reason to add a author notice on your mods, was just so that
people would know who did it, and hopefully contact you to ask just out of common
courtesy if they wanted to modify it further.

For the projects I have done that involved re-writing mods I have always contacted or attempted to contact
the original mod author to explain what my plan was and ask permission, but never thought there was any legal
reason to do so.

The code is all Epics. (Am I misinformed on this detail?)
blarg
User avatar
Barbie
Godlike
Posts: 2528
Joined: Fri Sep 25, 2015 9:01 pm
Location: moved without proper hashing

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

Post by Barbie »

MrLoathsome wrote:The code is all Epics.
Do you mean the code you have written by yourself? That is of course yours. Compare it to a pencil and a story: the manufacturer of the pencil claims to be the owner of all stories written with it? Absurd in my mind...

With all the discussion about copyright the question of observing and enforcing your intellectual property rights (IPR) has to be asked. If I do not intend to look for and fight against infringements, a copyright is only a obstacle for the good guys. The bad bad guys will do not respect your IPR anyway. That's why I put a copyleft on most of my projects. If you want to prevent re-usage of your code you have to use an effective method of code protection and not only a textual statement.
"Multiple exclamation marks," he went on, shaking his head, "are a sure sign of a diseased mind." --Terry Pratchett
User avatar
sektor2111
Godlike
Posts: 6115
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

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

Post by sektor2111 »

UScript is property of EPIC after all and 100+ mutators are using even functions defined originally by EPIC more or less modified.
My Mutator, My Gametype - think twice at root.

Fallback credits related - behind Uscript is Win API and or the rest from M$ - Give them credits too...

And If I start to speak about credits for credits in 50 Levels Back I might reach in ICE AGE.
JackGriffin
Godlike
Posts: 3767
Joined: Fri Jan 14, 2011 1:53 pm
Personal rank: -Retired-

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

Post by JackGriffin »

Of course it's obvious IANAL but there was a long and involved discussion back in the day when the guys were working on 'The Ball' and wanting to take it to being a commercial venture. From what I remember it boiled down to this:
You can write code classes, create textures, sounds, models. All of that is directly owned by you via creative commons license. However the minute those assets are imported into the engine, whether that is by editor, ucc compiling, or built from within the engine (like UCC decompression of files) you lose your rights to those assets and they are then considered sub assets of the Unreal property and rights and privileges now extend from the EULA of the game (which btw are different if you read them).

It's perfectly fine to say "This is my code and I want to declare it copyrighted," and you would have some legal say if it were duplicated. However if I open a compiled U file and copy that code or use that model you don't have a legal leg to stand on.

That being said it doesn't hurt you at all to ask and offer credit where it's due. A pretty good chunk of things I've done come directly from people like Wormbo BECAUSE they allow and condone usage of their work. The Capture The Burger game? From his work. The nice MH2 overlays I did? From his work. Redeemer mania? Yep, used his work extensively. He allowed this and I also do because of that. You should too and stop considering how to prevent others from using it.
So long, and thanks for all the fish
User avatar
PrinceOfFunky
Godlike
Posts: 1192
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 »

JackGriffin wrote:You should too and stop considering how to prevent others from using it.
I never said I wanted prevent others from using my code XD
I'm creating a mutator and what I want is others to use its functions and eventually modify it.
"Your stuff is known to be buggy and unfinished/not properly tested"
JackGriffin
Godlike
Posts: 3767
Joined: Fri Jan 14, 2011 1:53 pm
Personal rank: -Retired-

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

Post by JackGriffin »

That's kind of the whole point of development.

One thing I can promise you is that if you try to control your work at all beyond the common courtesy we all give each other it will absolutely make your work a target to be decompiled and posted. The community really dislikes anyone trying to do a 'this is mine, not yours'. I'm just trying to save you the trouble of finding out the hard way.
Barbie wrote: If you want to prevent re-usage of your code you have to use an effective method of code protection and not only a textual statement.
Total waste of time. Most guys have decompilers and trying to obfuscate only causes you to appear to be selfish. This goes to all the new people: Let me know now because if you do intend to obfuscate your code after we go to the trouble to help with questions then I'm bailing out. Save everyone the trouble and time.
So long, and thanks for all the fish
User avatar
PrinceOfFunky
Godlike
Posts: 1192
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 »

JackGriffin wrote:That's kind of the whole point of development.

One thing I can promise you is that if you try to control your work at all beyond the common courtesy we all give each other it will absolutely make your work a target to be decompiled and posted. The community really dislikes anyone trying to do a 'this is mine, not yours'. I'm just trying to save you the trouble of finding out the hard way.
Barbie wrote: If you want to prevent re-usage of your code you have to use an effective method of code protection and not only a textual statement.
Total waste of time. Most guys have decompilers and trying to obfuscate only causes you to appear to be selfish. This goes to all the new people: Let me know now because if you do intend to obfuscate your code after we go to the trouble to help with questions then I'm bailing out. Save everyone the trouble and time.
Uff .o. It was just a question I made, I know how things work everywhere about codes etc... The universe is of everyone right? :D
"Your stuff is known to be buggy and unfinished/not properly tested"
User avatar
Wormbo
Adept
Posts: 258
Joined: Sat Aug 24, 2013 6:04 pm

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

Post by Wormbo »

Just use a BSD or the MIT license, then. Or even put your code into the Public Domain (or the closest thing your local juristication allows), using the Creative Commons Zero license.
Barbie wrote:The bad bad guys will do not respect your IPR anyway. That's why I put a copyleft on most of my projects. If you want to prevent re-usage of your code you have to use an effective method of code protection and not only a textual statement.
Firstly, copyleft also imposes restrictions that the "bad guys" will probably ignore. Secondly, like I already said, certain copyleft licenses are incompatible to what Epic would likely have licensed the stock Unrealscript code under, which means you are the "bad guy" if you ignore that incompatibility. And thirdly, compiled UnrealScript bytecode is on such a high level that there is absolutely no way to protect it. It is literally a binary representation of almost exactly what the textual script looked like. You can try to make it more complex and convoluted (at the expense of performance), and you can try to obfuscate the name table, but the "bad guys" are likely going to just decompile and generate readable names.
User avatar
sektor2111
Godlike
Posts: 6115
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

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

Post by sektor2111 »

Let me see, all of you should think first about how they learned coding: looking at examples. What if Epic would badly Encrypt this UScript ? Bye to your "licenses". This kind of selfish is not interesting for me. I found mods with stripped obfuscated code dealing with netspeed. Really ? Then I did myself something without to strip anything or to hide source-code. Why ? Because some "players" were using 2600 speed in 2012 and they were clueless "how to" set their game. Kicking them out and forcing them to learn is not an answer - they simply quit because are f..ing LAZY. I made other "personal" tweaks but I never thought at "licenses" - UScript is not mine and it was never done to be protected. A lot of classes have remarks explaining, asking to better values "//fixme"-s and so on. Suddenly all new comers tend to say: This is mine. Okay then the rest of comunity can show code's provenience in a couple of minutes. Then what ? Then 2 or 3 guys will write a similar mutator for free, even a better one... And then you can wipe your a$$ with such a "license" as long as you are just using UScript only. If mod comes with a DLL add-on, then things might be changed - there is a C++ or other language which is not UScript so we have a deal with a personal work.
I can imagine that "licensed" mutator only checking those posts related to stuff suddenly with issues: OFF-Line problems, 2 values for a variable, UCC is a liar, and so on.

Aside if you want something "personalized" you should not release it outside - simple. I have a mutator-tool double modulated: client side and server side. I did not speak anything because I might be interested if anyone has a better idea first and then we can compare stuff. Server side is a key, else client has only a package which doesn't work by itself + timing with mod.
When I'm checking such a forum-post. Then I'll show you MY LICENSE as a lesson: I'm not releasing NOTHING, capish ? If you wanna deal with such thing but you don't know how to start then you'll have to waste a lot of time recreating an unknown and never seen server-side. Now think twice if such things are helping comunity or not.

Several people can use what I have posted at Ecoop firing old weaponry On-Line. Code used is a modification ? Code origins ? :lol2: meh... Not even evil People were obfuscating or claiming a "license" for their mad works, LOL... I could do that as a server-side only for me but I didn't.

I've never been interested about learning obfuscation, because this is not helping and neither "licensing" an Uscript copied-modified from Bot.uc + small lines written from scratch + simple stuff stolen from some Zellius ( no credits goes here - I enjoy returning bad UT codes back in a more useful way - I recover all stuff as much as possible ) + a couple of lines from DeathMatchPlus and values changed + some engine's core's natives called.
Higor
Godlike
Posts: 1847
Joined: Sun Mar 04, 2012 6:47 pm

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

Post by Higor »

sektor2111 wrote:Then 2 or 3 guys will write a similar mutator for free, even a better one
Not a day passes without me being glad I wrote a simple mod-friendly and easy to setup alternative to the mess ZeroPing was.

He's right about that though... at these heights, if you want to 'protect' a mod, then better make sure what you make is WAAAAAAAAY above the work of others in that area, or simply unique.
Otherwise you're in for a few nasty surprises (you might wake up one day and see something 20 times better being just released lel).

BTW, as sektor2111 said, dividing your stuff in client/server modules is the only real protection method.
And you'll STILL be in for a few nasty surprises (someone just rebuilt your server interface, with more optimized code and publicly released it).

On the other hand, nobody (at least here) would dare mess with your mods if they're opensourced and free to use, you'll also get loads of feedback and code samples.
If you REALLY want to make a licenced program, grab a c++ compiler and do something serious, you'll go further and less ppl will be able to reverse engineer your work...
Yet, you won't be safe from those nasty surprises life can bring you (someone that can read assemblies decided to use your algorithms in his programs).







I am totally unrelated to the 'nasty surprises'... kappa
ImageImage
Image unreal://23.111.157.138:7777
Image unreal://46.228.199.205:7788