Hey there! currently working on my fast paced shooter Spectable!
I’ve been trying to figure out how I could implement a custom movement system into the game, although for the longest time I haven’t been able to figure it out, The reason why I would like to use a custom movement system is mostly because roblox’s movement can change on a dime.
(As seen here)
While i’m going for more of a “icy” approach as seen in Boost Vector
Any Idea on how I could achieve this? I don’t want to change the friction weight as I feel there is a much better solution.
I also recommend looking at Platfomer character controller. It transforms the character into a sphere which is a good for slopes and sliding collision detection which I didn’t find out until later.
Hmm, this doesn’t seem to be what i’m after. I’m more looking for speeding up and when you stop the character will either skid to a stopping point of 0 velocity or start speeding up the other direction, which your module does do, I’m just having trouble figuring out how, haha.
-- put in StarterPlayer > StarterCharacterScripts
local plr = game.Players.LocalPlayer
local Character = plr.Character or plr.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")
local userinputservice = game:GetService("UserInputService")
local hello = true
local Skid_Anim = Humanoid:LoadAnimation(script:WaitForChild("Skid"))
Skid_Anim.Looped = true
userinputservice.InputBegan:Connect(function(input,gameprocessed)
if gameprocessed then return end
if hello == false then return end
if input.KeyCode == Enum.KeyCode.E then
hello = false
Skid_Anim:Play()
Character.Humanoid.JumpHeight = 0
local Skid = Instance.new("BodyVelocity", Character.HumanoidRootPart)
Skid.MaxForce = Vector3.new(1,0,1) * 30000
Skid.Velocity = Character.HumanoidRootPart.CFrame.lookVector * 100
for count = 1, 5 do
wait(0.1)
Skid.Velocity*= 0.7
end
wait(.5)
Character.Humanoid.JumpHeight = 7.2
Skid_Anim:Stop()
Skid:Destroy()
hello = true
end
end)