I've given this a shot and the best I can come up with is using:
humanoid:UnEquipTools()
when you loop it the player can still equip an item for a short time. I found you could do:
while [something] true do
game.Players.LocalPlayer.Character.Humanoid:UnEquipTools()
end
However the way mentioned above is insanely laggy. I understand you could parent the tools to something like replicated storage but the player wouldn't see they have the items. Is there any physical way this could be done without using a custom backpack?
I tried my best to comply with the concept help article since I can't find much information about this.

2 comments
Add a "wait()' to the while loop.
if you add a wait the player can still manage to barely equip the item