A hierarchical, dot-path GameplayTags implementation for Godot 4, with hashed identifiers that cost no runtime string handling once registered, plus a full conditional rules engine (GameplayTagCondition and GameplayTagOperation) for driving gameplay and narrative logic.
What it does
GameplayTags Foundation gives you a structured, hierarchy-aware tag system built on these core types:
GameplayTagRegistry— engine singleton tracking every registered tag and its hierarchyGameplayTagCollection— a RefCounted container of tags with numeric stack values and set operationsGameplayTagCondition— a Resource predicate that tests a tag's presence or value in a collectionGameplayTagOperation— a Resource state mutation that applies arithmetic to a tag's value, guarded by conditions
Tags follow a dot-separated hierarchy. Registering "Effects.Buff.Strength" automatically makes it a descendant of both "Effects.Buff" and "Effects". Hierarchy is stored as parent links compiled to interval (nested-set) encoding, so descendant checks are an O(1) range comparison rather than a hash-set lookup.
GameplayTagCondition and GameplayTagOperation are Resource-derived, not just script-side value types, specifically so they can be authored inline on graph nodes and edited in the Inspector — this is a core dependency for Ogham Storyteller Foundation.
Enable the plugin (Project Settings > Plugins) to get a tag-picker Inspector field on any tag-name property, compact single-row editors for conditions and operations, and a GameplayTags bottom-panel dock for tag-tree CRUD across every .gptags file in the project.
Requirements
- Godot 4.6 or compatible
- Foundation for xxHash, a hard dependency (hashing backend)
- Game Framework, enabled in the consuming project
- Heathen Toolbox, which manages both dependencies for you — if either is missing, enabling this plugin walks you through fetching them automatically.
Links
- Codeberg: https://codeberg.org/Heathen-Engineering/Godot-GameplayTags-Foundation
- Documentation: https://heathen.group/kb/gameplaytags-welcome/
- Support and Discord: https://discord.gg/xmtRNkW7hW
- Licence: Apache 2.0
Want more?
Visit heathen.group to learn more about our work. Our Toolkits and further tools across multiple engines, beyond what's published here, are available through our Direct Code Access: a perpetual, organisation-wide licence, not a subscription, which also grants access to our private Git server.
Changelog for version v1.6.0
2026-10-12 17:08:32
No changelog provided for this version.