It doesn’t matter what the name of the player is, it can be set to player, donkey, plane, helicopter, it doesn’t matter. @jake_4543 , just as long as the player is set then it’ll work.
@QuantumDonkeyFart how many tools do you have in the client? If it’s only one, or multiple, whatever you’re trying to do on the server could be a lot easier. What I usually do for my clicker tools, I put them all in a module, define them by name, and then on the server I FindFirstChildOfClass on either the player’s backpack, or the player’s character ( since the tool gets moved to the character once equipped ). If the tool doesn’t exist, they don’t have one ( the server shouldn’t have been fired anyways if the tool wasn’t equipped, so just look in their character and make sure they’re not exploiting ).
Edit:
Also wanted to ask, are you creating the tools on the client or the server? If they’re being created in a LocalScript ( or the client ) then that explains a lot. Creating stuff on the client wont replicate to the server ; meaning other players and the server wont be able to see it. If you’re creating tools on the client, convert to creating them on the server. This could be your issue.
Hi, the tools are in ReplicatedStorage and get cloned to the player when equipped. This method has worked for my other tools (6 of them) and works for this, but the local script in the tool is only passing Player, and not the tool variable.
Player clicks GUI button, remote event called to server script that creates the tool and places it in player, like i said, there are 6 other tools working without issue.
The tool is locally cloned so it will not replicate to the Server, therefore it will be nil.
To make both of them not nil, both of them will have to see it(meaning that both of them can reference it). In this case, the client has something the server cannot see. This is just like if you send an object from ServerStorage to the client, even though the server can see it, the client cannot, therefore the object becomes nil.
So, put your tool into replicated service and keep the script where it is, and do something like this:
local tool = game:GetService("ReplicatedStorage"):WaitForChild(ToolnameHere)
fireServer(tool)
Don’t clone the tool from the client, clone the tool from the server.