Sorry, this isn't exactly a modding interface request.
I would like to propose that you license util.lua under a permissive license like MIT. This will enable mods to copy and modify (parts of it) freely, regardless of their license.
My use case:
I am working on a mod where most of the tests can run outside of Factorio (which is very convenient). But it means the code cannot use util.lua. Could do some hacks and attempt to load it from a Factorio install, but that's brittle and annoying. I would much rather commit a copy into my source control (like I do with serpent for example) but as far as I can tell I am not allowed to do that. By adding it to my source that is, say, GPL-licensed, I would effectively be distributing util.lua via GitHub and such without your permission. But if util.lua was permissively licensed, I could.
Other use cases:
I am sure many modders pay little attention to licenses, so how many times do you think someone has copied some parts of util.lua, perhaps slightly modified them, and used them in their own mod? Then publish it on GitHub?
I realize the odds of you ever suing anyone over util.lua are, erm... slim, but I still think it would be nice to be explicit.
Thank you, <3
Permissive license for util.lua
- IsaacOscar
- Filter Inserter
- Posts: 843
- Joined: Sat Nov 09, 2024 2:36 pm
- Contact:
Re: Permissive license for util.lua
I was curious, so I read the EULA, it's not very clear, it says the following (emphesis added):
I'm not sure about github, but uploading your modified version of util.lua to the mod portal is ok according to that.
Bear in mind though the EULA also says:
- You may use Factorio and other paid content for your own personal use.
- Factorio is not a free software, copy-left or public domain software. The source code and all art assets are copyrighted and licensed by Wube Software Ltd. and any use of them is subject to the rules stated in these Terms of Service or, if applicable, an express consent of Wube Software Ltd.
- You are not allowed to copy, transfer or distribute the game, its hacked or otherwise altered versions, any of its parts or any of the paid content.
- Any commercial use of Factorio’s source code, art assets or other affiliated assets is subject to express consent of Wube Software Ltd. For this purpose you can contact us on factorio@factorio.com. This does not affect your Video Policy set out below.
- (THE MOD PORTAL) Any adaptations or works derived from the Factorio assets are permitted to be included and distributed as part of your mod. However Wube Software Ltd. still retains all rights and license to these assets and the work derived from them, and reserves the right to request removal of these assets from your mod.
I'm not sure about github, but uploading your modified version of util.lua to the mod portal is ok according to that.
Bear in mind though the EULA also says:
- We reserve the right to remove a mod or edit any mods listing without notice.
- By uploading a mod to the mod portal, you grant us the irrevocable right to reproduce, adapt and distribute the mod and its content as necessary to operate the mod portal and provide the service to our users.
Re: Permissive license for util.lua
Personal "use" definitely doesn't cover distribution, but yes, you can read the mod portal bullet as meaning you can distribute/modify util.lua as part of a mod. But:IsaacOscar wrote: Wed Jan 08, 2025 12:17 pm So I guess if it counts as "personal use" or "distributed as part of your mod" and not "commercial use", it's ok.
I'm not sure about github, but uploading your modified version of util.lua to the mod portal is ok according to that.
- I wouldn't necessarily consider "test infrastructure that runs outside Factorio" as being part of the mod being distributed
- I wouldn't necessarily consider "put it up on GitHub for anyone to download" as being "distributing a mod"
I know, I spend a good amount of time in that repo and I've looked everywhere for a hint of a license. And without a license, even if something is publicly posted, it doesn't mean you have the right to redistribute it. GitHub does, because their ToS says that by uploading the code there, Wube gave them a license to distribute it, but _I_ don't.IsaacOscar wrote: Wed Jan 08, 2025 12:17 pm Interestingly, util.lua is already on github: https://github.com/wube/factorio-data, but it doesn't have a license.
So yeah, there's a hack here where I could, for instance, fetch the file from github on first run in my test infra to avoid actually distributing it myself. But a permissive license would make it so much simpler, and it just feels like there's nothing in util.lua that Wube would need to particularly protect. Share your table.deepcopy implementation with the world, make it a better place