前述のとおり、ニコ生ゲームのマルチプレイゲームは、ほぼ単なる Akashic ゲームです。そのためまず「Akashic Engine 入門」のマルチプレイゲームの章まで理解している必要があります。
https://akashic-games.github.io/tutorial/v3/ (別ページで開きます)
次ページ から、これを補足する内容のコラム形式の文書になるので、そちらも併せてご覧ください。
一点だけ「単に Akashic ゲームを作成する」以外に必要な作業があり、それは「このゲームはマルチプレイゲームである」と表明することです。
これは game.json の environment.nicolive.supportedModes
の値に ["multi_admission"]
を設定することで行われます。
{
// ... その他の記述 ...
"environment": {
"nicolive": {
"supportedModes": [
"multi_admission"
]
}
}
}
"multi_admission"
の代わりに"multi"
を指定することもできます。"multi"
の場合、起動時にプレイヤー募集が行われません。 詳細は別項 プレイヤーの募集 を参照してください。
以前は
environment.nicolive
ではなくenvironment.niconico
プロパティを利用していました。 現在environment.niconico
は非推奨になっています。 詳細は別項 ニコ生ゲーム関連の仕様 を参照してください。
マルチプレイのニコ生ゲームでは、ニコニコのユーザ名を利用することができます。 これについては別項 ユーザ名を使う を参照してください。
ただし必要となる機能の関係上、 Akashic Engine v3 以降で作成されている必要があります。
マルチプレイのニコ生ゲームの動作確認は、Akashic ゲームとして単に akashic serve
コマンドで行うことができます。
ただしニコ生ゲームの場合は --target-service
オプションが利用できます。
$ akashic serve --target-service nicolive
--target-service
(短縮形 -s
) オプションは、 serve コマンドに特定のサービス上の動作をできるだけ再現させるものです。
現在指定可能な値は nicolive
と none
(デフォルト値) の二つです。
nicolive
が指定された場合、 serve コマンドは次のように振る舞います。
Join と Leave の節 でも記載のとおり、ニコニコ生放送では「放送者がただ一人 Join する」動作になっています。
--target-service
を指定すると、「Join Me」ボタンを逐一押さずに放送者を含めた動作を確認することができます。
作成したゲームの投稿手順はランキングゲームと同様です。ニコ生ゲームを投稿しよう を参照して、投稿してみてください。