Perhaps this is of help, but you can kill an entity’s lateral velocity by using some vector math, I’m just not sure if this method works for vehicles, anyways, here’s something that may help.
I wrote this script but haven’t tested it.
Sorry in advance if it doesn’t work, but I know it can be done as I’ve done it before with players.
[lua]local Normal = Vehicle:GetRight()
local Velocity = Vehicle:GetVelocity()
local VelocityLength = Velocity:Length()
local Lateral = Normal:Dot( Velocity:GetNormalized() ) * Normal
local LateralLength = Lateral:Length()
local LateralVelocity = Normal * -LateralLength * 1
Vehicle:SetVelocity( Vehicle:GetVelocity() + LateralVelocity )[/lua]
The 1 in lateral velocity indicates the percentage that is applied ( 0-1 ) For example, if you were to set it to 0.5 you would get a little bit of skid, whereas if you use 1 you will get no skid at all.
Anyways, that script needs to be ran on a Think hook inside a loop to apply it to all vehicles, here’s an example
[lua]for k, Vehicle in pairs( Table to get Vehicles ) do
-- The code above would be adapted here.
If you want to look more into this visit:
That script above is based off the tire’s “physics”