所以我遇到了一个问题,人们制作多个帐户,以便在游戏中获得更多资源,从而更好地解决问题。
所以我的困境是,许多用户通过代理或NATd信息,所以如果我每个ip只有1个用户,那么一些有用的用户将被禁止。
是否有办法(使用Javascript和PHP)获取特定于计算机的uniq标识符(没有硬件更改,计算机硬件更改可能会更改标识符)。
任何想法或评论都会非常明显
(以下内容是从保罗的回复中恢复过来的,但是因为不合适而被其他人删除了。)
我无法更改客户端,因为它是一个基于浏览器的游戏,所以获得hwid是可能的。但是如何使用JS或PHP。
添加定时器和限制以防止传输已经到位,但并没有完全阻止它们,可以选择通过电子邮件发送IP异常。但这很慢,很乏味。我想知道是否有确定的特定计算机(基于非IP)生成特定的ID或标识符,这将使多个帐户无法从同一台计算机登录,但可以从同一个IP登录
答案 0 :(得分:1)
由于我们正在谈论一个不同的帐户,可能是在不同的IP和客户端上,您无法轻易找到克隆帐户。
您可以选择另外两种启发式和游戏性选项
就我而言,在这种情况下,使用ip-adresses或客户信息($ _SERVER)等所有内容都毫无价值。
答案 1 :(得分:0)
您可以阻止同一帐户(用户名/密码)上的多次登录。
如果问题是他们使用许多不同的电子邮件地址等多个帐户...以及新的用户名和密码,那么您可以使用Cookie执行此操作,例如使用唯一的硬件ID然后您只需检查根据此hwid,任何时候不超过一个帐户处于活动状态。如果硬件发生变化则无关紧要,因为它是相对的。
要澄清第一次登录的HW ID是否为1234,然后第二次登录时生成相同的hwid。如果您检查相同的hwid的cookie或数据库(无论在何处存储它),那么您知道它已经登录。
如果硬件发生变化则无关紧要,因为它们仍将生成相同的hwid。
如果他们使用两台计算机,虽然haardware id会有所不同,但这样可行。
答案 2 :(得分:0)
{sharable resources} = {total resources} - MAX(({starting resources} - {spent resources}),0)
只允许非启动资源共享,或者使共享资源成为你在x级别之前无法获得的能力。
答案 3 :(得分:0)
防止欺骗/重复帐户(确保所有合法帐户工作)是一项非常困难的任务 - 出于其他人的原因。除了尝试防范并发多个帐户外,还必须防范非并发多个帐户的使用。
核心问题不在于确定从哪个帐户连接,而能够信任用户只有一个帐户 - 并且结束唯一的“真正的”解决方案是使用已经提供此类信息的系统,例如信用卡或PayPal帐户;-)即,只是阻止某人创建新帐户(虽然一个帐户可以有多个别名/配置文件,但这些可以被轻易跟踪),除非它们可以证明“唯一性”。
(另外考虑两个人可能在同一台机器上有两个不同的帐户。)
快乐的编码。
答案 4 :(得分:-1)
我也在运行在线游戏服务器。为防止您的困境,请修改游戏客户端以读取MAC地址,并且每台计算机只允许1个帐户。或者记录ip,并且只允许将资源提供给该ip两次。 第三种选择:不允许从相同的IP地址转移材料 第四个选项:在资源转移上添加一个计时器,让他们等待10分钟的游戏玩法,然后他们可以做任何事情,比如摆脱其他人获得的物品