I am a rather new developer and sometimes use other people's scripts. I tried making a color wheel edit the baseplate on the server but it's being weird and I have no idea why.

Local Script inside the GUI:

local dragger = require(script:WaitForChild("IllllIlIIIlIllIllllIIIIlIlIIllIIllllIIIl"));

local slider = script.Parent:WaitForChild("IllllIlIIIlIllIllllIIIIlIlIIllIIllllIIIl1")
local slide = slider:WaitForChild("IllllIlIIIlIllIllllIIIIlIlIIllIIllllIIIl")

local wheel = script.Parent:WaitForChild("IllllIlIIIlIllIllllIIIIlIlIIllIIllllIIIl2");
local ring = wheel:WaitForChild("IllllIlIIIlIllIllllIIIIlIlIIllIIllllIIIl");

local colour = script.Parent:WaitForChild("IllllIlIIIlIllIllllIIIIlIlIIllIIllllIIIl3");

--

local function toPolar(v)
	return math.atan2(v.y, v.x), v.magnitude;
end

local function radToDeg(x)
	return ((x + math.pi) / (2 * math.pi)) * 360;
end

--

local hue, saturation, value = 0, 0, 1;

local function update()
	colour.BackgroundColor3 = Color3.fromHSV(hue, saturation, value);
	game:GetService("ReplicatedStorage").Remotes.Events.obfuscatedRemote:FireServer("Color", Color3.fromHSV(hue,saturation,value), workspace.StartingPlate)
end

-- dragger

local slideDrag = dragger.new(slide);
local ringDrag = dragger.new(ring);

function slideDrag:onDrag(guiElement, input, delta)
	local rY = input.Position.y - slider.AbsolutePosition.y;
	local cY = math.clamp(rY, 0, slider.AbsoluteSize.y - slide.AbsoluteSize.y);
	guiElement.Position = UDim2.new(0, 0, 0, cY);

	value = 1 - (cY / (slider.AbsoluteSize.y - slide.AbsoluteSize.y));
	guiElement.BackgroundColor3 = Color3.fromHSV(0, 0, 1-value);

	update();
end

function ringDrag:onDrag(guiElement, input, delta)
	local r = wheel.AbsoluteSize.x/2
	local d = Vector2.new(input.Position.x, input.Position.y) - wheel.AbsolutePosition - wheel.AbsoluteSize/2;

	if (d:Dot(d) > r*r) then
		d = d.unit * r;
	end

	guiElement.Position = UDim2.new(0.5, d.x, 0.5, d.y);

	local phi, len = toPolar(d * Vector2.new(1, -1));
	hue, saturation = radToDeg(phi)/360, len / r;
	slider.BackgroundColor3 = Color3.fromHSV(hue, saturation, 1);

	update();
end

Server script:

obfuscatedRemote.OnServerEvent:Connect(function(player, typo, otherValue, targetedObj)
	if typo == "Color" then
		local work = workspace:GetDescendants()
		if work:FindFirstChild(targetedObj) then
			targetedObj.Color = Color3.fromHSV(otherValue)
		else
			warn("The targeted obj does not exist.")
		end
	end
end)

I tried doing all the ways I could think of, removing and adding those semi-colins, adding another local function but nothing worked, only the colour.BackgroundColor3 changed.