0

Android用のターン制ゲームを開発しましたが、マルチプレイヤーゲームを追加したいと思います。「skiller」のようなプロバイダーは使いたくないので、自分でサーバーを開発したいと思います。

私は専用サーバーを持っていませんが、「1と1」でホスティングしているphpを持っています。このホスティングをゲームサーバーのように使用するのは良い考えでしょうか?私の考えは、私のAndroidゲームはX秒ごとにサーバーをポーリングして、対戦相手の移動を待つというものです。

あなたはそれについてどう思いますか?

4

4 に答える 4

1

私はそれらをホスティングに使用することを検討しました、そして私はそれらのサポートについて素晴らしいことを聞きました。ただし、(基本レベルの共有ホスティングサービスの代わりに)専用サーバーを使用しない限り、ゲームサーバーをサポートするために利用できるリソースがない可能性があります。

サーバー構成を自分で処理できる場合、またはサーバー構成の詳細な手順に精通している場合は、月額$20のlinode.com基本プランを使用することを強くお勧めします。私はそれをサイトホスティングに使用していますが、パフォーマンスと柔軟性の点で大きな違いがあります。また、slicehost、rackspace、Amazon S3の間でパフォーマンスベンチマークの比較が行われ、それらすべて(特にAmazon)が水から吹き飛ばされました。ベンチマークは2〜3年前のものですが、それでもかなりわかりやすいものです。

Linodeはあなたがサーバーで法律の範囲内であなたが望むことを何でもすることを可能にします。したがって、アダルトサイトをホストしたい場合は、問題はありません。彼らはおそらくスパムサーバーのセットアップやそのような怪しげなことで問題を抱えているでしょう。しかし、彼らはそれが思われる他のすべてのものでクールです。さらに、それらはおそらくそこにある最も手頃なオプションです。

APEサーバー(AJAXプッシュエンジン)の背後にあるテクノロジーを調べてみてください。ほぼすべてのサーバーエンド言語とフロントエンドで動作する高効率のチャットシステム。

http://www.ape-project.org/

于 2012-04-23T19:53:00.750 に答える
0

あなたのゲームはサーバーにプルリクエストを要求しているので、これは私がそれを行う方法です。1つのステップをスキップできます。それはMySQLサーバーに尋ねています。だからここに私がそれをする方法があります。

html5ゲームのように聞こえますが、ユーザーの電話でCookieを設定できることを意味します。JSONまたはARRAY文字列を格納するCookieまたはjavascript変数さえあります。これにより、1または0をPHPスクリプトにプッシュして、ユーザーに送信したり、.txtファイルとして保存したりできるようになります。mysqlからのデータのフェッチは遅く、400人のユーザーがいる場合はすべて5秒間隔で実行すると、ほとんどの共有サーバーが停止します。これらのサーバーは、必要な処理を実行するのに十分な強度ではありません。

予算が少ない場合は、このオプションを検討することをお勧めします。データをどこかに保存せずにこれを実行できるとは思えません。

于 2012-04-24T02:26:20.327 に答える
0

プログラミング言語固有の議論に耳を傾けるべきではありません。ほとんどの場合、それらは個人的な好みです。もちろん、あなたがやりたいことはPHPで可能です。あなたはすべての言語で良いプログラミングと悪いプログラミングを行うことができます。ターン制のゲームの場合、PHPの使用方法を知っていれば、PHPで十分です。最も使い慣れたプログラミング言語を使用すれば、問題はありません。

さらに重要なこと:ゲームを成功させるには、1und1はローカライズされており、オンデマンドでスケーラブルではないため、「成功」の方法を処理できませんあなたがお金を稼いだり広げたりしたいのなら、あなたは本当にいくつかの低額を投資してアマゾンのインフラストラクチャに行くことを恐れるべきではありません。少し学ぶ必要がありますが、それだけの価値はあります。

ほとんどのIDE(Zend Studio、PHP Stormなど)は、すでに適切に統合されています。共有ホスティング業者やローカライズされたストレージホスティング業者は、アプリが有名になると世界的な需要を処理できなくなるため、希望するものではありません。また、セキュリティ上の問題が発生します。ゲームが成功することを本当に期待している場合は、VPSでさえほぼすぐに限界に達します。

最初に1und1を使用してゲームを成長させ、必要に応じてより良いソリューションに進むことができます。しかし、需要が予想よりもはるかに高かったため、かなりの数のゲームがちょうど死にました。これについての最悪のことは、陶酔感は少ないがより現実的に考えなければならないことです。

要約すると、最も使いやすい言語を使用してください。自分のアイデアを信じる場合は、グローバル市場に対応するために少額の投資を恐れず、できるだけ少ないデータ転送で独自のプロトコルを作成し、さらにポーリングしてください。多くの場合、「x秒」よりも長くなります。これは、対戦相手を待つ1秒が3日のように感じるためです。そして、あなたはあなたの道を進んでいます。

順調です!完了したらリンクを投稿してください:)

于 2012-04-24T03:30:34.490 に答える
-1

Firebaseメッセージングサービスを使用して同じものを実装できます。さらに、1つのWebサーバー(PHPなど)が必要です。

  1. Androidコードを使用して、WebサーバーのPHPファイルにリクエストを送信します。
  2. このウェブサーバーから、サブスクライブしたトピックのすべてのデバイスに配信されるFirebaseMessagingの形式でブロードキャストメッセージを送信できます。
  3. このFCMをリッスンするすべてのAndroidデバイスが応答できます(コードで設定されたパラメーターによって異なります)。
于 2020-12-03T08:57:15.723 に答える