2012-04-20 9 views
0

私はこれについていくつかの古い話題を取り上げていますが、Webコンテンツを作成するための新しいテクニックがたくさんあるので、もう一度聞かなくてはなりません。リアルタイムグラフィックブラウザMMOゲーム、言語オプション?

私の背景: 私はxhtml/css/javascript/php/mysqlについてよく知っています。私は、簡単に製品を追加/変更するための包括的なデータベースとCMSを含む最初からWebショップを作るのに問題はありません。私はPHPとmysqlを使ってデータを格納するのがとても快適です。部族戦争のクローンを試みても私を恐れることはありません。私はまた、C#/ xnaといくつかのゲームを作ったが、私はまだ初心者だと思っている。私はフラッシュで手を洗って、これがおそらく私が望む結果を得るために使用できると感じています。

私のプロジェクト: 2D mmo戦術的なシューティングゲーム。プレイヤーはかなり大きな地図を移動し、他のユーザーの位置更新を非常に迅速に取得できるはずです。ゲームにはたくさんのマップがあり、ほとんどのマップは数人のプレイヤーしか処理できません。ただし、ハブマップや関心マップは、遅れなくても100人以上のプレーヤーを処理できる必要があります。

戦闘がマップ上でリアルタイムに解決できるのはすばらしいことですが、プレイヤーが戦闘に参加するために入ることができるインスタンスマップを開くようにこれを解決する他の方法も考えていました。私はまた、戦術に関するより戦術的なターンベースのアプローチを検討していますが、それはリアルタイム戦闘のプロとコンです。

合計: 私はグラフィカルな実装を除いてすべてを管理できると確信しています。 Mysqlはローカルプレイヤーのポジションを数ミリ秒で問い合わせるのに苦労してはいけません。

私は、私が欲しいものをグラフィックに似ているDeeppolisというゲームに乗っています。私はまだダウンロード可能なクライアントとしてこれを作ることを検討していますが、ブラウザベースのゲームは、より多くの人々を引き付ける傾向があるので、私はこのブラウザを行うつもりなら、私のオプションは何か非常に興味があります。

この壁紙を読んでくれてありがとう:D。

+4

[OK]を、質問は何ですか? –

+0

現時点でFlashが最適です。 AIRを使用してラップして、ほとんどまたはまったく変更を加えずにダウンロード可能なクライアントにすることもできます。 – Torious

+0

これはあなたが探しているものであるかどうかは完全には分かりませんが、興味深い選択かもしれません:http://meteor.com/ mongoDBをデータストアとして使用するので、かなり高速な読み書きが必要ですすべての参加者。 – kand

答えて

1

これはリアルタイムであればプレイヤーの位置を取得するために "mysqlを照会"したくないです。すべてのクライアントが接続するソケットサーバーを作成する必要があります。ソケットサーバは、接続されたすべてのクライアントの加入者リストをメモリ内に保持する。このようにして、あるクライアントがソケットサーバーにメッセージを送信すると、ソケットサーバーは必要なデータを必要なクライアントにすぐにプッシュできます。あなたはまた、あなたのソケットサーバのメモリにゲーム状態のモデルを保持して、不正な使用などを防ぐことができます。長期間の保存にはデータベースを使用し、その他のものはすべてメモリに保存します。共有サーバーはソケットサーバーへのアクセスを許可しない可能性が高いので、プライベートサーバーが必要です。

クライアント側:JavaScriptの& socket.io(ソケットクライアント)

サーバ側:JavaScriptの& node.js(ソケットサーバ)

+0

は2008年にこのリアルタイムのMMOを作りました:http://www.tenthtower.com/ – dqhendricks

+0

ありがとう、私はこれを調べます。 javascriptはFlash間でうまく実装されていますか? – Madmenyo

+0

@MennoGouwなぜあなたは両方を使用しますか?フラッシュはこのようなものを作るためにjavascriptを必要とせず、javascriptはこのようなものを作るためにsocket.ioだけを必要とします。 – dqhendricks

関連する問題