メインコンテンツまでスキップ

実績を表示する

Last updated on February 4, 2026

注釈:本資料はAI技術を用いて翻訳されています。

概要

AccelByte Gaming Services (AGS) の実績サービスを使用すると、利用可能な実績とユーザー実績をさまざまな方法で表示できます。ゲーム内で実績を表示することで、プレイヤー体験にさらなる動機付けと達成感が加わり、すべてをロック解除するために関与し続け、進歩を続けることを奨励します。

この記事では、利用可能なすべての実績設定と特定のプレイヤーの実績を表示する方法について説明します。

目標

  • 設定された設定に基づいて利用可能な実績を表示するために AccelByte SDK を利用する方法を説明する。
  • ユーザー実績を表示するために AccelByte SDK を利用する方法を説明する。

前提条件

  • AGS 管理ポータルへのアクセス。
  • AccelByte Unreal、Unity、または Extend SDK(以下の権限を含む):
    • Client ID
    • Client Secret
  • AccelByte Achievement API ドキュメントへのアクセス。
  • 必要な情報を設定するための AccelByte Statistics API へのアクセス。
  • 関連する名前空間に実績設定が存在する必要があります。

利用可能な実績を表示する

AGS を使用すると、ゲーム UI に応じて、単一の実績のみを表示することも、複数の実績を同時に表示することもできます。

単一の実績を表示する

単一の実績を表示するには、achievementCode を知っている必要があります。その achievementCode とこの関数を使用して、実績の名前、説明、goalValue、アイコンなどの実績情報を取得できます。

FString AchievementCode = FString("MyAchievementCode");

auto ApiClient = AccelByteOnlineSubsystemPtr->GetApiClient();
auto AchievementApi = ApiClient->GetAchievementApi().Pin();

AchievementApi->.GetAchievement(AchievementCode, THandler<FAccelByteModelsMultiLanguageAchievement>::CreateLambda([](const FAccelByteModelsMultiLanguageAchievement& Result)
{
// Do something if GetAchievement is successful
}), FErrorHandler::CreateLambda([](int32 ErrorCode, const FString& ErrorMessage)
{
// Do something if GetAchievement has an error
}));

利用可能なすべての実績を表示する

単一の実績を表示するのとは対照的に、関連する名前空間内で利用可能なすべての実績を表示する場合、情報を提供する必要はありません。この関数を使用して、関連する名前空間内のすべての実績のリストと、実績の名前、説明、goalValue、アイコンなどの情報を取得できます。

FString Language = FString("en");
EAccelByteAchievementListSortBy SortBy = EAccelByteAchievementListSortBy::LISTORDER;
int32 Offset = 0;
int32 Limit = 50;

auto ApiClient = AccelByteOnlineSubsystemPtr->GetApiClient();
auto AchievementApi = ApiClient->GetAchievementApi().Pin();

AchievementApi->QueryAchievements(Language, SortBy, THandler<FAccelByteModelsPaginatedPublicAchievement>::CreateLambda([](const FAccelByteModelsPaginatedPublicAchievement& Result)
{
// Do something if QueryAchievements is successful
}), FErrorHandler::CreateLambda([](int32 ErrorCode, const FString& ErrorMessage)
{
// Do something if QueryAchievements has an error
}), Offset, Limit);

ユーザー実績を表示する

プレイヤーの進行状況とロック解除された実績を表示することで、プレイヤーはゲーム内での進行状況と成果を確認し、評価することができます。この関数を使用して、プレイヤーのロック解除済みおよび進行中の実績をクエリできます。この関数は、AccelByte IAM に既にログインしている特定のプレイヤーから呼び出されます。

EAccelByteAchievementListSortBy SortBy = EAccelByteAchievementListSortBy::LISTORDER;
int32 Offset = 0;
int32 Limit = 50;

auto ApiClient = AccelByteOnlineSubsystemPtr->GetApiClient();
auto AchievementApi = ApiClient->GetAchievementApi().Pin();

AchievementApi->QueryUserAchievements(SortBy, THandler<FAccelByteModelsPaginatedUserAchievement>::CreateLambda([](const FAccelByteModelsPaginatedUserAchievement& Result)
{
// Do something if QueryUserAchievements is successful
}), FErrorHandler::CreateLambda([](int32 ErrorCode, const FString& ErrorMessage)
{
// Do something if QueryUserAchievements has an error
}), Offset, Limit);