Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

Is repeat until effective for unit movement?

Asked by 5 years ago
Edited 5 years ago

I have a Part with a BodyGyro and a BodyVelocity for each unit. On the server side, I have this FollowPlayerScript for each unit.

(There's nothing wrong with this script, its just slow)

while player.Character do

    local char = player.Character;

    repeat wait()

    destination = char.HumanoidRootPart.Position

    unit.BodyGyro.CFrame        = blah blah
    unit.BodyVelocity.Velocity       = blah blah move;  

    until (main.Position - destination).magnitude < 6

        stop(destination);

    wait(.2);

end

I'm experiencing a lot of lag and inaccuracies when I get about 20 units. Is using 'repeat until' bad for performance? Should I be doing a RenderStepped instead?

Whats the best practices for mass unit movement? I really don't want to be moving the units on the client.

EDIT:

I'm going to make a coroutine instead of lots of scripts. Hopefully this helps

local thread = coroutine.create(function()
    while true do
        wait(.1)    
    end
end)
coroutine.resume(thread)    

Answer this question