グーグルアドセンス

広告

Photon Cloudで作れるゲーム・作れないゲーム

Photon Cloudでオンラインゲームを作るには制限があり、作れるゲーム、作れないゲームがあります。
通信できる制限の1つに同時接続数がありますが、料金プランにて増やすことができます。

同時接続数の制約

無料で使えるのは20CCUで同時に20人までは接続できることです。
しかし、実は制約はこれだけでなく、1ルームごとの秒間メッセージ数の制約があります。

1ルームごとの秒間メッセージ数の制約

Photon Cloudには、1ルームごとに毎秒500メッセージという制約が設けられています。ここでカウントされるメッセージ数とは、サーバーが送信したメッセージ数と受信したメッセージ数の合計です。

例えば参加プレイヤー数が4人のゲームで、あるプレイヤーが他3人のプレイヤーにメッセージを送る場合、サーバー側では1メッセージ受信と3メッセージ送信で4メッセージ分がカウントされます。

1ルームの秒間メッセージ数はおよそ、1人のプレイヤーが1秒間に送信するメッセージ数 * ルームへの参加プレイヤー数の2乗で求めることができ、この数を500以下に抑えなければなりません。

この制約は有料プランでも変わることはなく、毎秒500メッセージを超えるゲームを作りたい場合は、自前でPhoton Serverを立てて運用することになります。

PUN2で始めるオンラインゲーム制作【その1】

つまり同時接続100CCUを契約したからといって、1ルームに100人のゲームが作れるわけではないということです。

上記の1Room毎秒500メッセージの制限が大きく100人集めようと思えば集められるけど1秒間に送信できるメッセージは限られます。
(限度を超えたRoomは勝手にRoomから切断されていきます)

100人入ったRoomで一人が全員にメッセージを送ると
out 1
in 1 
となりますがRoom全体で考えると1送信、99受信で1回で100msgということになります。 
これで100人分を処理できるゲームならば問題はないかと思いますが、そうそううまくはいかないと思います。

また、全員が位置の同期を行うと
out 100
in 99*100
ということになり全プレイヤーの同期はこのメッセージ数ではとても難しいことがわかります。

最終的にはネットワークカリングとかをがんばってメッセージを減らす努力は必要かと思いますが、どう考えても大規模なMMORPGなどは作るのは無理です。←やろうと思ってた…

今後どうするかについて

私としては中規模のMMOアクションRPGを制作するためにPhothon PUN2を勉強していました。しかし、初めてすぐいきなり絶望的な状況になってしまったので、今のプロジェクトはいじりつつも、新しく対応できる策や、ゲームシステムを考えていきたいと思います。

Unity

Posted by ジェイ