Tank not moves and not rotates how do i fix that

Hello im trying to make tank or APC using this How to make Tank Game in Roblox Studio - Part 1 (Basics) - YouTube tutorial
but some people saying new update broke chassis
im having issues with tank not moving at yall (its not anchored, hes can be droped from wedge and hes moving)
im used script from video

local speed = 128
local turn_speed = 24

local l1 = script.Parent.l1
local l2 = script.Parent.l2
local l3 = script.Parent.l3
local l4 = script.Parent.l4
local l5 = script.Parent.l5
local r1 = script.Parent.r1
local r2 = script.Parent.r2
local r3 = script.Parent.r3
local r4 = script.Parent.r4
local r5 = script.Parent.r5

script.Parent.Changed:Connect(function(property)
if script.Parent.Throttle > 0 then
l1.AngularVelocity = -speed
l2.AngularVelocity = -speed
l3.AngularVelocity = -speed
l4.AngularVelocity = -speed
l5.AngularVelocity = -speed
r1.AngularVelocity = speed
r2.AngularVelocity = speed
r3.AngularVelocity = speed
r4.AngularVelocity = speed
r5.AngularVelocity = speed
elseif script.Parent.Throttle < 0 then
l1.AngularVelocity = speed
l2.AngularVelocity = speed
l3.AngularVelocity = speed
l4.AngularVelocity = speed
l5.AngularVelocity = speed
r1.AngularVelocity = -speed
r2.AngularVelocity = -speed
r3.AngularVelocity = -speed
r4.AngularVelocity = -speed
r5.AngularVelocity = -speed
elseif script.Parent.Steer > 0 then
l1.AngularVelocity = turn_speed
l2.AngularVelocity = turn_speed
l3.AngularVelocity = turn_speed
l4.AngularVelocity = turn_speed
l5.AngularVelocity = turn_speed
r1.AngularVelocity = turn_speed
r2.AngularVelocity = turn_speed
r3.AngularVelocity = turn_speed
r4.AngularVelocity = turn_speed
r5.AngularVelocity = turn_speed
elseif script.Parent.Steer < 0 then
l1.AngularVelocity = -turn_speed
l2.AngularVelocity = -turn_speed
l3.AngularVelocity = -turn_speed
l4.AngularVelocity = -turn_speed
l5.AngularVelocity = -turn_speed
r1.AngularVelocity = -turn_speed
r2.AngularVelocity = -turn_speed
r3.AngularVelocity = -turn_speed
r4.AngularVelocity = -turn_speed
r5.AngularVelocity = -turn_speed
elseif script.Parent.Steer == 0 then
l1.AngularVelocity = 0
l2.AngularVelocity = 0
l3.AngularVelocity = 0
l4.AngularVelocity = 0
l5.AngularVelocity = 0
r1.AngularVelocity = 0
r2.AngularVelocity = 0
r3.AngularVelocity = 0
r4.AngularVelocity = 0
r5.AngularVelocity = 0
elseif script.Parent.Throttle == 0 then
l1.AngularVelocity = 0
l2.AngularVelocity = 0
l3.AngularVelocity = 0
l4.AngularVelocity = 0
l5.AngularVelocity = 0
r1.AngularVelocity = 0
r2.AngularVelocity = 0
r3.AngularVelocity = 0
r4.AngularVelocity = 0
r5.AngularVelocity = 0
end
end)

and im used custom wheels for it (for my own tank design)



wheels is unions
is theres my problem or video creator or even roblox update?

sorry for bad grammar, forgot how to write on english

1 Like

I’d say go with the tutorial and do normal cylinders. After coding the velocity for the cylinders and not your custom wheels, weld your custom wheels to the original ones. Additionally, you could make your custom wheels noCollide and make the cylinders invisible to evade any bugs as the hitbox for cylinders will likely work better than the custom wheels. That step isn’t necessarry though. However, I would suggest you turn on high fidelity for the union if you are going to use that for physics or movement.

still not moves even with normal cylinders

also, the springs do not rise, but fall forever, even if you turn everything in the settings

If the problem is in the springs try changing the properties of the spring while in game (while on server side ofcourse). Play around with the values while the game is running and I’m sure you’ll find what you’re looking for. As for the script check to see if setting the angular velocity youself works. This way you’ll know if the error is in the script or the layout of the model.

im tried of using print at lines of code (its not printing)
im tried to mess up with springs from tutorial (still dont works)
(tried to check even if other scripts breaking my)
maybe problem in whole tank but im think remaking him will get the same problem

The script is a server script and is a child of the seat right?

local script puted in seat

Ah I found the problem. You referenced these wrong local l1 = script.Parent.l1. All of the first few lines would have to be something like local l1 = script.Parent.Parent.L1. You should turn on the console under the view tab to see your errors in scripts.

Edit: You also have to ensure your part names are the same. if in the script it is lowercase L (l) and in the workspace it is uppercase L (L) you will not be pointing to the right part. Ensure you have those right too.

1 Like

well im renamed stuff atleast now prints works but tank still not moving

Try enabling the console and see what it has to say. You can do this by going to the “View” tab at the very top and clicking on “Output”.

im already did that like 100 times


Edit: im followed layout of model from video but making it wider

local speed = 128
local turn_speed = 24

local l1 = script.Parent.l1
local l2 = script.Parent.l2
local l3 = script.Parent.l3
local l4 = script.Parent.l4
local l5 = script.Parent.l5
local r1 = script.Parent.r1
local r2 = script.Parent.r2
local r3 = script.Parent.r3
local r4 = script.Parent.r4
local r5 = script.Parent.r5

script.Parent.Changed:Connect(function(property)
if script.Parent.Throttle > 0 then
l1.AngularVelocity = -speed
l2.AngularVelocity = -speed
l3.AngularVelocity = -speed
l4.AngularVelocity = -speed
l5.AngularVelocity = -speed
r1.AngularVelocity = speed
r2.AngularVelocity = speed
r3.AngularVelocity = speed
r4.AngularVelocity = speed
r5.AngularVelocity = speed
elseif script.Parent.Throttle < 0 then
l1.AngularVelocity = speed
l2.AngularVelocity = speed
l3.AngularVelocity = speed
l4.AngularVelocity = speed
l5.AngularVelocity = speed
r1.AngularVelocity = -speed
r2.AngularVelocity = -speed
r3.AngularVelocity = -speed
r4.AngularVelocity = -speed
r5.AngularVelocity = -speed
elseif script.Parent.Steer > 0 then
l1.AngularVelocity = turn_speed
l2.AngularVelocity = turn_speed
l3.AngularVelocity = turn_speed
l4.AngularVelocity = turn_speed
l5.AngularVelocity = turn_speed
r1.AngularVelocity = turn_speed
r2.AngularVelocity = turn_speed
r3.AngularVelocity = turn_speed
r4.AngularVelocity = turn_speed
r5.AngularVelocity = turn_speed
elseif script.Parent.Steer < 0 then
l1.AngularVelocity = -turn_speed
l2.AngularVelocity = -turn_speed
l3.AngularVelocity = -turn_speed
l4.AngularVelocity = -turn_speed
l5.AngularVelocity = -turn_speed
r1.AngularVelocity = -turn_speed
r2.AngularVelocity = -turn_speed
r3.AngularVelocity = -turn_speed
r4.AngularVelocity = -turn_speed
r5.AngularVelocity = -turn_speed
elseif script.Parent.Steer == 0 then
l1.AngularVelocity = 0
l2.AngularVelocity = 0
l3.AngularVelocity = 0
l4.AngularVelocity = 0
l5.AngularVelocity = 0
r1.AngularVelocity = 0
r2.AngularVelocity = 0
r3.AngularVelocity = 0
r4.AngularVelocity = 0
r5.AngularVelocity = 0
elseif script.Parent.Throttle == 0 then
l1.AngularVelocity = 0
l2.AngularVelocity = 0
l3.AngularVelocity = 0
l4.AngularVelocity = 0
l5.AngularVelocity = 0
r1.AngularVelocity = 0
r2.AngularVelocity = 0
r3.AngularVelocity = 0
r4.AngularVelocity = 0
r5.AngularVelocity = 0
end
end)

This is wrong. What your doing is that when the Throttle changes it does what your told but the Throttle never changes.

1 Like

after adding some stuff reading more about springs opening tutorial how to make car and messing with scripts im got working APC


1 Like