When using surface GUIs, how do you check to see WHO was the person to click a button? This is the only part I need, I have all the MouseButton1Click stuff, just need to know how to check WHO clicked it.
Alright, so surface Guis are normally placed on parts, thats how most users go about them, however for LOCAL uses like this, you actually put them in StarterGui and set the Adornee to the part. This will allow you to know who clicked because afterall it ends up in their PlayerGui like a regular Gui except now, it's adorned to a part.
Anything dealing with GUIs should be handled locally, so a script running on the client should be detecting all of the events and then requesting for a server-sided script to do something if necessary. It isn't necessary to hold the GUIs on the client, only the connections.