I want my cloned tools to fire remote events. Everytime a tool is cloned and equipped to the humanoid, it doesn’t fire the remote event as intended. It only runs the clients. I’ve tried moving the remote events, I’ve tried disabling the backpack and making the tools equipable via script. The non-cloned tools are the only ones to actually fire remote events, while the others can’t. I really want to fix this please!
What do you mean equipped to the humanoid tools can’t go in there
Tools would normally be equipped to the character model rather than the humanoid.
Could you provide the script you think is not working? Have you added print statements on server and client to check the event is firing and is being received? And that the function firing the remote is being called?
Ah, sorry. I meant Humanoid because I use Humanoid:EquipTool() I have provided print statements and can confirmed it wasn’t working. Usually the remote event, and the serverside are parented the tool itself.
local Rocket = script.Parent local ThrowEvent = Rocket:WaitForChild("ThrowEvent") local Players = game:GetService("Players") local player = Players.LocalPlayer local Character = player.Character local Humanoid = Character:FindFirstChildWhichIsA("Humanoid") local HumanoidRootPart = Character:WaitForChild("HumanoidRootPart") local Mouse = player:GetMouse() local Equipped = false local Debounce = false Rocket.Equipped:Connect(function() Equipped = true end) Rocket.Unequipped:Connect(function() Equipped = false end) Mouse.Button1Down:Connect(function() if Equipped == true then if Debounce == false then Debounce = true ThrowEvent:FireServer() wait(2) Debounce = false end end end) [SERVERSIDE PART, DIFFERENT SCRIPT] local ThrowEvent = script.Parent.ThrowEvent ThrowEvent.OnServerEvent:Connect(function(player, RocketPOS) local Character = player.Character local Humanoid = Character:FindFirstChildWhichIsA("Humanoid") local HumanoidRootPart = Character:WaitForChild("HumanoidRootPart") local extraRocket = game.ReplicatedStorage.PowerUpModels.Rocket:Clone() extraRocket.Parent = game.Workspace extraRocket.CFrame = HumanoidRootPart.CFrame + Vector3.new(0,9,0) extraRocket.Velocity = extraRocket.CFrame.LookVector * 500 local StunScript = game.ServerScriptService:FindFirstChild("StunRocket"):Clone() StunScript.Parent = extraRocket StunScript.Enabled = true local BodyVelocity = Instance.new("BodyVelocity") BodyVelocity.MaxForce = Vector3.new(math.huge,0,math.huge) BodyVelocity.P = math.huge BodyVelocity.Velocity = (HumanoidRootPart.CFrame.lookVector*120) BodyVelocity.Parent = extraRocket wait(3) BodyVelocity:Destroy() end)
this might not fix it, but u forgot an argument on ur fireserver function on the client script
Sometimes when you add server scripts on ReplicatedStorage they just stop working, specially with some tools that use detecting loops, i experienced this many times adding tools to the replicated storage.