私はしばらくの間、オンラインの2D RTSのようなゲームを作ることについて考えていました。(1試合で2-6人のプレイヤー、最大50-60ユニット、AIなし)。ここで重要なのは、ブラウザでゲームをプレイできるようにすることです。そのため、両方ともTCPソケットを使用して、フラッシュまたはJavaアプレットにする必要があります。最初は、市場への浸透とアクセスのしやすさから、完全にフラッシュに集中していました。ただし、さまざまなネットワークアプローチを確認した後、私は選択をすることができません。
私は、サーバーとすべてのクライアントがまったく同じシミュレーションを実行しているロックステップシミュレーションアプローチが本当に好きでした。アクションスクリプトであること。これがJavaの出番です。Javaクライアントとサーバーを使用すると、シミュレーション関連のコードを共有できます。これにより、開発時間を半分に短縮できる可能性があります。
しかし、その後、別のアプローチがあります。クライアントは、できるだけ長くゲームの状態を正しくシミュレーション(または外挿)しようとしますが、正しく実行する必要はありません。ある時点で、完全な状態のスナップショットを受け取ります。適宜調整してください。Flashは再び実行可能なオプションのように見えますが、「調整」部分がないため、ロックステップシミュレーションははるかに簡単に思えます。
それで私の仮定は正しいですか?何を提案しますか?