Categories are not processed correctly for gameplay tags when meta "Categories" is used. Categories filter which categories appear for the mentioned gameplay tag variable and with recent changes, it will mark as warning any variable that don't meet all those categories.
The licensee reports to change the code from :
bool bHasValidCategories = CurrentTagContainer.IsEmpty() || MetaDataCategories.IsEmpty() || CurrentTagContainer.HasAll(MetaDataCategories);
To:
bool bHasValidCategories = CurrentTagContainer.IsEmpty() || MetaDataCategories.IsEmpty() || CurrentTagContainer.HasAny(MetaDataCategories);
1- Create a C++ UObject class
2- Create the following structure:
UPROPERTY(EditAnywhere, meta = (Categories = "Test,Foo"))
FGameplayTagContainer SomeTags;
3- Add a tag to the variable that is not just Test or Foo. An example would be Test.A. You will see that a warning will appear in the tag when it should not.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-360388 in the post.
| 0 |
| Component | UE - Gameplay |
|---|---|
| Affects Versions | 5.7 |
| Created | Jan 12, 2026 |
|---|---|
| Updated | Feb 26, 2026 |