Releases: RealityStop/Bolt.Addons.Community
Constructor Fix
Babywka found an error in the OnVariableChanged option constructor, which resulted in an error message for some users. This has been fixed!
Lazlo speaks: Icons, Colors, and Dropdowns
Lazlo spoke, and now we have Descriptors and Widgets! Icons, Colors, and Dropdowns are are now ours!
On Variable Changed now has dropdown support for variables, and a new custom icon.
Todo now has the message in the unit area, as well as a custom icon. If the user marks it as an error, the icon will change to reflect this:
Stuff Happens now has the documentation color and a new icon
Various other icons have changed. Thanks Lazlo!
Documentation Units and On Variable Changed
On Variable Changed
Triggers event when the attached variable is changed. May incur a frame delay, as this is essentially a change detect on an update, and is not integrated to the variable subsystem. Will execute at most once per frame.
Todo
A unit that allows you to mark a step to complete later. By default, this unit will post a warning in the log whenever it is hit, but it can also be marked as a failure in the graph inspector, which may be useful for detecting edge cases to handle later.
Comments
These are now a standard feature.
Stuff Happens
This is a no-op unit that does nothing, but is useful for markup when posting graph images for posting on Discord or the Forums.
Corrected Exports
The 2.0.1 release included a reference to the UnityEngine.CoreModules.dll, which causes an error in 2018. This has been fixed and rereleased.
V2.0.1 - Bolt 1.4 Compatibility
This release brings the Fundamentals package up to Bolt 1.4, in both .NET 3.5 and .NET 4.6 variants.
If you are upgrading from a 1.X version of the Community Addons, then add the Upgrade Pack in addition to the Fundamentals, otherwise it can be safely ignored!
Version 2! Restructuring, New Features, and Upgrading
Version 2.0 has arrived!
Many companies justifiably believe that the major version number conveys a major new feature. The minor version lies forgotten in some corner gathering dust, waiting for his chance to be significant.
Since this is an open source project, I wish to convey a bit more than this. The minor version number represents that you, the user, can upgrade without worrying about breaking changes. Install and go. The Major version number doesn't convey this promise, and that is what brings us to 2.0 (though we've tried to jazz up the release a bit, as you'll see).
New Fundamental units:
2.0 Brings variadic Logic, Branching, and Math to Bolt. Enter how many inputs you need and the operation type, all in one node!
In addition, most nodes have moved under the /Community label in the Fuzzy Finder. This should make us more future-proof against any changes Ludiq may make in the future about the organization of the Fuzzy Finder.
Version 2 brings the first of JasonJonesLASM
Jason has had standing contributor access to the project for some time, but with this release he has put together the first feature package for the Community project: Return Events. These have been featured in the Ludiq macro section for some time, but Jason upgraded them to custom units with variable argument counts and brought them to the project. You'll find them in the Events package.
In addition, we've put together a small example scene to demonstrate the units, which you will also find in the list of binaries to download.
Significant architectural changes
With the addition of Jason's extensions, it became readily apparent that the existing architecture for the Community project did not scale well to handle the additional incoming content. We think we've devised a new system that should carry us going forward, but it requires a few changes in your projects.
The Bolt.Addons.Community.Logic
, Bolt.Addons.Community.Math
, and Bolt.Addons.Community.Variables
are now found under the Fundamentals package, and are now one runtime .dll and one editor .dll. The aim of this package is convenience units that are entirely standalone, but extend the existing Bolt experience with simple extensions.
However, due to the way .UnityPackages work, we need to remove the old .dlls from existing projects. To this end, we offer the Fundamentals Upgrade Pack, which includes empty dlls that will blank out the old dlls, preventing duplicate content in your fuzzy finder. If you have never used a Community pack before, there is no need to install the upgrade Pack, as you have no pre-existing dlls to overwrite.
All other changes will be automatic, but it WILL require a regenerate of the units for everything to get sorted out.
Deprecations
Is Null has been obsoleted. It is entirely replaceable with the Equals node under Logic (NOT object's Equals).
On Every X Second fix
On Every X Seconds
v1.6 - IsNull, RandomNumbers, ChangeDetect, and revamped DoOnce (Prerelease)
Add three new nodes (Is Null, Random Numbers, and Change Detect)and revamps DoOnce to merge the two variants together.
Change Detect
When entered, this node checks to see if a value has changed, and passes control flow to the On Change exit flow. On Change will only trigger if the value of Input has changed, and on the first iteration.
For convenience, the current value is passed in the value output port.
(when using floating point numbers, the node will call Mathf.Approximately() to prevent excessive triggers)
Random Numbers
Generates a list of random numbers (floating point or integer) within a given range. Use the graph inspector to switch between integer and floating point modes.
Is Null
Detects if a value is null. Unlike the built-in units, this provides the Null check as a boolean result. While rarely required, this is necessary as Bolt does not have any way to get a boolean result for a null check. (Null cannot be passed to the existing Equals unit, and none of the built-in Null checks yield a boolean)
Do Once (v2)
As previously mentioned, Do Once was revamped to be a single node that encapsulates both variants. Existing instances of the original Do Once nodes will continue to work, but will color yellow to show they are obsoleted.
The new variant contains the two original modes with a toggle in the inspector window.
In other respects, the nodes function the same as their original specification.
v1.5 Polarity, Edge Trigger, and Do Once
Adds four new nodes, Polarity, Edge Trigger, and two variants of Do Once.
Edge Trigger
Detects when a boolean transitions value. Exit is only triggered when the value changes.
Do Once
Lets one control flow instance through until it is reset. The Test Reset input an optional control flow that allows the Do Once node to requery the reset without an entering control flow. Test Reset will never trigger the Exit, and is frequently unneeded, as the Enter input will also test the Reset value. Should the reset signal come in while Enter is not being toggled, however, wiring the Test Reset is necessary
A simpler flow based version also exists:
Polarity
Given a number, it outputs whether the value is zero, positive or negative.