Good question. The line of sight check is only clientside, from the camera to the prompt. It won’t guard against, say, a player using an exploit to interact with a nearby object on the other side of a wall. Do you anticipate this being a problem?
For me personally this is another gripe I have with this system, I know you guys can’t provide a blanket solution to this without damaging people who use custom characters etc. But for me it’s not realistic to assume the player won’t try and cheat the system and get around the visibility check. Especially in games where you are only meant to interact with this from one side. In certain cases this can be game breaking where you intend a player to go through a certain area but instead they can interact through the wall.
I posted this a while back:
https://devforum.roblox.com/t/how-do-you-do-it-interactions-with-objects-near-character-hold-e/600157
I’m happy that the system I asked the community for their solutions on now has an official feature supporting it
Finally it’s out! I’m just wondering if the bug I initially pointed out on the beta test is still there with mapping an action to a function key?
Thanks for your interest in the feature! Yes, all standard keyboard keys show up correctly now, including the function keys.
That’s good that it’s fixed, have a nice day!
That’s not a bug, you most likely have “Requires align of sight” enabled.
In order to fix this you can go to the proximity prompt settings and simply disable it.
with the part being inside the other part it’ll classifies it as a object thats blocking its line of sight from the middle of the part to you.
Edit - Fixed my terrible grammar
Thank you for that, I didn’t even know what that property was for. I thought it was a bug until you told me.
No worries, Its a new object. Not a lot of people know how to use it yet
This is a great and useful tool that will help a lot of developers! Glad to see that Roblox is heading towards the right direction!
This might’ve fit better as a thread in Developer Hub but if the Proximity Prompt team is still taking feedback for the feature and its documentation, just wanted to make a quick mention I saw a bit ago. This is for ProximityPrompt.Style’s code sample to emulate the default UI.
local LocalPlayer = Players.LocalPlayer
while LocalPlayer == nil do
Players.ChildAdded:wait()
LocalPlayer = Players.LocalPlayer
end
LocalPlayer is implicitly available to all LocalScripts[1]. This method of waiting for the LocalPlayer is archaic and doesn’t need to be used, unless there’s some kind of edge case this is accounting for. Would be great to remove the while loop so newer developers don’t learn this old habit!
Thank you. I had a game that we needed interaction like this but we had to create it from scratch. This method seems 10 times easier and seems more clean.
In my opinion, it will make tons of amateur Roblox creations feel uniform. I think Roblox should treat itself not like a game, but an engine. We should be beyond the days of Roblox games being tiny little creations nobody cares for. Adopt Me! is one of the largest games on the planet, with an average of about 300k players at a time. Poorly scripted games somehow have 15k+ consecutive players COUGH COLOR BLOCK However, I do like the UI.
Thank you, works brilliantly and more effectively than click detectors!
This update is great, it will really boost the quality of a lot of game experiences. Writing a system similar has also been a lengthy process. Nice to have a streamlined approach. Well done to the team on getting it out so soon. It is easy to customize and incorporate into any game. Interested to see the performance implications. Would also be nice to see documentation on how the object goes about detecting the players within radius of the proximity prompt.
Here is an unlockable chest using the proximity prompt;
You can easily create a circle by making a square frame and then using a UICorner with a scale of 1.
You can disable the “RequiresLineOfSight” Property.
But then how would I only have it show a certain sector of the circle? This also wouldn’t work if you wanted it hollow.
Outstanding! I was just starting to feel dread because I knew in the current game I was working on, I had gotten to the stage of development that I have to create proximity prompts again, but now the API makes it much simpler!
Can’t wait to use this.
Good. Higher quality amateur games are what we want.
With that being said, a developer who actually wants to put effort in could easily, heavily customize this whole system. The API just takes away the dirty behind the scenes work, unless what you’re looking for is fundamentally different than what this shows.