Referring to the parts on your jetpack only being visible on the client, the only reason your parts are invisible is because your Jetpack script is client sided. LocalScripts won’t make changes to the server, other than through RemoteEvents and RemoteFunctions you setup. If you wish for your jetpack to appear for other people, you’ll need to manage everything to do with “putting the jetpack on” on the server, so likely you’ll have to move all welding related scripts over to the client, and track when the tool is equipped.
I also looked at your model, and I noticed some particle emitters, so you will need to either make them listen for the Activated Connection as well, or if you are using some form of mouse/keyinput detection on the client, have it send a message to the server to simulate this. Essentially, right now your scripts utilise mouse events rather than the tool itself being activated, so you should make sure when you remake the script, you set the events to listen to when the tool is activated, rather than when the mouse is clicked.