Description

When references to Gameplay Tags are loaded, it checks to see if they are already registered. If they are not already registered, it will notice it is invalid and may print a warning depending on the project settings. This can happen in the case of game feature plugins like ShooterCore in Lyra because they load later in startup. 

The developer settings used by the Common UI Input Settings described in the repro use the Config system when imports gameplay tags as text. When tags are defined in a config file they go through a call in UObject::LoadConfig that does not count as "loading", so it ends up clearing the tag. It does not warn about this behavior so there is silent data loss. One possible fix is to change the config code to add PPF_SerializedAsImportText to the import.

Steps to Reproduce
  1. Open Lyra in visual studio
  2. Open ShooterCoreRuntimeModule.cpp and add these two lines to the file to declare a native gameplay tag:
#include "NativeGameplayTags.h"
UE_DEFINE_GAMEPLAY_TAG_STATIC(TAG_UI_ACTION_PLUGIN, "UI.Action.Plugin");
  1. Compile and load lyra in the editor
  2. Load Project Settings and then select Common UI Input Settings
  3. Add a new InputAction and point it to the UI.Action.Plugin tag we just added, the ui should now look like this: [Image Removed]
  4. Close Lyra and restart editor
  5. Go back to the Common UI Input settings and look at the input actions

Expected behavior:

The actions should look the same as they were set originally (the screenshot), or it should give you an error about it failing to load properly

Broken behavior:

The UI.Action.Plugin tag is silently cleared when the config file is read, and there is no warning for what went wrong. The UI looks like this:

[Image Removed]

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-221836 in the post.

0
Login to Vote

Fixed
ComponentUE - Gameplay
Affects Versions5.45.5
Target Fix5.5
Fix Commit35570526
CreatedAug 14, 2024
ResolvedAug 15, 2024
UpdatedAug 29, 2024
View Jira Issue