Making a combat game with ranged weapons? FastCast may be the module for you!

It’s because of slow internet. You need to do the visuals on the client instead of the server.

Having some trouble with making a suppression/Camera Shake for when the projectile passes a player. Would love to know how this would be possible with FastCast :pray:

You guys know how to make the bullet reflect on impact?

If you go inside of the local script you can see the logic for how I do it. This logic can also be implemented to FastCast. All though I think you have to cast a new projectile upon impact when using FastCast.

Soon, we’ll get spherecast and boxcast. Any chance of an update to include these in the module?

Of course that’s important, but it would be nice to see it implemented for use when it’s fully released without wasting time modifying the script myself.

Why do you want an update to this module now that we have these.
Those methods make this entire module 100% obsolete, never have to use this anymore.

Based on Xan’s (Eti’s) profile, I don’t think he’s coming back to Roblox to develop anymore.

Even the API docs are becoming outdated/unfinished, so it looks like FastCast won’t get updated anymore unless someone else fills in and improves the casting (a very daunting task, I know).

Really wished to see Shapecasts get integrated, perhaps I’ll recode the FastCast code to handle it (for myself :p, maybe)

1 Like

@Ylsid
@FloweryMonkeyboy5
@IntentionalChaos

I made a quick little tweak to incorporate the sphere cast. A blockcast will require a fairly large overhaul that will take me too much time right now.
FastSphereCastRedux - Roblox

I’m not sure what you mean @FloweryMonkeyboy5 that this module will be obsolete. Shapecasting doesn’t change the behavior of making casts have ‘velocity’ like FastCast creates. Or would this be too performance intensive? I did not notice that myself, but it could very well be true.

2 Likes

I was hoping for an official module update with extra functionality, but it’s nice of you to provide this anyway!

Same! Based on what I know and the updates over the past 2.5 years, the module can surely be improved in multiple ways.
I really hope @Xan_TheDragon decides to update it!

noice, I haven’t attempted my own implementation yet, but I’ll get onto it at some point too

Are you talking about the FastCastModule or Parralel Lua being not released? (I thought it was fully released)

Could anyone take the project and maintain it?

1 Like

Hey there, the bullets appearing far away is due to extremely long ray lengths for extremely high speed projectiles.

This is also tied in with the update loop problem that was mentioned previously somewhere in this topic. I have tried to do simulate(cast, 0 (deltatime), false) after the simulation connection to try and position it at the start but that had a lot of issues.

Ended up this hack from a previous post to position it at segment origin instead (bullet position in the past) and a lot of task.waits() for another issue (point blank shots)

Perhaps one day there could be some advanced task scheduling done perhaps 2 Runservice events in heartbeat and one in stepped. Maybe even task.defer().

But solution seems to work as is and the rest of the module works great :+1:.

The projectile is spawning ahead of its origin point for me, and this makes the trail look horrible. Anyone know what to do to fix this?

is it possible to change the speed of a bullet when penetrating through a wall? cause i got no clue how. (unless its the velocity thing i see in the variables of certain functions)

Blacklist in Raycast params is decrapted it says on the debug gun you provided

Is there any way to perfectly validate a cast? I tried using the start and end positions with a projectile motion equation and using tick() to log the start and end times of a cast and using them for t, but the results seem to differ by a good ±10 in the position compared to the simulation.

local function projectileMotionEquation(g, v, initialPosition, t)
	return 0.5 * g * t ^ 2 + v * t + initialPosition
end

I am not going to maintain FastCast but I do have this if FastCast where to ever break. (I think FastCast is in a pretty solid state I would not expect it to break for a while… a long while…)