Legality of Using OpenMW for other game development?

General discussion regarding the OpenMW project.
For technical support, please use the Support subforum.
Post Reply
Artor
Posts: 2
Joined: 16 Mar 2023, 00:15

Legality of Using OpenMW for other game development?

Post by Artor »

Hello,

I am wondering if it would be feasible to make a game in the OpenMW engine. From my understanding of the license it would be okay to keep assets proprietary and whatever modifications you made to the engine would have to be free software still and source code released publicly. Assuming this is true, would packaging the proprietary assets with the engine and selling it on steam for example be illegal, even if the engine code was released publicly? I am pretty sure this would be illegal because that qualifies as a closed source program correct? Any advice or thoughts would be appreciated!
User avatar
AnyOldName3
Posts: 2668
Joined: 26 Nov 2015, 03:25

Re: Legality of Using OpenMW for other game development?

Post by AnyOldName3 »

As long as you give the source code to the engine to anyone you give an engine binary to if they ask for it, you're pretty much in the clear to do whatever you want. I don't think we're entirely sure whether scripts count as linking with the engine, and if they do, you'd need to make source code available for those, too, but the scripts aren't compiled and are therefore already source code anyway, so that's only a problem if you're automatically generating them, e.g. converting Teal to Lua.
Artor
Posts: 2
Joined: 16 Mar 2023, 00:15

Re: Legality of Using OpenMW for other game development?

Post by Artor »

Thanks for the info! I hate figuring out legalese.
User avatar
psi29a
Posts: 5356
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Legality of Using OpenMW for other game development?

Post by psi29a »

OpenMW provides an API, and the Google vs. Oracle case has made sure that API (and headers) are not covered under copyright when using them. This means that your scripts using mwscript or Lua are your IP as well and not covered under the GPLv3. For example, Morrowind's scripts (mwscript) would also not be GPLv3 because it's being used by OpenMW.

Up to you what license you want your assets to be under.

Getting an game using OpenMW published on consoles will be tougher, but not impossible, though.
User avatar
AnyOldName3
Posts: 2668
Joined: 26 Nov 2015, 03:25

Re: Legality of Using OpenMW for other game development?

Post by AnyOldName3 »

The Google/Oracle lawsuit isn't relevant here as the API isn't the only thing involved - we've also got a runtime the scripts talk to and library code written in Lua (some of which was ported from GPL C++, so we might be unable to relicense). Google their own libraries, compilers and runtimes with the same API as Oracle's, whereas an OpenMW-based game would still use OpenMW rather than a from-scratch clone of OpenMW.
User avatar
psi29a
Posts: 5356
Joined: 29 Sep 2011, 10:13
Location: Belgium
Gitlab profile: https://gitlab.com/psi29a/
Contact:

Re: Legality of Using OpenMW for other game development?

Post by psi29a »

If your statement is true, it would mean we'd need to re-license our Lua interface (a non-trivial amount of work) to be more permissive and allow that.

It would also imply that all mods using MWSE are also GPL and that there many violations right now on Nexus as a result. As some mod authors forbid redistribution which is against the GPL license.
https://github.com/MWSE/MWSE/blob/master/license.txt
6. Each time you redistribute the Program (or any work based on the
Program)
, the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.

You are not responsible for enforcing compliance by third parties to
this License.
User avatar
AnyOldName3
Posts: 2668
Joined: 26 Nov 2015, 03:25

Re: Legality of Using OpenMW for other game development?

Post by AnyOldName3 »

MWSE is itself in violation of its own licence as they forgot to copy the It's okay to link with <specific proprietary thing> template to make it okay to link with Morrowind.exe. For reference, here's the thing they didn't read: https://www.gnu.org/licenses/gpl-faq.en ... atibleLibs

Once MWSE's in violation of its own licence, no one has any legal permission to do anything with any of the bits of it they didn't write themselves. That remains the case until every MWSE contributor in history (or the estates of the dead ones) have been contacted and responded with permission to relicense the project.

All of the other script extenders for the later BGS games avoided this problem by not picking a licence that wouldn't work.
bluefords
Posts: 2
Joined: 21 May 2023, 13:09

Re: Legality of Using OpenMW for other game development?

Post by bluefords »

Mods and lua scripts would likely have to be licensed under the GPL if they're designed to work with OpenMW rather than Morrowind. This would seem to be a 'combined work'.

So, for example(I'm not picking it to single it out, it's just an easy example and happens to be very similar to OP's question) Starwind is probably in violation of the GPL with this view under its current distribution terms:
https://www.nexusmods.com/morrowind/mods/48909
Starwind is designed to solely work with OpenMW, it does not work with Morrowind(according to documentation I can find.) It is linking(discard any notion you have of a technical definition of linking) against OpenMW.

Again, discard any technical notion you have of what 'linking' is in say, C or C++.


From GPLv3
The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work.
I've highlighted the relevant part.

https://www.gnu.org/licenses/gpl-faq.html#GPLPlugins
If the main program dynamically links plug-ins, and they make function calls to each other and share data structures, we believe they form a single combined program, which must be treated as an extension of both the main program and the plug-ins.
Using shared memory to communicate with complex data structures is pretty much equivalent to dynamic linking.
And also here: https://www.gnu.org/licenses/gpl-faq.ht ... ggregation
The part about aggregate isn't useful for us, but it does touch an important topic which I'll quote
By contrast, pipes, sockets and command-line arguments are communication mechanisms normally used between two separate programs. So when they are used for communication, the modules normally are separate programs. But if the semantics of the communication are intimate enough, exchanging complex internal data structures, that too could be a basis to consider the two parts as combined into a larger program.
I have no idea if a linking exception would work, if I had to guess I'd err towards 'no' because something made for OpenMW -- that is, an extension of OpenMW -- is not the same as something linking against a GPL library.
Last edited by bluefords on 21 May 2023, 13:35, edited 1 time in total.
bluefords
Posts: 2
Joined: 21 May 2023, 13:09

Re: Legality of Using OpenMW for other game development?

Post by bluefords »

AnyOldName3 wrote: 17 Mar 2023, 01:29 MWSE is itself in violation of its own licence as they forgot to copy the It's okay to link with <specific proprietary thing> template to make it okay to link with Morrowind.exe. For reference, here's the thing they didn't read: https://www.gnu.org/licenses/gpl-faq.en ... atibleLibs

Once MWSE's in violation of its own licence, no one has any legal permission to do anything with any of the bits of it they didn't write themselves. That remains the case until every MWSE contributor in history (or the estates of the dead ones) have been contacted and responded with permission to relicense the project.

All of the other script extenders for the later BGS games avoided this problem by not picking a licence that wouldn't work.
Maybe true, depending on the sliding scale of where the person interpreting the system library exception is. Basically, however the person reading
However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.
feels like interpreting it, and there sure were some wild interpretations in the pre-GPLv3 days. :)
User avatar
AnyOldName3
Posts: 2668
Joined: 26 Nov 2015, 03:25

Re: Legality of Using OpenMW for other game development?

Post by AnyOldName3 »

Even if everything you've asserted about the legal mechanics of things is true, it would only be Starwind's scripts that would be forced to be GPL3. Most of the project isn't scripts, its meshes, textures and other data that aren't considered part of the program under any definition of linking, and the GPL is very clear about not affecting this kind of thing. It's less of a concern for most games if their scripts are forced to be GPL3, especially if they're in source form in the shipped game instead of compiled to bytecode, as generally, game mechanics aren't copyrightable, and there's only one obvious way to implement them, so someone could come up with a nearly identical script and it's difficult to prove that anything's been copied or that there was enough intellectual property in the original script for it to be copyrightable in the first place.

As for plugins, there's a well-known workaround where the shared interfaces and data structures are licenced as LGPL and end up in a shared library, so the GPL part and the plugin both call LGPL functions, which is okay, and the LGPL part responds, which is also okay. If necessary, we can do something like this as the number of people who've worked on the Lua interface so far is small enough that we can contact everyone and relicense their work. At this stage, it's unclear that there's any legal need for that if we want to allow proprietary scripts in mods and new games, or that we want to allow proprietary scripts in mods and new games.

Regardless of how silly your legal team is, no reasonable court is going to accept that Morrowind is normally distributed in source or binary form with an operating system.
Post Reply