UNET Health isn't syncing


I’m new to Unet and am struggling with syncing my health. For some reason, my health is only syncing and behaving correctly on the host. Here is a gif that shows my problems:

Anyways, here is my code for the Player and the Player UI.

Thanks a lot!

I’ve just been helping out another user with this ; take a look at the comment chain on this question.

Long story short, [SyncVar(hook)] only calls that hook on clients. If you observe the player health in the inspector, you should see it changing, but since the bar is only updated when the hook is called, the visuals are off. You should use [Command] and [ClientRpc] to sync a function between clients (example here), or else just have the health bar check in Update() if it’s different than the health value itself, and if so change.