Is it possible to keybind a punch instead of it being a tool in your inventory. Would you have to use a local script and put it into the starter pack. Also would you have to script in the Gui to turn of the visibility for the inventory.
You have to use Local Script for that, and also Keyboard Input to bind a key to punch. If you have a punching tool, you basically can change its event and function's parameters to make it keybinded.
Also if your FE(FilteringEnabled) is off, you can change visibility of a gui from any script you want. Doesn't matter if it is in Workspace or in Gui itself. If you would ask which is mostly prefered, I would suggest you having it in Gui. It's much easier to reach it from there and reduces mistakes.