• Godot HelpQuestion
  • Complying with licenses - Why only FreeType, ENet and mbed require attribution?

DaveTheCoder In the game I'm developing (which may never be finished), I use HTTPRequest to send a license key to a web server on which I have an account. I wrote a server-side PHP script that checks the key against a list of keys in a file, and responds to the HTTPRequest.

Are you saying that violates a patent?

Apparently it does. Somehow, completely trivial ideas can be submitted for patent, approved, and upheld by judges. The whole patent system (not just software) is so corrupt it should just be abolished. However, in this case, if you're not using that Android library the patent troll will probably never know.

Megalomaniak Well, technically its not enough. The BSD-3 license for example says: "Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.".

There are some good examples out there. For example, games from Microsoft like Age of Empires 4 or Forza Horizon 5 both contain a list of the third party libraries used inside their install directory. And for the game Gears 5 you can find the document which lists them online. Although it does somewhat shift away from my original question, it appears that the attribution requirement doesn't have a solid legal ground because its difficult to claim damage if someone uses your library but does not give attribution. It seems to be more of a moral obligation.

The same issue goes for Unreal Engine. They use a lot of third party libraries but hardly anyone considers listing them in the shipped game. So basically every game made with Unreal Engine that does not list any third party notices is infringing copyright in broad daylight. But the fact that there are no lawsuits around this (at least I am not aware of any) proves my point of a missing legal ground.

I went through the list of third party notices in Godot and found the following libraries that I do believe are also part of the engine itself which in turn is part of the shipped game:

Files: ./servers/physics_3d/collision_solver_3d_sat.cpp
Comment: Open Dynamics Engine
Copyright: 2001-2003, Russell L. Smith, Alen Ladavac, Nguyen Binh
License: BSD-3-clause

Files: ./thirdparty/libogg/
Comment: OggVorbis
Copyright: 2002, Xiph.org Foundation
License: BSD-3-clause

Files: ./thirdparty/vulkan/
Comment: Vulkan Headers
Copyright: 2014-2023, The Khronos Group Inc.
2014-2023, Valve Corporation
2014-2023, LunarG, Inc.
2015-2023, Google Inc.
License: Apache-2.0

They all require attribution even in binary form. Apache-2 is somewhat special as it appears to only require attribution in binary form if there is a notice file. But because some other libraries require you to have this notice file, Apache-2 will require attribution too in this context. Don't get me wrong. Godot is not doing anything wrong. They list all the licenses. Its just that some libraries seem missing in the documentation about complying with licenses. Of course, I could be wrong about assuming that the listed libraries are included in the engine that gets distributed, but it seems natural that for example a collision solver has to be part of the engine for physics simulation at runtime in a 3D game.

    AAA games do usually have attribution, but it's at the end of the credits, if anyone watches the whole thing.

    eggsa third party notices in Godot

    My game has a credits page with a link to the Godot license page https://godotengine.org/license/

    That page states:

    The Godot Engine developers consider that a link to this page (godotengine.org/license) in your game documentation or credits would be an acceptable way to satisfy the license terms.

    That page also has a link to a list of the third-party components and their licenses.

    If you knew how extremely strange it is to read all this from Russia. Some licenses, rights, laws… nothing is clear. With us everything is simpler.

    Do Russian movies still have ten minutes of credits at the end? Because if they do, I remain unimpressed. πŸ˜‰

      It would have been interesting if Americans and Russians could chat like this during the cold war era. Oh wait, we seem to be back in that era. But politics is inappropriate here, so don't respond to this.

        duane Do Russian movies still have ten minutes of credits at the end?

        I can't say β€” I haven't watched Russian films for a long time. But the directors, the actors, the sponsors-perhaps they are mentioned.

        DaveTheCoder But politics is inappropriate here, so don't respond to this.

        At some point, it stops being about politics and the question arises simply of humanity. This boundary has long been passed.

        Tomcat There is no verification tool owned by Uniloc. This was a small flight sim developer using a free google library then getting sued by a well known patent troll.

        This particular Uniloc patent (US6857067B2) has 113 claims. They say X-Plane (mobile version only) violated claim 107:

        Computer code executable on an electronic device to prevent unauthorized access to electronic data stored on the electronic device, the computer code comprising: code for storing license data on a portable licensing medium configured to communicate with the electronic device; code for determining whether to allow access to the electronic data based on the license data; code for verifying the license data stored on the licensing medium by communicating with a registration authority having verification data; and code for providing updated license data received from the registration authority to the licensing medium.

        Luckily I see US6857067B2 has now expired (7 months ago), so we're safe from that one. Although there's millions more out there. Some other fun game examples, there are (or were) patents on floating overhead arrows in car games (owned by Sega), mini games during a loading screen (Namco), tile based collision physics (Sega), dynamically splitting the screen when a new player joins a game (Microsoft), the Mass Effect dialog wheel (Bioware) and ghost cars replaying your previous lap (Atari).

          Kojack There is no verification tool owned by Uniloc.

          From your post, I understood that we are talking about a library and a specific implementation of the query. Perhaps I was mistaken because of translation problems. In general β€” patents, indeed, very much slow down the process of technical development. It seems to be the medicine which is worse than the disease. I could add to your list EA patents which I will probably have to deal with. Particularly concerning the character customization with the mouse and automatic character generation. But too many lawyers live on these things (especially in the US), so it's unlikely we'll see a triumph of common sense. Not so much in the near future, but in general.

          However, there are systems for checking licenses, which severely overload the computer, not only reducing the game performance, but also greatly reducing the life of hard drives, which is especially critical for SSD.