pretty accurite 2007 movement
Key RequiredUniversal

pretty accurite 2007 movement

Universal Scriptgrilled_cheesegrilled_cheese 165 views 1.3K executesUpdated Aug 2, 2026
Unrated
00
Lua Script•138 lines (5737 chars)
-- 2007 Precise Physics + Click-to-Move + Classic Tool Handling
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local StarterGui = game:GetService("StarterGui")

local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
local hrp = character:WaitForChild("HumanoidRootPart")

local activeMovementLoop = nil
local bodyVelocity = Instance.new("BodyVelocity")
bodyVelocity.Velocity = Vector3.new(0, 0, 0)
bodyVelocity.MaxForce = Vector3.new(0, 0, 0)
bodyVelocity.Parent = hrp

-- Clean up any old UI leftovers from previous runs
local oldSuite = player:WaitForChild("PlayerGui"):FindFirstChild("Classic2007Suite")
if oldSuite then oldSuite:Destroy() end

-- Restores default health and playerlist so they handle normally now
pcall(function()
    StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.Health, true)
    StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.PlayerList, true)
end)

-- ScreenGui Container for remaining custom elements
local mainGui = Instance.new("ScreenGui")
mainGui.Name = "Classic2007Suite"
mainGui.ResetOnSpawn = false
mainGui.Parent = player:WaitForChild("PlayerGui")

-- -------------------------------------------------------------
-- 1. RETRO PHYSICS CONTROLLER (2007)
-- -------------------------------------------------------------
local function applyRetroPhysics()
    if activeMovementLoop then activeMovementLoop:Disconnect() end
    
    humanoid.WalkSpeed = 16
    humanoid.JumpPower = 50
    humanoid.AutoRotate = false
    workspace.Gravity = 196.2

    activeMovementLoop = RunService.Heartbeat:Connect(function()
        if not character or not humanoid or not hrp then return end
        local moveDirection = humanoid.MoveDirection
        
        if moveDirection.Magnitude > 0 then
            local targetAngle = math.atan2(-moveDirection.X, -moveDirection.Z)
            hrp.CFrame = CFrame.new(hrp.Position) * CFrame.Angles(0, targetAngle, 0)
            
            bodyVelocity.MaxForce = Vector3.new(100000, 0, 100000)
            bodyVelocity.Velocity = moveDirection * humanoid.WalkSpeed
        else
            bodyVelocity.Velocity = Vector3.new(0, 0, 0)
            bodyVelocity.MaxForce = Vector3.new(100000, 0, 100000)
        end
    end)
end

-- -------------------------------------------------------------
-- 2. RETRO GREEN CLICK-TO-MOVE EFFECT
-- -------------------------------------------------------------
local function enableClickToMove()
    UserInputService.InputBegan:Connect(function(input, processed)
        if processed then return end
        if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
            local camera = workspace.CurrentCamera
            local ray = camera:ScreenPointToRay(input.Position.X, input.Position.Y)
            local raycastParams = RaycastParams.new()
            raycastParams.FilterPlayersInstances = {character}
            raycastParams.FilterType = Enum.RaycastFilterType.Exclude
            
            local result = workspace:Raycast(ray.Origin, ray.Direction * 500, raycastParams)
            if result then
                local targetPos = result.Position
                humanoid:MoveTo(targetPos)
                
                -- Create 2007 Solid Green Disc Indicator
                local disk = Instance.new("Part")
                disk.Shape = Enum.PartType.Cylinder
                disk.Size = Vector3.new(0.2, 3, 3)
                disk.Color = Color3.fromRGB(0, 255, 0)
                disk.Material = Enum.Material.SmoothPlastic
                disk.Anchored = true
                disk.CanCollide = false
                disk.CFrame = CFrame.new(targetPos + Vector3.new(0, 0.1, 0)) * CFrame.Angles(0, 0, math.rad(90))
                disk.Parent = workspace
                
                task.delay(0.4, function() disk:Destroy() end)
            end
        end
    end)
end

-- -------------------------------------------------------------
-- NEW: CLASSIC 2007 TOOL-STIFFNESS FIX
-- -------------------------------------------------------------
-- In 2007, equipping a tool (like a sword) locked your arm completely 
-- straight out horizontally without any modern bouncy arm swaying.
local function applyRetroToolHandling()
    character.ChildAdded:Connect(function(child)
        if child:IsA("Tool") then
            task.wait() -- Allow tool to weld
            local rightArm = character:FindFirstChild("Right Arm") or character:FindFirstChild("RightHand")
            local rightShoulder = character:FindFirstChild("Torso") and character.Torso:FindFirstChild("Right Shoulder")
            
            -- If classic R6 avatar, force arm straight out
            if rightShoulder and rightArm then
                rightShoulder.CurrentAngle = math.rad(90)
                rightShoulder.DesiredAngle = math.rad(90)
            end
        end
    end)
end

-- -------------------------------------------------------------
-- 4. RESPAWN AUTOMATION BINDINGS
-- -------------------------------------------------------------
player.CharacterAdded:Connect(function(newCharacter)
    character = newCharacter
    humanoid = character:WaitForChild("Humanoid")
    hrp = character:WaitForChild("HumanoidRootPart")
    
    bodyVelocity = Instance.new("BodyVelocity")
    bodyVelocity.Velocity = Vector3.new(0, 0, 0)
    bodyVelocity.MaxForce = Vector3.new(0, 0, 0)
    bodyVelocity.Parent = hrp
    
    applyRetroPhysics()
    applyRetroToolHandling()
end)

-- Initialize Systems
applyRetroPhysics()
enableClickToMove()
applyRetroToolHandling()

Features & Information

it is basically just accurite 2007 movement same thing as 2007 but with animated
#retro#cl*ic#movement

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts