EOS SDK のリリース ノート

Epic Online Services (EOS) SDK のアップデートの詳細。

EOS SDK について

  • 開始するための手順
    EOS サービスと EOS SDK の設定および使用方法については、「EOS を開始するステップ」ページを参照してください。
  • SDK のダウンロード方法
    EOS SDK の各種リリース バージョンだけでなく、ゲーム クライアントを実行するプラットフォームに応じて、SDK のさまざまなタイプをダウンロードして使用することができます。 EOS を開始するためのドキュメント「使用開始の手順:EOS SDK ダウンロードのタイプ」を参照してください。
  • 新機能
    各 EOS SDK リリースでの変更点の概要については「EOS の新機能」を参照してください。
  • 予定されている機能
    開発中の機能については、trello.com/~/eos-public-roadmap の EOS ロードマップで確認できます。

リリース ノート

2023

1.16.1 - 2023年8月30日

アンチチート
  • バグ修正:Windows オペレーティング システムで起動エラー 20006 が発生する Easy Anti-Cheat (EAC) サービスのセットアップの問題を修正しました。
認証
  • バグ修正:アプリケーションが中断してから 2 時間以上にわたって再開した後、認証トークンの有効期限を修正しました。これには、Epic アカウント ID 認証トークンと、EOS_Connect_AddNotifyAuthExpiration から起動されない Connect 認証の更新の通知が含まれます。
接続
  • バグ修正:アプリケーションが中断してから 2 時間以上にわたって再開した後、認証トークンの有効期限を修正しました。これには、Epic アカウント ID 認証トークンと、EOS_Connect_AddNotifyAuthExpiration から起動されない Connect 認証の更新の通知が含まれます。
Lobbies
  • バグ修正:アプリケーションが中断してから再開した後のロビー接続タイムアウトを修正しました。
モバイル
  • バグ修正:正しい Gradle ファイルを Android ログイン サンプルに追加しました。現在、Android ヘッダは他のプラットフォームと一致する新しい「/SDK/Include」ディレクトリにあります。
Sony PlayStation
  • バグ修正:PS5 7.00 をターゲットとする場合の、高遅延状況における EOS_P2P_SendPacket のパフォーマンスが向上しました。このバグは、EOS SDK バージョン 1.16 に含まれていました。

既知の問題とその回避策

Lobbies
  • EOS SDK バージョン 1.16 では、ロビー所有者のメンバー属性を変更していない EOS_LobbyModification_AddAttribute を使用してロビーに属性を追加すると、以前に EOS_LobbyModification_AddMemberAttribute とともに設定したロビー所有者のメンバー属性は削除されます。この問題に対処するには、ロビー属性が変更されるたびに、ロビー所有者のメンバー属性を変更、追加、または削除する必要があります。

    ロビー所有者のメンバー属性の 1 つが変更されているということが重要なため、属性の値はどんなものでも構いません。ロビー属性の変更に使用されるロビー更新変更の一部として、ロビー所有者の属性を変更、追加、または削除する必要があります。

    コード例:

1.16 - 2023年8月16日

アンチチート
  • 新規:サーバーからクライアントに送信される個々のメッセージ チャンク サイズの最大値を、256 バイトから 512 バイトに増やしました。
  • 新規EOS_AntiCheatClient_RegisterPeerOptionsAuthenticationTimeout に対して使用する値に関する推奨事項を削除しました。認証のタイムアウトはゲームごとに異なるため、特定のタイムアウト値を推奨しなくなりました。
  • 新規:アンチチート LogPlayerTakeDamage API を更新しました。DamageSourceNonPlayerCharacter または World の場合に、AttackerPlayer 情報フィールドがオプションになりました。
  • 新規:アンチチート サービスがゲームに設定されていない場合、ログを記録するようになりました。これは、アンチチートをサポートするプラットフォームで実行されているゲームにのみ適用されます。アンチチートをサポートしていないプラットフォームでは、アンチチートがゲームに設定されていないことを警告するアンチチート サービスの出力ログが削除されました。
  • 新規:アンチチートのネットワークメッセージのサイズが、Verbose ではなく、VeryVerbose ロギング レベルでログに記録されるようになりました。
  • 新規:アンチチート整合性ツールが、特定のエラー (空のカタログの生成を試行しているなど) をより明示的にログに記録するようになりました。
  • バグ修正:EOS EAC ブートストラッパーでゲームを起動した際のタイ語の誤訳を修正しました。
  • バグ修正:安定したネットワーク条件下で、プレイヤー追跡インターフェースがプレイヤー情報のほとんど、またはすべての送信に失敗するバグを修正しました。
  • バグ修正:ファイル サイズが大きい場合に、アンチチート モジュールをアップデートする際のダウンロードに失敗するバグを修正しました。
認証
  • 新規EOS_Auth_Login API 用の EOS_LF_NO_USER_INTERFACE 入力フラグを追加しました。このフラグを使用すると、プレイヤーにプロンプトを表示することなく、警告表示なしで失敗する自動プレイヤー ログインを試行できます。
  • 新規:デベロッパー認証ツール (Dev Auth Tool) にコマンドライン引数を追加しました。
    • --port=N を追加 (N はポート番号):これを使用すると、Dev Auth Tool で使用するリッスン HTTP ポートを自動的に選択できます。
    • --credential-name=S (S は認証情報名):これを使用すると、初めてサインインする際に、認証情報名を自動的に指定できます。
  • バグ修正:HTTP 再試行応答による認証時にまれに発生するクラッシュを修正しました。
  • バグ修正:デバイス承認の期限が切れる直前に発生する可能性のある、認証時のクラッシュを修正しました。
  • バグ修正:問題を修正し、アカウント ID が設定されているかどうかに関係なく、すべての外部アカウントが含まれるようになりました。これまで、ユーザー (EOS_UserInfo_ExternalUserInfo) の外部アカウントには、アカウント ID が設定されていない外部アカウントは含まれていませんでした。すべての外部アカウントのすべてのユーザーが確実にアカウント ID を使用できるわけではなかったことから、これは予想外の事態でした。
Connect
  • 新規EOS_Connect_Login でローカル ユーザー (プレイヤー) の NSA (Nintendo Service Account) ID トークンを提供できるように、入力パラメータ NSAIdToken を追加しました。このトークンで、ローカル ユーザーにオンライン プレイの許可があるかどうかを確認します。ローカル ユーザーにトークンがある場合、EOS サービスで、ローカル ユーザーは Lobbies インターフェースと Sessions インターフェースを使用することができます。トークンがない場合、ローカル ユーザーはオンラインでプレイすることも、Lobbies インターフェースまたは Sessions インターフェースを使用することもできません。
コンソール固有
Sony PlayStation
  • 新規:PlayStation 4 のビルド フラグを最適化し、ゲームのメモリ使用量を削減しました。
  • バグ修正:PlayStation 4 のペアレンタル コントロールに内部的にアクセスする際に、メモリ使用量が不適切であると SDK がクラッシュする問題を修正しました。
Nintendo Switch
  • 新規:Nintendo Switch のコンパイルとリンクの最適化を更新し、バイナリ サイズを圧縮して削減しました。-flto=full を使用するようになり、-Os-Oz (アグレッシブ サイズ) に変更しました。
クロスプレイ
Ecom
  • 新規:以下の条件では、EOS_Ecom_CheckoutEOS_Ecom_PurchaseProcessing を返します。

    • プレイヤーが購入確定後、購入フロー UI を閉じた。
    • 購入チェックアウト Web サイトがまだトランザクション ID を返していない。

    これまでは、EOS_Ecom_Checkout は、EOS_Canceled を返していました。

  • 新規:サンドボックス ID によって所有権をリクエストするための新しい API EOS_Ecom_QueryOwnershipBySandboxIds を追加しました。開発者は EOS_Ecom_QueryOwnershipBySandboxIds API を使用して、特定のサンドボックス ID セットの所有アイテムをすべてクエリできるようになりました。

  • 新規EOS_Ecom_QueryOwnership メソッドが、1 回の API 呼び出しで最大 400 個のカタログ ID を受け入れるようになりました。API も改善され、バッチ化された複数のリクエストをバックエンドに送信し、レスポンスを集約できるようになりました。

  • 新規EOS_Ecom_QueryEntitlements メソッドが、1 回の API 呼び出しで最大 256 個の利用資格を受け入れるようになりました。API も改善され、バッチ化された複数のリクエストをバックエンドに送信し、レスポンスを集約できるようになりました。

  • バグ修正EOS_Ecom_RedeemEntitlements が失敗する断続的に発生していた問題を修正しました。

EOS コア
  • 新規:無効なパラメータ (null または空) が渡された場合に、C の API の関数に追加のログを追加しました。

  • 新規eos_init.h にゲームの次の文字列の最大長の定義が含まれるようになりました。

    • ProductName
    • ProductVersion

    SDK は、ゲーム起動時に文字列の長さをチェックし、最大長を超える場合は失敗します。

  • 新規eos_types.h にゲームの次の文字列の最大長の定義が含まれるようになりました。

    • ClientId
    • ClientSecret
    • ProductId
    • SandboxId
    • DeploymentId
    • EncryptionKey

    SDK は、ゲーム起動時に文字列の長さをチェックし、最大長を超える場合は失敗します。

  • 新規:アプリケーションがバックグラウンド状態とフォアグラウンド状態の間で切り替わるときに SDK が RTC ルームを処理する方法を、EOS_Platform_RTCOptionsBackgroundMode フィールドで指定できるようになりました。

  • 新規:Steamworks のサポート:

    • Steamworks バージョン 1.13 以降のサポートを追加しました。
    • Steam サニタイゼーション呼び出しは、Steamworks バージョン 1.45 以降を使用する場合にのみ発生します。
    • 起動コマンドラインの読み取り (Steam ゲームの招待を受け入れるため) は、Steamworks バージョン 1.43 以降でのみ動作します。
  • バグ修正:ログ出力で誤った型指定子を使用すると、SDK がクラッシュする問題を修正しました。

  • バグ修正EOS_Initialization が失敗する場合に発生することのある例外を修正しました。

  • バグ修正:WinHttp で WebSocket 接続を閉じる前の WebSocket デストラクタでの追加の状態チェックを追加しました。これにより、接続がシャットダウンされたときにソケットを閉じるという誤った警告が表示されるのを防ぐことができます。

  • バグ修正:デバッガが接続されている場合、シャットダウン時に SDK がクラッシュするのを修正しました。

  • バグ修正:以下の条件でピアツーピア接続が失敗する断続的な問題を修正しました。

    • プレイヤーがサインインした直後に接続が開始される。
    • リレー制御の設定が EOS_RC_ForceRelays である。
  • バグ修正:問題が修正され、ゲームが Epic Games Launcher によって起動されたかどうかが EOS_Platform_CheckForLauncherAndRestart によって正しく検出されるようになりました。詳細は、「プラットフォームのインターフェース:ランチャーでアプリケーションを再起動する」を参照してください。

  • バグ修正:SDK がバックエンド構成サービスに接続できない場合に、構成サービスからの結果を待機しているタスクが 5 分以上停止する問題を修正しました。この動作は、これらのタスクが 1 分未満で再試行され、その後キャンセルされるように変更されました。依存関係のあるタスクには、このキャンセルが通知されます。

  • バグ修正:null の場合の動作を正しく説明するために、EOS_Platform_Options::IntegratedPlatformOptionsContainerHandleeos_types.h にあるコメントを修正しました。

  • バグ修正:一部の内部 HTTP リクエストが正しく設定されていないことから、再試行にかかる時間が意図したよりも長くなってしまう問題を修正しました。影響を受けるデリゲートは、接続関連の問題の結果をより早く報告するようになりました。

C# での EOS SDK
  • バグ修正:C# ラッパーの使用中にマルチスレッド環境で同じバッファを複数回固定したときに発生する問題を修正しました。
    • たとえば、アンチチート サーバーの NetProtect ネットワーク パケット保護機能を使用し、データをその場で復号化すると、クラッシュが発生していました。
EOS オーバーレイ
  • バグ修正:プロキシ アカウントでサインインするとクラッシュが発生する断続的な問題を修正しました。
フレンド
ロビー
  • 新規:作成 API と参加 API 用の bPresenceEnabled の使用に関するコメントを改善しました。詳細については、「EOS_Lobby_JoinLobbyOptions」ドキュメントを参照してください。
  • 新規EOS_LobbyDetails_Info に値 bPresenceEnabled を追加しました。bPresenceEnabled が、ロビーが bPresenceEnabled で作成されたかどうかに基づいて、EOS_LobbyDetails_CopyInfo によって EOS_LobbyDetails_Info で設定されるようになりました。
  • 新規:ロビーに「Your Party」機能を追加しました。詳細については、「ソーシャル オーバーレイ:Your Party」のドキュメントを参照してください。
  • 新規:ロビーに「参加をリクエストする」機能を追加しました。詳細については、「ソーシャル オーバーレイ:参加をリクエストする」のドキュメントを参照してください。
  • 新規EOS_Sessions_AddNotifySendSessionNativeInviteRequested および EOS_Sessions_RemoveNotifySendSessionNativeInviteRequested を追加しました。「ゲームによってネイティブ招待を送信する必要がある」とソーシャル オーバーレイが判断した場合に、これらの API に関連付けられたコールバックがセッション サービスで使用されます。
  • 新規EOS_CustomInvites_AddNotifySendCustomNativeInviteRequested および EOS_CustomInvites_RemoveNotifySendCustomNativeInviteRequested を追加しました。「ゲームによってネイティブ招待を送信する必要がある」とソーシャル オーバーレイが判断した場合に、これらの API に関連付けられたコールバックがカスタム招待システムで使用されます。
  • バグ修正:音声再接続後のオーディオ プレーヤーの不正なミュート状態を修正しました。
  • バグ修正:ボイス チャット ルームでプレイヤーがステータス変更を行った際に EOS_Lobby_AddNotifyRTCRoomConnectionChanged で設定されたコールバックが呼び出さないという、断続的に発生していた問題が修正されました。
  • バグ修正:ロビーで、ネットワークが切断されているときに再接続の試行が停止してしまう問題を修正しました。
  • バグ修正:空文字列を使用できるようにセッション属性とロビー属性を修正しました。
  • バグ修正:誤ったタイプの指定子を使用したログ出力に関連するいくつかのクラッシュを修正しました。
モバイル
iOS
  • 新規:最近の Android UI / UX のアップデートを反映するために、ログイン サンプルの UI / UX を更新しました。また、このアップデートには、新しい UX をより明確かつ適切にサポートするための細かいリファクタリングも含まれています。
  • バグ修正:専用のバックグラウンド スレッドを持つ iOS での Login サンプルで、複数のスレッドでの EOS の呼び出しに関する問題を修正しました。
ピアツーピア
  • 新規EOS_P2P_SendPacket を使用すると、データをネットワーク経由で送信することなく、プレイヤーがローカルに自分自身にデータを送信できるようになりました。この方法で送信されたパケットは、プレイヤーのローカル受信パケット キューに直ちに追加され、EOS_P2P_ReceivePacket 関数を使用してこれらを取得することができます。
  • バグ修正:ネットワーク状態に問題があるときのパケット送信のスループットを改善しました。
  • バグ修正:アプリケーションまたはゲームの中断から復帰した後、ピアツーピアが新しいリレー サーバーの認証情報のフェッチに失敗する問題を修正しました。
  • バグ修正:2 つのピアが同時に相互接続しようとすると、接続が失敗する断続的なレース コンディションの問題を修正しました。
  • バグ修正:SDK が ConnectionEstablished ピアツーピア イベントを発生させる前に、ピアツーピア パケットを受信できるように修正されました。パケットは、その接続の ConnectionEstablished イベントが発生するまで保持されるようになりました。
  • バグ修正:プレイヤーが短時間で接続を切断した場合、再接続しても、接続がタイムアウトになる問題を修正しました。
プレイヤー データのストレージ
  • 新規:プレイヤー データのストレージのエラーとイベント ロギングを改善しました。
  • 新規:書き込み操作後、プレイヤー データのストレージ ファイルの暗号化されていないデータ サイズが、ファイルのメタデータに設定されるようになりました。
  • バグ修正:書き込み操作後、メタデータで LastModifiedTime が設定されていない場合は、LastModifiedTime の値が EOS_PLAYERDATASTORAGE_TIME_UNDEFINED に設定されます。
  • バグ修正:ネットワークが不安定であるか、利用できないことにより、プレイヤー データのストレージを使用してバックエンド サービスにゲーム データをダウンロードまたはアップロードできない問題を修正しました。EOS SDK は、SDK とバックエンド サービス間でプレイヤー データのストレージの同期を保つために、ファイルのダウンロードまたはアップロードを再試行します。
  • バグ修正:プレイヤー データのストレージの EOS_PlayerDataStorage_WriteFile を使用すると、クラッシュする断続的な問題を修正しました。
サンプル
  • 新規:新しいアチーブメント サンプルで ingest コマンドを使用して、非ローカル プレイヤーの統計を取り込むためのサポートを追加しました。
  • 新規-scopescountry コマンドライン引数を使用して、EOS_AS_Country スコープを設定するためのサポートを追加しました。
  • 新規:EasyAntiCheat のクライアントとサーバーのサンプルを追加しました。
  • バグ修正:サンプルでフォーカスを切り替えて、テキスト フィールドの行をクリックすると、コンテンツが空になる問題を修正しました。
  • バグ修正:カーソル位置が範囲外に移動した場合にテキスト フィールド ウィジェットがクラッシュする潜在的な問題を修正しました。
  • バグ修正:Mod サンプルで、文字列の処理中にコードポイントが壊れることにより発生していたクラッシュを修正しました。
セッション ベースのマッチメイキング
  • 新規EOS_SessionsDetails_Info 構造体を使用して、どのプレイヤーがセッションを所有しているかを確認できるようになりました。この値は、次のどちらかの形式を取ります。
    • セッションがプレイヤーがホストするリッスンサーバーである場合は、プレイヤーの EOS_ProductUserId
    • 専用のゲーム サーバーがセッションを作成した場合は、サーバーの ClientID
  • バグ修正EOS_Sessions_UpdateSession への呼び出しが失敗する問題を修正しました。これは、UPDATE 操作中にセッションの変更に LocalUserId を利用できない場合に発生していました。
  • バグ修正eos_sessions_types.h の各種オプションで指定された不正な API_LATEST マクロに関連するコメントを修正しました。
  • バグ修正:セッション所有者以外で呼び出された場合、EOS_Sessions_RegisterPlayersEOS_Sessions_UnregisterPlayers がコールバックで更新されたプレイヤー リストを返さない問題を修正しました。
ソーシャル オーバーレイ
  • 新規:Integrated Platform on Console は、Steam 向けに提供されている既存の Integrated Platform を拡張したものです。この Integrated Platform on Console が、主要なすべてのコンソールに適用されるようになりました。
タイトルのストレージ
  • 新規:タイトルのストレージでのエラーとイベント ロギングを改善しました。
ツール
  • EOS Bootstrapper ツール
    • EOS Bootstrapper ツールがスタンドアロン ツールになりました。そのため、EOS bootstrapper アプリケーション (実行可能ファイル) が同じディレクトリに格納されている必要がなくなりました。
Voice
  • 新規:ゲームがバックグラウンド状態に移行するときのルームの動作を設定する方法が導入されました。
  • 新規:Linux 向けのマイクロフォンのサポートを追加しました。
  • バグ修正:ロビーの WebSocket 接続が切断された場合、WebSocket 接続の再確立を試行する間、RTC 接続が維持されるようになりました。
  • バグ修正:参加者がロビーに参加した直後に参加者に対して EOS_RTC_BlockParticipant を呼び出すと、EOS_RTC_BlockParticipant の呼び出しが成功したにもかかわらず、ブロック リクエストが動作しないバグを修正しました。
  • バグ修正:ロビーに 2 人目の参加者が参加すると発生することがあったクラッシュを修正しました。
  • バグ修正:オーディオ デバイスを管理するためのリソースをシステムが割り当てられないときに、断続的に発生していたクラッシュを修正しました。
  • バグ修正:他のプレイヤーがブロックされているルームにプレイヤーが入った際の、誤ったローカルの AudioStatus を修正しました。
  • バグ修正:プレイヤーが内部メソッドを使用してルームから退出する際のリソース リークを修正しました。

非推奨事項

認証
  • 非推奨:Epic Games アカウントのサインインのためのデバイス コードのサポート EOS_LCT_DeviceCode を非推奨としました。
    • EOS_Auth_Login 関数での EOS_LCT_DeviceCode の利用を中止するか、他の認証方法を利用することをお勧めします。
クロスプレイ
  • 非推奨:名称の一貫性を保つため、構造体 EOS_Platform_GetDesktopCrossplayStatusInfo を非推奨とし、EOS_Platform_DesktopCrossplayStatusInfo 構造体に置き換えました。
EOS コア
  • 非推奨:EOS SDK の標準の命名規則である EOS_<system_type>_<function_name>_API_LATEST に合わせるため、いくつかのマクロを非推奨とし、置き換えました。また、eos_playerdatastorage_types.heos_titlestorage_types.heos_private_ui_types.h の各ヘッダ ファイルのマクロから文字列 OPTIONS を削除しました。 たとえば、EOS_PLAYERDATASTORAGE_QUERYFILEOPTIONS_API_LATESTEOS_PLAYERDATASTORAGE_QUERYFILE_API_LATEST となります。
    • 注記:後方互換性のため、非推奨のマクロは引き続き存在しますが、将来のバージョンで削除する予定です。古い命名規則を使用している非推奨のマクロは、新しい命名規則を使用するマクロへの置き換えをお勧めします。
フレンド
  • 非推奨:以前に削除されたEOS_Friends_DeleteFriend API に関連する使用されていない型を非推奨としました。
プレイヤー データのストレージ
  • 非推奨:使用されていない定義である EOS_PLAYERDATASTORAGE_FILE_MAX_SIZE_BYTES を非推奨としました。
Voice

アップグレード ノート

アンチチート
  • バグ修正:ファイル サイズ制限のため、チート対策ブート ストラッパー (start_protected_game) がアンチチート アップデートを拒否することがあります。
    • 注記:今後のモジュール更新によるエラーを回避するために、この実行可能ファイルをできるだけ早く更新することをお勧めします。実行可能ファイルは、SDK の残りの部分を更新したり、ゲームを再コンパイルしたりせずに更新できます。
認証
  • 新規:Steam Session Tickets 認証のドキュメントを更新し、現在は非推奨となっている ISteamUser::GetAuthSessionTicket の代わりに新しい ISteamUser::GetAuthTicketForWebApi Steamworks SDK API を使用します。

  • バグ修正:バックエンドから受信したリンク済みのアカウント メッセージが、必ずしもアカウント ID を持たなくなりました。これは想定された状態であるため、EOS_UserInfo_ExternalUserInfoAccountId フィールドはオプションとなります。

    • 特定の数の外部アカウントを想定した処理を再検討する必要があります。たとえば、対象の外部アカウントの種類によっては、EOS_UserInfo_GetExternalUserInfoCount が以前よりも高いカウントを返すことがあります。
    • このバグが修正される前は、EOS_UserInfo_ExternalUserInfoAccountIdフィールドは nullable でした。API は変更されていませんが、動作は変更されています。そのため、EOS_UserInfo_ExternalUserInfoAccountId フィールドを操作するコードがある場合は、null 値のチェックのためにコードを検証する必要があります。
クロスプレイ
  • 新規:詳細については、「クロスプレイ:EOS SDK の最適なディスプレイ ネーム」を参照してください。
  • 新規EOS_Lobby_CreateLobbyOptions および EOS_Sessions_CreateSessionModificationOptionsAllowedPlatformIds および AllowedPlatformIdsCount フィールドは初期化する必要があります。ロビーへの制限を設定することを考えていない場合は、フィールドをそれぞれ nullptr0 に設定する必要があります。デフォルトで初期化を行わないアプリケーション (C アプリケーションなど) の場合、これらのフィールドは明示的に初期化する必要があります。
  • 新規:プラットフォーム ID は、eos_common.h と、<platform> が特定のプラットフォームとなっている eos_<platform>.h のバリアントに記載されています。プラットフォーム制限を使用して作成されたロビーは、ロビーまたはセッションで許可されているプラットフォームからの検索にのみ表示されます。
  • 新規EOS_Lobby_CreateLobbyOptionsEOS_Lobby_JoinLobbyOptions、および EOS_Lobby_JoinLobbyByIdOptions の値 bCrossplayOptOut を決定する必要があります。
    • デフォルトでは、ロビー作成者と参加者がデフォルトでクロスプレイを許可するという既存の前提を維持するために、bCrossplayOptOut はデフォルトで EOS_FALSE になります。
EOS コア
  • 新規:EOS SDK で SteamWorks バージョン 1.13 以降をサポートするようになりました。EOS SDK はこれまで SteamWorks v1.48 以降が必要でした。
  • バグ修正IntegratedSteamSessions で発生していた、ログイン前に招待を処理しようとする問題を修正しました。現在は、招待がキャッシュされるようになっています。
  • バグ修正:Google によって公開されたバージョン M102 以前の WebRTC 脆弱性を修正しました。現在 M109 です。 注記:以前の EOS SDK バージョンを使用している人は、できるだけ早くバージョン 1.16 に更新してこの修正を含めることをお勧めします。影響については、こちら をご覧ください。
  • バグ修正:Microsoft Xbox GDK 上で EOS SDK をビルドすると、シャットダウン中にソケットが閉じることに関する誤った警告が表示される問題を修正しました。
Lobbies
  • 新規:導入された [LEAVE PARTY (パーティーを退出する)] ボタンを使用するには、EOS_Lobby_AddNotifyLeaveLobbyRequested および EOS_Lobby_RemoveNotifyLeaveLobbyRequested を使用します。
  • バグ修正EOS_LobbyDetails_GetMemberCount が、ロビー検索結果を含むすべてのコンテキストで正確になりました。
  • バグ修正EOS_LobbyDetails_GetMemberByIndex は、ロビー検索結果からロビー メンバーを返さないため、以前に文書化された動作と一致するようになりました。
    • 注記:返される情報 EOS_LobbyDetails_GetMemberByIndex は、ロビーにいる場合にのみ利用できます。検索結果には表示されません。
セッション ベースのマッチメイキング
  • バグ修正:許可される最大同時セッション数を超えることから新しいセッションが作成されない場合に、EOS_LimitExceeded を返すように EOS_Sessions_UpdateSession を修正しました。 注記EOS_LimitExceeded リターン コードを処理するため、EOS_Sessions_UpdateSession の使用方法を更新することをお勧めします。
  • バグ修正:セッションに関連付けられたローカル ユーザーが存在しないか認証されていない場合に、EOS_InvalidUser を返すように EOS_Sessions_UpdateSessionEOS_Sessions_JoinSession を修正しました。 注記EOS_InvalidUser リターン コードを処理するには、EOS_Sessions_UpdateSessionEOS_Sessions_JoinSession の使用方法を更新することをお勧めします。
  • バグ修正:リクエストされたプレイヤー数を登録する際にセッションの最大容量を超えた場合、EOS_Sessions_TooManyPlayers を返すように EOS_Sessions_RegisterPlayers を修正しました。これは、以前は EOS_LimitExceeded でした。 注記:リクエストされたプレイヤー数がセッションの最大容量を超える場合、EOS_LimitExceeded ではなく EOS_Sessions_TooManyPlayers を探すように EOS_Sessions_RegisterPlayers の使用方法を更新することをお勧めします。

プラットフォーム固有

Nintendo Switch
  • 新規:Nintendo Switch のコンパイルとリンクの最適化を更新し、バイナリ サイズを圧縮して削減しました。-flto=full を使用するようになり、-Os-Oz (アグレッシブ サイズ) に変更しました。

既知の問題とその回避策

Android ログイン サンプル 1.16
  • EOS SDK バージョン 1.16 では、Android ログイン サンプルに不正な Gradle ファイルが含まれています。これを修正するには、次の手順に従ってください。
    1. 次のファイルを削除します。
    • Samples\Android\Login\settings.gradle
    • Samples\Android\Login\app\build.gradle
    • Samples\Android\Login\app\src\main\cpp\CMakeLists.txt
    1. 次の名前を変更します。
    • build.gradle.out から build.gradle

    • CMakeLists.txt.out から CMakeLists.txt

    • settings.gradle.out から settings.gradle

      注記:これらのファイルは同じディレクトリに保存してください。

    1. Samples\Android\Login\app\src\main\cpp\CMakeLists.txt」を開き、行 set_property(TARGET EOSSDK PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${BASE_PROJECT_DIR}/SDK/Bin/Android/include)set_property(TARGET EOSSDK PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${BASE_PROJECT_DIR}/SDK/Include) に置き換えます。
アンチチート サービスのインストーラ
  • EOS SDK バージョン 1.16 で提供されたサービス インストーラ (EasyAntiCheat_EOS_Setup.exe) に、エラー「StartService failed: 1053」でゲームが起動に失敗するバグがあります。この問題は、次のリリースで修正されます。
Lobbies
  • EOS SDK バージョン 1.16 では、ロビー所有者のメンバー属性を変更していない EOS_LobbyModification_AddAttribute を使用してロビーに属性を追加すると、以前に EOS_LobbyModification_AddMemberAttribute とともに設定したロビー所有者のメンバー属性は削除されます。この問題に対処するには、ロビー属性が変更されるたびに、ロビー所有者のメンバー属性を変更、追加、または削除する必要があります。

    ロビー所有者のメンバー属性の 1 つが変更されているということが重要なため、属性の値はどんなものでも構いません。ロビー属性の変更に使用されるロビー更新変更の一部として、ロビー所有者の属性を変更、追加、または削除する必要があります。

    コード例:

1.15.5 - 2023年2月16日

アンチチート

  • 新機能:アンチチートのメトリック収集が改善され、ピアツーピア モードでチート対策を構成した場合にゲームから追い出されたプレイヤーの数を追跡できるようになりました。
  • 新規:チート対策ブート ストラッパーが改善され、モジュールの障害が正しくログに記録されるようになりました。
  • 新規:チート対策ブート ストラッパーで、macOS バージョン 10.14 以降がサポートされるようになりました。この更新以前は、macOS バージョン 11.0 以降をサポートしていました。
  • 新規:チート対策ブート ストラッパーが改善され、未公開の Anti-Cheat モジュールをテストするためのダイアログが表示されるようになりました。新しいダイアログにはテスト モジュールがダウンロードされたことが表示されるため、ログファイルを確認しなくて済むようになります。
  • 新規:ローカルで一時的にバンされているプレイヤーが、EOS SDK を介してゲーム サーバーに送信されるキック メッセージでバンの残り時間を確認できるようになりました。以前は、ローカルで一時的にバンされていることはキック メッセージに表示されていましたが、その残り時間はわかりませんでした。
  • 新規:チート対策ブート ストラッパーが更新され、32 ビット アーキテクチャではなく 64 ビット アーキテクチャが使用されるようになりました。
  • 新規:チート対策ブート ストラッパーのアーキテクチャの変更に続き、Anti-Cheat サービスが Chromebook をサポートするようになりました。
  • バグの修正:プレイヤー追跡機能がクライアント データの送信を停止する問題を修正しました。
  • 非推奨:ログファイル loader.log が非推奨となり、チート対策ブート ストラッパーの単一のログ ファイルとして、新しいログ ファイル anticheatlauncher.log が導入されました。

Sessions

  • 非推奨EOS_Sessions_RegisterPlayers のエラー値 EOS_LimitExceeded が非推奨になりました。EOS_Sessions_RegisterPlayers は、エラー値 EOS_Sessions_TooManyPlayers を返すようになりました。EOS SDK バージョン 1.15.5 以降を使用するゲームの場合は、新しいエラー値を確認するようにゲームを設定してください。

Voice

  • バグの修正:ボイス チャット ルームでプレイヤーがステータス変更を行った際に EOS_Lobby_AddNotifyRTCRoomConnectionChanged で設定されたコールバックが呼び出さないという、断続的に発生していた問題を修正しました。

アップグレード ノート

アンチチート

  • 新規:EOS SDK バージョン 1.15.5 以降を使用するゲームでは、プレイヤーの問題を回避するためにアンチチート モジュールを最新バージョンに更新するようにしてください。

Sessions

  • 新規EOS_SESSIONS_REGISTERPLAYERS_API_LATEST パラメータを指定して EOS_Sessions_RegisterPlayers を呼び出すと、返されるエラー値が EOS_Sessions_TooManyPlayers になりました。パラメータ EOS_SESSIONS_REGISTERPLAYERS_API_LATEST を使用していない場合は、EOS_Sessions_RegisterPlayers は引き続き EOS_LimitExceeded を返します。

プラットフォーム固有

Microsoft Xbox

  • 新規:Microsoft の Xbox GDK バージョン 2022 年 10 月 QFE1 (221001) および Microsoft の Xbox GDK バージョン 2022 年 6 月 QFE4 のバージョン サポートを追加しました。(220604).

Nintendo Switch

  • 新規:Nintendo Switch SDK バージョン 15.3.0 のバージョン サポートを追加しました。Nintendo Switch SDK バージョン 14.3.0 のサポートも維持されます。

2022

1.15.4 - 2022年11月16日

アンチチート

  • 新規EOS_AntiCheatServer_SetClientNetworkState の呼び出しについての情報を含めるように、AntiCheatServer ログ出力を改善しました。
  • 新規:ゲーム サーバーがアンチチート サービスに対して行う HTTP リクエストの数を削減し、アンチチート サービスのサーバー パフォーマンスを改善しました。これにより、サーバーではより多くのプレイヤー数をサポートすることができます。
  • 新規EOS_AntiCheatServer_LogPlayerDespawn が呼び出されると、AntiCheatServer は、より多くのデータをアンチチート サービスに送信するようになりました。
  • バグ修正: サーバーの負荷が高い場合、アンチチート サービスがゲーム セッションから不適切にプレイヤーをキックする可能性がある問題を修正しました。

認証

  • バグ修正: SDK が EOS サービスからコンフィギュレーションを受け取る前に EOS_Auth_VerifyIdToken が使用された場合、EOS_Auth_VerifyIdToken が有効な ID トークンに対して EOS_Auth_InvalidToken を返さないように修正しました。EOS_Auth_VerifyIdToken はコンフィギュレーションを正確に待機し、EOS_Success を返すようになりました。

C# での EOS SDK

  • 新規:C# での EOS SDK は、同じバッファの固定を複数回サポートするようになりました。これにより、パフォーマンスの向上に加え、アンチチート サービスによるネットワーク メッセージのインプレース暗号化と複合が可能になります。

Connect

  • バグ修正: SDK が EOS サービスからコンフィギュレーションを受け取る前に EOS_Connect_VerifyIdToken が使用された場合、EOS_Connect_VerifyIdToken が有効な ID トークンに対して EOS_Connect_InvalidToken を返さないように修正しました。EOS_Connect_VerifyIdToken はコンフィギュレーションを正確に待機し、EOS_Success を返すようになりました。

Ecom

  • 新規:利用資格トークン EOS_Ecom_QueryEntitlementToken をクエリするため、EcomInterface に新しい API を追加しました。

ソーシャル オーバーレイ

  • バグ修正: プレイヤーは、ゲーム セッションへの接続形態にかかわらず、すべてのプレイヤーの [PROFILE] ボタンを見てクリックすることが可能になりました。たとえば、Epic Game Store 経由でゲーム セッションに接続しているプレイヤーでも Steam 経由で接続しているプレイヤーの [PROFILE] ボタンを見てクリックすることができます。これまでは、異なるゲーム プラットフォームで接続している一部のプレイヤー間ではお互いの [PROFILE] ボタンが表示されませんでした。
  • バグ修正: EOS_UI_ShowBlockPlayer および EOS_UI_ShowReportPlayer が失敗する問題を修正しました。この問題は、ソーシャル オーバーレイがプラットフォーム フラグで無効になっている場合に発生し、ネットワークが切断されていると SDK が誤って検出していたことにより発生していました。

ロビー

  • バグ修正: プレイヤーの同時ロビー数が 16 に制限されるようになりました。同時ロビーを 16 より多く作成しようとすると、EOS_LimitExceeded のエラー応答が返されます。

ピアツーピア

  • 新規:ピアツーピアは usrsctp の代わりに dcSCTP SCTP ライブラリ実装を使用するようになりました。これにより usrsctp でのセキュリティ問題に対応し、ネットワーク状態が良くない場合の応答性が改善されます。
    • 注記:この変更は後方互換性がありますが、セキュリティとパフォーマンスの向上のために、できるだけ早く最新の SDK バージョンにアップグレードすることをお勧めします。
  • バグ修正: 接続が確立された後、何らかの中断の後すぐにタイムアウトしてしまう問題を修正しました。

Sessions

  • バグの修正: プレイヤーの同時セッション数が 16 に制限されるようになりました。同時セッションを 16 より多く作成しようとすると、EOS_LimitExceeded のエラー応答が返されます。

Stats

  • バグ修正: EOS_Stats_IngestStat に対して LocalUserIdTargetUserId と同じである必要があるという制限を削除しました。つまり、クライアント ポリシーの設定 ingestForAnyUser を有効にすると、ゲーム クライアントはすべてのプレイヤーのプレイヤー データを更新できるようになります。たとえば、ゲーム内のピアツーピア セッションで接続しているプレイヤー (リモート プレイヤーとローカル プレイヤー) です。

アップグレード ノート

ロビー

  • バグ修正: プレイヤーの同時ロビー数が 16 に制限されるようになりました。同時ロビーを 16 より多く作成しようとすると、EOS_LimitExceeded のエラー応答が返されます。

Sessions

  • バグの修正: プレイヤーの同時セッション数が 16 に制限されるようになりました。同時セッションを 16 より多く作成しようとすると、EOS_LimitExceeded のエラー応答が返されます。

非推奨事項

アンチチート

  • 廃止EOS_AntiCheatServer_RegisterClientOptions の文字列 AccountId パラメータを非推奨にして、新しい「EOS_ProductUserId UserId」パラメータを導入して置き換えました。 新しい EOS_AntiCheatServer_RegisterClientOptions パラメータにはタイピングがあります。
    • 注記:ゲーム サーバーがゲーム クライアントから安全に EOS_ProductUserId を受け取っていない場合に推奨される方法は、EOS ゲームサービスの Connect インターフェース EOS Connect ID Tokens を使用して、EOS_ProductUserId を取得することです。

EOS コア

  • 非推奨:EOS SDK の標準の命名規則である EOS_<system_type>_<function_name>_API_LATEST に合わせるため、いくつかのマクロを非推奨とし、置き換えました。影響を受けるマクロ:EOS_PLAYERDATASTORAGE_*_API_LATEST および EOS_TITLESTORAGE_*_API_LATEST から文字列OPTIONS を削除しました。たとえば、EOS_PLAYERDATASTORAGE_QUERYFILEOPTIONS_API_LATESTEOS_PLAYERDATASTORAGE_QUERYFILE_API_LATEST となります。
    • 注記:後方互換性のため、非推奨のマクロは引き続き存在しますが、将来のバージョンで削除する予定です。古い命名規則を使用している非推奨のマクロは、新しい命名規則を使用するマクロへの置き換えをお勧めします。

プラットフォーム固有

Sony PlayStation

  • 新規:Sony の PS4 Platform SDK version 10.008.001 のサポートを追加し、Sony の PS4 Platform SDK version 9.508.001 のサポートを維持しました。
  • 新規:Sony の PS5 Platform SDK version 6.00.00.38 のサポートを追加し、Sony の PS5 Platform SDK version 5.00.00.33 のサポートを維持しました。
  • バグ修正: PS5 で動作するゲームにおいて、ボイスチャットを有効にしたプレイヤーがロビーに参加または離脱した際にクラッシュする不具合を修正しました。

Microsoft Xbox

  • 新規:Microsoft GDK June 2022 QFE2 (220602) のバージョン サポートを追加し、March 2022 QFE1 (220301) のサポートを維持しました。

1.15.3 - 2023年3月16日

2023年3月16日より、EOS SDK リリース 1.15.3 には、Xbox、PlayStation 4、PlayStation 5 の SDK のホットフィックスが含まれます。


1.15.3 - 2022年10月6日

2022年10月6日より、EOS SDK リリース 1.15.3 には、Xbox、PlayStation 4、PlayStation 5 の SDK のホットフィックスが含まれます。


1.15.3 - 2022年9月19日

リリース ノートとアップグレードノート

モバイル

Android

  • 新規:Android SDK のタイプが 2 つになりました。新しく追加された Android SDK のタイプは静的で libc++_static.a とリンクします。既存の Android SDK は動的で libc++_shared.so とリンクします。

    SDK は両タイプとも SDK ダウンロードで入手することができます。両タイプに対してヘッダ ファイルは 1 つです。

    • 静的バイナリは「~/SDK/Bin/Android/static-stdc++」にあります。
    • 動的バイナリは「~/SDK/Bin/Android/dynamic-stdc++」にあります。

    以下の場合は静的タイプを使用してください。

    • ゲーム エンジン (UE5.1 など) またはそのライブラリで、カスタムの new 演算子および delete 演算子が使用されている。それらは libc++_shared.so によって十分にサポートされていません。
    • ゲームまたはゲーム内のライブラリで libc++_static.a が使用されている。Android では、libc++_static.alibc++_shared.so の混在はサポートされていません。コードとライブラリ、およびサード パーティから使用するものは、すべて libc++_static.a とリンクしていることを確認してください。

注記

  • Epic Online Services SDK バージョン 1.15.2 をすでにダウンロードして使用しており、ゲームで P2P を使用している場合、できるだけ早く SDK バージョン 1.15.2.1 にアップデートすることを強くお勧めします。
  • 参考のために 1.15.2 リリース ノートをコピーしました。

1.15.2.1 - 2022年8月30日

リリース ノート

P2P

  • バグ修正:1.15.2 において、特定の状況下でピア間の P2P 接続が接続後すぐにタイムアウトする新しい問題を解決しました。

1.15.2 - 2022年8月26日

リリース ノート

新機能

Mac での Apple シリコンのサポート

  • 新規:SDK は、Universal dylib として Mac で Apple シリコンをサポートするようになりました。
    • 注記:現在、アンチチートは Apple シリコンをサポートしていません。

更新:新規、バグ修正、改善、非推奨

アンチチート

  • 新規:コンフィギュレーション ファイル anticheat_integritytool.cfg では、プレイヤーのマシンで許可されるゲームのアクティブなインスタンスの最大数など、ゲームのクライアントを設定できるようになりました。
  • バグ修正: 新しいヘッダでプロジェクトを再構築しないで SDK 1.15 を使用すると発生していた EOS_AntiCheatClient_RegisterPeer のクラッシュを解決しました。
  • バグ修正: アンチチート サーバーは、EOS サービスのダウンタイムが原因で失敗した HTTP 要求の再試行を行わなくなりました。さらに、プレイヤーがゲーム セッションを終了したときに、アンチチート サーバーが再試行しなくなりました。
  • バグ修正: SDK 1.15 で導入された Unix および macOS の Anti-Cheat Integrity Tool の出力が誤った場所に格納されるバグを修正しました。出力は、以前の SDK バージョンの動作と一致する「EasyAntiCheat/Certificates」フォルダに正しく格納されるようになりました。
  • バグ修正: Anti-Cheat サービスが無効の場合に、チート対策ブート ストラッパーがキャッシュされたモジュールをロードしないように、問題を修正しました。
  • バグ修正: 一部の macOS Monterey システムの SDK 初期化時のクラッシュを修正しました。
  • バグ修正: AMD Ryzen CPU を実行するプレイヤーのマシンでチート対策ブート ストラッパーが遅延する問題を修正しました。
  • バグ修正: プレイヤーの GPU で 2048x2048 を超えるテクスチャがサポートされていない場合に、チート対策ブート ストラッパーが初期化に失敗する問題を修正しました。
  • バグ修正: スプラッシュ画面が元々白いか、白い要素がある場合に、チート対策ブート ストラッパーのユーザー インターフェースが見づらいという問題を修正しました。
  • バグ修正: チート対策ブート ストラッパーと Arch Linux の最新バージョンとの互換性の問題を修正しました。この問題は、Proton を使用して Windows 用にコンパイルされたゲームを実行しようとすると、Steam デッキにも影響します。
    • 修正を適用するには、古いバージョンの start_protected_game.exe をこのリリースにおいてパッケージ化された新しいバージョンに置き換えて、Dev Portal でゲームの最新の Linux アンチチート モジュールをリリースしてください。その他の変更は必要ありません。
  • **改善点:**チート対策ブート ストラッパーのバイナリ (実行可能ファイル) がバンドル内にあります。この実行可能バンドルは以下のとおりです。
    • macOS の実行可能バンドルにデフォルト アイコンを追加したため、macOS で Windows と同じアイコンが表示されます。
  • **改善点:**チート対策ブート ストラッパーで、リソースがプレイヤーのマシンのハード ディスクにキャッシュされなくなりました。
  • **改善点:**Windows 上のチート対策ブート ストラッパーで、タスクバーにゲームの実行可能ファイルのアイコンが表示されるようになりました。「~/<game root>/ EasyAntiCheat」ディレクトリにカスタム アイコンを追加すると、デフォルト アイコンが上書きされます。
  • 改善点: Anti-Cheat Integrity Tool の使用サンプルが増えました。anticheat_integritytool.exe --help を実行すると、サンプルを表示できます。

認証

  • 新規:ゲームで EOS オーバーレイが無効になっている、またはインストールされていない場合、Auth インターフェースはシステム ブラウザを使用して、プレイヤーがサインインできるようにします。
  • バグ修正:脆弱なネットワーク上で、ログアウトのコールバックが複数回起動し、複数回成功が返される問題を修正しました。

Connect

  • バグ修正: EOS_Connect_Login が 32 文字制限のある UTF-8 文字の長さに対応できなかった問題を修正しました。

EOS コア

  • 新規:iOS と Android のサンプルで、SDK 1.15 の中断 / 再開およびネットワーク接続 / 切断 API の例を使用するようになりました。
  • 新規:EOS SDK で Steamworks API (EOS_IntegratedPlatform_Steam_Options) が必要になりました。Steamworks SDK バージョン 1.48 以降の Steamworks API を使用する必要があります。1.48 より前の Steamworks を使用している場合、Steam との連携は機能しません。
  • バグ修正: EOS_Platform_Create は SDK 1.15 より前のヘッダ ファイルを正しく検出し、すべてのコンソール プラットフォームでデフォルトの EOS_ENetworkStatusEOS_NS_Online に処理するようになりました。
    • 現在:すべてのコンソール プラットフォームで、デフォルトのネットワーク ステータスがオフラインになりました。これにより、EOS_Platform_SetNetworkStatus の使用時に管理がしやすくなりました。
    • 以前:コンソール プラットフォームでは、ゲームがオンラインの時は EOS_Platform_Create のみを呼び出す必要がありました。ゲームがオフラインの時は EOS_Platform_Release を最初に呼び出す必要がありました。ゲームで SDK 1.15 より前のヘッダ ファイルを使用している場合、SDK 1.15 はこれを維持しませんでした。この問題を修正しました。

P2P

  • 新規EOS_P2P_SendPacket において、内部ライブラリのスレッド同期ブロッキングが原因で発生していたパフォーマンス問題を修正しました。
  • 新規EOS_P2P_ReceivePacket は、新しいパケットを受け取るために EOS_Platform_Tick を呼び出す必要がなくなりました。
  • 新規EOS_P2P_SendPacket に新しいフィールドを追加しました。新しいフィールドは「DisableAutoAcceptConnection」という名称で、パケット送信ロジックで接続を自動的に受け入れることを可能にします。
    • このオプションを使用する場合、ゲームは常に EOS_P2P_AcceptConnection を使用して接続を開く必要があります。
    • EOS_P2P_SendPacket を使用すると、以下の 2 つの状況で失敗した場合、EOS_EResult::EOS_NoConnection を返すようになりました。
      • リモートのピアが接続を受け入れていない場合。
      • リモートのピアが最後に接続を受け入れた後で接続が終了された場合。
  • 新規:接続中における致命的ではない切断をリッスンする、EOS_P2P_AddNotifyPeerConnectionInterrupted という関数を追加しました。この関数が切断を返すと、ゲームに接続ステータスを知らせるために次のコールバックのいずれかが発行されます。
    • EOS_P2P_OnPeerConnectionEstablishedCallback - 接続が再確立されました。
    • EOS_P2P_OnRemoteConnectionClosedCallback - 再接続のための接続が失敗し終了しました。

Ecom

  • 新規ReleaseDate および EffectiveDateEOS_Ecom_CatalogOffer に追加しました。
  • 新規* Ecom インターフェースに次の 2 つの新しい API を導入しました。
    • EOS_Ecom_GetLastRedeemedEntitlementsCount は、最後の EOS_Ecom_RedeemEntitlements 呼び出し中に引き換えられた利用資格の数をフェッチします。
    • EOS_Ecom_CopyLastRedeemedEntitlementByIndex は、インデックスによって引き換えられた利用資格 ID をフェッチします。
  • バグ修正: EOS_Ecom_RedeemEntitlements は、間違った利用資格 ID が渡されると成功を返さなくなりました。
  • 非推奨EOS_ECom_CatalogOfferPurchasedCount フィールドを非推奨としました。
    • 注記PurchasedCount フィールドを使用しないでください。
    • 現在PurchasedCount フィールドは常に値が 0 となります。
    • 以前:SDK 1.15.2 より前では、オファーに PurchaseLimit を設定していない限り、EOS サービスは 0 の値で PurchasedCount を送信していました。この動作は無期限にサポートされないため、この値に依存しないでください。

Samples

  • 新規:サンプル プロジェクトにおいて、Steam ログインのセキュリティ向上のために、Steam Encryption Application Ticket ではなく Steam Auth Session Ticket が使用されるようになりました。

セッションベースのマッチメイキング

  • バグ修正EOS_Sessions_JoinSession を修正し、CompletionDelegate を複数回呼び出したり、HTTP の再試行を必要とする操作に対して EOS_NotFound を返したりすることがないようにしました。

プラットフォーム固有

macOS

  • バグ修正: Dev Auth Tool とチート対策ブート ストラッパーが macOS 上で開かなくなる問題を修正しました。

コンソール全般

  • 新規:コンソール用 EOS SDK はコンソール SDK の 2 つのリリース バージョンに固定されるようになりました。以下がコンソール SDK (Microsoft の Xbox SDK、Sony の PlayStation SDK、Nintendo の Switch SDK など) の 2 つのリリース バージョンです。
    • 最新のリリース バージョン。
    • 以前のリリース バージョン。
    • 注記:これは、すべてのコンソールの EOS SDK と、コンソールの EOS SDK の今後すべてのリリースに適用されます。
  • バグ修正: EOS_Platform_Create は SDK 1.15 より前のヘッダ ファイルを正しく検出し、すべてのプラットフォームでデフォルトの EOS_ENetworkStatusEOS_NS_Online に処理するようになりました。これにより、コンソールでの後方互換性問題が解決されました。

Sony PlayStation

  • 新規:PS4 SDK 9.008.001 のサポートを追加し、PS5 SDK 4.000.00.31 のサポートを維持しました。

Nintendo Switch

  • 新規:Nintendo Switch SDK 14.3.0 のバージョン サポートを追加しました。Nintendo Switch SDK 13.3.2 のサポートも維持されます。

Microsoft Xbox

  • 新規:Xbox GDK 220301 のバージョン サポートを追加し、Xbox GDK 211001 のサポートを維持しました。

1.15.1 - 2022年7月1日

リリース ノート

注記 - Steam にゲームをシッピングする場合

  • C 用 あるいは C# 用 Epic Online Services SDK バージョン 1.15 をすでにダウンロードして使用している場合、SDK のバージョン 1.15.1 をダウンロードして代わりに使用する必要があります。
  • 1.15.1 は、C 用 SDK および C# 用 SDK での Steam の認証が更新されています。コンソール用 SDK に変更はありません。

C 用の SDK および C# 用の SDK

認証

  • 非推奨EOS_Auth_Login.EOS_ECT_STEAM_APP_TICKET は廃止されました。代わりに EOS_ECT_STEAM_SESSION_TICKET を使用してください。
    • 注記:コンソール用 SDK に変更はありません。

1.15 - 2022年6月16日

リリース ノート

新機能

クロスプレイ

PC 上のシームレスなクロスプレイ:クロスプレイを使用して、Steam と Epic Games Store 間でプレイヤーとマッチメイキング プールを統合します。 詳細については、「EOS の新機能」を参照してください。

既存の機能、新機能、バグ修正、非推奨事項

アンチチート

  • 新規:アンチチートのピアツーピア モードで、PC とコンソール ユーザー間のクロス プラットフォーム プレイをサポートするようになりました。
  • 新規:クライアント側の EOS_AntiCheatClient_PollStatus を、EOS_AntiCheatClient_AddNotifyClientIntegrityViolated を介してアクセスできるコールバック関数に置き換えました。
  • バグ修正:プレイヤーが検出を無効にすることでチートするために使用する AntiCheatServer の問題を修正しました。
  • バグ修正:一部の macOS Monterey システムの SDK 初期化時のクラッシュを修正しました。
  • 改善点:アンチチート ゲームプレイ データ機能のエラーのログ記録を改善しました。
  • 改善点:アンチチート ピアツーピア モードのエラーのログ記録を改善しました。
  • 非推奨EOS_AntiCheatClient_RegisterPeerOptions AccountID が非推奨になり、PeerProductUserId に置き換わりました。
  • 改善点:チート対策ブート ストラッパーのバイナリ (実行可能ファイル) がバンドル内にあります。この実行可能バンドルは以下のとおりです。
    • macOS の実行可能バンドルにデフォルト アイコンを追加したため、macOS で Windows と同じアイコンが表示されます。
    • macOS で実行するゲームに変更を追加することができます。
  • 既知の問題:EOS SDK 1.15 での使用を目的にしたアンチチート ツールへの変更が SDK に含まれていませんでした。代わりに、EOS SDK 1.15.1 で配布されます。
  • 既知の問題:EOS SDK 1.15 ライブラリを使用して EOS_AntiCheatClient_RegisterPeer を呼び出す場合は、新しい 1.15 ヘッダを使用してゲームを再構築する必要があります。使用しないとゲームがクラッシュします。

認証

  • 新規 (互換性を破る変更):Windows では、EOS_LCT_AccountPortalEOS_LCT_ExternalAuth のログイン タイプで EOS の再配布可能パッケージがゲームとともにインストールされている必要があります。
  • 新規:SDK で、検証可能な保護者の同意がサポートされるようになりました。ユーザーが幼い場合は、Epic アカウントについて、またはゲームでのデータ共有について保護者による同意を得るよう求められる場合があります。
  • 新規:SDK パッケージには、現在、Windows PC でのクロスプレイ用に EOS 再配布可能パッケージで使用するための EOS Bootstrapper と EOS Bootstrapper ツールが含まれています。
  • バグ修正EOS_Connect_OnLoginStatusChangedCallback でローカル ユーザーの認証セッションが失効したことが報告されない問題を修正しました。
  • バグ修正EOS_Platform_Create の直後に呼び出されると、常に EOS_P2P_QueryNATType が失敗し、間違った NAT サーバーが使用される問題を修正しました。
  • バグ修正EOS_EResult::EOS_Auth_PersistentAuth_AccountNotActiveEOS_EResult::EOS_Auth_AccountNotActive に、名前を変更しました。返される Epic アカウントのステータスが永続的な (EOS_LCT_PersistentAuth) ログイン タイプ専用でないため、Persistent が削除されます。

EOS コア

  • 新規:Windows PC 用の EOS_Platform_GetDesktopCrossplayStatus API を追加しました。Epic Games Store の外部で配布されたゲームは、この API を使用して、Epic アカウントのログイン用のゲーム内のオーバーレイが使用可能になったことを確認できます。

  • 新規 (互換性を破る変更):プラットフォームのインターフェースに以下の API を追加しました。ゲームが中断されて再開された時間、およびローカル システムのネットワーク接続状態が変更された時間が SDK に通知されます。

    新しい API は次の 4 種類です。

    • EOS_Platform_SetApplicationStatus
    • EOS_Platform_SetNetworkStatus
    • EOS_Platform_GetApplicationStatus
    • EOS_Platform_GetNetworkStatus
    • すべてのゲームでは、SDK が正しく機能するように、2 つの Set API を呼び出す必要があります。
      • EOS_Platform_SetApplicationStatus
      • EOS_Platform_SetNetworkStatus

既知の問題:iOS と Android サンプルでは、現在、新しい中断 / 再開 API とネットワーク接続 / 切断 API の例が更新されていません。

  • 新規:タイプ EOS_EApplicationStatus および EOS_ENetworkStatus を追加しました。
  • 新規:ゲーム クライアントがフォアグラウンド ステートを再開すると、SDK では、バックグラウンド ステートだったときに経過した時間に基づいて認証トークンの有効期限を更新します。
  • 新規:プレイヤーの個人情報であるため、SDK ログのディスプレイ ネームを編集しました。
  • 新規:機密の情報であるため、SDK ログの継続トークンを編集しました。
  • 新規EOS_Ecom_QueryOwnership の制限を 32 から 50 に更新して、SDK を EOS サービス リクエストの制限である 50 に合わせました。
  • 改善点:関連するプラットフォームが含まれるように、EOS_GetVersion で返される SDK ビルド バージョンの文字列を更新しました。

フレンド

  • 新規:EOS_Friends_SendInvite EOS_Friends_AcceptInviteEOS_Friends_RejectInvite を有効にしました。プレイヤーがゲーム内で新規フレンド接続を実行できるように、ゲームでこれらの API を呼び出すことができます。これらの API は、以前の SDK バージョンでは有効になっていませんでした。

ロビー

  • 新規:新しい通知関数 EOS_Lobby_AddNotifyLobbyInviteRejectedEOS_Lobby_RemoveNotifyLobbyInviteRejected を追加しました。
  • 新規:カスタム招待を Lobbies インターフェースと Sessions インターフェースに合わせるために、EOS_CustomInvites_AddNotifyRejected 関数と EOS_CustomInvites_RemoveNotifyRejected 関数を追加しました。
  • バグ修正:SDK の音声機能とやり取りしているプレイヤーに関連するエラー メッセージを追加しました。プレイヤーが見つからない場合に、エラー メッセージで報告されます。
  • バグ修正:ロビーへの招待は、招待を送信するプレイヤーで識別可能になりました。プレイヤーにさまざまなフレンドからのロビーへの招待がある場合、プレイヤーが招待のいずれかを受け入れると、ソーシャル オーバーレイでプレイヤーの未使用の招待がすべて削除されます。

P2P

  • バグ修正EOS_Platform_Create の直後に呼び出されると、常に EOS_P2P_QueryNATType が失敗し、間違った NAT サーバーが使用される問題を修正しました。
  • バグ修正EOS_P2P_SendPacket の CPU のパフォーマンス上の負荷を大幅に削減しました。

プレイヤー データのストレージ

  • バグ修正:プレイヤー データのキャッシュ済みファイルのハッシング時のファイルの読み取り、およびタイトルのストレージ ファイルの読み取りフローと書き込みフローのパフォーマンスを改善しました。

Samples

  • バグ修正:適切な API バージョン タイプ EOS_USERINFO_COPYUSERINFO_API_LATEST を使用するために Fixed EOS_UserInfo_CopyUserInfoOptions を修正しました。
  • 改善点:Visual Studio のデバッグおよびリリースのプロジェクト構成ビルドのデフォルトを Debug_SDLRelease_SDL に変更しました。
  • AuthAndFriends サンプル
    • [Custom Invites (カスタム招待)] ダイアログ ボックスの UI を改善しました。
  • Voice サンプル
    • 個々のプレイヤーのオーディオ ボリュームを設定するためのサポートを追加しました。

ソーシャル オーバーレイ

  • 新規:ソーシャル オーバーレイを一時停止する EOS_UI_PauseSocialOverlay、およびソーシャル オーバーレイが一時停止されたかどうかを確認する EOS_UI_IsSocialOverlayPaused を追加しました。
    • 一時停止時に、ソーシャル オーバーレイは表示されません。
    • カットシーン時にソーシャル オーバーレイを一時停止すると、トーストを防止し、一時的にプレイヤーをエクスペリエンスに没入したままにします。
  • 新規EOS_UI_ShowBlockPlayer および EOS_UI_ShowReportPlayer を追加しました。これらは、状態の更新をソーシャル オーバーレイに送信し、プレイヤーのブロックや報告をリクエストします。
  • 新規:ソーシャル オーバーレイが排他的な入力モードかどうかをゲームで即座に確認できるように、EOS_UI_GetFriendsExclusiveInput を追加しました。以前、ゲームでは EOS_UI_OnDisplaySettingsUpdatedCallback コールバックを使用して、この状態を把握する必要がありました。
  • 新規:ソーシャル オーバーレイでは、プレイヤーに Epic フレンドをすべて表示します。これには、プレイヤーがプレイしているゲームをプレイしたことがない Epic フレンドが含まれています。
  • 新規:プレイヤーが以下のことを実行できる機能を追加しました。
    • Epic フレンドの検索
    • Epic フレンドの管理:フレンドの追加と削除、フレンドの新着招待の受け入れと拒否、フレンド招待の送信のキャンセルを行います。
    • Epic フレンドのブロック
    • Epic フレンドの報告
  • 新規:ソーシャル オーバーレイでは、Epic フレンドともにクロス プラットフォーム フレンドを表示できるようになりました。Epic Games Store からゲームを開始したプレイヤーは、Steam からゲームを開始したフレンドを表示できます。
  • バグ修正:ロビーが一杯の場合、[Invite (招待)] ボタンは表示されません。
  • 改善点:ゲームのステータスが変更されたり、ネットワークが切断されたりした場合に、ソーシャル オーバーレイは非表示になります。

ユーザー情報

  • 新規DisplayNameSanitizedEOS_UserInfoEOS_UserInfo_ExternalUserInfo に追加しました。これには、サニタイズをサポートしているプラットフォームでゲームが実行されている場合、サニタイズされたディスプレイ ネームが含まれています。

Voice

  • 新規:プレイヤーが追加された時間、またはブロック リストから削除された時間を報告する EOS_RTC_ParticipantStatusChangedCallbackInfobParticipantInBlocklist フィールドを追加しました。これを使用して、プレイヤーがブロック リストに存在するために、ロビーでプレイヤーの音声を聞くことができない時間を認識します。
    • 注記:これは、自動的に強制された、オーバーライドできない内部ブロックです。
  • 新規:既存のボリューム コントロールを拡張 (および置換) するオーディオ ボリューム コントロールの EOS_RTCAudio_UpdateParticipantVolume を追加しました。
  • バグ修正:RTC スレッド上で NoAffinityMask の設定を許可しました。
  • バグ修正:macOS でオーディオ入力デバイスが認識されない不具合を修正しました。
  • 非推奨LocalUserIdLobbyIdEOS_Lobby_AddNotifyRTCRoomConnectionChangedOptions 構造体で非推奨になりました。

C# SDK

  • 新規 (互換性を破る変更)

    • ほとんどの参照タイプ (クラス) を値タイプ (構造体) に変更し、パフォーマンスを大幅に改善しました。
    • API コールでオプションの構造体を渡す場合、ref キーワードを使用する必要があります。
    • コールバックで情報構造体を渡す場合、ref キーワードを使用する必要があります。
    • 参照タイプ (クラス) が値タイプ (構造体) になったため、オプションを割り当てて、これらを API コールに渡す方法によっては、コードに新しいバグが存在している可能性があります。この領域でのリグレッションをテストすることをお勧めします。
  • 新規:SDK では、データの不要なコピーを防止するために ArraySegments の代わりに byte[] を使用するようになりました。

  • 新規:UTF-16 から UTF-8 への変換を減らすために、新しい Utf8String クラスを追加しました。

  • 新規:修正、最適化や改善をラッパー コードに追加しました。

  • バグ修正:Win32 と macOS に対して動的バインディングのシンボル マッピングを追加しました。

ツール

デベロッパー認証ツール

  • 新規:ツールでは、プレイヤーが選択したポートを保持します。連続して開始すると、このポートが自動的に UI で選択されます。
  • 新規:ツールでは、使用時のプレイヤーの認証情報を記憶するため、プレイヤーがログインしてこれをリフレッシュする必要がなくなりました。
  • バグ修正:長時間実行したときに、ツールではプレイヤーの認証情報をリフレッシュします。

ライブラリ

  • 新規:openssl-1.1.1n を更新しました。

アップグレード ノート

アンチチート

  • クロス プラットフォーム プレイでのピアツーピア モードの使用方法の詳細については、ドキュメント を参照してください。
    • 注記:この機能で認証が正しく機能するには、この機能を使用する際に、PC とコンソールのプラットフォームの SDK を同時に更新する必要があります。

プログラミングのアップグレードに関する注意点

認証の互換性を破る変更

  • Windows では、EOS_LCT_AccountPortalEOS_LCT_ExternalAuth のログイン タイプで EOS の再配布可能パッケージがインストールされていて、ゲームを EOS Bootstrapper とともに開始する必要があります。

EOS コアの互換性を破る変更

  • すべてのゲームでは、SDK が正しく機能するように、以下の 2 つの API を呼び出す必要があります。
    • EOS_Platform_SetApplicationStatus
    • EOS_Platform_SetNetworkStatus
  • これらの API を Platform インターフェースに追加しました。ゲームが中断されて再開された時間、およびローカル システムのネットワーク接続状態が変更された時間が SDK に通知されます。 2 つの新しい関連 API を任意で使用してステータスを確認することができます。
    • EOS_Platform_GetApplicationStatus
    • EOS_Platform_GetNetworkStatus

既知の問題: iOS と Android サンプルでは、現在、新しい中断 / 再開 API とネットワーク接続 / 切断 API の例が更新されていません。

C# SDK の互換性を破る変更

  • ほとんどの参照タイプ (クラス) を値タイプ (構造体) に変更し、パフォーマンスを大幅に改善しました。
  • API コールでオプションの構造体を渡す場合、ref キーワードを使用する必要があります。
  • コールバックで情報構造体を渡す場合、ref キーワードを使用する必要があります。

Voice

  • プレイヤーが RTC ルームに参加すると、実際のブロック ステータスが解決されるまで、最初はブロックされます。つまり、ブロック ステータスについて複数の通知があるということです。実際のブロック ステータスを更新する前に、ParticipantStatusEOS_RTCPS_Joined に設定し、最初に bParticipantInBlocklist を true に設定します。
  • EOS_Lobby_AddNotifyRTCRoomConnectionChangedOptionsLocalUserId フィールドと LobbyId フィールドは非推奨になりました。
    • 登録済みコールバックがすべてのローカル ユーザーとロビーに対してコールされるようになりました。
    • ゲームでフィルタリングを実行する必要がある場合、EOS_Lobby_RTCRoomConnectionChangedCallbackInfo コールバック パラメータで LocalUserId と LobbyId を使用します。

プラットフォーム固有

コンソール全般

  • バグ修正:有効になる前に、EOS_RTC_XXX 関数でネットワークの使用を試みた可能性がある場合の問題を修正しました。EOS_RTC_XXX 機能では、現在の EOS_HPlatform ネットワーク ステータス値に従います。

Steam

  • 新規:ネイティブのサニタイズをサポートするプラットフォームで実行する場合、EOS_UserInfo and EOS_UserInfo_ExternalUserInfoDisplayName フィールドには、プラットフォームのサニタイズまたはフィルタリング機能で処理した名前のバージョンを示す同等の DisplayNameSanitized があります。
  • バグ修正:ブロックしたユーザーに追加のフレンド フラグを使用するために、Steam フレンド インターフェースを更新しました。

Sony PlayStation

  • PS4 SDK 9.508.001 と PS5 SDK 5.00.00.33 に更新しました。

Nintendo Switch

  • Nintendo Switch SDK 13.3.2 に更新しました。
  • 非推奨EOS_Switch_InitializeOptionsOnNetworkRequested コールバックが非推奨になり、新しい EOS_Platform_OnNetworkStatusChanged API に置き換わりました。
  • ロビー
    • 新規:EOS SDK では、オンライン マッチメイキングに適用できる場合、Nintendo Switch オンライン メンバーシップの許可要件に従い、これを自動的に強制するようになりました。

Microsoft Xbox

  • Xbox GDK をバージョン 211001 に更新しました。
  • Xbox GDK プラットフォームで EOS デベロッパー認証ツールのサポートを追加しました。
    • デベロッパー認証ツールのターゲット IP アドレスを、192.168.x.x、10.x.x.x、127.x.x.x、172.16.x.x から 172.31.x.x または同等の IPv6 アドレスなどのローカル IP として扱います。
    • 現時点では、ホスト名はサポートされていません。
    • 開発およびテスト用にのみ、この機能を使用します。GDK の独自の認証を使用して、実世界のシナリオ内のユーザーにログインします。この機能は、リテール デバイスでは使用できません。
  • バグ修正:無制限に再サニタイズを Microsoft サービスに対して呼び出す可能性がある GDK サニタイザーのバグを修正しました。

1.14.2-hf-2 - 2022年7月7日

注記 - Steam にゲームをシッピングする場合:

  • Epic Online Services SDK の C または C# バージョン 1.14.2 または 1.14.2-hf-1 をすでにダウンロードして使用している場合、C または C# 用 SDK の 1.14.2-hf-2 ホットフィックス バージョンをダウンロードして代わりに使用する必要があります。
  • 1.14.2-hf-2 は、C 用 SDK および C# 用 SDK での Steam の認証が更新されています。コンソール用 SDK に変更はありません。

リリース ノート

C 用の SDK および C# 用の SDK

認証

C 用の SDK および C# 用の SDK

  • 非推奨EOS_Auth_Login.EOS_ECT_STEAM_APP_TICKET は廃止されました。代わりに EOS_ECT_STEAM_SESSION_TICKET を使用してください。
    • 注記:コンソール用 SDK に変更はありません。

1.14.2-hf-1 - 2022年2月14日

注記:Epic Online Services SDK バージョン 1.14.2 をすでにダウンロードしている場合、AntiCheat の問題を解決するために SDK もこのバージョンをダウンロードする必要があります (以下を参照)。

リリース ノート

AntiCheat

  • バグ修正:チート対策ブート ストラッパーが引数を転送するときに引用符をストリップする問題を修正しました。

1.14.2 - 2022年2月1日

リリース ノート

AntiCheat

  • 新規:チート対策ブート ストラッパーは、値のパース元である .json の名前の指定をサポートするようになりました。カスタム仕様の .json ファイルを提供するには、-anticheat_settings=Custom.json を含めてブートストラッパーを呼び出します。ファイルは以前と同じディレクトリに配置する必要があることに注意してください。
  • バグ修正:Windows ユーザー名に ASCII 以外の文字を使用していると、ユーザーがチート対策ブート ストラッパーの起動に失敗する問題を修正しました。
  • バグ修正:チート対策ブート ストラッパーが引数を転送するときに引用符をストリップする問題を修正しました。
  • バグ修正:チート対策ブート ストラッパーをロードしているウィンドウでの Steam のオーバーレイの初期化を修正しました。
  • バグ修正:Fedora Linux でゲーム開始ができない原因であるアンチチート バグを修正しました。
  • バグ修正:Anti-Cheat Integrity Tool が時々 ASCII 以外の文字を含む作業ディレクトリ パスで失敗する問題を修正しました。
  • バグ修正AntiCheatServer でメモリ リークの可能性がある問題を修正しました。
  • バグ修正:単一のゲーム サーバーで大人数のプレイヤーが実行する、またはバックエンド接続の状態が悪い場合に発生する可能性があるクラッシュを修正しました。
  • アンチチートの整合性のカタログ ファイルのレイアウトを改善しました。
  • アンチチート インターフェースの ProtectMessage 関数と UnprotectMessage 関数はどのスレッドからも呼び出すことができますが、それらはスレッド セーフではないため、複数のスレッドから同時に呼び出すことはできません。
  • ProtectMessage および UnprotectMessage のエラーのログ記録を改善しました。

認証

  • バグ修正:サーバーのクライアント ID とは異なるクライアント ID を使ってゲーム クライアントから受信したトークンに対して EOS_Auth_VerifyIdToken が失敗する問題を修正しました。
  • バグ修正EOS_Auth_VerifyIdToken がゲーム クライアントで呼び出すことができない問題を修正しました。
  • バグ修正EOS_Auth_VerifyIdToken が有効期限切れのトークンを拒否しない問題を修正しました。
  • EOS_Auth_VerifyIdTokenCallbackInfoApplicationIdClientIdProductIdSandboxIdDeploymentId、外部アカウント情報を呼び出し元に返すように追加しました。

Connect

  • バグ修正:稀なケースを除いて認証が有効期限切れの場合に EOS_Connect_AddNotifyLoginStatusChanged が発行されない問題を修正しました。登録されたコールバックは、認証の有効期限が原因でユーザーがログアウトしたときに正しく通知されるようになりました。
  • バグ修正:サーバーのクライアント ID とは異なるクライアント ID を使ってゲーム クライアントから受信したトークンに対して EOS_Connect_VerifyIdToken が失敗する問題を修正しました。
  • バグ修正EOS_Connect_VerifyIdToken がゲーム クライアントで呼び出すことができない問題を修正しました。
  • バグ修正EOS_Connect_VerifyIdToken が有効期限切れのトークンを拒否しない問題を修正しました。
  • EOS_Connect_VerifyIdTokenCallbackInfoClientIdProductIdSandboxIdDeploymentId を呼び出し元に返すように追加しました。

Core

  • 新規:EOS SDK バージョンと構成情報は、トラブルシューティングに役立つように、起動時にログ出力に書き出されるようになりました。

e コマース

  • バグ修正EOS_Ecom_Transaction_CopyEntitlementByIndexEOS_Ecom_EntitlementCatalogItemId を正しく追加しない問題を修正しました。

Samples

  • バグ修正リーダーボード - 期限切れにならないように構成されたリーダーボードを使用した場合にリーダーボード サンプルで起きるクラッシュを修正しました。
  • バグ修正:Login サンプルでの認証問題を解決しました (iOS/Android)。

セッション ベースのマッチメイキング

  • 制裁措置を強制するセッションを作成できるようになりました。制裁されたプレイヤーは、処罰を有効にして作成されたセッションに参加も登録もできません。 詳細については、「Sanctions インターフェース」ドキュメントを参照してください。

ソーシャル オーバーレイ

  • バグ修正:SDK / EOS オーバーレイ間の通信レイヤーで稀に発生するクラッシュを修正しました。

タイトル データ ストレージ

  • 多くのエラー ケースでのロギングを改善しました。

プログラミングのアップグレードに関する注意点

AntiCheat

  • 暗号化 / 複号化の失敗に対するログ エントリを追加しました。無効な引数に対しては、すでにエラー ログがあります。

コンソール固有

Nintendo Switch

  • 新規:Nintendo Switch Nintendo SDK のバージョンが 11.4.3 から 13.3.0 にアップデートされました。

既知の問題

AntiCheat

  • チート対策ブート ストラッパーにカスタム アイコンが提供されている場合、ぼやけて表示されることがあります。
    • これは、次のリリースで解決されます。

2021

1.14.1 - 2021年11月8日

リリース ノート

新機能:

  • Custom Invites (カスタム招待)

    Custom Invites (カスタム招待) 機能は、ソーシャル オーバーレイと Epic Games Launcher の招待ボタンとプロンプトを利用しながら独自のグループ化機能を使用したいデベロッパーのために設計されています。

    デベロッパーは、他のプレイヤーへの送信のための任意の文字列ペイロードを提供します。このペイロードは直接 API 呼び出しの使用、またはソーシャル オーバーレイの招待ボタンのいずれかによって送信されます。EOS Sessions と EOS Lobbies と同様に、受信側のプレイヤーにはソーシャル オーバーレイの Invite Received (招待を受信) プロンプトが表示されます。受信した招待は必要に応じて新しい EOSSDK API コールバックをトリガーすることもできます。

  • CustomInvites UI 要素と機能を AuthAndFriends サンプルに追加しました。

  • [Send Invite (招待を送信)] ボタンを使用すると招待送信ダイアログが開きます。このダイアログでユーザーは、ペイロードの設定、ターゲット ユーザーの選択、そして最後に招待を「送信」することができます。[Send (送信)] ボタンを使用せずに、招待の受信資格のあるユーザーの横に表示される [Send (送信)] ボタンでオーバーレイを開くこともできます。

  • 招待が受信されると招待の詳細に関するダイアログが開き、[Accept (承認)] ボタンと [Decline (拒否)] ボタンが表示され、最後に Success/Canceled の結果となる FinalizeInvite を呼び出します。

AntiCheat

  • 新規: ブートストラッパーの詳細ログのサポートを追加しました。これは -v または --verbose. のいずれかをコマンドライン引数として渡すことで有効になります。
  • 新規: ブートストラッパーが Windows でカスタム ランタイム アイコンをサポートするようになりました。カスタム アイコンを使用するには、BootstrapperIcon.ico を「<working_dir>/_EasyAntiCheat/_」ディレクトリに配置します。
  • バグ修正: 単一のゲーム サーバーで大人数のプレイヤーが実行すると発生する AntiCheatServer バックエンド タイムアウト エラーを修正しました。
  • バグ修正:単一のゲーム サーバーで大人数のプレイヤーが実行する、またはバックエンド接続の状態が悪い場合に発生する可能性があるクラッシュを修正しました。
  • バグ修正:AntiCheatClient PollStatus 関数の Out パラメータである OutViolationType の名前が誤って ViolationType となっていたバグを修正しました。
  • バグ修正: C# SDK でのマーシャリングを行うための OUT パラメータが AntiCheatClient PollStatus 関数にないバグを修正しました。
  • バグ修正: ブートストラッパーは Windows でコード署名となりました。
  • バグ修正: Settings.json で定義された実行可能フィールドがディレクトリをターゲットにしている場合、ブートストラッパーがエラーを表示するようになりました。
  • セキュリティを改善しました。

認証

  • バグ修正: EOS_ELoginCredentialType::EOS_LCT_AccountPortal および EOS_ELoginCredentialType::EOS_LCT_DeviceCode 資格情報タイプを使ってログインする場合に EOS_Auth_CopyIdToken が ID トークンを提供しないバグを修正しました。

Connect

  • 新しい EOS_EExternalCredentialType::EOS_ECT_EPIC_ID_TOKEN 資格情報タイプの Epic アカウント ID トークンを使用したユーザー認証サポートを追加しました。
  • サポート対象のユーザー認証プロバイダに Amazon を追加しました。
  • 検証された Product User ID と紐づいている外部アカウントに関する情報を返すために EOS_Connect_VerifyIdToken を拡張しました。
  • 専用サーバーでの使用を呼び出すために EOS_Connect_QueryProductUserIdMappingsOptions 構造体のヘッダ コメントを更新しました。

Core

  • バグ修正: EGS Launcher 経由で起動したビルドが Mac 上でクラッシュすることがあった問題を修正しました。
  • サポート対象の macOS 最低バージョンが 10.14 から 10.12 に変更されました。

ロビー

  • バグ修正: ロビーの作成/参加が失敗し、アクティブな接続を終了することで既存のロビーを壊してしまうバグを修正しました。

ソーシャル オーバーレイ

  • 新規: EOS Lobbies および Sessions で提供されているものと同等のハイレベルな機能で任意のペイロードをデベロッパーが送受信できるように CustomInvites インターフェースを追加しました。
  • 新規: CustomInvites UI 要素と機能を AuthAndFriends サンプルに追加しました。
    • [Send Invite (招待を送信)] ボタンを使用すると招待送信ダイアログが開きます。このダイアログでユーザーは、ペイロードの設定、ターゲット ユーザーの選択、そして最後に招待を「送信」することができます。
    • 招待が受信されると招待の詳細に関するダイアログが開き、[Accept (承認)] ボタンと [Decline (拒否)] ボタンが表示され、最後に Success/Canceled の結果となる FinalizeInvite を呼び出します。
    • Custom Invites インターフェース:OnCustomInviteReceivedOnCustomInviteAccepted のコールバック情報にパラメータとして「Payload」を追加しました。
  • カスタム招待 - EOS_CustomInvites_NotifyCustomInviteAcceptedEOS_CustomInvites_RemoveNotifyCustomInviteAccepted および EOS_CustomInvites_NotifyCustomInviteProcessed を追加しました。

コンソール固有

Sony PlayStation

  • 新規: EOS SDK PlayStation 4 リリースは 9.000 PlayStation 4 SDK をターゲットにしています。
  • 新規: EOS SDK PlayStation 5 リリースは 4.000 PlayStation 5 SDK をターゲットにしています。

既知の問題

AntiCheat

  • チート対策ブート ストラッパーの一部がローカライズされていません。
  • チート対策ブート ストラッパーを開くと、Steam オーバーレイが自動的に初期化します。
  • Fedora/Red Hat Linux で Anti-Cheat の初期化に失敗します。
  • Windows ユーザー名に ASCII 以外の文字が使用されると、ユーザーがチート対策ブート ストラッパーの起動に失敗します。
  • 一部の設定で、AntiCheatServer でメモリ リークがあります。
  • プレイヤー数が非常に多い場合、AntiCheatServer がクラッシュすることがあります。

EOS Connect & EOS Auth

  • EOS_Connect_VerifyIdTokenEOS_Auth_VerifyIdToken が、サーバーとゲーム クライアント間でクライアント ID が異なるために失敗します。
  • EOS_Connect_VerifyIdTokenEOS_Auth_VerifyIdToken は、トークンの有効期限を正しくチェックしません。
  • EOS_Connect_VerifyIdTokenEOS_Auth_VerifyIdToken は、bIsServer を true に設定して SDK を初期化した場合のみ、ゲーム クライアントで利用できます。

1.14 - 2021年9月23日

リリース ノート

新機能:

  • 進行状況スナップショット (アカウント マージ サービス プレビュー)
    • アカウント マージ導入に向けた新機能を追加しました。
    • 進行状況スナップショット は、デベロッパーがアプリケーション内のユーザーの進捗に関するキーと値のペアを保存するための方法です。この情報は、アカウント マージによって、ユーザーがアカウントの進捗状況を組み合わせるときの選択に使用されます。詳細については、ドキュメントを参照してください。

AntiCheat

  • 新規: Wine/Proton を含む Linux 用のアンチチート クライアントをサポートしました。
  • **新規:**Mac (Intel-based) 用のアンチチート クライアントをサポートしました。
  • バグ修正: アンチチート ゲームプレイ データ UnregisterClient イベントが送信されないバグを修正しました。
  • バグ修正: EOS_AntiCheatServer_RegisterEvent が「.」をイベント名として受け取らなくなりました。これまではバックエンドが拒否していましたが、明確なエラーは出ていませんでした。
  • バグ修正: アンチチート ゲームプレイ データ UnregisterClient イベントが送信されない内部のバグを修正しました。
  • バグ修正: システム クロックが誤ったタイミングで更新された場合、アンチチートの問題が発生する可能性がある点を修正しました。
  • バグ修正: アンチチート クライアント モジュールのテスト ワークフローが正しく動作せず、「接続に失敗しました」というエラーになるのを修正しました。
  • 最終パラメータ OutBytesWritten のみを整数への有効なポインタにする必要があるように、アンチチート ProtectMessage API と UnprotectMessage API を更新しました。以前は、整数を出力バッファの長さに初期設定する必要がありました。
  • アンチチートの ProtectMessageUnprotectMessage の API 位置パラメータ名を変更し、より明確で一貫性のあるものにしました。
  • DamagePositionEOS_AntiCheatCommon_LogPlayerTakeDamageOptions と非推奨の HitBoneId に追加しました。これにより、より正確なヒット位置の情報を得ることができます。
  • Anti-Cheat クライアント モジュールは、サンドボックス レベルではなく、デプロイメント レベルで管理されるようになりました。これは、他の EOS サービスとの整合性を高めるものです。このバージョンの SDK にゲームをアップデートする際には、EOS_AntiCheatTools ファイルを必ずアップデートする必要があります。
  • EOS Connect DeviceID の認証方式は、アンチチートには対応していません。この場合、新しい結果コード EOS_AntiCheat_DeviceIdAuthIsNotSupported が返されるようになりました。

認証

  • 新規: EOS_Auth_CopyIdToken API、EOS_Auth_QueryIdToken API、EOS_Auth_VerifyIdToken API が新しく追加されて、ゲーム サーバー、オンライン バックエンド、その他のクライアントが他の Epic アカウント ユーザーの身元を安全に確認できるようになりました。既存の EOS_Auth_CopyAuthToken API と EOS_Auth_VerifyAuthToken API を使用しているゲームは ID トークンの代用を検討すべきです。
  • 新規: ローカル ユーザーのマージされた Epic アカウント ステートを検出する API サポートを追加しました。これは、ユーザーが別々の Epic アカウントを単一の Epic アカウントに統合できるようにする、近日公開予定の Epic Account Services 機能に関連するものです。

Connect

  • 新規: EOS_Connect_CopyIdToken API と EOS_Connect_VerifyIdToken API が新しく追加されて、ゲーム サーバー、オンライン バックエンド、その他のクライアントが他の EOS ユーザーの身元を安全に確認できるようになりました。
  • 新規: Connect ID Token を管理する EOS_Connect_CopyIdToken API、EOS_Connect_IdToken_Release API、EOS_Connect_VerifyIdToken API を追加しました。詳細は「Connect インターフェース」ドキュメントを参照してください。

e コマース

  • 新規: EOS_Ecom_CatalogOffer 構造体の提供価格に対する DecimalPoint を公開しました。たとえば、DecimalPoint '2' と CurrentPrice64 '12345' は '123.45' です。

Overlay Tech Platform

  • バグ修正: EOS_UI_AddNotifyDisplaySettingsUpdated によって追加され、ティック前に EOS_UI_RemoveNotifyDisplaySettingsUpdated によって削除される通知コールバックが呼び出されなくなりました。以前は一度だけ起動され、ゲームが何らかの依存状態を解放していた場合、クラッシュが発生する可能性がありました。

P2P

  • EOS_P2P_AddNotifyPeerConnectionEstablishedEOS_P2P_RemoveNotifyPeerConnectionEstablished で接続確立時に通知を受けることができるようになりました。
  • EOS_P2P_ClearPacketQueue を使用して、指定したリモート ユーザーと特定のソケットからの受信パケットおよび送信パケットのキューをクリアすることができるようになりました。

プレイヤー データのストレージ

  • バグ修正: プレイヤー データのストレージのローカル キャッシュからのファイル読み出しが非常に遅くなる問題を修正しました。
  • 多くのエラー ケースでの PlayerDataStorage のログ出力を改善しました。

Presence

  • バグ修正: 接続切断時にプレゼンス サービスが自動更新を試行し続ける問題を修正しました。

Samples

  • バグ修正: 不足している AssetUtils.cppMakefile に追加することにより、Mac / Linux でのリーダーボード サンプルのビルドを修正しました。

Sanctions

  • EOS_Sanctions_PlayerSanctionTimeExpires フィールドと ReferenceId フィールドを追加しました。この情報は、EOS デベロッパー ポータルで見ることができるようになっていますが、以前は SDK API から利用することはできませんでした。

Voice

  • EOS_RTC_SetSetting API と EOS_RTC_SetRoomSetting API を公開しました。
    • DisableEchoCancelation はオーディオ チャンネルのエコー キャンセルの使用を無効にします。デフォルトは False です。
    • DisableNoiseSupression はオーディオ チャンネルのノイズ抑制の使用を無効にします。デフォルトは False です。
    • DisableAutoGainControl はオーディオ チャンネルのオート ゲイン コントロールの使用を無効にします。デフォルトは False です。
    • DisableDtx Global\Per room は DTX の使用を無効にします。デフォルトは False です。

モバイル

iOS

  • バグ修正: iOS 14 で、URL スキームに不正な文字が含まれていることが原因で、例外が発生する問題を修正しました。

アップグレード ノート

AntiCheat

  • SDK 1.14 へアップグレードする場合、同梱の「EOS_AntiCheatTools」 zip ファイルから、start_protected_game.exeEasyAntiCheat_EOS_Setup.exeanticheat_integritytool.exe を最新のバージョンに更新する必要があります。
  • start_protected_game.exe で以下が変更されました
    • 以下の設定はサポートされなくなりました。これらは以前は関連付けられている Settings.json で定義されていました。
      • parameters:ブートストラッパーは、プロセス開始時に提供されたすべてのパラメータをゲーム プロセスに転送するようになりました。そのため、関連付けられている設定ファイルではこの機能は使用できません。
      • use_cmdline_parametersパラメータ フィールドが削除されたため、冗長なものとして削除しました。
      • working_directory:ブートストラッパーがゲームのルート ディレクトリに格納されていることが想定されるようになったため、削除しました。これはすべての対応プラットフォームに該当します。
      • logo_position:ブートストラッパーの新しい設計において配置が制限されるため削除しました。
      • hide_splash_screen:ブートストラッパーの内部設計の変更に伴い、削除しました。
      • hide_ui_controls:ブートストラッパーの内部設計の変更に伴い、削除しました。
  • Windows ゲームで Wine/Proton サポートを有効にする場合は、EOS デベロッパー ポータルで Linux モジュールを有効にする必要があります。詳細については、「EOS デベロッパー」ドキュメントを参照してください。

プログラミングのアップグレードに関する注意点

AntiCheat

  • EOS_AntiCheatCommon_LogPlayerTakeDamageOptions の使用は、HitBoneId の代わりに DamagePosition フィールドを設定するように更新される必要があります。これにより、より正確なヒット位置の情報を得ることができます。

1.13.1 - 2021年7月27日

リリース ノート

C# SDK

  • バグ修正: C# バージョン< 7 より前の互換性の問題を修正しました。
  • バグ修正: iOS 構成ターゲットを修正しました。

ロビー

  • EOS_Lobby_LocalRTCOptions パラメータの bAudioOutputStartsMuted の名前を bLocalAudioDeviceInputStartsMuted に変更し、何がミュートされるかをより適切に表現できるようになりました。
  • バグ修正: ロビー更新時に出る誤った警告を削除しました。クライアントは、更新が行われている間、バックエンドよりも多くの属性を認識できる可能性があります。このため、誤った「時刻同期 (out of sync)」エラーが発生していました。
  • バグ修正: EOS プラットフォームの作成中に RTC 初期化オプションを指定せず、ロビーで RTC Room 機能を有効にした場合にクラッシュする不具合を修正しました。この場合、ロビーの作成は EOS_InvalidRequest result で失敗するようになりました。
  • バグ修正: ロビーの RTC Room 機能の使用時に必ず発生する誤った警告を修正しました。

プレイヤー データのストレージ

  • EOS_PlayerDataStorage_QueryFileEOS_PlayerDataStorage_QueryFileListEOS_PlayerDataStorage_ReadFile の一部のエラー ケースでのログを追加しました。

プログラミングのアップグレードに関する注意点

ロビー

  • EOS_Lobby_LocalRTCOptions パラメータ bAudioOutputStartsMuted の使用は、bLocalAudioDeviceInputStartsMuted に名前を変更する必要があります。

コンソール固有

PlayStation

  • 新規: PS5 SDK バージョンを 3.00.00.27 に設定しました。
  • 新規: PS4 SDK バージョンを 8.508.001 に設定しました。

Nintendo Switch

  • バグ修正: P2P を初めて使用する際に、ネットワークが利用できない場合に、P2P が利用できないと認識してしまうことがある不具合を修正しました。ネットワークが再び利用可能になったとき、常に正しく P2P を再開するようになりました。
  • バグ修正: ネットワークが利用できない場合に、非同期の Lobby API コールが非常に長い時間をかけてタイムアウトすることがある問題を修正しました。

Xbox Series X|S

  • バグ修正: Xbox Series X|S での RTC オーディオ キャプチャの問題を修正しました。

1.13 - 2021年6月21日

リリース ノート

新機能:

  • **Voice (プレビュー サービス):**Epic Online Services の一部である EOS Voice ツールの最初のリリースでは、プレイヤーはサード パーティのソリューションを使用せずにゲーム内の友人やチームメイトと話すことができます。詳細については、ドキュメントを参照してください。

Anti-Cheat

  • Easy Anti-Cheat のランチャーを変更して Win 32 ではなく SDL に依存する新しいバージョンを使用するようにしました。

認証

  • バグの修正: 追加の同意が必要な場合に EOS_Auth_Login の交換コード フローを介して発生する可能性があったクラッシュを修正しました。
  • バグの修正: EOS_Auth_LinkAccount で Continuance Token ハンドルを使用すると発生する可能性があったクラッシュを修正しました。

Core

  • バグの修正: constexpr にはならない列挙型クラスのビット演算子関数から constexpr 指定子を削除しました。
  • EOS_Platform_Options CacheDirectory パラメータの無効な UTF8 文字の検証が改善されました。無効な文字が見つかった場合、プラットフォーム インスタンスの作成が正常に失敗するようになりました。これが発生した場合に追加のロギングが追加されるようになりました。

ロビー

  • **新規:**Real Time Communication (RTC) Room の自動サポートをロビーに追加しました。
    • この機能を有効にすると、ロビー専用の RTC ルームへの接続の作成、参加、および維持が自動的に行われます。この機能を使用するには EOS デベロッパー ポータルで createLobbyConference Voice の権限を有効にする必要があります。
  • 新規: ロビーの作成により、「ロビー ID オーバーライド」を指定できるようになりました。
    • 値はアプリケーション内においてグローバルに一意である必要があります。
  • バグ修正: InviteId が null または空の場合の EOS_Lobby_RejectInvite のログ メッセージを修正しました。
  • バグ修正: EOS_LobbySearch_SetTargetUserId で他のユーザーを検索すると、検索結果で最大値の指定が可能になりました。これまでは 1 つの検索結果が返されるだけでした。

ロビー サンプル

  • 新規: ロビー サンプルにボイス オプションを追加しました。

プレイヤー データのストレージ

  • 不正なファイル名とパスのエラー メッセージを改善しました。

タイトルのストレージ

  • 不正なファイル名とパスのエラー メッセージを改善しました。

モバイル

iOS

  • iOS バイナリがビットコード サポートでコンパイルされるようになりました。