Installation & Quick Setup

Get your multiplayer chat working in under 5 minutes

Getting MP_ChatSystem running in your project requires zero C++ coding. The entire initialization process is handled by attaching two core components to your existing framework and spawning the default UI.
Follow these steps to get your multiplayer chat working in under 5 minutes.

Step 1: Enable the Plugin

Before you can use the system, you need to activate it inside your Unreal Engine project.
  1. 1
    Open your Unreal Engine project.
  2. 2
    From the top menu bar, navigate to Edit > Plugins.
  3. 3
    In the search bar, type MP_ChatSystem.
  4. 4
    Check the box to enable the plugin.
  5. 5
    Click Restart Now when prompted by the engine.

Step 2: Server Setup (The GameMode)

The server needs a manager to route messages, handle spatial zones, and authorize clients. This is done by adding the MP_ChatManager component to your game's GameMode.
  1. 1
    Open your project's custom GameMode Blueprint.
    (Note: If you don't have one, create a new Blueprint Class derived from GameModeBase).
  2. 2
    In the top-left Components panel, click the green + Add button.
  3. 3
    Search for MP Chat Manager and add it.
  4. 4
    Compile and Save the GameMode.

Why the GameMode?

The GameMode only exists on the Server. By placing the Manager here, we guarantee that clients cannot manipulate room data, ensuring absolute Server-Authoritative security.

Step 3: Client Setup (The Player Controller)

Every player needs a local client component to send messages, process UI commands, and receive authorized data from the server.
  1. 1
    Open your project's custom PlayerController Blueprint.
  2. 2
    In the Components panel, click the green + Add button.
  3. 3
    Search for MP Chat Client and add it.
  4. 4
    Compile and Save the PlayerController.

Step 4: Spawning the Default UI

The backend is now fully connected. Finally, we need to show the chat interface to the player. We will do this inside the PlayerController.
  1. 1
    Still inside your PlayerController Blueprint, go to the Event Graph.
  2. 2
    Find or add the Event BeginPlay node.
  3. 3
    Drag off Event BeginPlay and add an Is Local Player Controller node. Add a Branch (Hold B + Left Click).
    (This ensures a dedicated server doesn't try to spawn a UI widget).
  4. 4
    From the True pin of the Branch, add a Create Widget node.
  5. 5
    In the Class dropdown, select the default plugin widget: WBP_ChatMain (or your custom UI equivalent).
  6. 6
    Drag off the Return Value of the widget and add an Add to Viewport node.
  7. 7
    Compile and Save.

Step 5: Verify Your Setup

To test if everything is working:
  1. 1
    Ensure your custom GameMode and PlayerController are assigned in Edit > Project Settings > Maps & Modes.
  2. 2
    Set your Play In Editor (PIE) Net Mode to Play As Listen Server or Play As Client.
  3. 3
    Set the Number of Players to 2.
  4. 4
    Press Play.
You should now see the default chat UI on both screens. Type a message in one window, hit Enter, and watch it instantly replicate to the other!

Next Step: Head over to the Core Architecture & API Reference to learn how to manipulate the system using Blueprint nodes.