Documentation for TBE - The Button Engine
TBE is an RPG engine
The Button Engine [TBE] provides a data-model and implements a runtime for RPG creation in Unity.
-
It is aimed at Desktop. (the Techdemo is also proven to work with web deployment)
-
It does a lot to keep coding away from the user, but you must know how to add your own logic to get the most out of it. (See Adding your own logic)
When creating a game engine, one quickly gets to a point where the solution is extremely opinionated.
To counter this, TBE only provides modular, rather abstract features that I think are usable in many different scenarios. Also, the TBE Data Model is heavily inspired by the Data Model of Starcraft2 which is production-proven to be suitable for a wide range of game scenarios.
Another philosophy is to use as much functionality from Unity itself as is possible and practical.
Also see Why TBE?
Disclaimers:
| in-game/scenery images in this documentation are taken from my work with many assets from the asset store. They are not part of TBE. Please allow this little bit of marketing. |
| If I will ever stop or significantly slow down development of this engine before it is feature rich and polished, then I will not hesitate to open source it. |
Features:
-
Data Model: An entry point to reading about the TBE Data model is the Data Base Model. Features: Units, Abilities, Buffs, Items, Attributes, Projectiles, Validators.
-
Core Data: When using TBE, users can - but do not have to - configure the CoreData to their liking.
-
Runtime: The TBE Runtime Loads CoreData, BaseData and Actors and works on them.
-
Uses Unity Localization.
-
Works with fast entering Unity Play Mode:

Dependencies:
(For details also see the TBE Assembly Definition)
Required Paid Assets:
| TBE depends on the following PAID Unity Asset(s) which you must own to use TBE: |
-
Odin Inspector
Required Free Assets:
| TBE depends on the following FREE Unity Asset(s) which you must own to use TBE: |
-
DOTween (HOTween v2)
Required Free/Open source material:
-
UIEffects 🔗 by mob-sakai
-
Observable Collections
-
ZLinq
Required Unity Packages:
The following TBE Unity package dependencies are not installed by default (in an empty URP project):
-
Cinemachine
-
Localization
-
TextMeshPro
-
Behavior
Integrated:
TBE brings its own version of Quick Outline 🔗 and has called it HoverableOutline
Optional Integrations:
TBE has integration for Quantum Console
Scripting Define Symbols
Scripting Define Symbols are found in Unity under Edit→Project Settings→Player.
TBE uses the following scripting define symbols:
-
TBE_EDITOR_POWERMODE
-
Defining this symbol causes TBE
-
to use its included Unity Search Provider.
-
add right click context actions to
-
use the full editor name in object reference fields that reference TBE base data objects.
-
-
-
TBE_QFSW
-
Enables the Quantum console. (see above)
-