Bolt v.2.0.0a7
Alpha
2020-01-24

Thank you for helping us test Bolt 2!

Alphas are frequent unstable preview releases. Each alpha adds new features towards the final feature set of Bolt 2. You can learn more about Bolt 2 in our Blog Post, our Design Document or our Roadmap.

Do not use Bolt 2 alphas in production projects.

These releases are unstable, untested, and prone to multiple breaking changes in the future.

Alpha 7 Compatibility Status

Compatibility with Bolt 2 alphas: Compatible with Alpha 6 or above

Compatibility with Bolt 1 projects: Untested at the moment

Compatibility with Unity 2018.4: Tested, working

Compatibility with Unity 2019.3: Tested, working



How to install

Bolt 2 requires Unity 2018.4 or above with the .NET 4.x API Compatibility Level.

  1. Download and install Unity 2018.4
  2. Create a new project
  3. Open Edit > Project Settings...
  4. Select the Player tab, scroll down to Configuration
  5. Set Scripting Runtime Version to .NET 4.x Equivalent
  6. Set Api Compatibility Level to .NET 4.x
  7. Download and import Bolt
  8. Follow the Setup Wizard
  9. Open the Bolt windows under Window > Bolt

How to update

Alpha 7 is only compatible with Bolt 2 Alpha 6 projects or above.

Alpha 7 is not yet compatible with Bolt 1 projects. Forward porting utilities will be added in a later version.


How to report bugs

We rely on our community to help us fix all bugs before the official release of Bolt 2. We truly appreciate the time and effort you spend in submitting clear and concise bug reports.

You can report bugs for Bolt 2 alphas in the Forum as usual.

Make sure your bug report has:

  • The Bolt 2 tag checked (important!)
  • Bolt, Unity and .NET versions indicated
  • Stack trace of the error, if any.
    For realtime C# preview, click the message to log the stack trace to the console.
  • Reproduction steps or graph screenshots, if applicable.

The easiest and best way to help us reproduce your bug report is to use the new Graph Share Tool in the top right toolbar.


Changelog

Ludiq Core
Changed
Enumerable-to-array and enumerable-to-list conversion to require element type compatibility #4477
Ludiq Core
Fixed
Issues related to delayed plugin container initialization #2591
Ludiq Core
Fixed
Scene hierarchy drag & drop #4600
Ludiq Core
Fixed
Fuzzy window for new graphs not closing or appearing in the wrong position
Ludiq Core
Fixed
ScriptingRuntimeVersion deprecation warning in Unity 2019.3
Ludiq Core
Fixed
Component header override position in Unity 2019.3 flat skin update #4547
Ludiq Core
Fixed
Version control unlock warning when target file did not exist #4568
Ludiq Core
Fixed
Version control utility threading error #4545
Bolt Core
Added
Unscaled option to reflected tweens #4018
Bolt Core
Added
Support for small unit icons when unit title is hidden
Bolt Core
Added
InvokeUnityEvent and InvokeAnimationEvent to ClassComponent #4562
Bolt Core
Changed
Moved Delete Generated Scripts option out of developer menu
Bolt Core
Improved
Automatic categorization of newly created classes in the Explorer
Bolt Core
Improved
Tween unit widgets #4018
Bolt Core
Improved
Wording of warning when unit options fail to load #3174
Bolt Core
Improved
Error message when graph variable or event parameter type contains open generic parameters
Bolt Core
Improved
Bezier calculations and droplet animation
Bolt Core
Fixed
Various graph collapse issues #4572
Bolt Core
Fixed
Various description issues with class events #4558
Bolt Core
Fixed
Graph editor collapsing upon edit and other positioning issues #4561
Fixed
Console losing focus repeatedly due to graph ping handling #3923
Bolt Core
Fixed
Result traversal heuristics in Delegate unit #4620
Bolt Core
Fixed
Graph root descriptor invalidation #4569
Bolt Core
Fixed
Ensure local identifiers are camelCased
Bolt Core
Fixed
Extra period in generated scripts namespace #4546
Bolt Core
Fixed
Graph window tab not fully closing from menu item #4586
Bolt Core
Fixed
Code generation identifiers for pure numeric or pure symbol names
Bolt Core
Fixed
Disabled class host debugging messages
Bolt Flow
Added
Code generation support for logical units (And / Or / Xor / Not) #4589
Bolt Flow
Changed
Renamed Negate to Not
Bolt Flow
Changed
Name comparison for UnityEvent and AnimationEvent to strict equality
Bolt Flow
Changed
Yield instruction constructors to yield their result when entered through the control input of a coroutine flow #4590
Bolt Flow
Improved
Misc unit option tree improvements #4575
Bolt Flow
Fixed
Member unit description update when closing generic type #4571
Bolt Flow
Fixed
Proxy description caching issues #4563
Bolt Flow
Fixed
False positive warning in Assign type mismatch #3885
Bolt Flow
Fixed
Missing LayerMask literal #3897
Bolt Flow
Fixed
Tween code generation for quaternions #3904
Bolt Flow
Fixed
Relations for flow function exit #4566
Bolt Flow
Fixed
Missing debugging highlight of externally invoked units
Bolt Flow
Fixed
Type conversion of default-to-self inputs for component class instances #4577
Bolt Flow
Fixed
Errors and layout when collapsing to flow function
Bolt Flow
Fixed
Code generation errors for UnityEvent and AnimationEvent #3143
Bolt Flow
Fixed
Collapse error when units were redefined during the collapse operation #4572
Bolt Flow
Fixed
Renamed update input event invoke methods to Update for clarity
Bolt Flow
Fixed
Code generation errors related to reflected unit namespaces #4550
Bolt Flow
Fixed
While loop not emitting body statements in code generation #4588
Bolt Flow
Fixed
Loop units port order in vertical flow
Bolt Flow
Fixed
Stale control connection coroutine detection
Bolt Flow
Fixed
Stale control connection coroutine detection
Bolt Flow
Fixed
Stale control connection coroutine detection
Bolt Flow
Fixed
Various issues with coroutines #4590
Bolt State
Fixed
Reveal Transition Label preference not being used by transition widgets #3973
Bolt State
Fixed
State transition warnings not recognizing reflected and class events as valid #3922
Bolt State
Fixed
Any State only branching once #3896
Bolt State
Fixed
Any State destination re-entry #3896
Bolt State
Fixed
Various issues with state transition descriptions #4570
Bolt Flow
Fixed
ObjectDisposedException when event handler does not invoke its trigger #4614

Bolt v.2.0.0a5 Changelog

Ludiq Core
Added
Support for gradients
Ludiq Core
Added
Separators in type option tree root
Ludiq Core
Added
Editor preference to display obsolete options
Ludiq Core
Fixed
Odin Serializer dependency error in Unity 2019
Ludiq Core
Fixed
Object inspector not displaying generic argument selectors
Ludiq Core
Fixed
Code generation error when casting negative numeric primitives
Ludiq Core
Fixed
Code generation error when using identifiers starting with illegal characters such as numbers
Ludiq Core
Fixed
Various AOT stubs generation errors
Ludiq Core
Fixed
Various conversion and instantiation errors related to open-constructed generic types
Ludiq Core
Fixed
Various inspector and accessor related issues
Ludiq Core
Fixed
Unused variable warnings in generated code
Ludiq Core
Fixed
Legacy AOT collections failing to deserialize with Odin
Ludiq Graphs
Changed
Redesigned window management UX
Ludiq Graphs
Added
Contextual graph window title text and icon
Ludiq Graphs
Added
Support for opening macros by double-clicking asset file in project view
Ludiq Graphs
Added
Support to drag & drop macros to game object in hierarchy to create linked machine
Ludiq Graphs
Added
Menu options and keyboard shortcuts to control graph window tabs
Ludiq Graphs
Added
Dirty indicators to graph window title and breadcrumbs
Ludiq Graphs
Added
Hierarchy icon to game objects with machines
Ludiq Graphs
Added
Error ping icon in hierarchy when machines contain runtime exceptions
Ludiq Graphs
Added
Hierarchical error clearing
Ludiq Graphs
Added
Ping Error context menu action
Ludiq Graphs
Added
Animation for graph pings
Ludiq Graphs
Added
Drag prediction highlight for carried elements
Bolt Core
Added
Added blacklist support to extraction
Bolt Core
Removed
Ludiq namespaces from extraction by default
Added
Generic List and Dictionary to common types
Changed
Reinstated right-click port disconnection
Bolt Flow
Removed
Disabled collapsing when selection contains input / output units
Bolt Flow
Fixed
Code generation errors when assigning delegates
Bolt Flow
Fixed
Code generation errors with embedded default values
Bolt Flow
Fixed
Code generation errors with default values in super units
Bolt Flow
Fixed
Code generation errors with reflected events
Bolt Flow
Fixed
Code generation errors with unary operators
Bolt Flow
Fixed
Missing AOT stub writer for events
Bolt Flow
Fixed
Tween extension methods not being extracted by default
Bolt Flow
Fixed
Port definition change not redefining super units
Bolt Flow
Fixed
Indexers not appearing in type options
Ludiq Core
Fixed
Ambiguous match exception in Unity 2019.1 #3151

Bolt v.2.0.0a4 Changelog

Ludiq Core
Added
Odin Serializer to replace FullSerializer
Ludiq Core
Added
Generics, Indexers and Events to core reflection library
Ludiq Core
Added
Integration with new Project Settings and Preferences windows
Ludiq Core
Added
Support for multiple icons and separators in fuzzy finder
Ludiq Core
Optimized
Plugin container initialization
Ludiq Core
Optimized
Core reflection library
Ludiq Core
Optimized
Fuzzy finder options population
Ludiq Core
Fixed
XML Documentation that included tags
Ludiq Graphs
Added
Graph Pings that can focus on any specific graph element
Ludiq Graphs
Added
Relevant code generation error messages
Ludiq Graphs
Added
Graph ping when on code generation errors
Ludiq Graphs
Added
Full Code mode to code preview window
Ludiq Graphs
Added
Tuple, generics and lambda support to code generation
Ludiq Graphs
Fixed
Clipboard error when context-clicking canvas background
Bolt Core
Changed
Renamed Bolt namespace to Ludiq.Bolt to avoid conflicts with Photon Bolt
Bolt Flow
Added
Generics support to reflected units
Bolt Flow
Added
Delegate Units
Ludiq Graphs
Added
Reflected Event Units
Bolt Flow
Added
Indexer Units
Bolt Flow
Added
Assign Unit
Bolt Flow
Added
Convert Unit
Bolt Flow
Added
Coroutine Unit
Bolt Flow
Fixed
Wait for Instruction Unit
Bolt Flow
Changed
Wait for Coroutine Unit
Bolt Flow
Added
Coroutine flow analysis
Bolt Flow
Added
Coroutine flow indicator
Bolt Flow
Added
Per-connection Enabled toggle
Bolt Flow
Added
Per-connection Breakpoints
Bolt Flow
Added
Graph ping on runtime errors
Bolt Flow
Added
Graph ping on Debug.Log* calls
Bolt Flow
Added
Generic List<T> and Dictionary<TKey, TValue> to default types
Bolt Flow
Added
Word delimiter support to search algorithm
Bolt Flow
Added
Selection support to connections
Bolt Flow
Added
Action to convert between proxies and connections
Bolt Flow
Added
Action to insert unit in existing connection
Bolt Flow
Added
Insertion of converter units when connecting incompatible ports
Added
Relations inferral to super units
Bolt Flow
Added
Additional icons to unit options fuzzy
Added
Separators to unit options fuzzy
Bolt Flow
Added
Option to automatically create proxies for connections that would be twisted
Bolt Flow
Optimized
Unit options fuzzy finder
Bolt Flow
Fixed
Various code generation errors
Bolt Flow
Fixed
Missing literal and primitive options
Bolt Flow
Changed
Renamed Control category to Flow
Bolt Flow
Removed
Non-generic collection units
Bolt Flow
Removed
Coroutine option on events
Bolt Flow
Removed
Per-unit breakpoint

Bolt v.2.0.0a3 Changelog

Bolt Flow
Added
Tweening (powered by DOTween)
Bolt Flow
Added
Smart Contextual Options
Bolt Flow
Added
Strongly-Typed Operators
Bolt Flow
Added
Bitwise Operators
Bolt Flow
Added
Literal Creation from the fuzzy finder
Bolt Flow
Added
Unit port definition options for Allows Null, Null Means Self and Primary
Bolt Flow
Added
C#-like copy-by-value semantics for value types
Bolt Flow
Added
Default true value for Branch condition
Bolt Flow
Added
Nested graph inspector to super unit inspector
Bolt Flow
Added
Double-click Graph Input or Output to go to parent graph
Bolt Flow
Added
Port to Super Unit promotion
Bolt Flow
Changed
Hide Get verb label on unit titles for compactness
Bolt Flow
Removed
Obsoleted all previous operator units
Bolt Flow
Fixed
Port proxy carry behaviour #2497
Bolt Flow
Fixed
MSBuild path detection #2491
Bolt State
Added
State Re-Entry Option
Bolt State
Changed
Any State exit behaviour to be recursive
Ludiq Graphs
Added
Graph Sharing
Ludiq Graphs
Added
Node Collapsing
Ludiq Graphs
Added
Redesigned Toolbar
Ludiq Graphs
Added
Graph Inspector Popup
Ludiq Graphs
Added
Warnings display on hover
Ludiq Graphs
Fixed
Support for resizing graph elements while zoomed out
Ludiq Graphs
Changed
C# Preview font to improve type-hinting
Ludiq Core
Added
Breadcrumbs to fuzzy window
Ludiq Core
Added
Category search in fuzzy window
Ludiq Core
Added
Script reference resolution for all Bolt 1 scripts
Ludiq Core
Added
Options panel to Extractor
Ludiq Core
Added
Nested types inclusion for hierarchical type extraction
Ludiq Core
Added
Nested type icons now use fallback to their parent type
Ludiq Core
Changed
Merged AOT Pre-Build in Generation process
Ludiq Core
Optimized
General search and option fetching speed
Ludiq Core
Fixed
Fuzzy Finder rendering glitches

Bolt v.2.0.0a2 Changelog

Bolt Flow
Added
Vertical Flow
Bolt Flow
Added
Compact Units
Bolt Flow
Added
Port Proxies
Bolt Flow
Added
Breakpoints
Bolt Flow
Added
Smart Carry
Bolt Flow
Added
Drag Port to Input / Output
Bolt Flow
Added
C# Preview for Super Units
Bolt Flow
Added
Default Flow Macro Presets
Bolt Flow
Added
Keyboard shortcut to reveal Proxies and Relations (Alt)
Bolt Flow
Added
Double-click Graph Input or Output to go to parent graph
Bolt Flow
Fixed
Implicitly typed variables in generated C# for input events #2415
Bolt Flow
Fixed
Various formatting issues in generated C# #2419
Bolt Flow
Fixed
Generated C# wrapping not updating when resizing preview window
Bolt Flow
Fixed
Added a time-out recovery code for C# preview generation #2413
Bolt Flow
Fixed
Error in generated C# for Once unit #2422
Ludiq Graphs
Added
Snapping
Ludiq Graphs
Added
Group Comments
Ludiq Graphs
Fixed
Graph scripts folder not getting created automatically
Ludiq Graphs
Changed
Focus keyboard shortcut from Home to F
Ludiq Graphs
Removed
Snap to Grid

Bolt v.2.0.0a1 Changelog

Bolt Core
Added
C# Script Generation for Flow and State Graphs
Bolt Core
Added
Realtime C# Preview Window (Window > Bolt > C# Preview)
Bolt Core
Added
Runtimes: Live, Generated, Hybrid
Bolt Core
Added
Workflow Toolbar (Window > Bolt > Toolbar)
Bolt Core
Added
Extractor Window (Tools > Bolt > Extractor...)
Bolt Core
Added
Bulk Type, Namespace and Assembly Extraction
Bolt Core
Added
Fast (Incremental) Extraction
Ludiq Core
Added
Odin Serializer Dependency
Ludiq Core
Added
Layout Swapping Hotkeys (Ctrl/Cmd+Space)
Ludiq Core
Added
Unity Message Proxies
Ludiq Core
Added
VectorXInt Support
Ludiq Graphs
Added
Node Deselection
Bolt Flow
Added
Overloads Context Menu Item
Bolt Flow
Added
Fuzzy Finder Hotkey (Space)
Bolt Flow
Added
Numeric Negation Operators
Bolt Flow
Added
On Particle Trigger Event
Ludiq Core
Changed
Folder Structure
Changed
Grouped Window Menu under Bolt Bolt Core
Bolt Core
Optimized
Extraction Speed
Bolt Core
Optimized
Loading Speed of extracted data
Ludiq Graphs
Removed
Graph Window Sidebars

Bolt v.2.0.0a6 Changelog

Ludiq Core
Added
Search Query Word Permutations
Ludiq Core
Added
Tag Search
Ludiq Core
Added
Queue and Stack to common types
Ludiq Core
Optimized
Event Bus
Ludiq Core
Improved
Property change notification system
Ludiq Core
Improved
Descriptors and descriptions
Ludiq Core
Changed
Setup wizard no longer opens after project setup
Ludiq Core
Removed
Backup utility
Ludiq Core
Removed
AOT Pre-Build
Ludiq Core
Removed
Useless references to MiscUtil, DotNetZip, DeepCloner
Bolt Core
Added
Class Definitions
Bolt Core
Added
Code generation support for classes
Bolt Core
Added
Class Component
Bolt Core
Added
Class Asset
Bolt Core
Added
Singleton Classes
Bolt Core
Added
Scene Classes
Bolt Core
Added
Class Categories
Bolt Core
Added
Class Variables
Bolt Core
Added
Prefab overrides for class variables
Bolt Core
Added
Class Events
Bolt Core
Added
Graph Search
Bolt Core
Added
Explorer Window
Bolt Core
Added
Explorer Search
Bolt Core
Added
Find References
Bolt Core
Added
Go To Definition
Bolt Core
Removed
Code generation error display and recovery
Bolt Core
Added
Member level support for Extract attribute
Bolt Core
Added
Class support to Collapse tool
Bolt Core
Added
Connection values display on hover or selection
Bolt Core
Added
Custom icon support for classes and graphs
Bolt Core
Added
Shortcut indicators to context menus
Bolt Core
Added
Double-click, F1 and Ctrl+I shortcuts to inspect graph element
Bolt Core
Added
Automatic code generation on build
Bolt Core
Added
Code window menu options to Copy or Export the generated code
Bolt Core
Improved
Keyboard shortcuts in canvas
Bolt Core
Improved
Code generation
Bolt Core
Changed
Merged Ludiq.Graphs into Bolt.Core
Bolt Core
Changed
Renamed Machine to Graph Component
Bolt Core
Changed
Renamed Macro to Graph Asset
Bolt Core
Changed
Default setting for connection value display to disabled
Bolt Core
Removed
Graph Component
Bolt Core
Removed
Graph Asset
Bolt Core
Removed
Legacy Variable System
Bolt Core
Removed
Hybrid Runtime
Bolt Core
Removed
Hierarchy icons
Bolt Flow
Added
Flow Behaviours
Bolt Flow
Added
Flow Functions
Bolt Flow
Added
Flow Macros
Bolt Flow
Added
Then port to If unit
Bolt Flow
Added
Port type inferral
Bolt Flow
Added
Option to create class variable from dragged value input
Bolt Flow
Improved
Literal parsing and creation from the fuzzy finder
Bolt Flow
Improved
Flow heuristics and relation inferral
Bolt Flow
Changed
Renamed Branch to If
Bolt Flow
Changed
Reorganized Flow unit category
Bolt Flow
Removed
Super Units
Bolt Flow
Removed
State Units
Bolt State
Added
State Behaviours
Bolt State
Removed
Legacy implementation of States