PiaSession で実装可能なマッチメイク仕様について説明します。
PiaSession のセッション API では、内部で PiaSession のメッシュ API と NEX マッチメイク API (ローカルマッチメイク時は UDS ライブラリ API )を呼び出していて、マッチメイクセッション/ローカルネットワークと P2P セッションの管理を一括して行います。セッション API 内部で呼ばれるメッシュ API と NEX マッチメイク API/UDS ライブラリ API の使用方法や呼び出し順は検証済みとなるため、アプリケーション側の実装ミスや呼び出し順の間違いが起こりにくくなります。また、フレンド合流マッチメイクやジョイントセッション機能など実装や検証に時間がかかるマッチメイク処理を自動的に行う機能を備えているほか、マッチメイク時のエラー処理を Pia のエラー処理に統一することができます。
PiaSession のセッション API で実装可能なマッチメイク機能は以下の通りです。
マッチメイク機能 |
インターネットマッチメイク |
ローカルマッチメイク | LAN マッチメイク |
---|---|---|---|
マッチメイクセッションの登録・破棄 | O | O | O |
マッチメイクセッションの検索・参加・離脱 | O | O | O |
ランダムマッチメイク(オートマッチメイク) |
O | × | O |
NEAREST_NEIGHBOR(属性)ランダムマッチメイク | O | × | × |
BROADEN_RANGE(レンジ拡大)ランダムマッチメイク |
O | × | × |
PROGRESS_SCORE(進行度)ランダムマッチメイク | O | × | × |
BROADEN_RANGE_WITH_PROGRESS_SCORE (レンジ拡大・進行度)ランダムマッチメイク |
O | × | × |
SCORE_BASED(スコア付け)ランダムマッチメイク | O | × | × |
マッチメイクセッションのユーザーパスワード設定 | O | O | × |
マッチメイクセッションのシステムパスワード設定 | O | × | × |
ホストマイグレーション | O | O | O |
フレンド合流マッチメイク | O | × | × |
マッチメイクブロックリスト | O | × | × |
永続ギャザリング | O | × | × |
メッセージング | △(P2P で送信) | × | × |
マッチメイクレフリー | 未定 | × | × |
チームマッチメイク(ジョイントセッション) | O | × | × |
あいことばマッチメイク | O | × | × |
O:対応済み △:一部対応
PiaSession のセッション API を使用して実現可能なマッチメイクのユースケースについて説明します。
以下に記載しているアクティビティ図(UML で記載されています)とは大きく異なるマッチメイク仕様を検討している場合は、弊社までご相談ください。
プレイヤーが「通信相手を待ち受ける」「検索した通信相手のリストから相手を選ぶ」というような操作を行い、通信プレイを行うマッチメイク仕様がブラウズマッチメイクです。ブラウズマッチメイクはインターネットマッチメイクおよびローカルマッチメイク、LAN マッチメイクで使用できます。
想定するアクティビティ図を 図 7-4. ブラウズマッチメイクのアクティビティ図 に示します。
ブラウズマッチメイクで使用するセッション構築、セッション検索と参加処理の説明は 7.4. 基本機能 - ブラウズマッチメイク を参照してください。
「世界の誰かと通信する」というように通信相手をランダムに決定するマッチメイク仕様がランダムマッチメイクです。「国内限定」「同レベルの相手限定」というように、絞り込み条件を加えることもできます。ランダムマッチメイクはローカルマッチメイクでは使用できません。
想定するアクティビティ図を 図 7-5. ランダムマッチメイクのアクティビティ図 に示します。
ランダムマッチメイク処理の説明は 7.5. 基本機能 - ランダムマッチメイク を参照してください。
「通信プレイ中のフレンドを探して合流する」というようにフレンドプレゼンス機能を利用して合流可能なセッションを選択するマッチメイク仕様がフレンド合流マッチメイクです。フレンド合流マッチメイクはインターネットマッチメイク以外では使用できません。
想定するアクティビティ図を 図 7-6. フレンド合流マッチメイクのアクティビティ図 に示します。
フレンド合流マッチメイク処理の説明は 7.11. 応用機能 - フレンド合流マッチメイク を参照してください。
「先にチームを結成し、別のチームと合流して通信プレイを行う」というようなマッチメイク仕様がチームマッチメイクです。セッション API のジョイントセッション機能を使用します。
ジョイントセッション機能はインターネットマッチメイク以外では使用できません。
想定するアクティビティ図を 図 7-7. ジョイントセッション機能を使用したチームマッチメイクのアクティビティ図 に示します。
ジョイントセッション機能の説明は 7.12. 応用機能 - ジョイントセッション機能 を参照してください。