Search Unity

Bolt – Visual Scripting

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

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

    iocron

    Joined:
    Nov 18, 2016
    Posts:
    4
    Would be interested into the behavior tree feature as well (i don't really mind if it's the big Behavior Designer or a custom implementation in bolt (as long as it's good)).
     
  2. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127
    Just giving you a heads up that I have talked to @ludiq and am working on an integration with Behavior Designer. Hopefully I'll be able to get it out this week!
     
  3. StevenPicard

    StevenPicard

    Joined:
    Mar 7, 2016
    Posts:
    859
    Wow! That would be great. It was really the only major thing lacking in Bolt (in my opinion.) That means I'll have to buy Behaviour Designer (I'm sure that's exactly what you are hoping people will say, lol :D.)
     
    Mark_01 and opsive like this.
  4. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
    Version 1.1.2 has been submitted for review!

    Ludiq Core v.1.0.5
    • Fixed: Missing modular assemblies in 2017.2+ (#386)
    • Added: In-memory deep cloning system
    • Optimized: Custom exception handling memory allocation
    • Optimized: Custom collections memory allocation
    Ludiq Graphs v.1.1.2
    • Added: Edge pan for resize, group, select and connections
    • Added: Keyboard shortcut for contextual menu ([Ctrl / Cmd] + E)
    • Optimized: Instantiation performance and memory allocation (#475)
    • Optimized: Element collection memory allocation
    • Fixed: Selection lasso not closing out of graph window
    Bolt Flow v.1.1.2
    • Added: Wait units (#514)
    • Added: Animation events (#212)
    • Added: UnityEvent event (#442)
    • Added: Smart contextual options for numeric and boolean input ports
    • Optimized: Super unit memory allocation
    • Optimized: Member invocation units memory allocation
    • Optimized: Loop units memory allocation
    Bolt State v.1.1.2
    • Fixed: Issue with dragging
    Community post: http://support.ludiq.io/topics/565-version-112/
     
    Mark_01 and Lars-Steenhoff like this.
  5. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,127

    The integration with Behavior Designer and Bolt went pretty smoothly so it didn't take a week - I just uploaded the integration files to the Behavior Designer samples page! This integration allows Behavior Designer to start a FlowGraph, wait on a FlowGraph, send events, and synchronize variables. As you get more into this integration let me know if there is anything else that you'd like to see (in the Behavior Designer thread to keep this one focused on Bolt :))
     
    Last edited: Oct 17, 2017
  6. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
    Bolt v.1.1.2 has been released on the store.

    Update your graphs with those sweet sweet wait units & animation events!



     
    Mark_01 likes this.
  7. zukinet

    zukinet

    Joined:
    Oct 30, 2016
    Posts:
    51
    wow nice... i'll try...
     
  8. sledgeman

    sledgeman

    Joined:
    Jun 23, 2014
    Posts:
    389
    Oh man.....you both forgot your questions !
     
  9. zukinet

    zukinet

    Joined:
    Oct 30, 2016
    Posts:
    51
    maybe he is bussy..
     
  10. MasterSubby

    MasterSubby

    Joined:
    Sep 5, 2012
    Posts:
    252
    Best bet is to reach him on the Ludiq website forum. Much more active there, and plenty of people to help. Sure he didn't mean to skip these questions. Anyways, I can answer this for you or anyone else who is interested. Been using for over 2 months now. Great product.

    1) Yup, others on the forum have been talking about it and have done it before. Just need to find how you want to do everything in your way. You could find different ways to suit your style.

    2) I am not 100% on this, but on the roadmap has a section needing to be up to date on 2017.2+ for use of the 4.6 .Net features. I don't think it is necessary before that update, and should work well with anything that used the previous version.

    3) Yes, I rewrote 8 months of C# code in 2 with Bolt, from just learning Bolt. You may need or even want to change some stuff, but for the most part, the visual counterpart will be the exact same. Just using the way events, variables and macros work in Bolt. Since you can have nested states, and flow graphs, and mix and match both, it's easy to write everything in almost a step by step fashion in the graphs. Super clean and readable.
     
  11. tcz8

    tcz8

    Joined:
    Aug 20, 2015
    Posts:
    504
    I know this is crazy but I feel like buyin bolt just so I can spend more time looking at a pretty interface... lines of codes are SOOOO overrated :p
     
    MarkusGod, StevenPicard and Aligdev like this.
  12. zukinet

    zukinet

    Joined:
    Oct 30, 2016
    Posts:
    51
    Hi, thanks for answers... :)
     
    MasterSubby likes this.
  13. CGBull

    CGBull

    Joined:
    Feb 12, 2017
    Posts:
    82
    In future,Will join behavior tree support?
     
  14. CGBull

    CGBull

    Joined:
    Feb 12, 2017
    Posts:
    82
    get custom C# script function is error. Why???
     
  15. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
    No guarantee, but I'm open to the idea. It is however a major feature that will not come in version 1.

    Sorry, I don't understand your question!
     
  16. StevenPicard

    StevenPicard

    Joined:
    Mar 7, 2016
    Posts:
    859
    Okay, I found this funny because there is some truth here. I am a coder and I love coding but the interface is just so polished and well done. It's hard not to want to keep looking at it. Fortunately, it's a great product, too, and I can justify buying this because it's more than just a pretty face. lol.
     
  17. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
    Version 1.1.3 is now released!

    Important: See this post about a potential loss of data in version 1.1.3:
    http://support.ludiq.io/forums/5-bo...warning-potential-loss-of-data-in-113-update/


    Changelog:

    Ludiq Core v.1.0.6

    • Added Reflected inspector support for classes marked with [Inspectable] (#555)
    • Added AnimatorStateInfo to default types (#591)
    • Added Icons for Type, Assembly and AnimatorStateInfo
    • Improved Serialized data debug display
    • Optimized Plugin container initialization (#582)
    • Optimized Documentation parsing to background thread
    • Optimized Attribute reflection fetching
    • Fixed Missing default assemblies for Unity 2017.2+ (#386)
    • Fixed Changes made to prefab instances not saving (#579)
    • Fixed Descriptor delayed update error
    • Fixed ExitGUIException in context menus
    • Fixed Reflected cloner instance creation with non-public constructors
    • Fixed Custom exception handling being ignored (#628)
    Ludiq Graphs v.1.1.3
    • Added Lock current graph button and editor preference (#262)
    • Added Edit contextual menu actions for individual nodes (#498)
    • Added Edge pan support for resize
    • Fixed Undo failure in nested embed graphs (#447)
    • Fixed Issues with mouse drag and lasso (#595, #624)
    • Fixed Issues graph selection change detection
    Bolt Flow v.1.1.3
    • Added Support for reflected inspectors in literals (#555)
    • Added Static API shortcuts to Variables class
    • Changed Graph level contextual menu to Shift+RMB (#498)
    • Fixed Warning unit colors missing when in play mode
    • Fixed Deserialization error due to nester owner being serialized (#612)
    • Fixed Select / Switch on integer / string failing to initialize (#632)
    Bolt State v.1.1.3
    • Fixed Deserialization error due to nester owner being serialized (#612)
    • Fixed Descriptor error with nested events (#612)
    • Fixed Event listening state being serialized
    Community thread: http://support.ludiq.io/forums/5-bolt/topics/640-version-113/
     
    Mark_01 and GamerPET like this.
  18. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
    Version 1.2.0 has been submitted for review!

    Changelog:

    Ludiq Core v.1.2.0
    • Added Support for dragging on number fields (hold Shift) (#214)
    • Added Support for [AssemblyIsEditorAssembly] (#700)
    • Added Pre-build method for Unity Cloud Build (Ludiq.AotPreBuilder.PreCloudBuild)
    • Optimized Fuzzy finder search cancellation
    • Fixed Expanded tooltip on boolean inspector
    • Fixed Adaptive width for Vector and Quaternion inspectors
    • Fixed Minimum width for Rect, Ray and Ray2D inspectors
    • Fixed First fuzzy window search result not always focusing
    • Fixed NullReferenceException in Namespace class (#711)
    • Fixed Coroutine runner being destroyed on scene load (#664)
    • Fixed Type options failing to load in .NET 4.6 (#645)
    Ludiq Graphs v.1.2.0
    • Added Drag & drop system and preview label for all operations
    • Added Comments for graph groups
    • Added Custom colors for graph groups (#288)
    • Added Inspector and icon for graph groups
    • Added Title and summary editing from parent inspector
    • Fixed Context menu and fuzzy finder not opening when zoomed out (#511)
    • Fixed Error after using Shift+Space to maximize graph window (#659)
    • Fixed Lasso starting when dragging in the graph window header
    • Fixed Various mouse drag issues (#684)
    • Fixed Selection change event triggering unduly
    • Changed Lowered edge pan offset
    • Changed Pasting from context menu now pastes to mouse position
    Bolt Flow v.1.2.0
    • Added Component drag & drop (#455)
    • Added Game Object drag & drop
    • Added Scriptable Object drag & drop
    • Added Macro drag & drop onto nester units for replacement
    • Added Variable drag & drop (#203)
    • Added Variable kind dropdown
    • Added Variable name suggestion dropdown
    • Added Object variable name suggestions from current parent object
    • Added Dynamic variable name suggestions from current graph
    • Added Subcategories to variables category in fuzzy finder
    • Added Parent object components category to fuzzy finder
    • Added Automatic target port selection when creating connections (#454)
    • Added Connection target preview overlay
    • Added Dimming of incompatible nodes and ports
    • Added Hovered port and connection highlight (#462)
    • Added Option to skip context menu
    • Added Add Unit option to context menu
    • Added Non-destructive unit replacement (Context > Replace Unit...)
    • Added Option to disable editor value prediction
    • Added Option for dictionary enumeration in for each loop
    • Added Fallback value option for get variable units (#280)
    • Fixed Obsolete unit warning on inherited types
    • Obsoleted Previous variable units
    Community thread: https://support.ludiq.io/forums/5-bolt/topics/675-version-120/

    Follow us on Twitter @ludiq_io or through #BoltTips for gifs of tips & previews of these new features!
     
    Mark_01 and Arganth like this.
  19. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
    Last edited: Nov 22, 2017
  20. XCPU

    XCPU

    Joined:
    Nov 5, 2017
    Posts:
    145
    er What? figured it wasn't going to be on the BF list, so I just got it, not even 24hrs,
    not even had a chance to import yet. sigh...... ahh well, no regrets.
    Liked everything I've seen so far from the docs. Looking forward to it.
     
  21. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
    Sorry about the confusion! It's not obvious on the store, so that's why I'm trying to warn people through the forums and Twitter (@ludiq_io).
     
  22. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
  23. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
  24. TechnicalArtist

    TechnicalArtist

    Joined:
    Jul 9, 2012
    Posts:
    736
    Is array support bolt?
     
  25. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
    Bolt supports lists and dictionaries as collections. Arrays can be created, but it's not recommended (they're more limited than lists and more complicated to deal with).
     
  26. TechnicalArtist

    TechnicalArtist

    Joined:
    Jul 9, 2012
    Posts:
    736
    Thanks for answer
     
  27. TechnicalArtist

    TechnicalArtist

    Joined:
    Jul 9, 2012
    Posts:
    736
  28. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
  29. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
  30. TechnicalArtist

    TechnicalArtist

    Joined:
    Jul 9, 2012
    Posts:
    736
    Thanks for reply
     
  31. Dreamcube017

    Dreamcube017

    Joined:
    Dec 20, 2009
    Posts:
    253
    So I have been reading through the thread and am pretty interested in this. Now I know you said it works with 3rd party plugins, but is it possible to see some more examples of this?

    (I personally use Master Audio and am thinking of using some other plugins to do some things as well.) I'd just like to see how nice it plays with other plugins. Are there examples anywhere?

    Thanks!
     
  32. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
    One example I often give (because I have the screenshot at hand already) is Chronos.



    Note that Chronos here is not aware at all that Bolt even exists. Bolt pulls all the data from the fields, methods, and properties of the plugin, along with their documentation and custom icons, and integrates them as native nodes.
     
    SteveB likes this.
  33. TheNathanParable

    TheNathanParable

    Joined:
    Mar 21, 2014
    Posts:
    17
    Funnily enough I also have an example of Bolt working with a third party plugin, specifically Curvy.



    Unfortunately I don't have a gif handy, but basically the sphere is moving along the spline path.

    Admittedly this took me a couple of hours to figure out. I've previously used Curvy with Playmaker, and in that case Curvy had official Playmaker actions that made things a lot easier to understand at a glance, but once I figured it out it was actually really simple to do in Bolt.
     
    SteveB and red2blue like this.
  34. redmugstudios

    redmugstudios

    Joined:
    Dec 21, 2016
    Posts:
    60
    That is an awesome example :)
    Yeah, I figured it would not be an "instant" integration but it is certainly 100% compatible.

    I just bought Bolt yesterday and would also post something useful later.
     
  35. SmartMediaNL

    SmartMediaNL

    Joined:
    Sep 29, 2016
    Posts:
    77
    Hi,
    Aldo i have been a C# programmer for about 19 years So I am not new or scared of programming using Scripts.
    However Bolt seems very interesting for at least prototype testing.

    Visually showing what is going on is a very impressive feature even more so as you can try / change something on the fly. (Rather then have to recompile etc)

    I wonder however what is under the hood of Bolt and how it would effect performance in an full blown mobile project.
    As even when using scripts we need to optimize variables,call animations with handler id's rather then using string, limit code in updates etc. Many examples on the Internet and by Unity themselves how to optimize code to optimize performance on (mobile) devices.
    The past has shown us how easier some programming tool is for the programmer how slower / worse performance it is for the machine running the code.

    So what are the downsides of using Bolt on a full release (Mobile) builds compared to using script files ?
    Or is bolt more for designers and other creators that do not know how to program in script ?

    So i am very interested in the performance in bigger projects then the tutorial. And I wonder if I could switch completely to Bolt or just do my proof of concept testing only in Bolt.
     
    BrUnO-XaVIeR and TechnicalArtist like this.
  36. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    Hi @ludiq

    Just wanted to say this is an awesome plugin, it's like UE4 Blueprints, it's very clear and readable and fast productivity ( nodes copy/paste, fuzzy finder).
    I changed my review, and hope the folders issue will get fixed later.

    For mobile it's all related to the complexity of your game code you need.

    Also i didn't checked it, but perhaps like UE4 Blueprints, you can code your own Bolt "nodes" and use them in Bolt StateMachine or FlowMachine.

    The advantage of such visual editor is you organize your code in components, you can debug in the flowgraph ,and FSM StateMachine will spare you lot of "if then else" coding.
     
    Last edited: Dec 5, 2017
  37. SmartMediaNL

    SmartMediaNL

    Joined:
    Sep 29, 2016
    Posts:
    77
    Well to be frank, Bolt has If else conditions all over the place as well.
    Also in the state machine for example in the Transition graphs. and a bunch of them in the Tutorial like the Brances.
    Witch is logical.
    You don't need Bolt to keep split up your code into components. That part is just good programming practices.

    Off course Bolt has an overhead but I wonder how much. If its footprint is very small I would not have to recode the Bolt charts afterwards back to C# Scripts.
    one thing Unity devs for example are very clear of is try not to use Update on all your objects but have a container that has it's update event listener and call the function of all the objects from there so they do their on update stuff. Rather than having each component listen to the OnUpdate event for example.
    So if even scripts need to optimized to the brink I wonder what would happen with performance if the hole project is in Bolt.

    My project has about 150 script files if I remember (Can't check now) So rebuilding it to Bolt to test the performance difference is no option for now. However I am using Bolt now to at least do some testing and debugging and when I am done I will rewrite it all back to C#. For that purpose Bolt seems great! (Aldo there some annoying issues when trying to change variable settings of an object while running the game as the input box seem to loose focus while trying to type in a new number. I can only change the number sometimes with luck or when i pause the game. (must fill out a bug rapport for it)

    So don't get me wrong I think Bolt is great for trying new things/idea's out. I have my doughs however with performance on Mobile. So for now ill have to split my project in 2 versions. One with Bolt for Testing new idea's. And one for the final cut so to speak.

    p.s. In case anyone is wondering, Adding Bolt to your project increases the release build with almost 3Mb even if you don't use it. So that isn't to bad. (on Android)
     
  38. zenGarden

    zenGarden

    Joined:
    Mar 30, 2013
    Posts:
    4,538
    It's good practices like spawn and unspawn characters on demand , pooling also for effects, zone managers that will spawn or activate objects only when you enter some game level zone.
    And at low level you can have Update() calls , or have some Update() managers that will call other scripts function only each N frames.
    Anyway it really depends on your game and if it is mobile or PC, for mobile some guys make games using Playmaker, so i don't see any issue using a Visual Scripting unless you are making some heavy demanding game like 3D Rts or heavy on graphics or complex code.

    Again it's entirely related to your game needs. You could make some simple tests creating some character controllers in Bolt and some AI and see how it goes.
    About 3Mb , indeed this is pretty small lol


    Yeah, you will not rewrite a complete project only because you get a new tool.
    The advantages of Bolt for example is you see your code as modules and components, and you can real time debug seeing what components are called., or where is some blocking bug.
     
  39. TechnicalArtist

    TechnicalArtist

    Joined:
    Jul 9, 2012
    Posts:
    736
    Hi,
    Any roadmap for make editor script from bolt.
     
  40. SmartMediaNL

    SmartMediaNL

    Joined:
    Sep 29, 2016
    Posts:
    77
  41. GamerPET

    GamerPET

    Joined:
    Dec 25, 2013
    Posts:
    370
    Hello guys! I hope that it's ok to post this here :)

    I decided to try to do a really small and incomplete Plants vs Zombies clone using Bolt. So far in my tutorials you will see how you can take advantage of Super Units, make multiple flows communicate to each other and implementing features step by step.

    I made it so everything is explained in a pretty long video but I also take a screenshot of the flows and I briefly try to explain what they do in a written tutorial.

    I do recommend you to try to watch the videos even that they are long. They are long because I usually explain the struggles and the challenges I had in order to come up with that solution. In my opinion this is more useful then a classic "you do it like this this this this you are done!". But anyway, I hope my tutorials are useful for you in any way!

    This is part 1:
    http://www.gamerpet.com/tutorial/unity/plants-vs-zombies-in-unity-using-bolt-part-1/

    In part 1 I have a light introduction to Bolt. How you can use Super Units. How you can make something follow the mouse cursor and some other early logic for our future scripts.

    This is part 2:
    http://www.gamerpet.com/tutorial/unity/plants-vs-zombies-unity-using-bolt-part-2/

    In part 2 I talk about loading another Scene additive, making an UI-Manager, finishing the GrassTile flow, Fixing a small bug from the 1st part and more importantly we talk about State Machines!

    I will post here all my updates!

    And also, you might want to check my twitch channel: www.twitch.tv/gamerpet

    Lately I have been streaming me working in Unity using Blot :D

    Thanks!
     
  42. PaulGK

    PaulGK

    Joined:
    Dec 1, 2016
    Posts:
    27
    Hi GamerPET.

    Thank you for the tutorial videos, I am new to Bolt but not new to visual scripting.
    I know Bolt is relatively new, and I was only recently looking around for Bolt tutorials and there wasn't much out there. I for one will find your tutorials very helpful in getting to grips with it.
    Cheers.
     
    GamerPET likes this.
  43. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    Awesome thank you GamerPET!

    Do you have a timeframe on Part 3, and will that be the final one?
     
  44. GamerPET

    GamerPET

    Joined:
    Dec 25, 2013
    Posts:
    370
    Hello Steve. I might be doing Part 3 tomorrow. I already did a part of what I want to show in that episode. There will be at least 2 more episode ... judging by how long the videos are.

    EDIT: Well, Part 3 is now done:
    http://www.gamerpet.com/tutorial/unity/plants-vs-zombies-unity-using-bolt-part-3/
     
    Last edited: Dec 7, 2017
    Mark_01, SteveB and zenGarden like this.
  45. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    Nice lol!
     
    GamerPET likes this.
  46. GamerPET

    GamerPET

    Joined:
    Dec 25, 2013
    Posts:
    370
    If anyone is interested in some LIVE BOLT ACTION.... !>!!!1 I'm live streaming right now:

    www.twitch.tv/gamerpet

    I'm working on implementing the Zombie, the health system and the damage system.

    -----------
    Stream is now over. 4 hours of pure joy and weird things :) Thanks for the people who joined.
    I now have content for Part 4 (which is the final one) of the tutorial.
     
    Last edited: Dec 9, 2017
    SteveB and zenGarden like this.
  47. GamerPET

    GamerPET

    Joined:
    Dec 25, 2013
    Posts:
    370
    So the 4th and the last tutorial on that small PvZ clone is up:
    http://www.gamerpet.com/tutorial/plants-vs-zombies-in-unity-using-bolt-part-4/

    I'm going to do a small re-cap article.
    I'm also planning a couple of really small Bolt tutorials.

    And right now I'm doing a livestream of a small Castle Defence game using Bolt. I'm trying to make something that seems more like a game. Something that is still simple. Anyway, the live stream is on right now:

    http://www.twitch.tv/gamerpet

    Yesterday I also streamed for full 4 hours :D
    This is pure Bolt action since everything will be done with Bolt.

    Thanks guys!

    Tell me if you have suggestions or if you want to see something in particular.
     
    Mark_01, ocimpean, benderete and 3 others like this.
  48. Arganth

    Arganth

    Joined:
    Jul 31, 2015
    Posts:
    277
     
    SteveB and GamerPET like this.
  49. LazloBonin

    LazloBonin

    Joined:
    Mar 6, 2015
    Posts:
    812
    Hey everyone!

    Did you know about Devdog's Christmas Giveaway?

    It's a wonderful holiday contest where you can enter to win $35 000 worth of assets and even some Nintendo Switch consoles! In the spirit of the holidays, Ludiq is giving away 3 free keys for Bolt that will be handed out to random winners on December 25.

    All you have to do to enter is click on this big banner below ⬇ and enter your email.
    Take a minute to share the page too! With every sharing milestones, more presents are unlocked!

     
    Last edited: Dec 19, 2017
    Akshara, red2blue and Lars-Steenhoff like this.
  50. GamerPET

    GamerPET

    Joined:
    Dec 25, 2013
    Posts:
    370
    Hello ladies and gents!

    Over the past 2 weeks I have been using Bolt almost every day. I been having a lot of fun. 2 weeks ago I started to "develop" a small game and I'm having a lot of fun with it :) Today I livestreamed for 4 hours, yesterday for 10 hours... lot's of cool stuff :)

    Anyway, I started to a small devlog with the progress. Not like my last tutorials, but more of an overall. Mostly because this project is a bit more complex and flows change from day to day. This is Devlog #2:



    I also made a Hack'n'plan board with all the features I will add :) Tomorrow I think I will start developing an "Archer - AI".

    I'm also planning on doing some smaller bolt tutorials ... soon. If you have any suggestions on what you want to see, tell me.
     
    Mark_01, red2blue, SteveB and 2 others like this.
Thread Status:
Not open for further replies.