local player = game.Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") -- Remove old GUI if exists if playerGui:FindFirstChild("SmallButtonGui") then playerGui.SmallButtonGui:Destroy() end -- Create ScreenGui local screenGui = Instance.new("ScreenGui") screenGui.Name = "SmallButtonGui" screenGui.ResetOnSpawn = false screenGui.Parent = playerGui -- Create the Desyncer button local button = Instance.new("TextButton") button.Name = "DesyncerButton" button.Text = "Desyncer: OFF" button.Size = UDim2.new(0, 140, 0, 50) -- Slightly wider for text button.Position = UDim2.new(0.5, -70, 0.5, -25) button.BackgroundColor3 = Color3.fromRGB(200, 50, 50) -- Red when OFF button.TextColor3 = Color3.fromRGB(255, 255, 255) button.Font = Enum.Font.GothamBold button.TextSize = 22 button.Parent = screenGui -- Rounded corners local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 12) corner.Parent = button -- Hover effect button.MouseEnter:Connect(function() if button.Text == "Desyncer: OFF" then button.BackgroundColor3 = Color3.fromRGB(220, 70, 70) else button.BackgroundColor3 = Color3.fromRGB(80, 220, 80) end end) button.MouseLeave:Connect(function() if button.Text == "Desyncer: OFF" then button.BackgroundColor3 = Color3.fromRGB(200, 50, 50) else button.BackgroundColor3 = Color3.fromRGB(50, 200, 50) end end) -- === TOGGLE STATE === local isActive = false -- === DESYNC CODE === local FFlags = { GameNetPVHeaderRotationalVelocityZeroCutoffExponent = -5000, LargeReplicatorWrite5 = true, LargeReplicatorEnabled9 = true, AngularVelociryLimit = 360, TimestepArbiterVelocityCriteriaThresholdTwoDt = 2147483646, S2PhysicsSenderRate = 15000, DisableDPIScale = true, MaxDataPacketPerSend = 2147483647, PhysicsSenderMaxBandwidthBps = 20000, TimestepArbiterHumanoidLinearVelThreshold = 21, MaxMissedWorldStepsRemembered = -2147483648, PlayerHumanoidPropertyUpdateRestrict = true, SimDefaultHumanoidTimestepMultiplier = 0, StreamJobNOUVolumeLengthCap = 2147483647, DebugSendDistInSteps = -2147483648, GameNetDontSendRedundantNumTimes = 1, CheckPVLinearVelocityIntegrateVsDeltaPositionThresholdPercent = 1, CheckPVDifferencesForInterpolationMinVelThresholdStudsPerSecHundredth = 1, LargeReplicatorSerializeRead3 = true, ReplicationFocusNouExtentsSizeCutoffForPauseStuds = 2147483647, CheckPVCachedVelThresholdPercent = 10, CheckPVDifferencesForInterpolationMinRotVelThresholdRadsPerSecHundredth = 1, GameNetDontSendRedundantDeltaPositionMillionth = 1, InterpolationFrameVelocityThresholdMillionth = 5, StreamJobNOUVolumeCap = 2147483647, InterpolationFrameRotVelocityThresholdMillionth = 5, CheckPVCachedRotVelThresholdPercent = 10, WorldStepMax = 30, InterpolationFramePositionThresholdMillionth = 5, TimestepArbiterHumanoidTurningVelThreshold = 1, SimOwnedNOUCountThresholdMillionth = 2147483647, GameNetPVHeaderLinearVelocityZeroCutoffExponent = -5000, NextGenReplicatorEnabledWrite4 = true, TimestepArbiterOmegaThou = 1073741823, MaxAcceptableUpdateDelay = 1, LargeReplicatorSerializeWrite4 = true } local function respawnar(plr) local char = plr.Character local hum = char and char:FindFirstChildWhichIsA("Humanoid") if hum then hum:ChangeState(Enum.HumanoidStateType.Dead) end if char then char:ClearAllChildren() end local newChar = Instance.new("Model") newChar.Parent = workspace plr.Character = newChar task.wait() plr.Character = char newChar:Destroy() end local function activateDesync() for name, value in pairs(FFlags) do pcall(function() setfflag(tostring(name), tostring(value)) end) end respawnar(player) end -- === IMPROVED DRAGGABLE + CLICK WITHOUT ACCIDENTAL TRIGGER === local dragging = false local dragStart local startPos local clickThreshold = 6 -- Pixels local function updateInput(input) local delta = input.Position - dragStart button.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end button.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = button.Position local connection connection = input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then local delta = input.Position - dragStart local distance = math.sqrt(delta.X^2 + delta.Y^2) if distance <= clickThreshold then -- Real click → Toggle state isActive = not isActive if isActive then button.Text = "Desyncer: ON" button.BackgroundColor3 = Color3.fromRGB(50, 200, 50) -- Green when ON activateDesync() print("Desyncer: ON") else button.Text = "Desyncer: OFF" button.BackgroundColor3 = Color3.fromRGB(200, 50, 50) -- Red when OFF print("Desyncer: OFF") end end dragging = false connection:Disconnect() end end) end end) button.InputChanged:Connect(function(input) if dragging and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then updateInput(input) end end) game:GetService("UserInputService").InputChanged:Connect(function(input) if dragging and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then updateInput(input) end end) print("Desyncer toggle button loaded! Click to turn ON/OFF.")