I've made a tool in StarterPack, unticked RequiresHandle, unticked CanBeDropped then I made a child script / non-local Script.
script.Parent.Activated:Connect(function() print("It Works") end)
nothing happens when it is activated but it does get a blue square around it. The blue square goes away when it is clicked again. It never prints the message to the console.
most of the examples I see use named functions.
so I'll try
tool = script.Parent
local function doThis() print("It Works") end
tool.Activated:Connect(doThis)
and I have the same problem. I've tested both of these as a localscript and a script.

3 comments
Geez. does every single thing need to be a call to the server? I was just trying to print() lol
It doesn't
I'm just so confused why it doesn't work.