Update: Unity have now responded. Bit of a headscratcher! Unity won't go after people using it, but they're removing any chance Spatial has to actually support it at all. They also said in comments they will make their TOS clearer.
Original article below:
While not directly related to Linux gaming, this is still some interesting news to be aware of for those working with the Unity game engine. Especially so, since both the Unity editor and Unity games (if the developer makes it so) work on Linux.
The team behind SpatialOS, a "managed cloud services" provider just announced that "all existing SpatialOS games using Unity, including production games and in development games of all developers, are now in breach of Unity’s license terms" which doesn't sound good at all.
Unity changed their terms of service last month, which specifically mentions this:
You may not directly or indirectly distribute the Unity Software, including the runtime portion of the Unity Software (the “Unity Runtime”), or your Project Content (if it incorporates the Unity Runtime) by means of streaming or broadcasting so that any portion of the Unity Software is primarily executed on or simulated by the cloud or a remote server and transmitted over the Internet or other network to end user devices without a separate license or authorization from Unity.
This new restriction, is likely going to impact quite a few multiplayer games that were using Unity and SpatialOS. Using the wise words of developer Simon Roth on Twitter "Unity is looking to fully control who is allowed create cloud based games. It also means that they can control who starts a game streaming service." and that sounds pretty bad.
It doesn't seem to affect "normal" dedicated server hosting though, just to be clear on that point. The main points seem to be specifically involving streaming. I'm not entirely clear on just how different that is though in this case.
Here's the thing, Unity acquired the game hosting part of the company Multiplay back in 2017 so it's likely a case of Unity wanting to squeeze money out of every other provider, to put them off and get more people to use Unity's own services with their game engine.
As a non-developer, it's still all somewhat confusing I will admit. However, the idea that you pay to use a game engine like Unity as a service (since you don't actually own the Unity copy, it's only a license) and they set the restrictions on what platforms you can run on? Sounds bonkers to me.
See more here.
Ps. Good time to mention the FOSS Godot Engine.
Quoting: titiThats not good. Unity is trying to commit suicide a bit, Epic decides to go their own way with less and less linux support, Quake engines have no more linux support and so on...I can assure you Unity is still actively working on Linux support. The player is 100% supported, the Editor is still under development (but available for testing if you want).
Is there any commonly used engine left which really supports linux too ?
And also, multiplayer games are still 100% supported on Unity, no matter which server platform you use.
The EULA modification is for something else (as they explained in their answer).
Last edited by Creak on 12 January 2019 at 2:41 pm UTC
Quote(Applies to) Unity Pro, Unity Plus and Unity Personal...in other words you don't own the Unity Dev kit even after you buy the pro license !
...
You may not directly or indirectly distribute the Unity Software, including the runtime portion of the Unity Software (the “Unity Runtime”), or your Project Content (if it incorporates the Unity Runtime) by means of streaming or broadcasting so that any portion of the Unity Software is primarily executed on or simulated by the cloud or a remote server and transmitted over the Internet or other network to end user devices without a separate license or authorization from Unity. Without limiting the foregoing, you may not use a managed service running on cloud infrastructure (a “Managed Service”) or a specific integration of a binary add-on (for example, a plugin or SDK) or source code to be integrated in the Unity Software or Your Project Content incorporating the Unity Runtime (an “SDK Integration”) to install or execute the Unity Runtime on the cloud or a remote server, unless such use of the Managed Service or SDK Integration has been specifically authorized by Unity.
-https://unity3d.com/legal/terms-of-service/software
Quoting: CreakThe EULA modification is for something else (as they explained in their answer).The EULA now prevents you from hosting anything with Unity runtime:
- hosting a cloud Desktop with Unity
- Hosting a cloud game developed with Unity
Last edited by Ne0 on 15 January 2019 at 4:01 am UTC
Quoting: Ne0The EULA now prevents you from hosting anything with Unity runtime:The second point is just plainfully wrong. Unity explained it in their answer:
- hosting a cloud Desktop with Unity
- Hosting a cloud game developed with Unity
Quoting: From Unity blog postIf a game developer runs a Unity-based game server on their own servers or generic cloud instances (like GCP, AWS or Azure), they are covered by our EULA.
See more from me