If FilteringEnabled is enabled it will prevent the ResetPlayerGuiOnSpawn value from working, effectively resetting the PlayerGui after each spawn.
Check this thread for the answer
“So, when FilteringEnabled is active, the solution is to set ResetPlayerGuiOnSpawn on the client, with a LocalScript. When filtering is disabled, it must be set on the server with a Script.”
This is still technically a bug though, and not intended behaviour as far as I can tell.
Defaultio made a thread too that I found a few weeks ago when I had the same problem. ResetPlayerGuiOnSpawn = false does not work with FE
The solution is what @Maelstronomer said. Set it in a localscript.
Services are local.
Anything you want to do with UI should be done on the client anyway.
I know but why have it as a check box under StarterGui as that’s just confusing
Agreed. Properties in the datamodel should replicate no matter what.
Having special properties that need to be set at special times from special places is awful for the developer. Especially in this case where there is no feedback. It just silently fails.