この記事では、Microsoft Store に公開する GameMaker ゲームを準備する方法について説明します。
- 必要なソフトウェアをインストールする
- GameMaker Studio 2 をダウンロードしてインストールする
- GameMaker Studio 2 - Microsoft Game Development Kit (GDK) 拡張機能
- GDK 拡張機能をビルドする
- パートナー センターで製品を作成する
- GDK 拡張機能をテストする
- MicrosoftGame.config を更新する
- GDK 拡張機能を独自のプロジェクトに統合する
- ゲームでの Xbox サービスのテスト
- 公開
必要なソフトウェアをインストールする
Microsoft Game Development Kit (GDK) で GameMaker Studio 2 を使用するには、次のソフトウェアをダウンロードします:
- Visual Studio 2022
- June 2024 GDK 以降
-
CMake
- CMake インストーラーがシステム パスを更新していることを確認します。 そうしないと、拡張プロジェクトで CMake が見つかりません。
ゲーム ランタイム サービス (GRTS) と PC ブートストラッパー
PC ブートストラッパーは PC ゲーム起動体験の一部であり、2022 年 5 月の GRTS リリースで導入されました。 PC ブートストラッパーは GRTS に依存し、正しく機能するために GRTS に依存します。 開発用 PC で GRTS が古くなっている場合、サインイン試行が失敗し、E_FAIL エラーが返される可能性があります。
ゲーム起動プロセスにおける役割や GRTS との対話する方法など、PC ブートストラッパーの詳細については、「PC ブートストラッパーの概要」を参照してください。
GameMaker Studio 2 をダウンロードしてインストールする
GameMaker Studio 2 がまだインストールされていない場合は、https://www.yoyogames.com からダウンロードしてインストールします。
GameMaker Studio 2 GDK 拡張機能を設定する
GameMaker Studio 2 で GDK を使用するには、GameMaker Studio 2 GDK 拡張機能が必要です。 拡張機能のソース コードとセットアップ手順については、https://github.com/YoYoGames/GMEXT-GDK を参照してください。
リポジトリのルートにある README ファイルに記載されている手順に従います。 これらの手順により、GameMaker Studio 2 GDK 拡張機能をセットアップしてビルドし、Xbox サービスと機能を GameMaker プロジェクトに統合できるようになります。
GDKExtension リポジトリを複製するときは、--recurse-submodules スイッチを使用してサブモジュールを含めます。 そうしないと、ソリューションをビルドするときに必要なファイルが見つかりません。
拡張機能の詳細については、https://github.com/YoYoGames/GMEXT-GDK/wiki を参照してください。
GDK 拡張機能をビルドする
リポジトリのルートにある Readme ファイルの手順を使用して、Visual Studio 2022 で拡張機能をビルドします。 GDKExtension.sln ファイルが必要です (<project_root>/source/GDKExtension_gml/extensions/GDKExtension/gdkextension_windows/GDKExtension.sln)。 ビルド手順の詳細については、リポジトリのルートにある Readme ファイルのビルド手順を参照してください。
Microsoft パートナー センターで製品を作成する
パートナー センターで Xbox サービス対応製品を作成するには、「パートナー センターでアプリまたはゲームをセットアップする」を参照してください。 製品を作成したら、Xbox サービスをテストするか、Microsoft Store にゲームを公開できます。
GDK 拡張機能をテストする
GDK 拡張機能リポジトリには、GDK プラグインを GameMaker Studio 2 プロジェクトと統合する方法を示すサンプル プロジェクトが含まれています。 サンプル プロジェクト ファイルは source/GDKExtension_gml/GDKExtension.yyp にあります。
GameMaker (ビルド>実行可能ファイルの作成) でサンプル プロジェクトをビルドする場合は、[Zip としてパッケージ化] を選択して、アプリのインストールに必要な MSIXVC パッケージを生成します。 [インストーラーとしてパッケージ化] を選択すると、ビルドで MSIXVC パッケージは生成されません。 アプリは Xbox サービスにアクセスできません。
ビルドが完了すると、作成された .zip ファイルとそのサブディレクトリを示すエクスプローラー ウィンドウが開きます。 サブディレクトリはパッケージと同じ名前で、MSIXVC ファイルが含まれています。
さらに、GameMaker Studio 2 の出力ウィンドウには、次の例に示すように、MSIXVC パッケージの完全な出力パスを含むコード行が表示されます。
C:\Users\your-user-name\XboxDeveloperExperienceTe.GamePassSampleGame_1.0.0.0_x64__pmsd8ndztetqc-pkg
サンプル プロジェクトを実行して Xbox サービスにアクセスできるようにするには、パッケージの名前を持つ wdapp install を使用してパッケージをインストールします。
wdapp install XboxDeveloperExperienceTe.GamePassSampleGame_1.0.0.0_x64__pmsd8ndztetqc.msixvc
パッケージがインストールされたら、[スタート] ボタンを使用して起動します。
MicrosoftGame.config を更新する
サンプル プロジェクトでは、既定の MicrosoftGame.config ファイルが使用されます。 プロジェクトのパートナー センター構成情報を使用してサンプルまたは自身の GameMaker Studio 2 プロジェクトをテストするには、MicrosoftGame.Config ファイルを更新する必要があります。
サンプルの .config ファイルは、source/GDKExtension_gml/datafiles/MicrosoftGame.config にあります。
Xbox サービス機能を使用するには、次の手順でプロジェクトの MicrosoftGame.config をパートナー センターのプロジェクト ID 詳細に更新します。
- パートナー センター ダッシュ ボードに移動します。
- 製品の一覧からゲームを選択します。
- [ゲームの設定] タブを選択し、[Identity details] を選択します。
- [Show Details] を選択して、[Identity details] セクションを展開します。
- [ID の詳細] セクションのテーブルから次の値を使用します。 これらの値をパートナー センターから MicrosoftGame.config の対応する要素とフィールドにコピーします。
| パートナー センターに表示される名前 | MicrosoftGame.config |
|---|---|
| Xbox タイトル ID | TitleId |
| Package/Identity/Name | ID->名前 |
| Package/Identity/Publisher | ID->発行元 |
| Xbox サービス > Xbox 設定 > MSAAppId | MSAAppId |
パートナー センターの ID 詳細は、次の例のように MicrosoftGame.config ファイルの内容を決定します。
| パートナー センターに表示される名前 | 値の例 |
|---|---|
| Xbox タイトル ID | 64353034 |
| Package/Identity/Name | 41336MicrosoftATG.Achievements2017Redux |
| Package/Identity/Publisher | CN=A4954634-DF4B-47C7-AB70-D3215D246AF1 |
| Xbox サービス > Xbox 設定 > MSAAppId | 0000000000000000 |
MicrosoftGame.config ファイルの抜粋の例
<?xml version="1.0" encoding="utf-8"?>
<Game configVersion="1">
<Identity Name='41336MicrosoftATG.Achievements2017Redux' Version="1.1.0.0" Publisher='CN=A4954634-DF4B-47C7-AB70-D3215D246AF1' />
<TitleId>64353034</TitleId>
<MSAAppId>0000000000000000</MSAAppId>
<ExecutableList>
<Executable Name="Achievements2017_desktop.exe"
TargetDeviceFamily="PC"
Id="Game"/>
</ExecutableList>
<ShellVisuals DefaultDisplayName="Achievements2017 Desktop Sample"
PublisherDisplayName="Xbox Advanced Technology Group"
StoreLogo="Assets\StoreLogo.png"
Square150x150Logo="Assets\Logo.png"
Square44x44Logo="Assets\SmallLogo.png"
Square480x480Logo="Assets\LargeLogo.png"
Description="Achievements2017"
ForegroundText="dark"
BackgroundColor="#000000"
SplashScreenImage="Assets\SplashScreen.png"/>
</Game>
MicrosoftGame.config の概要とその値に関する情報については、「MicrosoftGame.config の概要」を参照してください。
GDK 拡張機能を独自のプロジェクトに統合する
少なくとも、プロジェクトは次の関数を呼び出して GDK と統合させる必要があります。
- GDK を初期化するには、
gdk_initを呼び出します。 他の GDK 機能を使用する前に、gdk_initを呼び出す必要があります。 - GDK がアクティブな間は、フレームごとに 1 回
gdk_updateを呼び出します。 - プロジェクト完了後、GDK 機能が不要になった場合は、
gdk_quitを呼び出して GDK をクリーンアップします。
さらに、GDK 拡張機能には、GDK 機能へのアクセスを提供する次のモジュールがあります。
- 基本モジュール: プレイヤーのユーザー/アカウントの選択を制御する関数のセットを提供します
- ストレージ モジュール: ユーザーに関連付けられているデータの読み込みと保存を制御する関数のセットを提供します。
- Xbox サービス モジュール: 統計情報、ランキング、実績、リッチ プレゼンスなど、Xbox サービスの機能を使用する関数を提供します。
- アプリ内購入モジュール: GDK を介して GameMaker プロジェクトと Microsoft Store コマース システムを統合する機能を提供します。
拡張機能リポジトリに含まれるガイドでは、GDK 拡張機能 API セクションの GDK 関数に関するドキュメントがあります。 ガイドは、.pdf ファイルとして、source/GDKExtension_gml/datafiles/GDK_Extension_Documentation.pdf です。
ゲームでの Xbox サービスをテストする
ゲームで Xbox サービスの機能 (実績など) をテストするには、サンドボックスを使用し、そのサンドボックスにアクセスできるテスト アカウントを使用します。
テスト アカウントの作成
ゲーム内で Xbox サービス機能をテストするには、開発サンドボックスにアクセスできるテスト アカウントを作成する必要があります。 手順については、「テスト アカウントの作成」を参照してください。
サンドボックスを切り替える
- パートナー センターに移動します。
- サンドボックス ID を見つけるには、[Xbox サービス] を選択し、[ゲームプレイ設定] を選択します。
注意
サンドボックス ID は、ゲームプレイ設定ページの最初のタブに表示されます。 "ABCDEF.0" のような名前を使用します。
- [スタート] ボタンを選択します。
- Microsoft GDK Command Prompts と入力し、Enter を選びます。
- 最初のコマンド プロンプトを開き、XblPCSandbox.exe <サンドボックス ID> を入力します。
-
- コマンド プロンプトで複数のアプリが起動したら、テスト アカウントを使用して Xbox アプリにサインインします。
正常にサインインできる場合は、サンドボックスでテストを開始できます。
サンドボックスの詳細については、「Xbox サービスのサンドボックスの概要」を参照してください。
ゲームを公開する
ゲームを公開する準備をするには、次のことを確認します:
- GameMaker Studio 2 で [Zip としてパッケージ化] を使用して MSIXVC パッケージを作成します。
- パートナー センターで作成したプロジェクトの正しい値を使用して、MicrosoftGame.config ファイルを更新します。
- GDK 拡張機能をゲームに統合します。
この記事の手順を完了すると、ゲームを公開する準備が整っています。 提出するには、パートナー センターに移動し、UI の指示に従います。