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を勉強していました。しかし、初めてすぐいきなり絶望的な状況になってしまったので、今のプロジェクトはいじりつつも、新しく対応できる策や、ゲームシステムを考えていきたいと思います。
こちらの記事でさらに詳しく書きました。