I just wanted to double check which open source licenses are compatible with Unreal plugins. I’m mainly trying to protect myself and my ability to work on a plugin and I can keep it open on Github, after signing the rights over to my employer. Currently, all of the code I own is mine we just had some issues with ownership rights disputes on other parts of the overall game project, so everyone is signing a contract that hands over their assets to the company. They’re open to my contract having a stipulation that I open source my plugin and allow them access to it. I’d prefer to sign with GPL over BSD, just so my current employer can’t remove my rights to modify and distribute the code. So, am I allowed to sign my the code in my plugin (obviously, stuff outside of actual engine code) with the GPL? If not which licenses would be compatible? The plugin as it’s developed currently gets add per project rather than going in the developer folder, in case that matters.
If it’s finally part of your software which is required by your users then it does not matter that much how it’s included. GPL is pretty viral with it’s copyleft and is on the list of the incompatible licenses for UE4: https://www.unrealengine.com/eula
Yeah, I understand that licenses are complicated.
So here’s what going on with the specifics of my project. It’s really two programs, one that exists outside of the Unreal framework (a parser) and one within (Character stat system). What I’m really curious about is if I can sign the parser with the GPL. So, the parser parses XML from Documentation and updates and generates classes in Unreal (Currently, only supports Unreal but could be extended to support other engines) needed for the plugin I’m working on. So, the parser doesn’t actually run any Unreal code. The closest it gets is making a call to the system to tell Unreal to recompile once everything has successfully been generated, there are currently also some strings it writes to files. Can I have those strings in the code that results in functional Unreal code, but aren’t run by the code, or do I have to pull them out and toss them in a separate repo that the parser pulls from to generate the basic functions of the plugin? The parser also generates the classes per project that add character info to the project. Can the parser be signed by the GPL?
I’m perfectly fine with signing the plugin itself with the MIT license.
I just want to avoid my parser from having bits of code pulled out to create a proprietary parser for this Documentation software, without them having to submit any changes back to me.
UE4 is proprietary software;
Anything GPL or LGPL are prohibited to be statically linked to Unreal projects. Unless you’re just linking a external DLL, no you can’t use GPL.
GPL protects code. Is the parser finally part of that game? Is it on the same CD or download? In that case don’t use the GPL. Is it something that is used by you internal to (automatically) generate some content or something like Gimp or Blender that would not be shipped to your customers (but only used to create and export some art with it)?
The parser is used to take text from documentation, and drop it into character description fields for each character in game. It isn’t a part of the actual game project, or included in the download. It’s something I’m developing to aid in development.
It creates the base classes if needed,(currently by saving Lua strings to files in the project) and generates each characters info class in valid unreal code by manipulating and saving strings. Once everything is generated it tells the system to generate the project’s makefile and such, and compile the unreal project. No actual unreal code is run.
I kind of think of it as being similar to libreoffice’s ability to load and save docx.