This seems so weird to me, because “Character” shouldn’t be a nil value, it should be a model. And I even printed the argument passed to the “Character” parameter on the server and it prints “Shinjaa”, not “nil”, on the client, it’s the opposite.
That error usually occurs when the character has not loaded. Because you are immediately firing the event when the character enters the server, the client may not have loaded the character model yet, and thus it is nil. I suggest sending the player data to the client and then let the client access the character.
Try firing to clients with :FireAllClients() instead of FireAllClients(character)
And on the OnClientEvent do
Boilerplate.Remotes.Health.OnClientEvent:Connect(function(player)
local Humanoid = player.Character:WaitForChild(“Humanoid”)
local Head = player.Character:WaitForChild(“Head”)