Scripting Left Handed Tools?

ok so Im trying to make dual wield weapons.
roblox tools only have support for right handed tools for some reason

what im doing works client side, but doesnt replicate
tools in general are handled client side, so thats a problem ive come across when trying to make a “LeftGrip”

what im doing:

  1. when equipped, make a new weld that welds the LeftHandle to the LeftHand aka “LeftGrip”
  2. set the C0 and C1 accordingly
  3. when its unequipped, just undo all of the stuff above

this works, but the welds dont replicate. my question, how can I make a left handed tool where the weld replicates to the server, but is still controlled by the client so that equip/unequip feedback is instant and not ping dependant

3 Likes

Seems like you could add a small delay between transferring the info from client to server. So you could load the weld up to the client and then replicate it to server with a delay and instantaneous removal of the old connection

There’s only one method I know of, not including derivations, that can achieve something close to this. Outside of it, there is no hope.

Have the left tool and grip already existing in your Tool instance. Let the server then handle the weld modifications rather than weld instancing. Don’t let the client handle it because it won’t replicate. You’ll have instant feedback but other clients won’t see the weld.

For Equipped, set Part0/Part1 and the respective C0/C1. Do not do both; the weld should automatically have one of them already set for the tool, the server is just adjusting it for the left hand. After that, you’re done. You don’t even need Unequipped.

Alternatively, you can instance a weld on both the client and the server, then allow the client to delete the server weld. The server and client will both register the weld separately and this means doubling your workload. The client won’t have control of the server weld, only the one on their screen.