跟踪在线游戏中的计算机

发布于 2024-11-09 02:58:44 字数 484 浏览 0 评论 0原文

所以我遇到了一个问题,人们创建多个帐户,以便在游戏中使用更多资源来使帐户更好。

所以我的困境是,许多用户通过代理或 NATd 信息,因此如果我每个 ip 只有 1 个用户,一些合法用户将被禁止。

有没有一种方法(使用 Javascript 和 PHP)来获取特定于计算机的 uniq 标识符(无需更改硬件,计算机硬件更改可能会更改标识符)。

任何想法或评论都会得到极大的重视


(以下内容是从 Paul 的回复中恢复的,但因不合适而被另一个人删除。)

我无法对客户端进行太多更改,因为它是基于浏览器的游戏,因此获取 hwid 将是可能的。但是如何使用 JS 或 PHP。

添加计时器和限制以防止传输已经到位,但并不能完全阻止它们,可以选择通过电子邮件发送 IP 例外情况。但这是缓慢而乏味的。我想知道是否有一个明确的方法可以为特定计算机(不是基于 ip 的)生成特定的 id 或标识符,从而使多个帐户无法从同一台计算机登录,但可以从同一 ip 登录

So i am running into a problem with people making multiple accounts to make there account better with more resource in game.

So my dilemma is, Many users go thru proxys or NATd info so some legimated users would be banned if i only have 1 user per ip.

Is there a way (with Javascript and PHP) to Get a uniq identifier specific to a computer (without Hardware changes, computer hardware change probably would change the identifier).

Any idea or comments would be much appericated


(The following was revived from a response made by Paul, but deleted by another for being out of place.)

I cant change the client to much because its a browser based game so getting the hwid would be possible. But how with JS or PHP.

Adding timers and restrictions to prevent transfers are in place but doesnt stop them entirely there is an option to email for an IP exception. but that is slow an tedious. Im wondering if there is a definitive to generate a specific id or identifier for a specific computer (Not ip based) that would make it so multiple accounts cant be logged in from the same computer but can be logged in from the same ip

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

四叶草在未来唯美盛开 2024-11-16 02:58:44

当我们谈论不同的帐户时,可能在不同的 IP 和客户端上,您无法轻松找到克隆帐户。

您可以选择另外两个启发式和游戏选项,

  1. 正如之前所建议的(@dqhendricks),划分您的资源并实施您的共享等,这样您就无法轻松地为每个新帐户帮助您的其他帐户。让一开始就很难/不可能找到其他帐户,使可共享资源成为更高级别的功能等等。缺点是这会改变游戏玩法,但它不一定是理想的。
  2. 您可以对行为进行启发式分析。可能存在不需要的特定行为:仅与 1 个其他帐户交互等。您可以调整一些变量等,但您可以很容易地看到可疑行为。进行某种“平衡”计算。大多数游戏内互动都有某种平衡。当然,更好的参与者可能会因为了解更多而达成一笔好交易,或者反过来:他们会做出糟糕的交易来帮助较小的参与者。但是,当一个玩家只给予而不索取时,它就是“帮助”而没有真正发挥自己:这可能意味着它是一个克隆

,就我而言,在这种情况下,带有 ip 地址或客户端信息($_SERVER)等的所有内容都是毫无价值的担心的..

As we are talking about a different account, probably on a different IP and client, you cannot easily find out clone accounts.

You can go for two more heuristic and gameplay options

  1. As suggested before (by @dqhendricks), divide your resources and implement your sharing etc in such a way that you can't easily help your other account with every new account. Make finding other accounts in the beginning hard/impossible, make shareable resources a higher level feature etc. Downside is that this changes the gameplay, it doesn't have to be desireable.
  2. You can perform heuristics on behaviour. There can be specific behaviour that is unwanted: only interaction with 1 other account etc. You could tweak some of the variables etc, but you could easily see suspicious behaviour. Make some sort of 'balance' calculation. Most ingame interactions have some sort of balance. Ofcourse, better players may have a good deal because they know more, or the other way around: they make a bad deal to help smaller players. But when one player only gives and never takes, it's "helping" without acutally playing itself: that might mean it's a clone

Everything with ip-adresses or client-information ($_SERVER) etc is worthless in this case as far as I'm concerned..

穿越时光隧道 2024-11-16 02:58:44

您可以防止同一帐户(用户名/密码)多次登录。

如果问题是他们使用许多不同的电子邮件地址等创建多个帐户以及新的用户名和密码,那么您可能可以使用 Cookie 来实现这一点,例如使用唯一的硬件 ID,然后您只需检查不超过根据此 hwid,一个帐户在任何时候都处于活动状态。如果硬件发生变化也没关系,因为它是相对的。

为了澄清第一次登录的 HW id 是否为 1234,然后第二次登录会生成相同的 hwid。如果您检查 cookie 或数据库(无论存储在哪里)是否有相同的 hwid,那么您就知道它已经登录。

如果硬件发生变化,也没关系,因为它们仍然会生成相同的 hwid。

如果他们使用两台计算机,尽管硬件 ID 会不同,但这是可行的。

You could prevent multiple logins on the same Account (username/password).

If the issue is that they make multiple accounts with many different email addresses etc... and new usernames and passwords then you might be able to do it with Cookies for example that use a unique hardware id and then you simple check that not more than one account is active at any one time based on this hwid. if the hardware changes it doesnt matter as it is relative.

To clarify if the HW id for the first login is 1234 then the second login with generate the same hwid. If you check the cookies or your database (doesnt matter where you store it) for the same hwid then you know its already logged in.

If the hardware changes it doesnt matter as they will still both generate the same hwid.

If they use two computers though the haardware id will be different and this will work.

沩ん囻菔务 2024-11-16 02:58:44

{可共享资源} = {总资源} - MAX(({起始资源} - {已用资源}), 0)

仅使非起始资源可共享,或者可能使共享资源成为您在 x 级之前无法获得的能力。

{sharable resources} = {total resources} - MAX(({starting resources} - {spent resources}), 0)

make only non-starting resources sharable, or maybe make sharing resources an ability you don't gain until level x.

離殇 2024-11-16 02:58:44

防止欺骗/重复帐户(同时确保所有合法帐户正常工作)是一项非常困难的任务 - 原因已由其他人阐述。除了尝试防止多个帐户并发使用之外,还必须防止多个帐户非并发使用。

核心问题不在于确定帐户从何处连接,而在于能够相信用户只有一个帐户 - 为此,唯一的方法是“真正的”解决方案是使用已经提供此类信息的系统,例如信用卡或 paypal 帐户;-) 也就是说,简单地阻止某人创建新帐户(尽管帐户可以有多个别名/配置文件,但这些可以是微不足道的跟踪)除非他们能够证明“唯一性”。

(还要考虑到两个人可能在同一台机器上有两个不同的帐户。)

快乐编码。

Preventing spoofed/duplicate accounts (while ensuring all legitimate accounts work) is a very difficult task -- for reasons laid out by others. In addition to trying to guard against concurrent multiple accounts, one must guard against non-concurrent multiple account usage.

The core issue isn't so much in determining where an account connected from, but being able to trust that a user only has one account -- and to this end the only "real" solution is to use a system which already provides this sort of information, such as a credit card or paypal account ;-) That is, simply prevent someone from creating a new account (although an account can have multiple aliases/profiles, but these can be trivially tracked) unless they can prove "uniqueness".

(Also consider that two people may have two different accounts on the same machine.)

Happy coding.

夜访吸血鬼 2024-11-16 02:58:44

我也运行一个在线游戏服务器。为了防止您陷入困境,请修改游戏客户端以读取MAC地址,并且每台计算机仅允许1个帐户。或者记录 ip 并只允许向该 ip 分配资源两次。
第三个选项:不允许从相同的 IP 地址传输材料
第四个选项:在资源转移上添加一个计时器,让他们在游戏中等待 10 分钟,然后才能做任何事情,例如摆脱其他人获得的物品

I run an online game server aswell. To prevent your dilema, either modify the game client to read the MAC Address, and only allow 1 account per computer. Or log the ip's and only allow the resources to be given to that ip twice.
3rd option: Don't allow transfering of materials from the same ip addresses
4th option: Add a timer on the transfering of resources, make them wait 10 minutes of gameplay before they can do anything like getting rid of the items for others to get

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文