Saturn
A library contains multiple common features for data-driven mods, including a flexible ability system, resource management, and a customizable HUD framework. It is designed to be used as a dependency for other mods, providing a foundation for creating complex gameplay mechanics without the need to reinvent the wheel.
Features
- More Codecs: Support for additional data formats and serialization methods, making it easier to work with various types of data.
- Actions & Conditions: Execute an action or check a condition, with a full set of built-in types and the ability to add your own. (Inspired by Origins)
- Costs: Define costs for abilities, including item consumption, resource usage, and custom conditions.
- Formulas: Create complex calculations for abilities, costs, and conditions using a flexible formula system. Based on exp4j.
- Storage: Store and retrieve data for abilities, conditions, and other game elements.
- Timelines: Schedule actions and events over time, with support for delays and intervals.
- Triggers: Define triggers that respond to in-game events, such as player actions or environmental changes. (Inspired by KubeJS)
- Abilities: Create custom abilities with unique effects, costs, and triggers, including support for passive abilities and resource management.
- Resources & Bars: Manage custom resources and display them on the HUD with customizable resource bars.
- HUD Framework: A flexible HUD system that allows you to create and customize HUD elements for your abilities and resources.
- Client-side Features: Includes a drag-and-drop HUD editor, resource bar rendering, and support for custom HUD elements.
- Profiling: Built-in profiling tools to help you optimize your mod's performance and identify potential bottlenecks.
- KubeJS Integration: Seamless integration with KubeJS for scripting and extending the library's functionality.

