10 ms·
> You may not directly or indirectly distribute the Unity Software, including the runtime portion of the Unity Software (the “Unity Runtime”), or your Project C
by ezekg 8y ago
> 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.
These terms are incredibly vague. Makes it sound like you cannot run your own dedicated server for multiplayer without being in breach of the new terms. If Unity forces their new multiplayer hosted service on their users, I (and I foresee many others) will immediately start transitioning to Unreal.
Ref: https://unity3d.com/legal/terms-of-service/software https://unity3d.com/legal/terms-of-service/software (sec 2.4)
- deleted 8y ago[deleted]
- jimmaswell 8y agoThat reads to me like you can still have servers, just without them using the Unity runtime. Is using the Unity runtime for servers common? The multiplayer Unity games that I know of don't do that.
- meheleventyone 8y agoI believe Rust does and that’s perhaps the single biggest Unity multiplayer project in terms of concurrent users AFAIK.
- ezekg 8y agoYes, as far as I know, running a headless version of the game (Unity in "batch mode") is how a lot of (most?) games do dedicated authoritative servers, otherwise your server wouldn't actually be running the same game. Or am I misunderstanding something?
- meheleventyone 8y agoYou don’t strictly need to have the same codebase for client and server. If you’re making a slower paced game it’d be wasteful to burn processing power running the full Unity runtime.
- gambiting 8y agoThe whole point of SpatialOS is that it executes Unity runtime in the cloud. You create regular unity objects and they execute somewhere in the cloud.
- mesozoic 8y agoIt is. Even after suggesting otherwise to some senior friends who work on MMOs it seems they're locked into doing it for some reason probably just inertia and general fear of game companies to do things the right way and not the "easy" way.
- ccvannorman 8y agoI understood it to mean, "You cannot offer a managed service for headless server Unity to support multiplayer for game developer clients", but "You can still do this for your own game in-house"
- jasonlotito 8y agoThis is about streaming games. There are other providers that do this that are allowed to: https://unity3d.com/legal/terms-of-service/software/authorized-streaming https://unity3d.com/legal/terms-of-service/software/authoriz...
- KineticLensman 8y agoSpatial OS is wholly different from game streaming. Here is the overview provided by one of Unity's streaming partners Genvid [0] "Genvid provides an easy to use SDK, with a C interface, which can be used to automatically capture your game content (audio and video), encode it properly (e.g. H264), and to stream it to a service (e.g. YouTube). It also provides routines to send additional game data to spectators (e.g. scores, player profiles, chances of success, etc.), as well as hooks to receive commands coming from them." In contrast, Spatial OS provides a back-end to a game delivered using Unity: "SpatialOS is a cloud-based computational platform that lets you use many servers and engines to power a single world. The platform coordinates a swarm of micro-services called workers, which overlap and dynamically reorganize to power a huge, seamless world. The platform also lets you handle a huge number of concurrent players across different devices in one world" [0] https://www.genvidtech.com/doc/SDK-1.19.0/quicktour/overview.html#what-genvid-provides https://www.genvidtech.com/doc/SDK-1.19.0/quicktour/overview... [1] https://improbable.io/games/tech https://improbable.io/games/tech
- stcredzero 8y ago"SpatialOS is a cloud-based computational platform that lets you use many servers and engines to power a single world. The platform coordinates a swarm of micro-services called workers, which overlap and dynamically reorganize to power a huge, seamless world. The platform also lets you handle a huge number of concurrent players across different devices in one world" I'm planning on releasing something like this, with Unity clients on the roadmap. I've no plans to run headless Unity instances on servers, however. Would Unity make my system "illegal?"
- Kiwikwi 8y ago
- ncallaway 8y agoYeah, unless Unity quickly reverses this, I'm likely going to uninstall it and fully switch over to Unreal. Those terms seem absolutely insane to me, and I'd never develop on a platform with them.
- Jugglerofworlds 8y agoI've done a lot of work with multiplayer on Unity. Running a version of the game in the Unity engine as a server is necessary if you want your game to be authoritative to prevent cheating. Fortunately my game uses a custom server that I wrote, but this will be a huge hit to pretty much everyone else.
- drewnoakes 8y agoIt says "primarily". If the game runs both server and client side, I don't think there is a problem.
- hnbroseph 8y agobefore that it says "any portion of"... so "primarily" could apply (ostensibly) to a single line of code, if that is a "portion".
- bengotow 8y agoI dunno this seems clear enough to me - they don't want you circumventing the terms of your license by running the game on a single machine and streaming it to many players. Each game instance requires a separate license. I'm sure this isn't intended to stop you from running your game's central multiplayer server. It's just to make sure you pay an appropriate licensing fee for Unity.
- perpetualpatzer 8y agoGotcha, so it's an effort to close a "run the game on the server, stream video back and forth, and don't pay for client-side licenses" loophole? I'm surprised to hear that's a scalable model and the terms do seem to read more broadly than that, but it's reassuring that it could be something other than a baldly monopolistic power play.
- sam0x17 8y agoScalable because players can take turns with the same license ;)
- ricardobeat 8y agoAs far as I understand you needed your own Unity / Unreal / Cryengine license to develop using SpatialOS, they don’t do streaming the way you described.
- PhasmaFelis 8y agoThat may be what they meant, but the wave of confusion and fear says that they communicated it poorly. (Also the fact that I had to go this far down the thread before anyone even attempted to answer "why".)
- reagank 8y agoThe article explicitly says that Improbable was told by Unity that the new TOS “specifically disallow[s] services like Improbable’s to function with their engine.”
- dwild 8y ago
- blueboo 8y agoIt's more vague without it. After all, you can distribute the runtime to customers. You can run the editor as a developer. How many license-seats should you purchase to run a headless server? How many customers are being licensed to use that server?
- Figs 8y agoIf you do have to redo everything, why the hell would you switch to another proprietary technology?! Why not use OpenSceneGraph, OGRE, Irrlicht, Cube2, or one of the hundreds of other free game engines / frameworks out there instead?
- philipov 8y agoBecause it's easier and cheaper to hire developers who already know Unreal. Also, one reason enterprises pay for RedHat Linux is so that when something goes wrong, there's a business liable for it. You can't get a service level agreement from a community.
- Thaxll 8y agoBecause open source game engines are bad. There is a huge gap between Unity/Unreal and an open source engine, it's not even comparable.
- nacs 8y agoGodot is getting pretty close but I agree with Unity and Unreal being quite a bit ahead at this time.
- cwyers 8y agoThe commercial offerings are far more used, which means there's more tools, there's more prebuilt assets you can buy, there's more documentation and StackOverflow answers. I would bet that either of Unity or Unreal have more dev resources going into them than all of the ones you mentioned there combined, too.
- Impossible 8y agoBased on your comment it seems like you haven't looked into or used a game engine since the late 90s (Cube 2 and Irrlicht?). The only real open source competition for Unreal and Unity is probably Godot, and it's not really competitive. Many of the engines you mentioned (OSG, Ogre) are not full game engine, but renderers and scene graph implementations. For that something like bgfx or even three.js if you're targeting the browser is a better open source alternative. Most of the engines you mentioned haven't been updated in years and don't have support for modern tech or platforms (VR, AR, DX12, Metal, Vulkan, PS4, XB1, Switch, etc) so you'd be better off writing your own engine if you wanted to actually ship a game. Your advice is like telling someone to license idtech in 2019...
- ricardobeat 8y agoDoesn’t this also make services like Nvidia shield in breach of the terms for any Unity games?
- dave_sullivan 8y agoI don't know why people are still using unity instead of UE4 except for historical reasons where users of the engine are hesitant to switch and have to relearn some things. Unity is not open source, it does not come with batteries included (so you end up buying a bunch of poorly maintained unity assets/plugins to do stuff that UE4 does out of the box), and I think they're struggling as a company more than people realize (having raised large investment rounds and now seeking ways to monetize to an extent that would justify such investment). The best thing Unity has going for it is its dedicated user base. Meanwhile, UE4 is a really good deal and keeps getting better with every release. It's really just a better put together engine all around.
- brianwawok 8y agoDoesn't unity make it "easier" to be cross platform still?
- reificator 8y ago> Unity is not open source Important to note, neither is Unreal really. It's not a pedantic distinction here either, as it affects how far you can take a project that modifies the core engine. Not that I'm against Unreal in any way, it's just important to keep in mind.
- dave_sullivan 8y agoYes, UE4 is not FOSS as per GNU, it is open source in that you can see the code and there's a large community contributing fixes and additions with every new version. I think the distinction is pedantic for most users.
- skybrian 8y agoThe Open Source Definition doesn't come from the Free Software Foundation or "GNU". It's a separate organization.[1]. Also the whole point of this story is that license terms do matter, especially if you want to sell games commercially. [1] https://opensource.org/osd-annotated https://opensource.org/osd-annotated
- poisonarena 8y agoOr Godot, a highly capable free engine!
- SolarNet 8y agoAlso free as in freedom of speech, not just free beer.
- UnpossibleJim 8y agoAs much as I love Godot (and really truly I do) it does not run as optimized in multiplayer 3D as Unity or UE4,YET! But, it's always looking for talented people to help. It is an open source project that you can code in an offshoot of Python or in C# (which is fairly new, so give it a shot and help them out)... sorry for the plug =)
- overgard 8y agoI think Unity has a much easier learning curve than Unreal. The other thing about Unreal is it’s really targeted towards triple A workflows, which is great if you’re triple A but a bit heavy if you’re not. They also have some IMO killer features that UE lacks, like humanoid animation retargeting. If you’ve ever done animation you probably realise how much time and effort it takes to make a good one, so being able to reuse animations can be huge. None of that is really a criticism of UE4 which is great, just, Unity has some attributes that make it really appealing to smaller shops. [edit: derp meant this in response to a different comment but I think it still stands. Weird/possibly terrible move by Unity but I don’t know if UE4 is a realistic alternative for a lot of places. Surface level they seem similar but there are so many differences]
- jarsin 8y ago> They also have some IMO killer features that UE lacks, like humanoid animation retargeting I prefer Unity over Unreal for a ton of reasons, but unreal has had animation retargeting since the early days. https://docs.unrealengine.com/en-us/Engine/Animation/AnimationRetargeting https://docs.unrealengine.com/en-us/Engine/Animation/Animati...
- overgard 8y agoI stand corrected
- seanwilson 8y agoDoesn't Unreal require you to code in C++? That's a big reason why I'd avoid it when I don't require maximum performance.
- russley 8y agoUE4 has C++ and their UI based programming language called Blueprints. Unreal C++ is super powerful, but very few people actually need to use it due to some performance bottleneck. Blueprints are actually really cool for what they are and have a bunch of interesting debugging considerations, such as being able to see the flow of "code" visually.
- nacs 8y agoIt also supports C#/.net and Blueprints (their own node-based language).
- learc83 8y agoWait do they? I wasn't aware that UE4 supported C#.
- nacs 8y agoVia a plugin developed by some Microsoft employees: https://mono-ue.github.io/ https://mono-ue.github.io/
- moron4hire 8y agoYeah, the github.io page is still up, but the actual repo for that plugin has been deleted.
- nacs 8y agoIt's a private repo so you can't see it without Unreal Engine Github access, see my sibling comment for details.
- 8y ago
- deleted 8y ago[deleted]
- bladedtoys 8y agoJust to confirm: does Unreal have any similar clause? Do they look like they might go that way too? (e.g. do they have "authorized" cloud partners)
- nacs 8y agoTom Sweeney, Epic's CEO tweeted about this saying no: https://twitter.com/TimSweeneyEpic/status/1083407460252217346 https://twitter.com/TimSweeneyEpic/status/108340746025221734... Not only that but he points out that they intentionally made Unreal Engine's TOS "perpetual" specifically so they can't change it to do something like Unity has done here. On top of that, Unreal Engine sourcecode is available to all Engine users on Github unlike Unity.