local player = game.Players.LocalPlayer
local cgui = game.StarterGui:WaitForChild("Change Team")
script.Parent.MouseButton1Click:connect (function()
player.TeamColor = BrickColor.new ('Really red')
player:LoadCharacter()
local gear = game.ReplicatedStorage:WaitForChild("RedHyperLaser"):Clone()
gear.Parent = game.Players.LocalPlayer.Backpack
cgui.Enabled = true
end)
In solo, the character reloads but in a server it doesn't

3 comments
Do you have filtering enabled?
It's very simple. You can't LoadCharacter from LocalScripts.
And team changes won't replicate to the server, and startergui will copy to playergui,...