Skip to content

Voice Chat

The Voice Chat feature provides Steam voice communication for players in the current managed Multiplayer game.

It supports push-to-talk, voice activation, always-on transmission, global playback, proximity-based playback, per-player mute and volume controls, speaking-state queries, and persistent voice events.


Relationship with Multiplayer

Voice Chat is designed to run on top of the plugin's managed Multiplayer feature.

Start Steam Voice Chat starts voice for the current managed Steam multiplayer game. The active game supplies the player/session context used to route Steam voice data between participants.

If no compatible managed multiplayer game is active, Voice Chat cannot start successfully.


Main Capabilities

  • Start and stop Steam Voice Chat
  • Enable or disable voice without leaving the game
  • Select Push To Talk, Voice Activation, or Always On input
  • Set voice activation threshold
  • Select global or proximity playback
  • Configure proximity distance and spatialization
  • Bind remote Steam users to in-world Actors
  • Query local and remote speaking state
  • Mute and unmute individual players
  • Set per-player playback volume
  • Subscribe to speaking and error events

Basic Workflow

A typical voice workflow is:

  1. Join or host a managed Multiplayer game.
  2. Call Start Steam Voice Chat.
  3. Select an input mode using ESteamVoiceInputMode.
  4. Select a playback mode using ESteamVoiceChatMode.
  5. If using Push To Talk, update Set Steam Push To Talk Active from your input logic.
  6. If using Proximity Voice, bind each remote Steam user to the Actor that represents that player in the world.
  7. Stop Voice Chat when the multiplayer voice session is no longer needed.

For practical Blueprint workflows, see Examples.


Voice Input Modes

ESteamVoiceInputMode controls when the local microphone is transmitted:

  • Push To Talk — transmission follows the state set by the game
  • Voice Activation — transmission begins when microphone RMS exceeds the configured threshold
  • Always On — microphone transmission remains enabled while Voice Chat is active

The activation threshold uses a normalized 0–1 range.


Global and Proximity Voice

ESteamVoiceChatMode selects how remote voice is played.

In global mode, remote players are heard without positional attenuation.

In proximity mode, each remote Steam user should be associated with an in-world Actor using Set Steam Player Voice Actor. Voice is then played from that Actor and attenuated according to the configured full-volume and maximum distances.


Player Controls

Voice playback can be customized locally per remote Steam user:

  • Mute or unmute a player
  • Query mute state
  • Set playback volume from 0 to 1
  • Query whether a player is currently speaking

These controls affect the local listener only.


Persistent Voice Events

The feature exposes persistent events for:

  • Local player started speaking
  • Local player stopped speaking
  • Remote player started speaking
  • Remote player stopped speaking
  • Voice Chat errors

Subscriptions return FSteamVoiceChatListenerHandle and should be unsubscribed when no longer needed.


Important Notes

  • Voice Chat requires an active managed Multiplayer game.
  • Proximity Voice requires remote Steam users to be associated with valid game Actors.
  • Push-to-talk state only affects Push To Talk input mode.
  • Per-player mute and volume settings are local to the current user.
  • Persistent event subscriptions should be removed when no longer needed.
  • Voice behavior should be tested with separate Steam clients/accounts in a realistic multiplayer environment before release.