I currently run an open source game development group creating a FOSS game based on Unity. The game itself is open source and free for everyone to play, compile, build, edit, fork, whatever, but we’re thinking of putting it on Steam to cover for server costs (the game is networked).
This has introduced the question of licensing as Unity requires any organization pulling in >$100,000 in revenue to sign up for Plus or higher licenses for all developers in the organization. We have had upwards of 100 individual contributors to the project, many of which are not on a paid license with Unity.
A few of the core developers, myself included, are OK with paying the price for licenses (I myself am already using Plus). According to what I’ve read, the licensing requires all developers on a project to hold a similar level license should that threshold be passed. Would we be forced to close-source the game to only those who hold paid Unity licences? or alternatively only accept contributions from those we can confirm to hold paid licenses? does it retroactively apply saying that every developer who has ever made a single contribution to the project to hold such a license?
Formally, I am the only individual in the organization (incorporated as a single person LLC). If we do end up pulling in >$100,000 in revenue, am I the only one required to pay for a license, or is any contributor to the project required to have one as well?
If your organization pulls in $100k+ then everyone working on the project for the organization needs to have Plus or $200k+ then Pro. 3rd party assets can be created using whatever license is appropriate to that 3rd party, separate from your organization’s license requirements. There was a thread here sometime ago about how this impacts outside contractors, and I don’t believe the answer was settled as to if they need to have the higher license or not.
Regardless of that, what I would be more concerned about is Unity doesn’t allow mixing of licenses in a project (unless of course it is a 3rd party asset as mentioned). So if you have one person working on the core project with a Pro license, even if the organization doesn’t make enough money to require Pro or even Plus, everyone working on it now must have Pro because of that one guy.
I highly doubt Unity’s lawyers would aggressively enforce this on a FOSS project, but that’s what they have in the license.
I Am Not A Lawyer
Just an idea… You could get creative and split the project up in a way where various components of the project could be considered 3rd party assets, so then each asset package would have its own licensing level and be able to be incorporated into the whole of the project without everyone having to all be on Pro level licensing. That probably would mean splitting up the project into various autonomous teams, and those teams don’t check in changes into code outside of their team. Sounds like a full time job playing license referee though, and it would be annoying to not have a unified code base (I don’t think its a 3rd party asset if everyone is using the same version control repo).
Better safe than sorry. The goal of the project isn’t to generate profits, just to offset the operational costs of the game. If it is pursued, I would rather not need to fork up $420/year for over 100 developer’s worth of licenses to continue developing the game, especially when many of them are transient contributors.
What sets that boundary of 3rd party asset? Does accepting a 3rd party pull request from a non-core contributor count as a 3rd party asset? or does it make the contributor a first party developer and thus require them to be on the same license level?
To fully clarify, I am fully willing to pay for licenses for the central group of core developers we have on the project (currently 7 of them), but needing every contributor to a project to satisfy the license requirement is completely infeasible in the current policy.
Do you mind DM’ing me your e-mail address so I can set up a support ticket?
For the purposes of transparency I’ll post the outcome of this question here so any other users who may have a similar question can refer to the answer here
I wonder how the tagging tech works then. Never seen a problem with third party assets, and technically as far as I know unity cant know if a asset is a asset store asset or created within your project. I need to install Personal and test it
The way I read it is if the content is being created specifically for your project, it falls under the licensing. If you are getting content that was not specifically created for your game/project, then it falls outside.
Unity puts a line ‘pro’ or ‘personal’ in the meta file. You can see it if you turn on text serilisation (which you should do anyway for version control).
Currently the only thing that happens if you mix lisences on a project is that the pro version spits out a warning when loading a meta file generated in personal. After the warning it happily loads anyway.
There is a clause that allows you to intergrate third party content regardless of the license it was generated with. The problem arises in figuring out who exactly counts as a third party. Asset store providers count. Employees don’t count. But everyone else is fuzzy. Does a remote freelancer count? What about an embedded contractor? Or a community modder?
Historically Unity has been pretty good at not going after these edge cases in court. Which is nice. They understand that suing customers is bad for business.
If I recall, the only reason anyone else needs a license is if they are actually part of the organisation - a staff hire, paid to work for your organisation.
With well known cases like Kerbal Space Program’s and VR Chat’s very liberal inclusion of user content, I can see this to be true, but nonetheless: I would rather have a direct official answer than let it sit in a legal grayzone. In our case, we are actively including content created by contributors both inside and outside the organization directly as a core part of the project.