Databrain is a powerful tool for managing object-based game data. It allows you to create custom data objects, import data from CSV or Google sheets, and to utilize the Unity UIToolkit or field attributes to build visually appealing inspectors for your data. It also allows you to categorize data using namespaces and derived classes.
You can also expand Databrain with our available add-ons to truly make it the Swiss Army knife of your data management needs.
-> Website
-> Discord
Databrain 2.0 now available! Includes Logic node editor add-on by default!
Get the complete bundle including all add-ons and save 20%
⭐️ Professional editor
The editor is designed for professional use and offers a scriptable object workflow, allowing for easy assignment and access in both the Unity inspector and scripts. Additionally, a range of customizable field attributes allows you to fine-tune data displays to your liking and even create your own custom GUI using the UIToolkit.
Thanks to the powerful dropdown attribute (property drawer), you can easily assign your data object to your custom script from the inspector via.
🚀 Unity Inspector on steroids
The DataObject property drawer lets you easily assign DataObject references via dropdown, enabling you to view your data—including custom UI elements—and even create new DataObjects, all within the Unity Inspector itself for a highly efficient workflow.
🧠 High Level Visual Scripting
Databrain now includes the High Level Visual Scripting node editor - Logic.
Create State Machines, Game Logics, Data Logics, Tutorials and any other high-level flows for your game directly inside of Databrain.
💾 Save & Load
Databrain comes with a well-designed runtime save and load system that utilizes Newtonsoft.Json for serialization. At runtime, Databrain creates a runtime copy of your DataObject which is used for all runtime value modifications, which is then serialized during saving. You can access either initial or runtime values via API.
📄 Scriptable object workflow
Use the scriptable object workflow to easily reference data objects in your custom classes. Access both initial and runtime data seamlessly.
🚨 Events
Databrain utilizes an event system that lets you create and assign event objects of different types, each capable of supporting different class types as parameters. You can easily assign event objects to your custom classes and trigger events at runtime.
🔧Add-ons
Expand the capabilities of Databrain even further with these additional add-ons:
2.3.3
----
Bugfixes:
- Fixed bug where tags would apply to all DataObjects of the same type.
- Fixed bug where view setting would vanish after adding tags.
Improved:
- When in horizontal or flex view and more than one DataObject is selected, only selected DataObjects will be displayed.
2.3.2
----
Bugfix:
- Fixed bug which would not allow "/" in DataObject titles because of invalid filename checks.
- Fixed critical issue where re-parenting data objects back to main data library could result in lost of DataObjects.
- Removed Debug.Logs
2.3.1
---
Bugfix:
- Fixed issue DataObjectDropdown attribute not working correctly with lists.
2.3.0
---
Bugfix:
- Fixed critical issue when unparenting DataObjects into separate folder, DataObject references would be lost on prefabs and scene objects.
2.2.2
---
New:
- Added additional custom label attribute to DataObjectDropdownAttribute
Bugfixes:
- Fixed several path handling issues on MacOS
2.2.1
----
Bugfix: Removed unused namespace.
2.2.0
---
New:
- Added new feature which allows to separate DataObjects into custom folders - Unparenting from the DataLibrary. -> Can be enabled in the settings: DataObjects Folder
Bugfix: Fixed issue where it was not possible to view runtime dataObjects in the editor.
Bugfix: Fixed selection issue in editor window.
2.1.4
---
Bugfix:
- Fixed a critical issue: Deleting a single DataObject in Horizontal or Flex view would incorrectly delete all DataObjects of the same type.
2.1.3
---
Bugfix:
- Fixed build failure issue, related to editor specific API not being excluded.
2.1.2
---
Bugfix:
- [Critical] Fixed issue where the runtime library editor would display initial data objects. Therefore, not reflecting the actual runtime data object values.
- Fixed some issues related to version control. Library won't get marked as changed when
just selecting data objects for example.
2.1.1
---
Bugfix
- Fixed an issue where DataObjectDropdown titles would be clipped.
- Fixed NullRefException when trying to change data view and no data type is selected.
New:
- Added new feature which loads a DataLibrary from Resource folder when no data library was found from the DataObjectDropdown.
( Based on feature request: https://discord.com/channels/744963469086031963/1301183257655902218 by Patrick|Cozy Game Studio)
- Added scrollview to settings window
2.1.0
---
New:
- Added different data display views to easily view multiple data objects at once.
- Improved DataObject general foldout element.
Bugfix
- Fixed an issue where in some cases DataObjects would be sorted under a wrong DataObject type.
- Added method which removes all icons from sub-assets because of an issue which will result in a build failure.
- Fixed issue where it was not possible to connect a node which inherits from another node type which is allowed to be connected to.
2.0.1
---
Bugfix
- Fixed issue with scripting define symbols. This led to none workable scripting define symbols for some add-ons. Example: Localization and Inventory support for Progress add-on
2.0
---
New:
- !!!LOGIC Add-On is now a part of the Databrain core features!!!
- Added possibility to set categories for the DataObjectDropdown popup by adding "/" to the title of a DataObject. (Thanks to @sergeev_1999 from the Discord community <3)
- Added possibility to call an editor refresh from a DataObject editor UI. (base.Refresh())
- It is now possible to configure in the settings whether a DataObject should be hidden by default upon creation.
- DataObjects can now have a dependent DataObject, the dependent DataObject will be shown in the list view as a green label. By clicking on it, it will bring you to the dependent DataObject.
Bugfixes:
- Fixed build fails with error: An asset is marked with HideFlags.DontSave but is included in the build
LOGIC:
New:
- Added UsageHints for optimizing rendering of node VisualElements for frequent position and transformation changes. (Thanks to El_Professor from Discord community)
- Added additional parameters: NodeEditor and NodeVisualElement to overridable EditorInitialize method in NodeData class.
- Added possibility to add a texture for gradient node borders. Use NodeGradientBorder attribute.
- Added [NodeCustomInspectorTab] attribute for a node class. This will create a dedicated tab in the node editor inspector which shows the node's specific inspector.
- Added [HideNodeOnCanvas] attribute this will hide a node on the canvas
- Added [LogicGraphDefaulNodes] attribute to use on a LogicGraph class to define default nodes which should be added by default.
Bugfix:
- Fixed issues with demo scene when InputSystem and AI navigation packages are not installed.
- Fixed scripting define symbols API for Unity 2023 and later.
- Fixed issue where node panel search result would not use correct order defined by the NodeCategory attribute.
- Fixed issue where scene component references on a LogicController component wouldn't get serialized.
- Fixed issue where selected graph would disappear after exiting play mode. (Needed to re-select graph)