How do i make this type of Dash

You can write your topic however you want, but you need to answer these questions:

  1. What do you want to achieve? Keep it simple and clear!
    Sorcerer Battlegrounds Dash system

Reference Video

  1. What is the issue? Include screenshots / videos if possible!
    I dont know how to go about that
  2. What solutions have you tried so far? Did you look for solutions on the Developer Hub?
    I looked at posts but everybody is talking about something different

I wouldn’t know, but if I had to guess you could get the same result like this (the easiest way without AnimationEvents or anything:

local bv = Instance.new("BodyVelocity", char.HumanoidRootPart) --BodyVelocities should go into a BasePart, it will not work on a model
local anim = char.Humanoid:LoadAnimation(script.DashAnimation) -- have the first part of the animation be the debris number next to bv below, then the punch animation which you should add a hitbox to
bv.MaxForce = Vector3.new(999999,0,999999) -- velocity goes on the x and z axes, but never up or down because we can't have the player psuedo-flying
anim:Play()
bv.Velocity = Vector3.new(x,y,z)
--I'm unsure how the directional system would work, you'd have to figure that out on your own
game.Debris:AddItem(bv, 0.4)
game.Debris:AddItem(anim, 0.8)

Required Info: Debris, BodyVelocity, Anims, basic stuff & Instances

or you could just search up how to make roblox battlegrounds on youtube

it looks like they are moving at constant velocity parallel to the direction the camera looks in

make a linearvelocity and (in a loop) set the VectorVelocity relative to workspace.CurrentCamera.CFrame.LookVector

Actually, it kind of looks like you control it using WASD, but the direction of the keys is based on where the camera is facing, if that makes sense

i figured this out long time ago

local startTime = tick()
				
				while true do
					local currentTime = tick()
					local elapsedtime = currentTime - startTime
					
					if elapsedtime >= 1 then
						break
					end  
					
					BodyPosition.Position = Character.HumanoidRootPart.CFrame * CFrame.new(0,0,-15).Position
					
					task.wait()
				end
2 Likes

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.