Fun with Client Projectiles

Heya fellow community! Been yet again, a while since I last posted something but I’ve made some interesting changes! So what I’ve went ahead and done recently is created Client-Sided Projectiles, which has the ability to create projectiles that can handle smoothly on your screen! Well, what do I mean by that? Check out this! (Since my laptop still sucks, it will lag a bit)

Upon clicking the Green button, it casts a Projectile moving towards a random direction that will deal 25 Damage upon impact which is pretty good and normal on its own from both the Server & Client, but the unique approach with handling them client-sided is that they don’t take up too much performance!

But, that’s of course way too easy to dodge…Now, say we want a challenge…What if we wanted to have just more than “1” or “5” random projectiles?

I added in a little secret inside the ServerStorage, but I’m not sure exactly what it could be… :thinking:


Another part that’s a button which says “DO NOT CLICK”, I’m sure we’ll be fine and put it inside the workspace! What can possibly go wrong-


But anyways, this was just mainly for fun & experimentation and I just wanted to see what y’all think about it? Again, any feedback I’d appreciate! :slightly_smiling_face:


This is so cool! Does it use raycasting?

1 Like

This is cool. I would definitely handle everything under the same thread if you aren’t already doing that- as opposed to spawning a thread for every created projectile (you can spawn them randomly just outside the part, and then solve for the direction it should move through vector math).

@johncena12345678953 Thanks! It actually doesn’t, I’m mostly using BodyVelocity objects for the time being, and I use a nested loop to reference a 360 degree circle for that specfic Red Button, and I can combine that with how much projectiles belong in each angle using CFrame.Angles :slightly_smiling_face:

@SummerEquinox I believe I am, what I pretty much do is fire a RemoteEvent whenever the button gets clicked, and the LocalScript actually detects what kind of “ProjectileType” it’s looking for (Say it could be the Randomized Projectiles or the Deadly Projectiles) and it carries on with that script with a couple of custom parameters I entered in (Damage, Starting Position, etc) and afterwards:

Of course I am willing to improve it if y’all have any suggestions :slightly_smiling_face:

1 Like