Unreal client for Nakama server.
Clone or download
Renanse * Updated to Nakama 1.4.0.
* Removed unused Leaderboard next/prev id as per changes made in 1.4.0
* Updated session parsing to look for "han" for handle keyword.
* Added correct purchase records processing.
Latest commit 2997983 Feb 17, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
server @ 93669f8
.gitignore Initial public release. Mar 21, 2017


Nakama Unreal

Unreal Editor 4 client for Nakama server.

Nakama is an open-source distributed server for social and realtime games. For more information have a look at the server documentation.

The client guide is available on the server documentation. The client reference documentation is deployed on gh-pages.

If you encounter any issues with the server you can generate diagnostics for us with nakama doctor. Send these to support@heroiclabs.com or open an issue. If you experience any issues with the client, it can be useful to enable trace (.Trace(true)) to produce logs and open an issue.

Getting Started


To get started using Nakama in Unreal, you will need the following:

  1. Unreal Engine 4.15 or greater.
  2. A compiler for the platform you are developing on, such as Visual Studio on Windows or XCode on OSX.
  3. nakama-unreal

Also, please ensure your Unreal project is a C++ project. If it is Blueprint only, you can add a new C++ file to your project in Unreal Editor via "File -> New C++ Class". Set it private and name it whatever you like. Having this file in your project lets Unreal know to look for C++ code.


To use nakama-unreal in your Unreal project, you'll need to copy the nakama-unreal files you downloaded into the appropriate place. To do this:

  1. Open your Unreal project folder (for example, D:\MyUnrealProject\) in Explorer or Finder.
  2. If one does not already exist, create a Plugins folder here.
  3. Copy the Nakama folder from the nakama-unreal release you downloaded, into this Plugins folder.
  4. Now, edit your project's .Build.cs file, located in the project folder under Source\[ProjectFolder] (for example, D:\MyUnrealProject\Source\MyUnrealProject\MyUnrealProject.Build.cs). Add this line to the constructor:

PrivateDependencyModuleNames.AddRange(new string[] { "Nakama" });

So, you might end up with the file that looks something like this:

// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.

using UnrealBuildTool;

public class MyUnrealProject : ModuleRules
	public MyUnrealProject(TargetInfo Target)
        PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore" });

        PrivateDependencyModuleNames.AddRange(new string[] { "Nakama" });

At this point, you are done. Restart Unreal. After it compiles things, open Edit->Plugins and scroll to the bottom. If all went well, you should see HeroicLabs.Nakama listed as a plugin.

Server connect

To create a client and connect to the Nakama server with the default settings:

#include "NClient.h"

NClient client = NClient::Default("defaultkey");