Search Unity

  1. Unity 2020.1 has been released.
    Dismiss Notice
  2. Good news ✨ We have more Unite Now videos available for you to watch on-demand! Come check them out and ask our experts any questions!
    Dismiss Notice

Bolt – Visual Scripting

Discussion in 'Assets and Asset Store' started by Ludiq, Jul 11, 2017.

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

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649

    Bolt is a major new visual scripting extension built for Unity 2017.

    http://ludiq.io/bolt

    We created a tool that brings complete, native-like visual scripting to Unity, empowering artists, designers and programmers to create gameplay mechanics and interactive systems without writing a single line of code.



    Want to get started quickly?
    Learn

    Need help? Got ideas?
    Forum

    or chat directly on our Discord server!
    Discord

    So what can it do?
    Features:



















    ______________________


    D E V E L O P E D__B Y

     
    Last edited: Sep 25, 2018
  2. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    294
    Look awesome. I will definitely give this a try!
     
  3. Maxxamillion

    Maxxamillion

    Joined:
    Apr 20, 2014
    Posts:
    22
    Looks interesting. I may purchase if the price is reasonable.
     
  4. roykoma

    roykoma

    Joined:
    Dec 9, 2016
    Posts:
    144
    Hey,

    can you tell us what the main differences between this asset and for example FlowCanvas & NodeCanvas are?
    Why should we buy this asset over one that already has tens or hundreds of positive reviews?

    What about support for other assets (like UFPS, TPC, Chronos, ....)?
    Where is the price going to be settled?

    I am currently thinking about buying FlowCanvas & NodeCanvas - would your asset be a bigger win for me? And why?

    Other than my questions - your asset looks really nice and well refined.
     
  5. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Hi Roykoma!

    That's a good question. I'll make a full comparison table soon, because choosing a visual scripting plugin that fits your needs is a hard decision due to all the different features of each tool. Edit: here's the comparison table!

    The main advantage of Bolt over classic visual scripting tools is that it has automatic access to your entire codebase via reflection, not just the actions that the developer has manually made available for you. (And that stays blazing fast because of our custom reflection engine.)

    To answer your second question, this also means that every third party asset is supported out of the box, without us, them or you having to create an integration.

    For example, here's how Chronos looks in a Bolt graph. No install was required. As long as Chronos is in the project, Bolt can access everything in it, along with custom icons and documentation:



    I'm just using Chronos as an example because it's an asset we developed, but all third-party assets benefit from the same level of deep integration.

    Now specifically about NodeCanvas & FlowCanvas: it depends on the type of graph you want to create. FC provides flow graphs, just like Bolt. NC provides state graphs (FSM), just like Bolt, but it also includes behaviour and dialogue trees. NC & FC are great products, but they're separate. Since a lot of users need both flow and state graphs, the price of both combined (75$ + 65$ = 140$) can be a bit steep. (Edit: 105$ with upgrade pricing)

    In contrast, Bolt will include both types of graph in a single package for 70$. We might look into adding behaviour & dialogue trees later, but if you absolutely need them immediately, NC+FC might be better suited to your needs. Keep in mind that it is possible to create AI behaviour with Bolt's state graphs, it's just a different approach from behaviour trees.
     
    Last edited: Jul 11, 2017
  6. Stanchion

    Stanchion

    Joined:
    Sep 30, 2014
    Posts:
    268
    Going to be confusing seeing Bolt all the time and not knowing whether its for networking or visual scripting :p
     
    jovino and Editali like this.
  7. sledgeman

    sledgeman

    Joined:
    Jun 23, 2014
    Posts:
    389
    I like the clean UI ! It seems well structured which results in a benefit of a super overview. As always, the best impression you can get, if you test it. Will there be a Demo ? And is it only for the new coming Unity 2017. No backward compatibility to Unity 5.x ?
     
    Last edited: Jul 11, 2017
  8. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Unfortunately I only learned about Photon Bolt very late in development, and with all the source and documentation referring to Bolt, it's too late to change it now. :/ Sorry about that.

    Thanks! Bolt is only for Unity 2017, because of the major scripting backend changes (.NET upgrade). Supporting a legacy major version which will stop being updated before the plugin even releases would split development efforts.

    There isn't a demo / lite version planned at the moment, but there are plenty of gifs and screenshots in the Manual if you want to see how it looks in action!
     
    horeaper and hippocoder like this.
  9. Stanchion

    Stanchion

    Joined:
    Sep 30, 2014
    Posts:
    268
    "uBolt" or "vBolt" or something might help prevent confusion but doesn't really matter :p
     
  10. Lab618

    Lab618

    Joined:
    Jan 12, 2015
    Posts:
    32
    This looks great and the price seems reasonable as well.

    I currently use Playmaker, which I love. Will Bolt work side by side with PM, or am I more likely to start using it and end up replacing PM?

    P.S. Any chance of this good news announcement triggering a celebratory sale of Chronos? ;)
     
  11. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    There's no plan to integrate side-by-side with PlayMaker or other visual scripting tools. But I bet you'll end up preferring Bolt's state graphs to PlayMaker. ;)

    Speaking of which, I just finished the comparison table with the main other visual scripting tools:


    As for Chronos, well I'd love to! But publishers don't decide when their assets go on sale, the UAS curator team decides. We've registered Chronos for a sale, let's hope they choose it soon!
     
    Last edited: Jul 17, 2017
  12. TeagansDad

    TeagansDad

    Joined:
    Nov 17, 2012
    Posts:
    908
    Just wanted to point out that Paradox Notion does offer upgrade pricing. If you own FlowCanvas, then NodeCavas is $45 instead of $75.

    Bolt is still less expensive, but the FC & NC combo isn't quite twice the price ($105 with upgrade pricing). :)

    How would you contrast Bolt's reflection-based actions with the reflection actions in FC and NC? Looks like Bolt includes everything by default, while you have to add types to the Preferred Types in FC and NC (which honestly I prefer, especially in a large project, as it keeps stuff I don't care about out of the dropdown lists).
     
  13. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Oh, I didn't know about that upgrade pricing! Thanks for the heads up.

    Bolt has a "type options" list under its project settings which is roughly equivalent to Paradox's Preferred Types. The difference however is that it also includes all enums and types derived from Unity's Object root class for convenience. So all Components, MonoBehaviour and ScriptableObjects are always included.

    But the amount of included types doesn't really matter in terms of workflow, because the fuzzy finder allows you to search by member or by type name, so you shouldn't be spending time looking at each available type in a namespace.

     
    Last edited: Jul 15, 2017
    rerwandi and TeagansDad like this.
  14. kukuhbasuki

    kukuhbasuki

    Joined:
    Apr 13, 2016
    Posts:
    28
    @ludiq When you willl release this asset?
     
  15. williamian

    williamian

    Joined:
    Dec 31, 2012
    Posts:
    118
    Any thoughts about selling it to Unity for permenant integration?
     
    rahuxx likes this.
  16. rahuxx

    rahuxx

    Joined:
    May 8, 2009
    Posts:
    537
    One more Visual Script Editor. :eek::eek::eek::eek::eek:
     
  17. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    This July! We're just adding the finishing touches everywhere and waiting for the UAS team's approval.
     
    Last edited: Jul 12, 2017
  18. nsfnotthrowingaway

    nsfnotthrowingaway

    Joined:
    Feb 18, 2016
    Posts:
    47
    Hi. I hate to beat a dead horse, but any idea of the odds this will release in the next couple of days, as opposed to next week? Was about to start doing a few things in PlayMaker for our project, but if this is coming in a couple of days I will probably hold off, and try it out in Bolt instead.
     
  19. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Sadly it's not up to us. The Asset Store review team has to approve the asset. I can tell you that everything is ready from our end, however. The UAS has seen some major delays in reviews recently so I can't even give you a good ETA. Hopefully, if everything is in order, we'll hit the store this week. However if we missed anything (they tend to be picky about details -- for example a missing readme file can get you rejected), we'll have to resubmit, which can take a few weeks again.
     
  20. nsfnotthrowingaway

    nsfnotthrowingaway

    Joined:
    Feb 18, 2016
    Posts:
    47
    Ah. I see. Thanks for the quick response.
     
  21. williamian

    williamian

    Joined:
    Dec 31, 2012
    Posts:
    118
    I asked this previously, may have been overlooked.

    Any thoughts about selling it to Unity for permenant integration?

    As it is one of Unitys biggest missing links for many as assets like TextMesh pro have been incorporated seems like a good question if you have considered or discussed it. Ty.
     
  22. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    One step at a time, haha! Let's start by getting on the Asset Store!

    In all seriousness, though, there is no plan for a permanent Unity integration on the table at the moment.
     
  23. Lab618

    Lab618

    Joined:
    Jan 12, 2015
    Posts:
    32
    Are the 'Saved Variables' just saved to Unity's Player Prefs? If so will Bolt have any way of obscuring/encrypting them, or will we still need an additional asset?

    Thanks.
     
  24. williamian

    williamian

    Joined:
    Dec 31, 2012
    Posts:
    118
    TY, That is what I thought. HA.
     
  25. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Yes, they're just saved in plain text (actually, the data is serialized as a JSON string).

    I'm presuming you're asking this for anti-cheat purposes? Security through obfuscation is usually very easy to circumvent and not very useful. Even if you provided a custom cypher key somewhere in your application, .NET executables are easily decompiled and your constant & algorithm could be reverse engineered. Unless you use a very advanced obfuscator like Themida, you're not going to be able to stop save-file edits this way.
     
  26. Lab618

    Lab618

    Joined:
    Jan 12, 2015
    Posts:
    32
    Thanks for the explanation. I'm a hobbyist and only know about this sort of stuff from bits I've read and the assets in the store. I'm looking forward to Bolt. I can't get it straight away as I need to finish my current project before upgrading Unity, but will definitely give it a try after that.
     
    Ludiq likes this.
  27. Der_Kevin

    Der_Kevin

    Joined:
    Jan 2, 2013
    Posts:
    507
    Lovely ui! Great job!
     
    Ludiq likes this.
  28. chasepettit

    chasepettit

    Joined:
    Oct 23, 2012
    Posts:
    42
    Closed source and no scripting API. I can't say that I'm a fan of that, and I doubt other experienced programmers will be either.

    That said, I've never felt like flow graphs were something that I really needed, so I don't think I'm in your primary target audience anyway. However, NodeCanvas has served me well in places where I wanted a visual tool for handling FSMs and behavior trees, and I'm open minded about alternatives if one can prove itself to be demonstrably better in that area.

    Have you done any benchmarking that shows how this tool stacks up with stuff like NodeCanvas, Playmaker, etc.? I know your graph indicates "6x faster", but some specifics in terms of memory and CPU use would be nice to see.
     
  29. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Hi Chase! These are good questions. I'll answer them one by one.

    Source: Bolt is "closed source" not because we want the source to remain proprietary, but because of how the Unity compiler works. We distribute the plugin as DLLs because it allowed us to code Bolt using C# 7.0 before Unity supported it, and because it significantly reduces the project compilation time (the spinning wheel at the bottom right of the editor) by not having Unity recompile Bolt's source at every edit. We think this is a small but very significant "quality-of-life" improvement for most users. However, all the DLLs are managed, unobfuscated and decompilable by your favorite MSIL spy tool. If your team requires the source, we will gladly send it over if we can verify your purchase with your invoice number. The same EULA as the asset store would apply. If that becomes a frequent request, we'll try to figure a way to make this process more automatic, but in the mean time, we believe most users would only need an API. Which brings us to...

    API: There is already a full public scripting API, but it's not yet documented. For example, you can create, edit and save complete graphs as well as manually trigger events and read/write variables, all from script. In our opinion, however, unless an API is well documented, it might as well not exist. We intend to provide the documentation as soon as possible, but the current XML-to-HTML documentation generators (ex.: Doxygen, Sandcastle, Docu, etc.) are seriously outdated, and we might have to roll our own in-house solution for this, because the source is too big for us to document it manually at every update.

    Performance: For the performance, that 6x comparison refers to the speed of accessing and invoking reflected methods and members in Bolt as compared to the traditional use of .NET reflection. It is not a comparison to other tools on the market, however most if not all these tools do simply use traditional reflection with little to no optimization. Due to the complexity and high amount of core differences between the tools, we can't run good benchmarks that wouldn't actually be comparing apples to oranges. To be clear, what Bolt does in terms of reflection optimization is a custom process of caching members to lambda delegate equivalents, which are significantly faster, sometimes even more than 6x. When JIT is available, for example on standalone, Bolt will actually emit the IL code for the member calls at runtime, which is even faster. As far as memory is concerned, this layer is only cached once during the first frame, so the footprint is minimal.

    Hope this makes things clearer for you, let me know if you have any further question!
     
    Last edited: Jul 24, 2017
    Mark_01 and horeaper like this.
  30. Omninorm

    Omninorm

    Joined:
    Jan 4, 2013
    Posts:
    5
    Another Playmaker fan here, but this looks really interesting, I might buy it anyway and compare. Good luck!
     
    Ludiq likes this.
  31. chasepettit

    chasepettit

    Joined:
    Oct 23, 2012
    Posts:
    42
    @ludiq Thanks for the thorough response.
     
    Ludiq likes this.
  32. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Now released!

    After 9 months of development, I'm very proud to announce that Bolt is finally ready.

    Want to get started quickly? Have a look at the manual.
    Questions? Ideas? Join the community!

    Follow us on Twitter @ludiq_io or with the hashtag #BoltTips to learn about every single little cool hidden feature. We'll be tweeting a ton of tips over the next few weeks!

    ... But first, grab it while it's hot!

     
    Mark_01, TeagansDad and Lab618 like this.
  33. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
  34. williamian

    williamian

    Joined:
    Dec 31, 2012
    Posts:
    118
    Last edited: Aug 19, 2017
  35. AndrewKaninchen

    AndrewKaninchen

    Joined:
    Oct 30, 2016
    Posts:
    110
    I've been wondering, how does Bolt look like in the Unity Dark Theme? It looks amazing in the Light Theme, but I'm thinking it might not look as good in the dark one for some reason.Hope I'm wrong though.
     
  36. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    It should look just as great! I had testers with the dark theme give it a run, and since Bolt uses the built-in editor resources, all the nodes still look native, just like if you were in the animator window. The reason it's not featured in the screenshots is because I don't have a pro license at the moment, but I'll get one soon and update the images.

    If you have any issue in the mean time (ex. dark on dark font, etc.), just post them at the community so I can fix them quickly.
     
  37. AndrewKaninchen

    AndrewKaninchen

    Joined:
    Oct 30, 2016
    Posts:
    110
    Yeah, I think I'm concerning over nothing. A little free time spending in photoshopping was enough to convince me it'd look fantastic as well. My major concern was in cases like this:

    upload_2017-7-28_0-5-46.png

    where there's bright colors as well as gray. I was afraid it'd look ugly in the dark colors, but just using darker tones like the Animator nodes do seems to do the trick for me:

    upload_2017-7-28_0-49-2.png
    (The contrast of the dark area and the background actually looks bad here due to the white of the forums. It looks better in isolation, since the background seems lighter. Go figure the human brain and eyes.)

    Looking forward to seeing screenshots of the real deal. Since finding out you'll actually send the source code on demand I'm fairly certain I'll buy this asset eventually.
     
    Ludiq likes this.
  38. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Wow, you really went the extra mile with Photoshop! You're close, but if you want to know exactly how the nodes look like in the dark skin, you can use the Editor Icon Viewer and scroll down to the nodes at the bottom.
     
  39. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Bolt v.1.0.1 has been sent for review, fixing all bugs reported at launch.

    Bolt Flow v.1.0.1:
    • Fixed editor crash when units describe infinite indirect recursion
    • Fixed automatic type conversion not happening on member invocation units
    • Fixed reflection bug for methods declaring value type parameters with default values
    • Fixed inline values for game objects and components getting overridden by self
    • Fixed runtime added events not listening instantly
    • Fixed editor preferences panel failing to show under some conditions
    Ludiq Graphs v.1.0.1:
    • Changed Ctrl bindings to Cmd on OSX
    • Fixed legibility and resolution issues on pro skin

    Community link: http://support.ludiq.io/topics/246-version-101/
     
    SteveB likes this.
  40. williamian

    williamian

    Joined:
    Dec 31, 2012
    Posts:
    118
    Bolt update 1.0.1 has been released.
     
    Last edited: Aug 2, 2017
    Ludiq likes this.
  41. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,342
    I have yet to find a visual scripting tool which can simulate the schematic below (A320 center tank logic) without spaghetti hell or otherwise making it look more complex than code.

    Note the signal time delays at the bottom.

    I am a programmer but system simulation is inherently difficult to maintain and debug in code, especially if it includes timed signals. If you are able to crack this nut in a simple way, I will be surprised, and a sure customer.

    fuel pump.JPG
     
    Last edited: Aug 2, 2017
  42. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Hi Elecman,

    I'm afraid my college classes for reading electric schematics didn't make so much of an impression! I'm having a hard time reading this graph (well, the top part mostly).

    Can you remind me what exactly that box with a cross symbol means? Is it simply a delay after receiving an input? If so I believe that can be done in Bolt.
     
    Last edited: Aug 4, 2017
  43. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Bolt v.1.0.2 has been sent for review. This update focuses on stability and bug fixes.

    Bolt State v.1.0.1
    • Fixed state header icon size on retina displays
    • Fixed pasting into state transition
    • Fixed transition events not being triggered from state entry (#261)
    Ludiq Graphs v.1.0.2
    • Fixed error when entering nested graphs after a paste operation
    • Fixed error when converting from macro to embed graph (#270)
    Ludiq Core v.1.0.1
    • Fixed missing game object constructors (#257)
    • Fixed error when converting unitialized Unity object to string (#260)
    • Fixed check icon for pro skin
    Community link: http://support.ludiq.io/topics/255-version-102

    Roadmap:

    Version 1.0.3 is likely to focus on further bug fixes reported by the community.

    Then, the following priorities will be, in order:
    • Eliminating the 10-15 second unit caching time when entering edit mode
      (ETA: Early August)

    • Improving error recovery in case of reflection failure
      (ETA: Mid August)

    • Implementing new quality-of-life features, like graph locking, center on paste, and compact display mode
      (ETA: Late august)
    Bigger (and cooler!) ideas will start being developed in September, once every stability, performance, and usability concern reported by users at launch will have been resolved. Head over to the community to vote on which ideas you want to see implemented first!
     
    Last edited: Aug 4, 2017
    Mark_01 and SteveB like this.
  44. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,342
    Here is a simplified version. It features AND gates, OR gates, Inverters, signal delays, and signal switches. Yes, that box with a square at the bottom is a time delay for the signal to pass through.

    fuel pump.JPG

    Doing this nicely in blueprint is nearly impossible, as it doesn't even feature logic gates (AND, OR, NOT, etc). FlowCanvas has logic gates, but due to the way it is designed, implementing time delays or forcing a graph re-evaluation becomes too complex.

    In the Bold documentation, I didn't find anything about logic gates. Can you make a graph which has the logic above and post a screenshot?
     
  45. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    I tried reproducing it and I think I understand the issue.

    Bolt has logic nodes (like most other visual scripting tools), but these work on values (booleans), not control flow.
    In your graph, you need logic gates that work with control flow, am I right? For example, the first negated or's inputs (inner fuel cell and stats extended) are not boolean values, but "event-like" control, right? That's an interesting problem if it's what I think. It's doable in Bolt at present but you're right, it would result in a bit of a spaghetti graph.

    With booleans the first part is rather easy, but booleans don't have delays:

     
  46. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,342
    It indeed requires boolean values with an event-like control. I think it is a problem with all visual scripting tools that they are not designed for this. Is this something you would like to support?
     
  47. sBabb

    sBabb

    Joined:
    Feb 2, 2015
    Posts:
    51
    Bolt looks amazing, and the UI appears to be stunning, readable and fun.

    I'm a playmaker user and I really like it. I can read some code, write a tiny bit, but generally find it a chore.

    I will probably buy Bolt to at least test. But, I have a few questions.

    1. Probably difficult to answer, but would switching from playmaker be difficult? I realize the same rules apply, but I've gotten used to the playmaker workflow.

    2. I've used blueprints in Unreal and it was okay. Too many windows for me, but high usability. Bolt has both FSMs and Flow Graphs, how do I choose which to use? Just know from experience? What if I'm wrong?

    3. Tutorials?

    My main grip about playmaker is the UX. No right click menu, easy to get lost, sometimes actions can be annoying to debug. But, overall it's been great for me. It allows a 3d artist like me to make games and I love doing logic stuff. My concern would be learning another tool and how long that would take.

    I'm also just starting a new prototype, so might be a perfect time to try Bolt.
     
  48. sBabb

    sBabb

    Joined:
    Feb 2, 2015
    Posts:
    51
    I just bought Bolt, so far so good. Is of course different from Playmaker - I tried to duplicated one my more complex FSMs using Bolts State Machine the but was not able to. However, I am interestingly enough able to follow along with code C# tutorials!

    First impression is really good!
     
    Last edited: Aug 7, 2017
  49. Ludiq

    Ludiq

    Joined:
    Mar 6, 2015
    Posts:
    649
    Sorry, I missed your previous post! The Unity forum really doesn't do a good job of sending email notifications.

    Glad you're enjoying Bolt. What exactly weren't you able to migrate from PlayMaker? Bolt should be as capable if not more, maybe I can guide you to find the right units or setup.

    That's an interesting problem. I think I know a "fix"; the logic units could have a "gate" checkbox option that turns these value ports into control ports. I'll keep it in mind for a future version.
     
    EvilGremlin likes this.
  50. williamian

    williamian

    Joined:
    Dec 31, 2012
    Posts:
    118
    Bolt 1.02 has been released on the Asset store.
     
Thread Status:
Not open for further replies.
unityunity