Markers
This API is used to send engagement markers to the Gamebeast platform.
For more information about Markers, visit the Markers Guide.
#include "GamebeastMarkers.h"
UGamebeastMarkers* GamebeastMarkers = UGamebeastSubsystem::Get(this)->GetMarkers();Markers are attributed to the local player's distinct id and sent in batches: when 10 are waiting, every 30 seconds (the MarkerFlushRate rate; 5 seconds in the editor), and on Flush. Failed sends retry with backoff, and a marker the backend rejects (for example, a project over its plan limit) is dropped and logged. Markers still waiting when the game goes to the background or shuts down are saved on the device and sent on the next launch.
SendMarker(MarkerType, Properties)
voidreturn type
Sends a marker with the given properties.
MarkerTypeFStringThe name of the marker. Use PascalCase, like RoundEnded.
PropertiesFGamebeastPropertiesThe marker's properties. Pass {} (or leave the Blueprint pin unconnected) for none.
Usage
GamebeastMarkers->SendMarker(TEXT("RoundEnded"), FGamebeastProperties()
.Set(TEXT("Score"), 600)
.Set(TEXT("Map"), TEXT("Office"))
.Set(TEXT("Duration"), 120));Send positions as an FVector property. It is sent as [x, y, z], the shape heatmaps read.
SendMarkerJson(MarkerType, Properties)
voidreturn type
C++ only. Sends a marker whose properties are a TSharedPtr<FJsonObject> you already have.
Flush()
voidreturn type
Sends everything waiting now, without waiting for the batch to fill. Useful before a level travel you expect to be slow.
GetBufferedCount()
int32return type
The number of markers waiting to be sent or retried.