Set Members in Structure Not Saving

Hey helpful forum people, I’m trying to be clever by using a single function to be able to alter my player’s stats, however it’s backfiring on me.

My PlayerCharacter blueprint has a custom actor component (StatsComponent) that holds the stats in a structure (PlayerStats). Inside the StatsComponent is this function, which (I believe) selects the correct stat to alter using the GameplayTag, uses some local variables for ease, and (should) set the correct structure member using a switch.

However, what is actually happening is that when I try to affect the stat, the number only changes based off the default value (100 + 10 = 110 every time instead of 110, 120, 130 etc.), which lead me to believe that the structure isn’t being saved for some reason.

I’ve seen plenty of questions that point to pass-by-reference and the diamond node inputs but I can’t see how that helps me here with the structure already being within the actor component, although I’m probably missing something obvious.

Any help is greatly appreciated!

(Screenshot of linked function)

I’m short on time at the moment, but I found a post about a possible bug:

Struct Data Resetting to Default Values on Editor Restart - Development / Programming & Scripting - Epic Developer Community Forums

Assuming the issue isn’t code related, perhaps this will help.