# Stats

**URL:** https://heroiclabs.com/docs/hiro/unreal/stats/
**Keywords:** stats, hiro
**Categories:** hiro, unreal, stats

---


# Stats

Read more about the Stats system in Hiro [here](../../concepts/stats/).

## Get all stats

Get all stats.

```cpp
FHiroOnStatsGet OnStatsGet;
OnStatsGet.AddDynamic(this, &AMyActor::OnStatsGet);
FOnError OnError;

HiroClient->StatsGet(Session, OnStatsGet, OnError);

void AMyActor::OnStatsGet(const FHiroStatList& StatList)
{
    UE_LOG(LogTemp, Log, TEXT("%s"), *StatList.ToJson());
}
```

## Update stats for the player

Update stats.

```cpp
FHiroStatUpdateRequest Request;

FHiroStatUpdate StatUpdate1;
StatUpdate1.Name = "public_stat_1";
StatUpdate1.Value = 100;
StatUpdate1.Operator = EHiroStatUpdateOperator::STAT_UPDATE_OPERATOR_SET; // Replace SomeEnumValue with the actual enum value
Request.Public.Add(StatUpdate1);

FHiroStatUpdate StatUpdate2;
StatUpdate2.Name = "private_stat_1";
StatUpdate2.Value = 100;
StatUpdate2.Operator = EHiroStatUpdateOperator::STAT_UPDATE_OPERATOR_SET; // Replace SomeEnumValue with the actual enum value
Request.Private.Add(StatUpdate2);

FHiroOnStatsUpdate OnStatsUpdate;
OnStatsUpdate.AddDynamic(this, &AMyActor::OnStatsUpdate);
FOnError OnError;

HiroClient->StatsUpdate(Session, Request, OnStatsUpdate, OnError);

void AMyActor::OnStatsUpdate(const FHiroStatList& StatList)
{
    UE_LOG(LogTemp, Log, TEXT("%s"), *StatList.ToJson());
}
```