This project aims to centralize the various tools I develop under Unity. If there are things you can use, use it for free (under MIT license).
The tools are designed to speed up iteration time for a better workflow efficiency. Most of them are independent but there is usually a common base (found in the Core/ folder).
- Scriptable Object architecture (inspired by the Ryan Hipple Game Architecture with Scriptable Objects conference: https://www.youtube.com/watch?v=raQ3iHhE_Kk)
- UE4-like Blackboard: A class allowing to store an array of variables by entities. This allows information to be transmitted through multiple components while reducing their coupling.
- Finite State Machine inspector framework (FSMState, FSMStateTransition, FSMStateTransitionCondition, FSMStateModule):
Allows to design multiple states from the editor without using code (or very little).
Finite State Machine and blackboard sample
- Sensors (Raycast Utility to use raycast from asset descriptors, …)
- Procedural action system (for 2D action games): Allowing to combine various tweakable actions (Hitbox for damage, Momentum for movement, StatModifier, Combo Sequence, …)
A prototype made with the procedural action system
Advanced Editor Utility
- Advanced Editor Utility (Animation, Input management, MinMaxRange, Physcis…)
- GUI attributes to extend the editor (such as ReadOnly or LayerMask).