Network Mode Blueprints Plugin

Blueprint-Accessible Networking Intelligence

Plugin Overview

Quickly and accurately identify your game's network mode from Blueprints with Network Mode Blueprints, a lightweight and developer-friendly utility plugin for Unreal Engine.

Whether you're building multiplayer shooters, co-op survival games, or dedicated server backends, this plugin gives you granular control over session state logic. Detect if the game is running as a Dedicated Server, Standalone, Net Client, or Listen Serverβ€”and even distinguish between client and server components of a Listen Server instance.

No boilerplate C++ required. Pure, ready-to-use Blueprint nodes deliver runtime network role awareness for reliable multiplayer gameplay flows.

Installation

Option 1: Marketplace

  1. Purchase the plugin from the Unreal Engine Marketplace .
  2. Open the Epic Games Launcher and navigate to the Unreal Engine tab.
  3. Click on the Library panel and find the Network Mode Blueprints plugin.
  4. Click the Install button to add it to your engine installation.
  5. Launch your project and enable the plugin from Edit β†’ Plugins menu.

Option 2: Manual Installation

  1. Download the plugin package from the provided link after purchase.
  2. Unzip the package to your project's Plugins folder (create one if it doesn't exist).
  3. The final path should look like: YourProject/Plugins/NetworkModeBlueprints/
  4. Launch your project and enable the plugin from Edit β†’ Plugins menu.

Using the Plugin

The plugin provides a set of Blueprint nodes to accurately detect your game's network mode at runtime.

Available Blueprint Nodes:

πŸ”Ή IsDedicatedServer(WorldContextObject)

Returns true if the current instance is running as a dedicated server (NetMode == NM_DedicatedServer).

  • βœ… Useful for checking if logic should run only in a server-only context.
  • ❌ Will return false for Listen Server and Clients.

πŸ”Ή IsStandaloneMode(WorldContextObject)

Returns true if running in standalone mode (NetMode == NM_Standalone), meaning:

  • Single-player session
  • No networking, no replication
  • βœ… Good for disabling or modifying logic in multiplayer-only scenarios.

πŸ”Ή IsNetClient(WorldContextObject)

Returns true if running as a network client (NetMode == NM_Client), i.e., not the host or server.

  • βœ… Useful for UI or input logic that should only apply to remote players.

πŸ”Ή IsListenServer(WorldContextObject)

Returns true if this instance is acting as a Listen Server (NetMode == NM_ListenServer).

  • βœ… Applies to the host in a peer-to-peer multiplayer game.
  • 🎯 Does not differentiate between the client-side or server-side logic β€” just confirms the mode.

πŸ”Ή GetListenClient(WorldContextObject, Controller)

Returns true if:

  • The game is in Listen Server mode
  • The provided Controller is the local player controller (i.e., the host's player input logic)

πŸ”§ Internal Logic:

NetMode == NM_ListenServer && Controller->IsLocalController()

  • βœ… Use this to detect the client-side thread of the host in Listen Server setups.
  • ❌ Will return false for:
    • Dedicated servers
    • Standalone
    • Remote clients
    • Server-side logic of the host

πŸ”Ή GetListenServer(WorldContextObject, Controller, OnlyIfHost)

Returns true if:

  • The game is in Listen Server mode
  • The given Controller is running on the server side
  • Optionally filters only the host's own server logic

πŸ”§ Parameters:

  • OnlyIfHost (Boolean):
    • true: Only returns true for the host's own PlayerController (PlayerIndex 0), on the server thread
    • false: Returns true for any controller executing as server logic in a Listen Server
Blueprint Graph Example

🧠 Best Practices

  • Use these nodes early in your game initialization to set up proper network-aware behaviors.
  • Combine with traditional authority checks for the most robust multiplayer logic.
  • Consider caching network mode results rather than checking every frame for performance.

Implementation Example:

1. Open your Game Mode, Player Controller, or Game Instance Blueprint

Blueprint Graph Example

2. Right-click in the graph and search for any of the Network Mode nodes (e.g. "Is Dedicated Server")

3. Connect the output to branch logic that responds differently based on network role

4. For listen server specific logic, use GetListenClient or GetListenServer with appropriate controller references

Important Notes

Testing Different Network Modes: To thoroughly test your implementation:

  • Use the Play As Standalone Game option in the editor to test standalone mode.
  • Use Play As Listen Server + Number of Players set to 2+ to test listen server functionality.
  • Use Launch Dedicated Server option to test dedicated server behavior.

Performance: The network mode detection is very lightweight and can be called frequently without performance impact. However, for best practices, consider caching the result during initialization if the value won't change during gameplay.

Important: While these nodes provide accurate network role detection, they do not replace proper network replication setup. Always ensure your game's replication properties and functions are correctly configured in addition to using these network mode checks.

Technical Details

Features

  • Pure Blueprint nodes for detecting Unreal networking modes and roles
  • Distinguish between:
    • Dedicated Server
    • Standalone Mode
    • Net Client
    • Listen Server
  • Identify client-side vs. server-side execution within Listen Server mode
  • GetListenServer node includes an optional OnlyIfHost boolean to filter for the host's authoritative controller only
  • Supports accurate logic branching at runtime and in BeginPlay, input, and multiplayer contexts
  • Blueprint-only usage β€” no C++ knowledge required

Code Modules

  • NetworkModeBlueprints (Runtime)

Number of Blueprints

  • 0 (All logic is exposed through static Blueprint nodes in a BlueprintFunctionLibrary)

C++ Classes

UNetworkModeUtils

Blueprint Function Library that exposes all network mode detection functionality.

Network Replication

❌ No β€” All logic is evaluated locally at runtime for logic branching β€” no replication required.

Documentation

https://warmargames.com/networkmodeplugin.html

Supported Development Platforms

  • Windows βœ…
  • macOS βœ…
  • Linux βœ…

Supported Target Build Platforms

  • Win64 βœ…
  • macOS βœ…
  • Linux βœ…
  • Android βœ…
  • iOS βœ…

Engine Compatibility

Compatible with Unreal Engine Versions:

5.0 βœ…
5.1 βœ…
5.2 βœ…
5.3 βœ…
5.4 βœ…
5.5 βœ…

Important: While these nodes provide accurate network role detection, they do not replace proper network replication setup. Always ensure your game's replication properties and functions are correctly configured in addition to using these network mode checks.

Last Update: April 18, 2025

Distribution Method: Plugin

Need Help?

If you have any questions or need assistance with the plugin, feel free to reach out.

Contact Support