0
Answered

Must all people who touch a unity project with Bolt in it have a license?

markk 7 months ago updated by Lazlo Bonin (Lead Developer) 7 months ago 6

Hello! I'm a freelance developer considering using Bolt for future projects. I was wondering if I have my own license, and let's say an artist or a developer working on a different part of the same project (that doesn't touch the bolt/logic stuff), can that person use/work with the project without having a Bolt license?

And if so; does the logic created in Bolt work?

And if no; is it possible to export bolt graph to plain C#, removing any reliance on Bolt (let's say when I'd deliver a project, I could give the client back full control without forcing them to use Bolt?)

Thanks!

Bolt Version:
n/a
Unity Version:
2019.1.11f1
Platform(s):
Scripting Backend:
.NET Version (API Compatibility Level):
+2

It's the same as other assets, one licence per seat, and it's not possible to build the c# code and use without Bolt, I'm afraid!

+2

An artist could work on a different part of the project if you don't upload Bolt to source control. Sharing assets with people who don't have a licence breaks Asset Store TOS. 

The project won't run in Play mode without Bolt though.

@TowerCrow i don't remember exactly why Bolt 2 can't output the C# to be used without Bolt, is it to do with serialisation?

The generated C# still heavily relies on Bolt classes for Bolt specific functionality. You can see that in C# preview a little bit when you use superunits or state machines. But a lot of it is hidden in the background. Open one of the generated C# files in visual studio and you'll see what I mean.There's a lot of Bolt specific stuff there that ensures it all actually runs.

Bolt 2 is not a tool to write regular code, Bolt 2 is a visual scripting tool. Therefore the focus of Bolt is visual scripting workflow first and foremost.That leaves Lazlo free to do stuff that is not possible in regular C#. And as such it was an intentional decision to do C# generation only for performance reasons. Hence the direction we're on now. 

Thanks, that's pretty clear.
Answered

Indeed, just to confirm, the per-seat license requirement does indeed mean that everyone with the project on their machine will need Bolt installed.

Because Bolt requires runtime components (like machines, macros, etc.), it's not actually possible to exclude it from source control and expect the project to still work correctly.

However, if your artist works in their tools (like Maya/Blender/etc.) and/or in a separate Unity project for integration tests that doesn't have Bolt, you don't need to acquire a license for them.