2017-03-16 6 views
0

私は学校プロジェクトとして簡単なオンラインゲームを作っています。 基本的には、最後のプレイヤーが勝つ古典的なスネークゲームです。簡単なリアルタイムオンラインゲームのサーバーアーキテクチャ

クライアントが矢印キーを押すと、サーバーに通知され、スネークの方向が変更されます。

私は、クライアントがそれぞれのヘビの現在の方向についてどのように通知されるべきかについて考えています。どちらが良い選択だと思いますか?

選択肢A:サーバーは、ヘビの現在の方向をいくつかのデータ構造に格納します。クライアントは各ティックの指示を要求します。

選択肢B:各クライアントは、メインサーバーに加えて独自のサーバーをホストします。クライアントがキーを押すと、メインサーバーはそれを受け取り、それを各クライアントサーバーにブロードキャストします。

私は、選択肢Aはシンプルで、追加のサーバーは必要ありませんが、選択肢Bはゲームの状態を定期的に要求する必要性を回避すると考えています。

答えて

0

私はゲームロジックを設計してから、ゲームロジックの実装に取り​​掛かります。

は、私はそこに、私はプレイエリアのグリッドになります2人の選手がいると多次元マトリックスの一種でヘビのポジションを持っているし、選手たちの間の周りにそれらを渡す検討し、この

のようなものを開始するだろうと思う

サーバアーキテクチャに来

私はクライアントとしてサーバーと他のスレッドを実行している1つのデーモンスレッドとしてそれをやって示唆していると、各クライアントは、このhttp://pirate.shu.edu/~wachsmut/Teaching/CSAS2214/Virtual/Lectures/chat-client-server.html

ようになり、独自のロジック

を処理します

ハッピーコーディング!

+0

答えのためのThx。ゲームはすでにオフラインバージョンとしてプログラムされています。私が周りを回る必要がある唯一のデータは、各ヘビの方向の変化であり、そこから位置を補間することができます。 – saldukoo