📄 Info ▶ Videos 💬 Support ℹ FAQ
Blox is a Visual Scripting solution which helps you to add behaviour to objects via a drag-and-drop interface with interconnecting Blocks (actions) that responds on Events.
Coders will feel right at home with something which flow similar to how code works rather than linked-nodes. Even non-coders can use it without the hassle of programming syntaxes and rules. It also includes commonly used game systems so that you do not have to create these. Plugins add even more genre specific systems.
Be sure to look at the FAQ if you have more questions.
Event based system. Attach any number of Blox definitions to a GameObject.
Blocks for the Basic System and common Unity types, Flow control via conditions and loops, Maths operations, String, Arrays and Lists manipulation. Most of Unity's runtime can be turned into Blocks. Ability to automatically create Block definitions for 3rd party APIs. Even the functions from your own scripts can automatically turn into Blocks. Support yield instructions like WaitForSeconds.
Define Blox Properties (Variables) in a visual manner via the Blox editor and then set the values for those properties in the inspector similar to how you would with components. Easily add data to your Project via Global Variables or GameObject via the Object Variables components or Blox Variables.
There is also an API for programming new Events and Blocks when you need more control.
Made for both coders and non-coders. Popup help for Blocks help you quickly understand what it does. Community of developers to help you out at forum.plyoung.com
Blox are not scripts, making it harder to 'decompile' and view your game logic. Script generator (C# code) for when you do want to turn Blox into Scripts.
Include commonly needed components and game systems with more in development or available as plugins. Watch the videos or read the docs to learn more about the game systems that are included.
Blox, like any visual scripting solution, is probably best suited for 2 situations:
1) The lone "not so good at code" developer who will be using other assets to handle parts of the game. For example, UFPS to handle the character movement and shoot mechanics. But then need something to tie some things together. Perhaps even be able to "script" smaller things. Since Blox can turn most APIs into Blocks he would actually have access to UFPS's API via Blocks and do not need some additional plugin to Blox to make that work.
2) A team with a coder who creates functions which could be called for whatever reason. These function can be presented as Blocks in the Blox system (automated process in Blox) so that a non-coder (a level designer perhaps) could use them to hook things up.
It has its place but you need to carefully evaluate what that place would be in your project. Visual scripting solutions might only complicate your development and add an extra layer of cycles on the logic you write.
As a coder myself I always say that if you can code then just do it in code. Especially since C# is a relatively easy language and Unity’s API is easier to use than some other engines which might require a simpler way of creating logic, like via node-based/ visual scripting.