Insert a Script into the Part or Workspace
Set the Part’s Anchored property to false
Use `AssemblyLinearVelocity` to move it forward
Example:
`local part = script.Parent`
`part.AssemblyLinearVelocity = part.CFrame.LookVector * 20`
Use `BodyVelocity` only if you need older-style movement
Example:
`local bv = Instance.new(“BodyVelocity”)`
`bv.Velocity = part.CFrame.LookVector * 20`
`bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge)`
`bv.Parent = part`
Use `TweenService` to move the Part forward smoothly
Example:
`local TweenService = game:GetService(“TweenService”)`
`local part = script.Parent`
`local goal = {Position = part.Position + part.CFrame.LookVector * 20}`
`local tween = TweenService:Create(part, TweenInfo.new(2), goal)`
`tween:Play()`
Use `CFrame` to shift the Part forward instantly
Example:
`part.CFrame = part.CFrame + part.CFrame.LookVector * 5`
Use a loop with `task.wait()` for repeated movement
Example:
`while true do`
`part.CFrame = part.CFrame + part.CFrame.LookVector`
`task.wait(0.1)`
`end`
