Hello, everyone!
I’m currently working on revamping the rocket jumping mechanic in my game. However, I’ve found that 725,000 launches you 800 feet in the air (which is what I do not want.) I want something that isn’t too incredibly overpowered when you first launch yourself, plus it only seems to be vertical, having no X or Z changes. It should be noted that I’m using the standard explosion with DestroyJointsRadius set to 0.
Any help would be greatly appreciated!
Here’s a video of Rocket Jumping in Quake Champions:
1 Like
I use fake explosions for this, myself
local look = CFrame.new(root.Position, blastcenter.Position)
root.Velocity = -look.LookVector * 80
--optionally change the velocity based on magnitude distance between the root & blastcenter.
To keep horizontal momentum for a fake explosion, or a real explosion too, you may have to locally set the humanoid state type to Physics or Flying for a second.
4 Likes
Alright. The only way I’ve managed to get horizontal rocket jumping in my game, is to have it so you can BHop to get immense speed, and then fire a rocket at your feet (which feels clunky in my opinion.)
Would this system work with the blast pressure set to 0? And how well it would work for people who flick their mouse behind them and then forwards again?
1 Like
I suggest doing what @Maelstronomer said, using a real explosion will more than likely kill your character, not to mention cause unwanted lag and not nearly enough pressure to launch your character regardless. Use a particle explosion and use a BodyVelocity. MaxForce set to Vector3.new(math.huge,math.huge,math.huge), velocity set to PartCFrame.upVector * whatever speed, then set Force to Vector3.new(0,0,0) after wanted period of time.
6 Likes
Would writing custom logic to get damage / armor damage based on magnitude be any more of a strain on a server than using the default explosion?
It would be more efficient to do calculations based on magnitude, if your armor doesn’t get the player health directly then you’ll be able to factor in armor into to your damage computations.
Explosions, in my experience, cause considerable amounts of lag in comparison to doing calculations of your own.
1 Like
Alright.
Would doing velocity also prevent a character who has stuff welded to them from flying away when hit with velocity changes (that’s pretty much my only problem with explosions right now, besides the explosion particles being too “detailed.”
The benefit to using BodyVelocity is if you set MaxForce to Vector3.new(math.huge,math.huge,math.huge)
It will lift the character regardless of weight. Unlike explosions where you would need ridiculous blast pressure to lift players alone not to mention with armor.
1 Like
Sounds great! I’ll definitely be implementing this into my code.
Also, the “armor” is a value in the player that protects their health from damage.
I see, makes sense, glad I could help. Mark solution if it was what you needed!
1 Like
Wish I could accept both of your guy’s answers to be honest.
Indeed, it would be nice. No worries.
I think I’m going to stick with the normal explosion for now - as I’m not sure how to raycast in 360 degrees.
You can use instantaneous raycast and use the returned hit position and then just affect all players in the vicinity of the hit position.
At that point you’re going to want to get delta (position1-position2) to find the exact opposite direction of the explosion relative to the character. But whatever is easiest for you.
2 Likes
Alright, sounds good!
I’m amazed with how well this is working out so far (with only a part - doesn’t seem to affect player models any so far.)
Player models in regards to movement, as in the BodyVelocity is not having the desired result?
Currently playing around with Part.Velocity, but yes, it doesn’t seem to be effecting player models any.
You don’t want to mess with part.Velocity, you want to put a BodyVelocity instance in something like the UpperTorso or HumanoidRootPart.
1 Like
Alright.
Would it essentially be the same thing? Just making the BodyVelocity’s (velocity?) the current part’s velocity? I haven’t touched movers any.
Well for the desired effect you’re looking for, refer to what I said earlier about MaxForce and making the velocity of the instance the opposite position of the explosion relative to the character.
1 Like