> For the complete documentation index, see [llms.txt](https://roogame.gitbook.io/roogame/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://roogame.gitbook.io/roogame/roo-gameplay-framework/troubleshooting-and-limitations.md).

# Troubleshooting and Limitations

## Setup Does Not Add My Project Tags

The Setup panel installs the required Roo root configuration without replacing your existing project tag configuration. It does not rewrite unrelated entries in DefaultGameplayTags.ini.

If project-specific tag roots are missing, add them in Unreal Engine's Gameplay Tags settings or through your normal tag configuration workflow.

## A Tag Was Added but the Designer List Did Not Change

Use **Refresh** after tags were changed outside the open Stats Designer. Changes made through the current designer should appear immediately. If an external editor or source file changed native tags, compile the module and reopen the relevant editor asset so Unreal can register the updated native tag set.

Native Gameplay Tags are defined by code and cannot be permanently deleted from the Designer. Remove the native declaration from code first, then rebuild and refresh.

## A Deleted Entry Returns After Clicking Use

Check whether the tag is still native or whether another row still references the asset. The Designer can force-delete unused non-native tags and then clean generated assets when **Use** is clicked. Native tags must be removed from their C++ declaration.

## An Attribute Starts at Zero

Check all of the following:

* The Attribute's Max Stat field directly references the intended Stat asset.
* The referenced Stat is included in the active Stats Set.
* The referenced Stat evaluates to a nonzero value.
* Start Percent is configured in the 0 to 1 range. A value of 1 means 100 percent of the maximum.
* The component was initialized after the final Stats Set was assigned.

Stats initialize before Attributes, allowing an Attribute to derive its starting value from the assigned maximum Stat.

## A Formula Returns Zero

* Use complete Gameplay Tags inside Stat and Attribute references.
* Use the supported self and target context names.
* Confirm the referenced component owns the requested value.
* Confirm the progression table is assigned when using table references.
* Check brackets, parentheses, and function arguments.

The formula evaluator is intentionally lightweight. Invalid or unresolved expressions may evaluate to zero instead of producing a detailed editor diagnostic.

## Equipment Does Not Change a Stat

* The item modifier's Property Tag must identify a Stat present in the target Stats Component.
* The Inventory Component must reference or locate the correct Stats Component.
* The configured modifier value must be nonzero.
* The item must successfully equip into a compatible equipment slot tag.
* Remove and equip the item again after changing its Data Asset during testing.

## An Item Cannot Be Equipped

Equipment compatibility uses Gameplay Tag relationships. Confirm the item's equipment tag matches or is accepted by the destination slot's tag policy. Also confirm the item exists in inventory and the destination slot is registered.

## Inventory UI Is Empty

* Derive widgets from the framework's intended UMG base classes.
* Register the inventory and equipment widgets with the Inventory Component.
* Ensure expected optional named widgets, such as BackgroundImage and ItemIconImage, use the correct names and types when you want the base implementation to control them.
* Initialize or refresh the component after the widgets are ready.
* Bind to inventory events rather than depending on Tick.

## A Buff Does Not Tick or Disappears Immediately

* Confirm Duration Type, Duration, Period, and Execute on Application settings.
* Check maximum stacks and the selected stacking policy.
* Confirm the target owns the Stats or Attributes used by its actions.
* Use group display queries for one icon per effect, and per-stack queries only for individual stack presentation.

## UnrealBuildTool Reports LNK1104 for the Plugin DLL

Close Unreal Editor and any process holding UnrealEditor-RooGameplayFramework.dll, then build again. A loaded editor DLL cannot be replaced by the linker.

## Deprecated Nodes

Prefer **Change Stat Base** over legacy additive base nodes, and **Change Attribute Value** over legacy modify-value nodes. Deprecated nodes may remain temporarily for migration compatibility.

## Current Limitations

* Unreal Engine 5.5 is the validated target for the initial release.
* Runtime Stats, Inventory, and Status Effect state do not include a built-in multiplayer replication layer.
* The framework does not include built-in save and load persistence.
* Merchant, crafting, socket, quest, combat, and AI systems are not complete runtime features.
* Inventory width, height, weight, price, use behavior, socket, and crafting fields may be metadata until your project implements the corresponding rules.
* The Setup Details tab is currently reserved for future settings.
* Demo content demonstrates integration patterns and is not a complete production game.

These boundaries are intentional: the framework provides reusable systems while leaving project-specific authority, persistence, networking, and game rules to the integrating project.
