I'm having trouble understanding how exactly could I make changes to a player and have other players around see those changes. How would I go about dealing with this problem?
Here's an example on a local script
local button = script.Parent
local player = game.Players.LocalPlayer
local char = player.Character
button.MouseButton1Click:Connect(function()
for i, v in pairs(char:GetChildren()) do
if v:IsA('MeshPart') or v:IsA('Part') then
v.BrickColor = BrickColor.new(math.random(), math.random(), math.random())
end
end
end)

1 comment
You will need remote events, as the server cannot, and should not handle user input / GUI input.