3

マルチプレイヤー ゲームをプレイするための P2P システム (ファイル用の BitTorrent など) を作成する方法について、私は考えていました。アイデアは、マルチプレイヤー アーキテクチャから従来のサーバーを削除することです。通信を開始したり、世界の最新情報を送信したりするために何らかのサーバーが必要になることは理解していますが、サーバーの負荷と帯域幅の圧力をどのように軽減するかについて興味があります.

ちなみに、これは 2 人のプレイヤーが参加するチェッカー ゲームから 30 人以上のプレイヤーがいる FPS まで、あらゆるサイズのゲームに当てはまります。

私はクレイジーですか?

4

5 に答える 5

9

大きな問題は、帯域幅や遅延、またはゲーム状態への変更の配布ではありません。大きな問題は信頼です。

私がモンスターを倒したと言ったら、どうやって私が実際に倒したかを確認しますか? 私が実際にレベル 45 であることをどのように確認しますか? 私が世界中にテレポートしていないことをどのように確認しますか? すべての詳細についてサーバーをチェックすることはできないことに注意してください。

プレイヤーを監視するプレイヤーが必要ですが、それでも彼らは協力してチートを行う可能性があります。信頼できる p2p MMO をすぐに設計する人がいるとは思えません。

于 2009-02-28T02:08:36.577 に答える
1

あなたの質問には、考慮すべきことがたくさんあります。

1) 分散マスター - 誰がゲームを開始しますか? 最初のノードはどこにありますか? 全員が同時に P2P クライアントを閉じることにした場合はどうなりますか? 世界は終わりますか?

2) 分散ルール - 102235 人中 77 人のプレイヤーが x,y,z でモンスターを倒したことを誰が確認できますか? 「最高司令官」なしでのハッキング/不正行為には大きな問題があります...

3) 待ち時間 - クライアントがすべてのデータを受信したのはいつですか? インターネットが故障したら?または、LAN ゲームで、ハードドライブが壊れたらどうなるでしょうか。

P2P の考え方は興味深いと思いますが、すべての大会と同様に、ルールを処理できる「ジャッジ」が必要になると思います。ロットは考えます。

ある種のグリッドコンピューティングがそれを行う方法かもしれないと思いますが、グリッド内の一部が脱落したり、世界をレンダリングして結果を返すのに遅すぎたりすると、ゲーム全体が「遅れる」ことになります.. . = 誰にとってもひどいゲーム... これは、マスター サーバーを使用する多くの FPS ゲームで既に見られます。ネットワーク プロトコルが遅延を適切に処理しないと、走っている人を攻撃するのが難しくなったり、どこからともなく現れて顔を撃ったりします。

高価な解決策は、一部のデータをプレイヤーの近くに置く「サブサーバー」(プロキシ ゲーム サーバー) を使用することです。これには、世界中の多くのサーバーファームにアクセスする必要があると思います(ブリザードがWOWで行うように)。または、帯域幅が不足したときに「サブサーバー」にアップグレードするある種のインテリジェントな「P2Pホスト」を発明する必要があります。十分に大きく、十分なプレイヤーが近くにいます(常にその観点からラグをチェックしています...)...これが可能だったとしましょう..このサブサーバーとメインゲームループの間の線がグローバルに壊れている場合はどうなりますかまた?

笑...これは続くかもしれません...それはますますインターネットの一般的な問題のように聞こえます:-)

ハッピーコーディング... !

于 2009-08-19T11:47:40.840 に答える
0

これはおそらく理論上は可能だと思いますが、まだ遠い道のりです。

他の投稿で述べたように、近くにいる他のプレイヤーへの更新のみを保証することで、レイテンシを低く抑えることができます. これは、分散型ゲームで長年行われてきました。

複数のノードに各データの責任を負わせることで、データ損失を許容できるレベルに抑えることができます。

信頼の問題に関しては、プレイヤーが別のプレイヤーに「挑戦」して不正行為を暴くことができるプロトコルを持つことは可能です。つまり、チャレンジャーは他のプレイヤーの計算の一部を複製し、結果を比較するように求めます。この種のことを行う暗号化プロトコルはすでにありますが、詳細や実際に実現可能かどうかはわかりません。

私が見ている本当の問題は、システムなどを開発する理由がほとんどないことです。コストは高く、複雑さが増しますが、ゲーム体験 (製品) は大幅に改善されません。お金を節約する活動が実行可能であるためには、費用以上のお金を節約する必要があります。

于 2009-08-19T12:07:07.697 に答える
0

私は確かに専門家ではありませんが、私には少しクレイジーに聞こえます。私の経験では、帯域幅とパフォーマンスのために専用のゲーム サーバーが必要です。P2P では、これらの両方が失われます。私の意見では、P2P はいくつかの点で優れています。ファイルの配布と調査はその中にあります。ただし、これら 2 つのことはリアルタイム データを必要としません。大規模なマルチプレイヤー ゲームの世界がある場合は、おそらく P2P を使用してゲーム ファイルを配布し、さらには計算処理をオフロードすることもできます。

可能性はあると思いますが、潜在的に強力ではありますが、その数は限られているようです.

于 2009-02-28T01:32:58.597 に答える