-- Local Desync Script (Horizontal Only with Health and Respawn Handling)
local player = [Link]
local character = [Link] or [Link]:Wait()
local humanoidRootPart = character:WaitForChild("HumanoidRootPart")
local humanoid = character:WaitForChild("Humanoid")
-- Variable to control the desync effect
local isDesyncing = true
-- Function to simulate desync-like behavior with horizontal movements only
local function DesyncSimulation()
while isDesyncing do
-- Check if the player's health is below 1
if [Link] < 1 then
isDesyncing = false
break -- Stop the simulation if health is below 1
end
-- Move the player's root part with horizontal and forward/backward offsets
local randomOffset = [Link](
[Link](-4, 4) * 0.5, -- Moderate horizontal offset
0, -- No vertical offset
[Link](-4, 4) * 0.5 -- Moderate forward/backward offset
)
-- Apply noticeable velocity changes
[Link] = [Link] *
[Link](randomOffset)
[Link] = [Link] + randomOffset * 7 --
Controlled scaling for effect
-- Maintain a short delay for smooth movements
wait(0.09)
end
end
-- Connect to the character being added or respawned
[Link]:Connect(function(char)
character = char
humanoidRootPart = character:WaitForChild("HumanoidRootPart")
humanoid = character:WaitForChild("Humanoid")
-- Reset the desync effect
isDesyncing = true
DesyncSimulation()
end)
-- Run the desync function initially
DesyncSimulation()