Search Unity

Recent ToS update blocks the use of SpatialOS to make games in Unity

Discussion in 'General Discussion' started by PolarTron, Jan 10, 2019.

Thread Status:
Not open for further replies.
  1. J_P_

    J_P_

    Joined:
    Jan 9, 2010
    Posts:
    1,027
    Since you understand it so clearly, could you use Unity to create something like Garry's Mod (which lets customers create their own custom content, game modes, weapons, etc with Lua scripting SDK) and host a headless Unity Editor instance on a server that helps your customers build asset bundles to distribute those packages?
     
    Shorely and BiosElement like this.
  2. stephanu

    stephanu

    Joined:
    Feb 26, 2015
    Posts:
    26
    Unfortunately the only waybackmachine entry that I could find is from 2017 https://web.archive.org/web/20170617142505/https://unity3d.com/de/legal/terms-of-service/software

    Where it only talks about streaming and cloud gaming (i.e OnLive) there is no mention of Platforms, SDKs or the like. I don't know what the contents of the EULA were prior to Dec. 5th when they were changed. So I wonder if Improbable were actually in violation of the EULA up until that point...
     
    summerian likes this.
  3. Zante

    Zante

    Joined:
    Mar 29, 2008
    Posts:
    429
    This entire debacle has shaken very intelligent and creative people. I've been using Unity since it was exclusive to Mac and seen a lot of changes though, in recent times, anyone doing networking and multi-user development has suffered very poor treatment by Unity.

    You cannot announce this kind of thing without being explicit in your meaning. I wouldn't be surprised if there was a legal challenge at some point for damages based on endangering contracts and existing business relationships.

    The developers come first, that's what you should be reminding yourself of whenever you publish any information. Ask yourselves, how are your user base likely to respond to this?
     
    elias_t, Spartikus3, xVergilx and 6 others like this.
  4. Boinx

    Boinx

    Joined:
    Jan 8, 2014
    Posts:
    16
    I absolutely, totally, completely, without a doubt agree that it sucks if we don't understand, and I definitely do not understand. The blog post did not help me understand. Can you maybe convince someone at Unity to help us understand so that it doesn't suck?

    How are we supposed to understand? Overly broad ToS and a self-contradictory blog post are all we have to help understand.
     
    summerian, Shorely and BiosElement like this.
  5. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    What is sad is that some people thought their games were cancelled when all along, Improbable knew what was going on. What is sad is that the ToS was poorly written as usual and many of us were not sure if we could even make a game on a server anymore. That could have been communicated to us before the story broke.

    What humors me is the fact that every time Unity does something that many unlike, they threaten to go to Unreal. I remember when Unity 5 became free...the backlash was horrible, especially against those who were thrilled with the decision. However, most of them did not leave and those that did often came back. ;)

    I too hope the ToS is written to be more understandable for those of us making multiplayer games. But...I really love using Unity. I enjoy the community and respect the team members.

    I hope I am not the only one, other than Hippo, who believes what Unity is telling us.
     
  6. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    I have to add, I have been in this community for a while now. I do not see any of the creative people who have been around a while in this community, people I know and admire, crucifying Unity. So while I get that some feel betrayed, I think there are plenty who will get on with making their game. They will continue to positively impact this community.
     
  7. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    So the situation is as I expected. It was never clear to me how SpatialOS was allowed to operate within the Unity ToS, even the version prior to december, so I'm not surprised there has actually been a behind the scenes drama unfolding for over a year.

    What I find surprising is SpatialOS chose to not inform their customers of the potential danger their dispute was creating until the last minute. This issue should have been communicated long ago, and that it was something being worked on, so developers choosing a platform have important information like this as part of their decision making process. All that and then when the hammer drops they play the victim, as if this was all a big surprise they had no means of foreseeing.

    Those games will not be affected because Unity is choosing to not enforce their ToS against those games. It is that simple.
     
  8. BlackPete

    BlackPete

    Joined:
    Nov 16, 2016
    Posts:
    970
    If you take Unity's tech, slap a SDK wrapper on it, then resell to people and tell them to use your SDK to do stuff, then you're selling a platform to people based on Unity's tech. That's where you need to register yourself as Unity's partner because otherwise if your SDK is buggy, Unity will likely get some blame and/or customer support calls.

    AWS's (and Google's and etc.) SDKs do not rely on Unity's tech, so that doesn't matter.

    EDIT:

    Put another way:

    Are you selling a game? You're fine.

    Are you selling a platform to other developers? Call Unity.
     
  9. Kukkino

    Kukkino

    Joined:
    Nov 8, 2015
    Posts:
    13
    SpatialOS also doesn't rely on Unity. SpatialOS provides SDK (libraries that are used from within unity of your own license) which allows unity developers to use SpatialOS and their hosting. You can do the same with Unreal and raw c, c++, c# and java (and you can even use combination of those).
     
  10. Flurgle

    Flurgle

    Joined:
    May 16, 2016
    Posts:
    389
    @BlackPete This needs to be in a Unity advert asap, with super heroes. Well put.
     
  11. EternalMerodach

    EternalMerodach

    Joined:
    Jan 27, 2014
    Posts:
    27
    What if, I develop an SDK to wrap Unity Runtime and run my stuff (only for my own use, not selling to anyone), will that be Ok? Because as far as I understand, I may have been breaching the ToS.
     
    Aiursrage2k likes this.
  12. BlackPete

    BlackPete

    Joined:
    Nov 16, 2016
    Posts:
    970
    I don't know too much about SpatialOS itself, so I don't know too much about the infrastructure of what binaries exist on their servers. However, this seems a bit strange:

    https://docs.improbable.io/unity/alpha/content/get-started/get-playing
     
  13. Flurgle

    Flurgle

    Joined:
    May 16, 2016
    Posts:
    389
    @Shaddy TBH there's a lot of legal talk here, but it's best to talk to a lawyer about this.
     
    Teila likes this.
  14. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    from what I understand:
    - spatial os is a "generic" but scalable game hosting services (does not use unity in its tech)
    - unity came and say, "come on, don't associate your tech with our name to coast on our success"
    - spatial os said whatever
    - unity locked the access to the cookie demo jar (probably) as retaliation
    - spatial os throw a tantrum
    - which scares the kids who don't understand why mom and dad are fighting, throwing unfortunate words in the tos
    - they cry they want to go to uncle godot and aunt unreal (they have less comfortable but also less stressful houses), that mom and dad should stop fighting
    - mom and dad are having awkward talk wit the kid to reassure them, while subtly shifting the blame to the other side.
    - kids are definitely not reassured until mom and dad actually bring them to mac donald

    Basically divorce is messed up and kids get caught in the middle, who is thinking about the kids, mmm?
     
  15. Murgilod

    Murgilod

    Joined:
    Nov 12, 2013
    Posts:
    10,157
    That doesn't seem strange to me at all. If anything, it strikes me as a novel approach to load balancing AI players.
     
    jashan likes this.
  16. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Nah. They were in violation of existing TOS before this time. And chose to continue.
    Anyway they can afford to fix this without any problems, and existing customers don't suffer.

    If a company with 1 billion valuation can't get its S*** together with licensing, then I don't even.
     
  17. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,190
    Just because SpatialOS supports multiple game engines, frameworks, and languages doesn't mean it couldn't have been implemented in Unity. Choice of language to implement a platform doesn't dictate the language you have to use to work with it. Otherwise Unity's core being implemented in C++ would prevent us from using C#.

    Keep in mind I'm not referring to the SDK. I'm referring to the core framework that powers their servers. It's entirely possible that the core framework that makes everything work is literally Unity. It would be a very sound explanation for this situation.
     
  18. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    Also for documentation, as I understand, the load balancing using unity clients, or simply demo with unity, THIS is the potential violation.

    ... they will probably use blitz3D now as a replacement ;)
     
  19. SocialArenaPR

    SocialArenaPR

    Joined:
    Sep 26, 2016
    Posts:
    77
    You think it's fair for Unity to come along see a trend decide to make their own half
    Basically the developers create their game using their own version of Unity and SpatialOS's sdk for the networking. You then build a headless version of your game's server and upload it to Improbable's servers where their tech handles the load balancing.
     
  20. Kukkino

    Kukkino

    Joined:
    Nov 8, 2015
    Posts:
    13
    Yes, thats tutorial for unity - the same is available for unreal and in lesser extend language workers. The way it works you have "workers" which are unity/unreal/c/c++/c# applications. A worker can run on server or client machine and it connects into the SpatialOS (where the world state is kept, it's basically a database) where it writes/reads info about entities from/to SpatialOS. SpatialOS then manages server workers with your logic (which again, you have created and uploaded to the server yourself). I'm not saying there is no breach of tos as I'm not a lawyer, just that the way SpatialOS works is not really all that different from Photon or any other 3rd party integration besides the fact this integration is useless without their paid hosting.
     
    wccrawford likes this.
  21. BlackPete

    BlackPete

    Joined:
    Nov 16, 2016
    Posts:
    970
    This is what's in the EULA:

    While this part of the EULA is unfortunately vague, it's still clear that this is only within the context of managed services running on a cloud. So you're good.
     
  22. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,190
    How is this process handled? Is it a process that is automated?
     
  23. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    Well you are the end user, and the ToS has a specific exemption for streaming from end user hardware.
     
  24. Kukkino

    Kukkino

    Joined:
    Nov 8, 2015
    Posts:
    13
    It is not, the core is in Java I believe. You are overestimating what SpatialOS actually is - it's basically just database with extra steps as I've explained in previous post. What makes everything work is their code combined with bunch of standard libraries that have nothing to do with unity.

    SpatialOS did definitely benefit from Unity's name - there is no question about it, but so does Photon and anyone else who advertises compatibility with Unity. I really hope both companies find common ground on which they can work together, it will be good for both.
     
    xVergilx and jashan like this.
  25. mephistonight

    mephistonight

    Joined:
    Dec 14, 2016
    Posts:
    75
    Taking a deep breath here. Inhale. Exhale.

    Hippocoder, please provide some evidence for that claim if you can. There weren't any violations of ToS before this most recent change. Unity asserted that they were violating the ToS but what was actually published by Unity was not violated by the SpatialOS at all. I wouldn't have used them if they were. My company's lawyers wouldn't have given it the green light if they were.

    Is this the new Unity way: we want a piece of your business, we'll publish vague ToS, claim you're violating them and then edit them to suit our needs later, then send out the moderators to claim said company was violating them all along? Is this REALLY the way Unity wants to put itself out in front of its users? For shame.
     
  26. BlackPete

    BlackPete

    Joined:
    Nov 16, 2016
    Posts:
    970
    Yes, I get all that. However, the specific term used here is "Unity Clients". What is a Unity Client? Are they clients written as a wrapper around Unity's NetworkClient API? If so, then that would mean Unity binaries are in use here.

    Again, I don't know if that's actually the case or not because I don't know how SpatialOS is implemented. I just found it curious.
     
  27. Kukkino

    Kukkino

    Joined:
    Nov 8, 2015
    Posts:
    13
    It is standard Unity application built by Unity editor. It does contain all and any binaries that you have referenced when building the project in your licensed of Unity editor (so including anything made by unity, as it would on your own or cloud servers in headless mode).
     
    BiosElement likes this.
  28. HeadClot88

    HeadClot88

    Joined:
    Jul 3, 2012
    Posts:
    736
    Except that the Unity TOS was recently amended January 4, 2019.

    Here is what I found using Diff checker.

    https://unity3d.com/legal/terms-of-service



    No it is not. Unreal Engine does not retroactively screw me over with their EULA. If I upgrade an engine version then yes I am bound by the new EULA. But they to not retroactively go back and screw devs over.

    Unity ain't exactly small either. Last I checked Unity was 2.6 billion in valuation.

    https://venturebeat.com/2017/05/25/...raise-400-million-at-a-2-6-billion-valuation/

    It was amended January 4th 2019

    Also which is it? Is it a year, It it years, or it is literally a few days?
     
    Last edited: Jan 11, 2019
    elias_t, z00n, wccrawford and 7 others like this.
  29. Doddler

    Doddler

    Joined:
    Jul 12, 2011
    Posts:
    269
    So I don't really understand what Improbable is doing that's wrong. As I understand it, they offer multiplayer server hosting and API to manage instances/balancing/connections. Of course, the API only works if you Because API only works if you use their server.

    1. Unity is saying that they are selling a service that requires using Unity, therefore it's a platform they created with unity and requires a separate license.
    2. Improbable is saying that developers bring their own Unity license and make their own builds (and can even use software other than unity). Because developers are making and deploying their own software it is not a unity based platform.

    I'm having a hard time seeing unity's side of thing. If developers didn't need their own licenses to use the service I could see the point, but I don't really get it. This is like if Amazon made an API to help developers deploy unity applications on AWS, and Unity revoked amazon's licenses as a result.

    Edit: I didn't see they had recently updated the EULA. It's pretty unfair to update the EULA just prior to revocation. That and that EULA change seems like a real drastic change.
     
    Last edited: Jan 11, 2019
    elias_t, wccrawford, xVergilx and 2 others like this.
  30. Kukkino

    Kukkino

    Joined:
    Nov 8, 2015
    Posts:
    13
    I'm not entirely sure what you are asking. The headless binaries are uploaded using their site to their servers by you building them in Unity Editor and sending them there. Then spatialos starts/stops the processes as needed depending on load in the interest area of given process. The service they are selling is basically hosting, database and scaling your workers based on load - not really much new, just combined in nice package with bunch of examples how to integrate their services in both unity and unreal. I'm sure people more knowledgable will happily answer any and all questions on their discord or forums https://discord.gg/Ybm33Nv https://forums.improbable.io/
     
    elias_t, wccrawford, xVergilx and 2 others like this.
  31. Boinx

    Boinx

    Joined:
    Jan 8, 2014
    Posts:
    16
    Thank you. I think you are improving my understanding, even if it's still not completely clear. So the claim is SpatialOS is effectively a wrapper over the various engines to provide a common API, and Unity is not okay with people providing a wrapper for their functionality. And the server/non-server aspect seems kind of irrelevant, because SpatialOS wouldn't be okay if they were selling the product and not providing any hosting services.

    I sincerely appreciate that you've at least given me the ability to see a possible explanation for some of the dispute. It appears there are other possible explanations, but at least I'm slightly less confused. All day, I've only been getting more and more confused, so it truly is great to feel less confused.
     
    BiosElement likes this.
  32. stephanu

    stephanu

    Joined:
    Feb 26, 2015
    Posts:
    26
    Shorely likes this.
  33. Kukkino

    Kukkino

    Joined:
    Nov 8, 2015
    Posts:
    13
    It downloads the binaries and runs them locally and those connect and transfer binary messages like any other mmo.
     
    stephanu likes this.
  34. PolarTron

    PolarTron

    Joined:
    Jun 21, 2013
    Posts:
    94
    The launcher is a tool used mostly during development before you use a service like steam to distribute your game. It downloads the latest version of the game binaries and launches the game locally.
     
    HeadClot88 likes this.
  35. That's simply not true. Just read their 2.2 clause again. Even if you log in in your account you accept their new ToS. ;) Just sayin'
     
  36. HeadClot88

    HeadClot88

    Joined:
    Jul 3, 2012
    Posts:
    736
    Offline mode is always there and you can defer to accept the new EULA. If you do go online. :)

    Just sayin'
     
    BiosElement likes this.
  37. I just pointed out that factually what you were saying isn't true. Yes, you can develop in UE in isolation if you're a pervert and you don't need anything from the UE environment and it is true that UT does not give you this portion. But it's still not true that you only bound to the new EULA in case of UE if you upgrade your engine as you stated.
     
    Flurgle likes this.
  38. NateReese77

    NateReese77

    Joined:
    Jun 14, 2017
    Posts:
    26
    I'm really struggling to understand some of the finer points, as there are other products out there that do similar things that don't seem to be affected yet - incredibly invaluable products like Photon Bolt which is very similar in terms of Photon creating a 'platform' by providing middleware you pack into your headless build.

    Pursuing further policies like this would be a real shame. If I was using Unreal, I would still have the option of using SpatialOS. I like options. It also sets a dangerous precedent for 3rd Party developers those wanting to fill the many holes Unity has. Why would you want to dedicate money and resources to build a complex tool for Unity when they can bat their eyes, tweak their EULA and put you out of business.
     
    elias_t, xVergilx, JBR-games and 2 others like this.
  39. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    From what the blog says, Improbable violated the ToS before it was changed, months maybe a year before.
     
  40. Boinx

    Boinx

    Joined:
    Jan 8, 2014
    Posts:
    16
    I don't see what you are talking about at all, and I did just pull up Unreal Engine's EULA. There is no 2.2. There is a "2. User License" section, but it has no subsections. Are you perhaps looking at the Epic Launcher EULA instead of the Unreal Engine EULA?

    Completely separate to the launcher and any EULAs that has, when you download a new version of the Unreal Engine from within the Epic Launcher you are presented with the EULA for that version. I have never seen a EULA update to Unreal Engine occur outside of clicking the install button for a new version, although maybe I'm forgetting since it doesn't exactly get updated much.
     
    PiratePaprika and JBR-games like this.
  41. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,190
    See if people truly cared about EULAs and the potential for them to change at any time they would never consider moving to UE4. Godot would be the only valid solution for them. Because MIT is about as simple and understandable as you can get short of not having a license.

    Just sayin'. :p
     
  42. stephanu

    stephanu

    Joined:
    Feb 26, 2015
    Posts:
    26
    Okay, this is my totally speculative version of what went down:

    - Improbable develops SpatialOS, an elastic service to run unity servers in the cloud, in compliance with the ToS
    - Unity develops or is planning to launch their own service at the same time
    - Unity plans to update their ToS, this doesn't happen on a whim so it was probably planned a year in advance (fitting the timeline laid out in their blog post)
    - They contact improbable and say "Hey, we are changing the ToS and you will not be in compliance anymore. Pay X amount and you are good to go."
    - Improbable calls their bluff and goes their way
    - On Jan 4th Unity brings their new ToS into effect and a week later revokes Improbable's editor licenses
    - Improbable freaks out and makes their blog post
    - Unity assures developers that they can continue developing their SpatialOS games even though the ToS claims the opposite.

    The last point is especially interesting since the ToS applies to end users. The end user in this case is the game developer, not Improbable.
     
    HeadClot88 likes this.
  43. LazerTale

    LazerTale

    Joined:
    Apr 10, 2013
    Posts:
    6
    What are you even talking about? Have you read Unreal Engine's Eula? it clearly states:
    Even if Epic updates their Eula, it does not affect the devs or any of their partners as long as you don't accept the new Eula. Which you don't need to as long as you stick with the version you are using.
     
    Shorely, JBR-games and BiosElement like this.
  44. JBR-games

    JBR-games

    Joined:
    Sep 26, 2012
    Posts:
    708
    The real issue here reguardless of another companies possible bad practices is that Unity has set the stage for being able to update the tos at will for current & older versions of unity... As i can tell he danced around that point entirely in the blog...
    Its one thing to change the tos for a new version of unity and then one can decide if these new terms are acceptable.. But not to enforce these "as they please" to an in developement or already released products.
     
  45. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,190
    That you lose access to anything that would require you to log in on an account. Including the ability to update the engine which would require you to access any changes to the license agreement. For the majority of people this means there will be no fixes for problems with the engine and no new major functionality.

    Once again Godot is the only real solution here because it has a license agreement that has nothing restrictive about it.
     
    Last edited: Jan 11, 2019
  46. BiosElement

    BiosElement

    Joined:
    Apr 29, 2013
    Posts:
    10
    Which is still far better than no longer having a legal license of the EULA changes under your feet.
     
    Shorely and JBR-games like this.
  47. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,190
    Right. Let us know how far that gets you. We'll still be here when you're ready to admit it didn't work out.
     
    Lurking-Ninja likes this.
  48. TheSwizzler

    TheSwizzler

    Joined:
    Aug 21, 2016
    Posts:
    5
    This is stupid. Unity is *obviously* not interested in helping devs create better games anymore... instead focused on how much $$ they can get out of projects. I mean, they are already getting a revenue cut... who cares what is packaged together with Unity to make a game succeed.

    Ugh.

    We will be migrating to UE due to this... ugly but without SpatialOS Unity is a dead end for multiplayer.
     
  49. SocialArenaPR

    SocialArenaPR

    Joined:
    Sep 26, 2016
    Posts:
    77
    lol And you believe EVERYTHING Unity says. I would like to know exactly what terms Improbable broke and have the ToS changed to ensure developers who create their own game and upload their game to a cloud server isn't screwed over. Also stop with the stupid ridicules retroactive ToS changes!
     
  50. LazerTale

    LazerTale

    Joined:
    Apr 10, 2013
    Posts:
    6
    I don't get the problem. If in future you don't agree with Epic's TOS then you can still develop using UE4. you just don't get access to latest UE4 build or source.
    HOWEVER you still get access to the source code which you agreed to. So you can modify it as you like.

    It worked out for A LOTS of successful both Indie, AA and A LOT of AAA games. Judging by your tone it seem like you don't like UE4.
     
Thread Status:
Not open for further replies.