シングルプレイヤーとマルチプレイヤーのロジック
このページではGame Maker のロジックシステム、シングルプレイヤーとマルチプレイヤーでのロジックシステムの使用方法を解説します。
ゲームルールGame Maker のロジックシステム




プレイヤーの設定ではアバターやコントロール、基本機能、インタラクションのカスタマイズができます。
例:アバターは泳ぐことができたり、一部のブロックからダメージを受けたりする可能性があります。
オブジェクトのロジック
[SP] と [MP] のビヘイビアとコンポーネント
Game Maker 0.8 より[SP] と [MP] のロジックが分かれて設定可能になりました。
それによってロジックによっては個人のプレイヤーだけに体験してもらう設定が行えたり、同時にすべてのプレイヤーに体験してもらうといった別々の設定ができるようになりました。
同期されたロジックには位置、オブジェクトのステータス、環境、グローバルメカニクスなどが含まれます。
オブジェクトの設定は以下の3種類があります。
ロジック設定なし
[SP] のロジックのみ
Client Only - それぞれのプレイヤーは異なるタイミングでロジックを体験します。
例:プレイヤーは自分のペースでゲームを進め、準備ができた時にクエストのダイアログを読むという設定ができます。
[MP] のロジックのみ
Synchronized - すべてのプレイヤーが同時にロジックを体験します。
例:すべてのプレイヤーに対して同時にドアが開いたり、プラットフォームが動いたりする設定ができます。
[SP] と[MP] の選択
オブジェクトを選択してプロパティパネルのビヘイビアとコンポーネントの欄をクリックします。
ポップアップウィンドウが開いたら、右上のドロップダウンからロジックの種類を選択します。(Client Only は[SP]、Synchronized は[MP])
設定したロジックをクリックすると選択しているオブジェクトに追加されます。



システムを超えたロジックのトリガー方法
メッセージはゲームプレイロジックをとトリガーするためにシステム間、またはシステム内で送信されます。
ロジックはシンプルなものから複雑なものまで一連のイベントのものから、直線的または選択肢を用いて枝分かれしているものまで設定できます。
メッセージを送信してアクションをトリガーする様々な方法があり、メッセージはフィルターやタグを使って特定のものに設定することができます。
ブロードキャスト
体験のスタート時やトリガー時に一度だけ、または繰り返しメッセージを送ることができます。
例:
Message Broadcaster のビヘイビアをロジックアクターやオブジェクトに追加して、使用したいパラメーターを設定します。
2つのロジックエレメントが特定のものに対して常に手早くメッセージの送受信を行わない場合、Message Broadcaster を中継ポイントとして使用できます。
オブジェクトやプレイヤーアバターの検知
オブジェクトはタグを検知するとメッセージを送信します。アニメーションを再生することもできます。以下の場合に検知がトリガーされます。
プレイヤーアバターがレンジ内にいる場合
特定のタグがレンジ内にある場合
特定のオブジェクトがレンジ内にある場合
例:
Speaker のコンポーネントを追加して検知するものと検知のレンジを選択します。(アバター、タグ、特定のアクター)
アバターが検知された時やメッセージを受信した時にアセットのアニメーションをトリガーしてメッセージを送信するにはAnimated Decoration のビヘイビアを使用します。
Trigger Volume のコンポーネントはタグが範囲内に出入りすると検知してメッセージをトリガーします。
オブジェクトの破壊
オブジェクトが攻撃や即時死亡メッセージによって破壊されるとメッセージを送信したり新しいオブジェクト(例:ルートや小型の敵など)をドロップ(スポーン)します。
例(直接的な場合):
メッセージの送信 - Health のコンポーネントを破壊されるオブジェクトに追加します。Message sent をDeath に設定します。そのメッセージをInstant Death Message を使ってトリガーします。
例(間接的な場合):
オブジェクトのドロップ(スポーン)- Drop のコンポーネントを破壊されるオブジェクトに追加します。ビヘイビア(デフォルトのアセット設定)かプリセット(一つ以上のオブジェクトをスポーンさせるようにカスタム設定する)を選択します。スポーンするアセットかプリセットを選択します。 - Speaker のコンポーネントを持つ近くにある他のオブジェクトはスポーンされたオブジェクトに含まれるタグを検知できます。 - Message Broadcaster などのスポーンされたオブジェクトは即時にメッセージを送信できます。
オブジェクトの収集
1人のプレイヤーまたはすべてのプレイヤーによってコレクティブルとして設定でき、メッセージを送信したりサウンドの再生ができます。
例:
Collectable のコンポーネントをオブジェクトに追加して送信するメッセージを設定します。
オブジェクティブやクエスト
クエストの条件を満たしたりクエストをクリアしたという確認を受信するとメッセージを送信します。
例:
オブジェクティブやクエストを作成します。Action After Completion のドロップダウンでSend Message を選択します。その下のドロップダウンを使って既存のメッセージを選択するか新しいメッセージを作成します。体験内のすべてのオブジェクトはこのメッセージを受信できます。

体験の制作
👤シングルプレイヤー
[MP] のオブジェクトをシングルプレイヤーで使用する理由
ロジックによってはマルチプレイヤーの体験内で実際に見えるものとコリジョンをもっているものの間で不一致が起こることがあり、そのような場合は[MP] のみが使用できます。[MP] のロジックはシングルプレイヤーの体験で使用される場合は[SP] のロジックのように機能します。
パフォーマンス
マルチプレイヤーのゲームに比べて、[MP] のロジックがシングルプレイヤーのゲームパフォーマンスを下げるということはありません。
変数値(ゲームルール)
Game Maker 0.9 では新しいゲームルールシステムとしてローカル変数(L)とグローバル変数(G)が導入されました。新しいシステムではすべてのプレイヤーまたは個人のプレイヤーに関わる数値、時間、テキストなどをトラッキングできます。どちらの変数値もシングルプレイヤーで機能しますがグローバルを使用する方がパフォーマンスが優れています。
ブ1つのロジックレイヤーロードキャスト
最終更新
役に立ちましたか?

