ダッシュボード設定
はじめに
QuantumはPhotonダッシュボードから、ゲーム固有のサーバー関連の変数を追加で設定できます。
ロビープロパティ制限
最大プロパティ数:20
(3.0.2から)
プロパティ型の制限:bool
, byte
, short
, int
, long
, string
, byte[]
string
byte[]
最大長:128
(3.0.2から)
ダッシュボードプロパティ
AllowedLobbyProperties
プロパティ名 | 型 | |
---|---|
AllowedLobbyProperties | String |
マスターサーバー上のマッチメイキングのパフォーマンス低下を防ぐために、クライアントが送信できるロビープロパティのリストを設定します。このプロパティが設定されている場合、クライアントから送信されたリストに存在しないロビープロパティは除去されます。
BlockNonProtocolMessages
プロパティ名 | 型 | |
---|---|
BlockNonProtocolMessages | Boolean |
デフォルトはfalse
です。
true
に設定することを強く推奨します。
サーバーに送信されるすべての非プロトコルメッセージをキャンセルし、その際に「Blocked non-protocol message」ログを残します。これはtrue
に設定されている際のみ有効です。
BlockPlayerProperties
プロパティ名 | 型 | |
---|---|
BlockPlayerProperties | Boolean |
デフォルトはfalse
です。
true
に設定することを強く推奨します。
クライアントからのすべてのプレイヤープロパティ設定リクエストをキャンセルし、その際に「Blocked player properties」ログを残します。これはtrue
に設定されている際のみ有効です。
BlockRoomProperties
プロパティ名 | 型 | |
---|---|
BlockRoomProperties | Boolean |
デフォルトはfalse
です。
true
に設定することを強く推奨します。
プロパティ作成後にクライアントからのすべてのルームプロパティの設定をブロックします。特別なStartQuantum
ルームプロパティのみが許可されます。
注意:これはルームのIsOpen
/IsVisible
にも影響します。かわりにHideRoomAfterStartSec
/CloseRoomAfterStartSec
を使用してください。
ClientInputExceptionTolerance
プロパティ名 | 型 | |
---|---|
ClientInputExceptionTolerance | Integer |
デフォルトは2
です。
クライアントが切断されるまでに無視される入力のシリアライズエラー数を設定します。Quantum 3.0.1以前は、最初のエラー後にクライアントが切断されていました。この設定により、サーバーは不慮のネットワーク損失に対してわずかに堅牢になります。
バージョン3.0.2以降で設定可能です。
HideRoomAfterStartSec
プロパティ名 | 型 | |
---|---|
HideRoomAfterStartSec | Integer |
デフォルトは-1
(無効)です。
値を0
以上に設定すると、Quantumが開始してn
秒後にルームが公開/検索リストから削除されます。
これによって、ルームの可視性を管理し、新しいプレイヤーが進行中のゲームへ参加しないようにすることができます。
CloseRoomAfterStartSec
プロパティ名 | 型 | |
---|---|
CloseRoomAfterStartSec | Integer |
デフォルトは-1
(無効)です。
値を0
以上に設定すると、Quantumが開始してn
秒後にルームへ参加不可能になります。
ルームへ参加不可能にすることで、新しいプレイヤーの参加を防ぎます。これはゲームセッションのライフサイクルの管理に使用できます。
MaxPlayerSlots
プロパティ名 | 型 | |
---|---|
MaxPlayerSlots | Integer |
1クライアントが使用できるプレイヤースロット数を制限します。デフォルトは2
で、1クライアントはプレイヤーを2人作成できます。
このプロパティを設定することで、このAppIdで実行されているすべてのゲームの最大プレイヤースロット数が制限されます。
クライアントごとに、Webhook(CreateGame
/JoinGame
のレスポンス)から値を設定することもできます。
ServerUpdateRateMs
プロパティ名 | 型 | |
---|---|
ServerUpdateRateMs | Integer |
サーバー上のすべてのゲームに対して、サーバーの更新レートを設定します。デフォルトの更新レートは、各ゲームのSessionConfig
のUpdateFPS
になります。
設定にかかわらず、更新レートは16
~60
(ms)に丸められます。
バージョン3.0.2以降で設定可能です。
SessionConfig
プロパティ名 | 型 | |
---|---|
SessionConfig | Json |
ダッシュボードからグローバルのSessionConfig
が設定できます。クライアントが送信した設定を上書きすることで、悪意のあるプレイヤーから設定を保護します。
注意:ローカルのPhoton Serverでテストする場合、"
を使用してJSONをエスケープしてください。
StartPropertyBlockedTimeSec
プロパティ名 | 型 | |
---|---|
StartPropertyBlockedTimeSec | Integer |
デフォルトは-1
(無効)です。
値を0
以上に設定すると、ルームが作成されてからn
秒経過するまで、Quantumの開始がブロックされます。
ゲームが開始する前にプレイヤーの参加に十分な時間を設けるために使用できます。
StartPropertyForcedTimeSec
プロパティ名 | 型 | |
---|---|
StartPropertyForcedTimeSec | Integer |
デフォルトは-1
(無効)です。
値を0
以上に設定すると、ルームが作成されてからQuantumを開始するまでの最大待機秒数を指定できます。指定した時間を過ぎてもQuantumが開始していなければ、自動的にゲームが開始(ルームのStartQuantum
プロパティがtrue
に設定)されます。
ダッシュボードプロパティ(Enterprise)
ServerSimulationEnabled
プロパティ名 | 型 | |
---|---|
ServerSimulationEnabled | Boolean |
デフォルトはtrue
です。
false
に設定すると、サーバーシミュレーションが無効になります。CreateQuantumGameResponse
のWebhook(RunServerSimulation
)から明示的に設定した際に上書きされます。
ServerSimulationPercent
プロパティ名 | 型 | |
---|---|
ServerSimulationPercent | Integer |
デフォルトは100
です。
ServerSimulationEnabled
がtrue
に設定されている場合、ゲームのシミュレーションに使用される割合に使用できます。
セキュリティと最適化
Quantum 3はプラグインを保護する新しい方法としてWebhookを導入し、Quantum 2.1の設定ベースのセキュリティから脱却しています。これによって、開発者自身のバックエンドにチェックや検知の実装がしやすくなっています。
推奨設定 - セキュリティチェックリスト
- アプリケーションで
RaiseEvent()
が必要な場合のみ、BlockRoomProperties
を無効にしてください。 - アプリケーションでプレイヤープロパティが必要な場合のみ、
BlockPlayerProperties
を無効にしてください。 - ルームプロパティを使用しない場合は、
BlockRoomProperties
を有効にすることを検討してください。 - サーバーから
IsVisible
を設定したい場合は、HideRoomAfterStartSec
の設定を検討してください。 - サーバーから
IsOpen
を設定したい場合は、CloseRoomAfterStartSec
の設定を検討してください。 - クライアントで複数のプレイヤーを持たせない場合は、
MaxPlayerSlots
を1
に設定してください。 - Quantumセッションの開始タイミングをクライアントで制御する場合(例:Photonルーム内のロビー)は、
StartPropertyBlockedTimeSec
とStartPropertyForcedTimeSec
を使用したサーバータイムアウトを設定して、最終的にゲームを開始することを検討してください。
- はじめに
- ロビープロパティ制限
- ダッシュボードプロパティ
- AllowedLobbyProperties
- BlockNonProtocolMessages
- BlockPlayerProperties
- BlockRoomProperties
- ClientInputExceptionTolerance
- HideRoomAfterStartSec
- CloseRoomAfterStartSec
- MaxPlayerSlots
- ServerUpdateRateMs
- SessionConfig
- StartPropertyBlockedTimeSec
- StartPropertyForcedTimeSec
- ダッシュボードプロパティ(Enterprise)
- セキュリティと最適化
- 推奨設定 - セキュリティチェックリスト