I'm trying to make an ultra instinct script (from dbs) but the issue with the script is it's a local script so no one but me can see the effects (particles, and parts), and I heard some users to say "Use remote events" but I'm so confused on how they work.
Code I'm using (it's in a local script)
player = game.Players.LocalPlayer
character = player.Character
hmndrootpart = character:FindFirstChild("HumanoidRootPart")
local muiaura1 = script.Parent.particle:WaitForChild("muiaura1")
local muiaura2 = script.Parent.particle:WaitForChild("muiaura2")
local muiaura3 = script.Parent.particle:WaitForChild("muiaura3")
local muidot = script.Parent.particle:WaitForChild("muidot")
game.Workspace.ssj.Disabled = true
game.Workspace.ssg.Disabled = true
game.Workspace.ssgss.Disabled = true
game.Workspace.ssgsskx10.Disabled = true
game.Workspace.kaioken.Disabled = true
game.Workspace.baseform.Disabled = true
wave2 = Instance.new("Part")
mesh = Instance.new("SpecialMesh", wave2)
wave = Instance.new("Part")
wave3 = Instance.new("Part")
mesh.MeshId = "http://www.roblox.com/asset/?id=3270017"
mesh.Offset = Vector3.new(0, 0, -80)
wave.Parent = game.Workspace
wave.Size = Vector3.new(0.05, 0.05, 0.05)
wave.CanCollide = false
wave.Anchored = true
wave.Position = hmndrootpart.Position
wave.Color = Color3.fromRGB(255, 255, 255)
wave.Shape = Enum.PartType.Ball
wave.Material = Enum.Material.Neon
wave2.Parent = game.Workspace
wave2.Size = Vector3.new(0.05, 0.05, 0.05)
wave2.CanCollide = false
wave2.Color = Color3.fromRGB(255, 255, 255)
wave2.Anchored = true
wave2.Position = hmndrootpart.Position
wave2.Material = Enum.Material.SmoothPlastic
wave2.Orientation = Vector3.new(90, 0, 0)
wave3.Parent = game.Workspace
wave3.Size = Vector3.new(2048, 1, 16)
wave3.CanCollide = false
wave3.Color = Color3.fromRGB(255, 255, 255)
wave3.Anchored = true
wave3.Position = hmndrootpart.Position
wave3.Material = Enum.Material.Neon
wave3.Shape = Enum.PartType.Cylinder
wave3.Orientation = Vector3.new(0, 0, 90)
script.Parent.Handle.muimusicbefore:Play()
script.Parent.Handle.mui:Play()
for i = 1, 200 do
wave.Size = wave.Size + Vector3.new(2, 2, 2)
mesh.Scale = mesh.Scale + Vector3.new(8, 8, 2)
wave.Transparency = wave.Transparency + 0.01
wave2.Transparency = wave2.Transparency + 0.01
mesh.Scale = mesh.Scale + Vector3.new(1, 1, 0)
wave3.Transparency = wave3.Transparency + 0.01
wave3.Size = wave3.Size + Vector3.new(0, 1, 1)
wait(0.01)
end
wave2:Destroy()
wave:Destroy()
wave3:Destroy()
script.Parent.Handle.muisound:Play()
script.Parent.Handle.Mesh.MeshId = "rbxassetid://1125231485"
script.Parent.Handle.ssgssaura.Enabled = false
script.Parent.Handle.ssgaura.Enabled = false
script.Parent.Handle.ssjaura.Enabled = false
script.Parent.Handle.kx10aura.Enabled = false
muiaura1.Enabled = true
muiaura2.Enabled = true
muiaura3.Enabled = true
muidot.Enabled = true
script.Parent.Handle.Color = Color3.fromRGB(163, 162, 165)
script.Parent.AttachmentForward = Vector3.new(0, 0, 1)
script.Parent.AttachmentPos = Vector3.new(0, -0.5, -0.1)
script.Parent.AttachmentRight = Vector3.new(-1, 0, 0)
script.Parent.AttachmentUp = Vector3.new(0, 1, 0)
script.Parent.Handle.Mesh.Scale = Vector3.new(6, 6, 6)
script.Parent.Handle.ssj:Stop()
script.Parent.Handle.ssg:Stop()
script.Disabled = true
game.Workspace.ssj.Disabled = false
game.Workspace.ssg.Disabled = false
game.Workspace.ssgss.Disabled = false
game.Workspace.ssgsskx10.Disabled = false
game.Workspace.kaioken.Disabled = false
game.Workspace.baseform.Disabled = false
wait(60)
script.Parent.Handle.muimusicafter:Play()
I really need help with remote events, tutorials are still to confusing for me.

2 comments
search in youtube there are so many tutorials about remote events, I'd like to help you but I'm so bad to teach
youtube doesn't help at all