Godot MANA Plugin Progress
Progress continues and moving along nicely. All systems are also currently network capable up to this point. Below is a brief recap of where we're at.
Since making this post, the Plugin has since been renamed MANA




š¹ Tags System
- Create, edit, delete tags
- Category support with safeguards (Cue category blocked)
- is_cue flag (used by cue dropdowns)
- Tooltip display, flat tag structure
- Saved in gameplay_tag_registry.tres




š¹ Attributes System (GameplayAttributes)
- Attribute structure: base / current / max / regen
- Dependency targeting: base, max, regen
- Regen toggle and min regen clamp
- Min/max clamping
- has_max_value, regen_enabled
- regen_tag_filter
- Full manager and popup UI
- Stored in gameplay_attribute_registry.tres




š¹ Gameplay Cue System
- Cue types: Instant, Duration, Looping
- Socket attach / follow emitter
- Audio + Visual playback
- Tag-based registry (Cue.Some.Tag)
- Grouped in tree under tag ā child rows titled "Instance: 0", "Instance: 1"
- Multiplayer support with All, ServerOnly, ClientOnly modes
- Network-safe dispatch and signal emission
- GameplayCueComponent fully implemented
- Stored in gameplay_cue_registry.tres
š§ Next: GameplayEffect System
This system unifies PassiveEffects and active GameplayEffects
All attribute mods, tag grants, and effect policies will go here.
šø Core Features:
- Attribute Modifiers (target: base / current / max / regen)
- Application Policies: Instant, Duration, Periodic, Infinite
- Tag Requirements & Blocks (via TagQuery)
- Tag Grant/Removal (temporary or permanent)
- Source tracking (ability, passive, etc.)
- Removal conditions
- Full editor popup and registry
š After GameplayEffects
š¹ GameplayAbility System
- Activate with input, tag requirements, attribute cost
- Apply Cues, Effects, Cooldowns
- Hook into external logic (e.g., animations, timers)
- Modular structure
š¹ Cooldowns (Integrated)
- Handled internally by GameplayAbility
- Track cooldowns on tags or ability names
- Emits signals for UI/feedback
- Supports global or per-instance logic
š¹ GameplayTasks
- Asynchronous ability flow (waits, delays, montages, async movement)
- Expandable framework similar to UE5ās UGameplayTask
- Integrates with GameplayAbility