Boolean keeps getting set to default value?

No idea what is happening right now.

So here, when my boolean value is changed in my widget, it calls a function in a blueprint named “BP_Replicate”. This blueprint’s purpose is to replicate some values, but it doesn’t use a player character.

In the “BP_Replicate”, I set the Owner on Begin Play so that replication works fine.
image

Here is the function which is called. As you can see, it implements a check to see if we are the client, and if we are it sets this override to be set to the state of the boolean on the server.

Now, if I print this state variable, everything is great. We have the expected result.
image
image

However, my issue is, if I go out of the widget and go back into it, the code in my widget should enable/disable the switch correctly.

However, it always sets it to the default value that it was when the blueprint was spawned, for some reason.

Both examples below are when the value should be true

If I print the variable on tick when the default value is false, we get:
image

If I print the variable on tick when the default variable is true, we get:
image

My question is, why is this??