FireClient: player argument must be a Player object

Ah, I assumed it was from the player.

:GetPlayerFromCharacter only works with the players character.

I would say it is easiest to do something along the lines of:
game.Players:FindFirstChild(PlayerName)