Proximity Prompt Release

Nice feature!
One question I have is that would using proximity prompt as distance trigger be worth it? ex. connecting to the show event to do something else than ui, such as streaming in and out the model on client. Right now i have to iterate through every objects that is meant to be streamed and decide whether to render or not, which results in pretty high script activity.

1 Like

It has support for it already, clearly some people are confused on how it works so I might need to do a tutorial on the custom UI aspect of it.

2 Likes

Think this involves the Visible property.

You could parent the Seat and the ProximityPrompt into a model (separate from one another) to solve that, or by adding an Attachment/Invisible part for the ProximityPrompt to be placed within.

This is because itā€™ll only be shown when it is parented to an Attachment, BasePart, or Model, as mentioned in the Developer Hub Article.

2 Likes

Are there any currently known caveats to this feature, specifically in relation to exploiters? I am extremely interested in ridding of my custom implementation in favour of this natively supported feature.

I am sure ProximityPrompt will outperform what I have now and its range of customisation so far seems great, but as always one thing on my mind is regarding the security behind this feature so I can understand what steps I might need to take to mitigate such problems. For example, activating prompts without being close to them could be problematic, like with ClickDetectors.

3 Likes

Good point. We have accounted for this, as there is a server side check that the player is in range when a prompt is triggered.

14 Likes

For custom UI: ProximityPrompt | Documentation - Roblox Creator Hub

3 Likes

This is now fixed, was an error with the web page. Thanks again.

3 Likes

@crypto_mancer, @Rototally

ProximityPromptService/MaxPromptsVisible

PromptHidden

PromptShown

ProximityPrompt/InputHoldBegin

InputHoldEnd

PromptHidden

PromptShown

These pages do not exist

(I also think that it shouldnā€™t have the same icon as ClickDector)

other than that good job on the Feature! :+1: :clap: :tada:

8 Likes

Glad to hear thereā€™s a serverside range check in the system.

Is there a serverside check for whether or not the player actually has a line of sight when the RequiresLineOfSight property is set to true, or is that still clientside like in the Beta?

3 Likes

Youā€™re able to disable the default gui and implement your own, no hoops to jump through.

Iā€™ve always wanted to implement some sort of way to use a keybind to actually activate a certain event, and trying to figure out magnitude with UIS (UserInputService) always got in the way. Thank you for releasing this! This will help out a lot, and will definitely make games look a lot smoother. Keep these awesome updates coming!

2 Likes

You can click on the purple text to view itā€™s descriptions.

1 Like

This is a great feature!

Unfortunately, it came out late for me to use the key interact system and I already coded my own key interact system. Iā€™m not sure if Iā€™m going to use it on an upcomming RPG game Iā€™m working on because I donā€™t want to take the extra time to work on it but maybe instead, Iā€™ll use some parts off the API and use the existing GUI as the custom one.

If it came out earlier, I would have used the feature right away because it saves a lot of time from coding the key interact system which is time consuming.

I wonder how much this new feature will impact performance. I want my upcoming game to run at an acceptable and playable frame rate on mobile devices.

7 Likes

Pretty sure theres a property for that named ā€œRequiresLineOfSightā€.

Will this mean deprecation of Click Detectors?

I donā€™t see how this post has any relevance to click detectors, but I do agree that click detectors could be deprecated due to their unreliability.

3 Likes

For those who want to easily customize prompts, I really recommend using Prompts+:

Itā€™s really useful

8 Likes

Is this hard-coded to work with player.Character?

I assume this uses some sort of spatial partitioning algorithm to speed up distance checking between proximity prompts and players. Is there any way Roblox can expose that as well so we donā€™t need to implement our own? This would be able to be used much more versatily/generically.

26 Likes

I was hoping for a way to add multiple interactions to one ProximityPrompt instance. This would likely require a toggle switch on the instance itself and a way to add the interactions through scripting. Something like Prompt:AddInteraction(name, key, ...) I mentioned this on the last post and was hoping it might have been added by release. Maybe thereā€™s still time who knows. Unfortunately without this ability Iā€™m going to have to resort to the old way. It just doesnā€™t make sense for me to have to do the hacky things I did to make it work the way it should have to begin with. I wish some features that are released could have features aimed specifically at the scripting side of things, obviously they need to be developer friendly but handicapping the feature isnā€™t a great idea either.

Just my two cents.

1 Like