Photon Unity Networking  v1.84
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]
 参加する、または退室するプレーヤーへのルームイベントをスキップするようサーバに指示します。 More...
 
bool PublishUserId [get, set]
 プレーヤーのUserIdがルームに「公開」されるかどうかを定義します。プレイヤーが別のゲームを一緒にプレイしたい場合、FindFriendsに役立ちます。 More...
 
bool DeleteNullProperties [get, set]
 任意で、nullが値として割り当てられるとプロパティが削除されます。デフォルトはoff/falseです。 More...
 
bool isVisible [get, set]
 
bool isOpen [get, set]
 
byte maxPlayers [get, set]
 
bool cleanupCacheOnLeave [get, set]
 
Hashtable customRoomProperties [get, set]
 
string[] customRoomPropertiesForLobby [get, set]
 
string[] plugins [get, set]
 
bool suppressRoomEvents [get]
 
bool publishUserId [get, set]
 

Detailed Description

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

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

Member Data Documentation

Hashtable RoomOptions.CustomRoomProperties

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

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

string [] RoomOptions.CustomRoomPropertiesForLobby = new string[0]

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

ロビーにリストされるカスタムルームのプロパティを定義します。 注意して使用してください。マッチメイキングやユーザ情報にカスタムプロパティが不可欠な場合を除き、 ロビー内のクライアントにトラフィックや遅延が発生するためロビーには送信すべきではありません。

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

int RoomOptions.EmptyRoomTtl

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

byte RoomOptions.MaxPlayers

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

int RoomOptions.PlayerTtl

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

string [] RoomOptions.Plugins

サーバに予想されるプラグイン設定を通知します。

エラーコードPluginMismatch 32757(0x7FFF - 10)を返すプラグインミスマッチの場合、オペレーションは失敗します。 string[]{}を設定すると、クライアントはプラグインの設定を期待しません。 注意:下位互換性のために、nullは如何なるチェックを省略します。

Property Documentation

bool RoomOptions.CleanupCacheOnLeave
getset

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

これは、プレイヤーがルームにアイテムを置くことができず、完全に消えてしまうルームでは理にかなっています。 これを無効にすると、ルームが無期限に使用されていると、イベント履歴の読み込みに時間がかかりすぎます。 デフォルト:true。退室するユーザのキャッシュとプロパティを消去します。

bool RoomOptions.cleanupCacheOnLeave
getset
Hashtable RoomOptions.customRoomProperties
getset
string [] RoomOptions.customRoomPropertiesForLobby
getset
bool RoomOptions.DeleteNullProperties
getset

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

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

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

bool RoomOptions.IsOpen
getset

このルームが参加可能かどうかを定義します。

ルームが閉まっている場合、誰も参加することができません。例として、4人のプレーヤーのうち3人がゲームプレイを早期に開始し、 ゲーム中に他のプレイヤーが参加できないようにする際に使用できます。 ルームはまだロビーにリストすることができます(ロビーの可視性を制御するためにIsVisibleを設定してください)。

bool RoomOptions.isOpen
getset
bool RoomOptions.IsVisible
getset

このルームがロビーに登録されているかどうかを定義します。そうでない場合は、ランダムに入室されません。

見えないルームは、ロビーでクライアントに送信されたルームリストから除外されます。 目に見えないルームは名前で入室できますが、ランダムなマッチメイキングからは除外されます。

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

bool RoomOptions.isVisible
getset
byte RoomOptions.maxPlayers
getset
string [] RoomOptions.plugins
getset
bool RoomOptions.PublishUserId
getset

プレーヤーのUserIdがルームに「公開」されるかどうかを定義します。プレイヤーが別のゲームを一緒にプレイしたい場合、FindFriendsに役立ちます。

これをtrueに設定すると、PhotonはそのルームのプレーヤーのUserIdを公開します。 その場合、PhotonPlayer.UserIdを使用して、任意のプレーヤーのuserIDにアクセスできます。 これは、FindFriendsとルームのスロットを予約するために "期待ユーザ"を設定するのに便利です(PhotonNetwork.JoinRoomなど参照)。

bool RoomOptions.publishUserId
getset
bool RoomOptions.SuppressRoomEvents
get

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

これを使用すると、クライアントはルームの他のプレイヤーに気づかれなくなります。 プレーヤーを更新するサーバロジックがある場合は、トラフィックを節約できます クライアントのユーザビリティを制限する可能性もあります。

PUNはこれを使うと壊れてしまいますので、設定できません。

bool RoomOptions.suppressRoomEvents
get