3

そのため、ゲーム内のリソースを増やしてアカウントを改善するために複数のアカウントを作成している人々に問題が発生しています。

したがって、私のジレンマは、多くのユーザーがプロキシまたは NATd 情報を使用するため、IP ごとにユーザーが 1 人しかいない場合、一部の正当なユーザーが禁止されることです。

コンピューターに固有の一意の識別子を取得する方法 (Javascript と PHP を使用) はありますか (ハードウェアを変更しないと、コンピューターのハードウェアを変更すると、おそらく識別子が変更されます)。

どんなアイデアやコメントでも大歓迎です


(以下は、ポールからの回答から復活しましたが、場違いで別の人によって削除されました。)

ブラウザベースのゲームなので、クライアントを大きく変更することはできません。hwid を取得することは可能です。しかし、JS や PHP ではどうでしょうか。

転送を防止するためのタイマーと制限を追加することはできますが、完全に停止するわけではなく、IP 例外について電子メールで送信するオプションがあります。しかし、それは遅くて面倒です。複数のアカウントが同じコンピューターからログインできないが、同じIPからログインできるようにする特定のコンピューター(IPベースではない)の特定のIDまたは識別子を生成する決定的なものがあるかどうか疑問に思っています

4

5 に答える 5

1

おそらく別の IP とクライアント上の別のアカウントについて話しているため、クローン アカウントを簡単に見つけることはできません。

さらに2つのヒューリスティックとゲームプレイのオプションを利用できます

  1. 前に (@dqhendricks によって) 提案されたように、リソースを分割し、共有などを実装して、新しいアカウントごとに他のアカウントを簡単に支援できないようにします。最初に他のアカウントを見つけるのを困難/不可能にする、共有可能なリソースをより高いレベルの機能にするなど。欠点は、これがゲームプレイを変えることであり、望ましいものである必要はありません.
  2. 動作に対してヒューリスティックを実行できます。望ましくない特定の動作が存在する可能性があります: 他の 1 つのアカウントとのやり取りのみなど。いくつかの変数などを微調整することはできますが、疑わしい動作を簡単に確認できます。ある種の「バランス」計算を行います。ほとんどのゲーム内の相互作用には、ある種のバランスがあります。もちろん、より優れたプレーヤーはより多くのことを知っているため、良い取引を行う可能性があります。しかし、1 人のプレイヤーが与えるだけで決して受け取らない場合、実際にプレイすることなく「助けている」ことになります。つまり、それはクローンであることを意味する場合があります。

私に関する限り、この場合、IPアドレスやクライアント情報($ _SERVER)などのすべては価値がありません..

于 2011-05-22T07:31:30.660 に答える
0

アカウントのなりすまし/重複を防止する (すべての正当なアカウントが確実に機能するようにする) ことは、非常に難しい作業です。他の人が説明した理由からです。複数のアカウントが同時に使用されないようにするだけでなく、複数のアカウントが同時に使用されないようにする必要があります

核心的な問題は、アカウントがどこから接続されているかを判断することではなく、ユーザーがアカウントを 1 つしか持っていないことを信頼できることです。この目的を達成するための唯一の「現実的な」解決策は、この種の機能を既に提供しているシステムを使用することです。クレジット カードやペイパル アカウントなどの情報の;-) つまり、誰かが新しいアカウントを作成できないようにするだけです (ただし、アカウントは複数のエイリアス/プロファイルを持つことができますが、これらは簡単に追跡できます)。 .

(2 人のユーザーが同じマシンで 2 つの異なるアカウントを持っている可能性があることも考慮してください。)

ハッピーコーディング。

于 2011-05-22T07:30:02.457 に答える
0

{共有可能なリソース} = {合計リソース} - MAX(({開始リソース} - {使用済みリソース}), 0)

開始しないリソースのみを共有可能にするか、リソースの共有をレベル x まで得られない能力にするかもしれません。

于 2011-05-22T04:56:28.627 に答える
0

同じアカウント (ユーザー名/パスワード) での複数のログインを防ぐことができます。

問題が、多くの異なる電子メールアドレスなどで複数のアカウントを作成し、新しいユーザー名とパスワードを作成することである場合、たとえば、一意のハードウェア ID を使用する Cookie を使用してそれを行うことができます。この hwid に基づいて、一度に 1 つのアカウントがアクティブになります。ハードウェアが変更されても、相対的であるため問題ありません。

最初のログインの HW ID が 1234 であるかどうかを明確にするために、2 回目のログインで同じ hwid を生成します。同じ hwid の Cookie またはデータベース (保存場所は関係ありません) を確認すると、既にログインしていることがわかります。

ハードウェアが変更されても、どちらも同じ hwid を生成するため問題ありません。

彼らが 2 台のコンピューターを使用している場合、ハードウェア ID は異なりますが、これは機能します。

于 2011-05-22T04:17:57.850 に答える
-1

オンラインゲームサーバーも運営しています。ジレマを防ぐには、ゲーム クライアントを変更して MAC アドレスを読み取るか、コンピューターごとに 1 つのアカウントのみを許可します。または、IP をログに記録し、リソースがその IP に 2 回だけ与えられるようにします。3 番目のオプション: 同じ IP アドレスからのマテリアルの転送を許可しない 4 番目のオプション: リソースの転送にタイマーを追加し、10 分間のゲームプレイを待ってから、他のユーザーが取得できるようにアイテムを取り除くなどの操作を実行できるようにします

于 2011-05-22T04:18:29.537 に答える