ProximityPrompts don’t disable immediately after setting Enabled to false

After triggering a ProximityPrompt, changing ProximityPrompt.Enabled to false takes too long to fully disable. There is a short, but noticeable window where you can still visibly see the prompt after disabling it.

Repro file
Baseplate.rbxl (33.4 KB)

Expected Behavior
The prompt should disable almost immediately when setting Enabled to false after triggering the prompt.

Actual Behavior
The prompt takes a second to go away completely.

Workaround
Manually edit the ProximityPrompt UI code.

Issue Area: Engine
Issue Type: Display
Impact: Moderate
Frequency: Constantly

4 Likes

Thanks for the report! We’ve filed a ticket to our internal database and we’ll follow up when we have an update for you.

5 Likes

This is extremely unappealing with respect to a system I am working on that allows players to pick up physics props. The prompt remains enabled on the prop for a few milliseconds as it enters the player’s hand, which looks very broken.

5 Likes

Thanks for the report. When a ProximityPrompt is disabled on the server, there is some latency before this reaches the client and it visually disables. A way to improve this behavior is to disable the ProximityPrompt in a local script as well for a more responsive behavior.

3 Likes

Update: each time the local player has a ProximityPrompt visible on his screen, a (ScreenGui) named as ProximityPrompts is created inside Player.PlayerGui > ProximityPrompts. Setting this screen’s .Enabled property to false does not work, however, you can get every children which is a ProximityPrompt BillboardGui and set their .Visible to false. That’s going to instantly hide the prompt by directly making it invisible.

image

Hope this helps someone out even 1 year later lol.