Photon Unity Networking 2  v2.1
English | 日本語 | 한국
Public Attributes | Properties | List of all members
RoomOptions Class Reference

ルームを作成するときに必要な一般的なルームプロパティをまとめます。詳細については、個々のエントリをお読みください。 More...

Public Attributes

byte MaxPlayers
 いつでもルームにいることができるプレーヤーの最大数。0は「制限なし」を意味します。 More...
 
int PlayerTtl
 ルームのアクターの生存時間(TTL)。クライアントが切断すると、このアクターは最初に非アクティブになり、このタイムアウト後に削除されます。ミリ秒単位。 More...
 
int EmptyRoomTtl
 最後のプレイヤーが退室したときのルームの生存時間(TTL)。プレイヤーがすぐに再入室する場合に備えて、メモリ内にスペースを確保します。ミリ秒単位。 More...
 
Hashtable CustomRoomProperties
 設定するルームのカスタムプロパティ。文字列キーを使用してください! More...
 
string[] CustomRoomPropertiesForLobby = new string[0]
 ロビーにリストされるカスタムルームプロパティを定義します。 More...
 
string[] Plugins
 予想されるプラグインのセットアップをサーバーに通知します。 More...
 

Properties

bool IsVisible [get, set]
 このルームがロビーにリストされるかどうかを定義します。そうでない場合は、ランダムに参加されません。 More...
 
bool IsOpen [get, set]
 このルームに参加できるかどうかを定義します。 More...
 
bool CleanupCacheOnLeave [get, set]
 ユーザーが退室するときに、ルームからユーザーのイベントとプロパティを削除します。 More...
 
bool SuppressRoomEvents [get, set]
 プレイヤーの参加と退室のためにルームイベントをスキップするようサーバーに指示します。 More...
 
bool PublishUserId [get, set]
 プレイヤーのユーザーIDがルームで「公開」されるかどうかを定義します。プレイヤー同士が一緒に別のゲームをプレイしたい場合、相手を見つけるのに便利です。 More...
 
bool DeleteNullProperties [get, set]
 オプションで、nullが値として割り当てられると、プロパティが削除されます。デフォルトはoff/falseです。 More...
 
bool BroadcastPropsChangeToAll [get, set]
 デフォルトでは、プロパティの変更は、それらが設定されているクライアントに送り返され、プロパティが同時に設定された場合の非同期化を回避します。 More...
 

Detailed Description

ルームを作成するときに必要な一般的なルームプロパティをまとめます。詳細については、個々のエントリをお読みください。

これは、Roomクラスのフィールドに直接マップされます。

Member Data Documentation

Hashtable CustomRoomProperties

設定するルームのカスタムプロパティ。文字列キーを使用してください!

カスタムルームプロパティは、ゲームのセットアップを定義するために必要なキーと値です。 キーは短いほど良いです。 例:Map、Mode(Mapで使用する場合は「m」)、TileSet(「t」にすることができます)。

string [] CustomRoomPropertiesForLobby = new string[0]

ロビーにリストされるカスタムルームプロパティを定義します。

ロビーにいるクライアントが利用できるカスタムルームプロパティに名前を付けます。 注意して使用してください。 マッチメイキングまたはユーザー情報にカスタムプロパティが不可欠でない限り、ロビーに送信しないでください。 これにより、ロビーのクライアントにトラフィックと遅延が発生します。

デフォルト:カスタムプロパティはロビーに送信されません。

int EmptyRoomTtl

最後のプレイヤーが退室したときのルームの生存時間(TTL)。プレイヤーがすぐに再入室する場合に備えて、メモリ内にスペースを確保します。ミリ秒単位。

byte MaxPlayers

いつでもルームにいることができるプレーヤーの最大数。0は「制限なし」を意味します。

int PlayerTtl

ルームのアクターの生存時間(TTL)。クライアントが切断すると、このアクターは最初に非アクティブになり、このタイムアウト後に削除されます。ミリ秒単位。

string [] Plugins

予想されるプラグインのセットアップをサーバーに通知します。

プラグインの不一致がエラーコードPluginMismatch 32757(0x7FFF - 10)を返す場合、操作は失敗します。 string[]{}を設定すると、クライアントはプラグインのセットアップを期待しなくなります。 注:後方互換性のため、nullはチェックを省略します。

Property Documentation

bool BroadcastPropsChangeToAll
getset

デフォルトでは、プロパティの変更は、それらが設定されているクライアントに送り返され、プロパティが同時に設定された場合の非同期化を回避します。

このオプションは、このシナリオを修正するためにデフォルトで有効になっています。

1) サーバーでは、ルームプロパティABCが値FOOに設定され、プロパティが変更されたことを通知するすべてのクライアントへの通知がトリガーされます。 2) その通知が送信されている間、クライアントはABCプロパティを値BARに設定します。 3) クライアントはサーバーから通知を受け取り、ABCのローカルコピーをFOOに変更します。 4) サーバーは設定操作を受信し、ABCの公式値をBARに変更しますが、設定操作を送信したクライアントに値が現在BARであることを通知しません。

このオプションを使用しない場合、値をBARに設定したクライアントは、サーバーから公式コピーがBARに更新されたことを認識しないため、値がFOOのままになります。

bool CleanupCacheOnLeave
getset

ユーザーが退室するときに、ルームからユーザーのイベントとプロパティを削除します。

これは、プレイヤーがルームにアイテムを置くことができず、完全に消えるルームにいるときに意味があります。 これを無効にすると、ルームが無期限に使用され続けると、イベント履歴が長くなりすぎて読み込めなくなる可能性があります。 デフォルト:true。退室するユーザーのキャッシュやプロパティをクリーンアップします。

bool DeleteNullProperties
getset

オプションで、nullが値として割り当てられると、プロパティが削除されます。デフォルトはoff/falseです。

Op SetPropertiesがキーの値をnullに設定している場合、サーバーとクライアントはカスタムプロパティからキー/値を削除する必要があります。 デフォルトでは、サーバーはキー(およびnull値)を保持し、それらを参加プレイヤーに送信します。

重要:SetPropertiesが「ブロードキャスト」を行う場合にのみ、変更(キー、値= null)がクライアントに送信され、それに応じて更新されます。 これは、ルームおよびアクター/プレーヤーのカスタムプロパティに適用されます。

bool IsOpen
getset

このルームに参加できるかどうかを定義します。

ルームが閉じられている場合、プレイヤーは参加できません。例えば、4人のうち3人が ゲームプレイを早期に開始し、ゲーム中に他のプレイヤーに参加させたくない場合。 ルームは引き続きロビーにリストできます(isVisibleを設定してロビーの可視性を制御します)。

bool IsVisible
getset

このルームがロビーにリストされるかどうかを定義します。そうでない場合は、ランダムに参加されません。

表示されていないルームは、ロビーでクライアントに送信されるルームリストから除外されます。 非表示のルームには名前で参加できますが、ランダムなマッチメイキングからは除外されます。

これを使用して、ルームを「非表示」にし、「プライベートルーム」をシミュレートします。プレイヤーはルーム名を交換し、 他の人が参加しないように非表示にできます。

bool PublishUserId
getset

プレイヤーのユーザーIDがルームで「公開」されるかどうかを定義します。プレイヤー同士が一緒に別のゲームをプレイしたい場合、相手を見つけるのに便利です。

これをtrueに設定すると、PhotonはそのルームのプレイヤーのユーザーIDを公開します。 その場合、PhotonPlayer.userIdを使用して、プレイヤーのユーザーIDにアクセスできます。 これは、FindFriendsや、ルームのスロットを予約するために「予想ユーザー」を設定するのに役立ちます。

bool SuppressRoomEvents
getset

プレイヤーの参加と退室のためにルームイベントをスキップするようサーバーに指示します。

これを使用すると、クライアントはルームにいる他のプレイヤーに気付かないようになります。 プレイヤーを更新するサーバーロジックがある場合、トラフィックを節約できますが、 クライアントの使いやすさも制限されます。