-2

ワームに似たフラッシュで構築されたシングルプレイヤーの小さなゲームがあります。マウスを動かして角度を計算し、クリックして撃ち、風に応じてショットに多かれ少なかれパワーを適用します。

このための物理演算は、actionscript で完全にプログラムされています。リアルタイムのマルチプレイヤー 1 対 1 バージョンを構築したい場合、どのソリューションが最適かを考えていました。今のところ、json 形式でデータを渡すソケット (node.js のネット モジュール) と通信するバックエンドのフラッシュとノードの小さな例をセットアップしました。これまでのところ、すべて問題ありません。とはいえ、今頭に浮かぶ特定の問題があります...

1) 弾丸のアニメーションは、クライアントのみ、サーバーのみ、または両方で処理する必要がありますか?

クライアントがすべての弾丸のアニメーションを処理する場合、ごまかすのは簡単になりますが、開発するのは簡単になります。サーバーがそれを処理する場合、アニメーションを滑らかにする機能を構築する必要があります。しかし、これは 1 対 1 の単純なゲームであり、無料で楽しむためだけのものであるため、フラッシュで弾丸を動かし続け、フラッシュで衝突を検出し、対戦相手に当たった場合はサーバーに通知する必要がありますか? または、他にできることはありますか?

4

1 に答える 1

1

悪用される可能性のあるロジックは、サーバー上で実行する必要があります。視覚化は悪用できないロジックであり、悪用されたとしても、他のプレーヤーには影響しません。クライアントで実行する必要があります。

また、すべてのショットのデータを受信するときは、それが有効かどうかを確認する必要があります(たとえば、パワーが大きすぎるかどうか、またはプレーヤーが弾丸を使い果たしたかどうか)。これは、悪用できる種類のロジックです。

また、 FlashはTCPソケットをサポートしており、Nodeもサポートしています。要求/応答アーキテクチャを作成する代わりに、ソケットを使用する方がはるかに効果的です。

もう1つのアドバイスとして、 HTML5 CanvasWebSocketsProcessing.jsなどのテクノロジーを使用すると、すべてのデバイスのすべてのユーザーがアプリケーションを再生できるようになるため、HTMLJavaScriptでアプリケーションを構築することを検討する必要があります。

于 2013-02-25T10:57:27.550 に答える