Engine

Chat with Voice

Chat with voice is a proximity-based voice chat feature that simulates realistic communication based on how close you are to other users who are speaking. The closer you are to another user's avatar, the louder their voice; conversely, the farther away you are, the softer their voice.

Chat with voice is only available for places that support a maximum of 50 users.

Two users chatting with voice inside an experience

Enabling Chat with Voice

Before you can enable chat with voice in an experience, you must first publish it to enable the Game Settings menu within Studio.

  1. Open your experience in Studio.

  2. Open Game Settings from the Home tab.

    Game Settings button indicated in Home tab
  3. Navigate to the Communication tab on the left side of the window.

  4. Toggle Enable Microphone so the selector turns from gray to green.

  5. (Optional) For greater communication among users within your experience, toggle on Enable Camera to allow eligible users to animate their avatar with their movement.

  6. Publish the place to save the changes.

Chat with voice will now be available to verified 13+ users who opt‑in to the feature, in every place within the experience that's set to a maximum of 50 users.

Setting Maximum Users

If you previously set the maximum number of users in a place to more than 50, you'll need to reduce it to support chat with voice.

  1. In the left-hand navigation of the Game Settings dialog, select Places. Every place within your experience displays.
  2. Click the button next to the place with more than 50 players, then select Configure Place.
  3. In the Max Players field, enter any number less than or equal to 50.
  4. Click the Save button and then publish to save the changes.

When you update the maximum number of users in a place to fewer than 50, there may be servers already configured to a different, higher number. Since those servers won't support chat with voice, it's recommended to restart servers.

Disabling Per Place

If you don't want to enable chat with voice for every place within your experience, you can disable it within specific places that would otherwise be voice‑eligible through the EnableDefaultVoice property.

To disable chat with voice for a specific place within an experience:

  1. Open the place in Studio.

  2. In the Model tab, navigate to the Advanced section and click the Service icon.

    Advanced options indicated in Model tab
  3. Select VoiceChatService and click Insert.

  4. In the Explorer window, select VoiceChatService.

    VoiceChatService in Explorer hierarchy
  5. In the Properties window, disable the EnableDefaultVoice property.

  6. Publish the place to save the changes and restart servers to ensure the change takes effect for all servers currently running your experience.

Checking Chat with Voice Status

You can check if a user has enabled chat with voice by calling IsVoiceEnabledForUserIdAsync() in a LocalScript. For example, if you want to enable a UI layer for voice‑enabled users, reference the following script:

LocalScript - Check Chat with Voice Status

local Players = game:GetService("Players")
local VoiceChatService = game:GetService("VoiceChatService")
local localPlayer = Players.LocalPlayer
local success, enabled = pcall(function()
return VoiceChatService:IsVoiceEnabledForUserIdAsync(localPlayer.UserId)
end)
if success and enabled then
localPlayer.PlayerGui.MyVoiceGui.Enabled = true
end