Why is my Blueprint variable not updating during gameplay in Unreal Engine 5?

Hi everyone,

I’m working on a small gameplay mechanic in Unreal Engine 5 where I track the player’s score using an integer variable inside my Character Blueprint. Everything works perfectly when I print the value in the Event Graph — it updates every time the player collects an item.

However, when I try to display the same variable in my UI (using a Widget Blueprint bound to that variable), it doesn’t update during gameplay. It only shows the initial value from when the level started.

Here’s what I’ve tried so far:

  • Made sure the variable is set to “Instance Editable” and “Expose on Spawn”
  • Checked that I’m referencing the correct Character instance in the widget
  • Used Event Tick to update the widget, but the value still doesn’t change

I’m not sure if I’m missing a step in binding variables between Blueprints or if there’s a better way to handle this. Has anyone else run into a similar problem?

Thanks in advance for any advice!

Hello and welcome :slight_smile:

Not sure exactly what is happening, but it sounds like you are not binding to the actual character.

How do you get the character in the widget? Could you show us your Text binding function?