Is there a better/more performance friendly option then .Touched:Connect to detect if a player is touching Part?
To my knowledge there is no such possible method. I might be wrong though and yes the .toched event is a bit buggy sometimes but I found a way that worked for me and made it more reliable
There’s no other event but if you know the position of the part you can check if a player is also in that position (don’t necessarily know if that’s better performance wise but an idea).
Great opportunity to learn about OverlapParams.
https://developer.roblox.com/en-us/api-reference/datatype/OverlapParams
The listed functions on this API docs page aren’t events, and have to be ran each frame. It’s still much more performance friendly than a .Touched event if you whittle down the number of parts a single query has to go through making full use of OverlapParams whitelists, maximum parts to find, and a collision group.