GamebeastDocs
Dashboard
Unreal SDK

Installation

Install the Gamebeast plugin in an Unreal Engine project, add your SDK Key, and send your first marker.

If you haven't created a project in the Gamebeast dashboard yet, start with the Getting Started guide and pick Unreal as the platform. If Unreal isn't in your platform list yet, pick Other: the SDK works the same way with both.

The SDK supports Unreal Engine 5.3 and later, on every platform the engine's HTTP module supports.

Installing the plugin

The plugin is available from our GitHub.

  1. Copy the repository into your project as Plugins/Gamebeast, or add it there as a git submodule:

    git submodule add https://github.com/GamebeastGG/gamebeast-unreal.git Plugins/Gamebeast
  2. Right-click your .uproject and choose Generate Visual Studio project files (or your IDE's equivalent), then build.

  3. Open the editor and check that Gamebeast is enabled under Edit > Plugins.

  4. If you call the SDK from C++, add "Gamebeast" to your game module's .Build.cs:

    MyGame.Build.cs
    PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "Gamebeast" });

Blueprint-only projects can skip step 4.

Creating an SDK Key

The SDK uses an SDK Key: a public key scoped to a single project that's safe to ship inside your game.

  1. Open Project Settings from the left side of the dashboard.
  2. Press Create API Key.
  3. Copy the key before closing the popup. You won't be able to see it again.

Starting the SDK

No code: Project Settings

  1. In the editor, open Edit > Project Settings > Plugins > Gamebeast.
  2. Paste your SDK Key into Api Key.

The SDK now starts itself on the first frame of every game instance, including Play In Editor. The setting is saved to Config/DefaultGame.ini. If your repository is public, move the [/Script/Gamebeast.GamebeastSettings] section into an untracked Config/UserGame.ini instead.

Code: your GameInstance

Call Setup from your GameInstance's Init. A call there takes precedence over Project Settings, and it's how you pass a known player id or targeting properties.

MyGameInstance.cpp
#include "MyGameInstance.h"
#include "GamebeastSubsystem.h"

void UMyGameInstance::Init()
{
    Super::Init();

    GetSubsystem<UGamebeastSubsystem>()->Setup(TEXT("abcd-efgh-1234-5678")); // Replace with your SDK Key.
}

Sending your first marker

#include "GamebeastSubsystem.h"
#include "GamebeastMarkers.h"

UGamebeastSubsystem::Get(this)->GetMarkers()->SendMarker(TEXT("FirstLaunch"), {});

In Blueprint, get the Gamebeast Subsystem node, then Get Markers and Send Marker.

Press Play. In the editor the SDK reports to your project's development environment; packaged builds report to production (see Environments). Markers are sent in batches, every 5 seconds in the editor, so the marker reaches the dashboard within a few seconds.

And that's it. Next, read the SDK overview and the API reference.

On this page