可乐吧>坦克世界>
(国外科普)为什么坦克世界里不能作弊?

(国外科普)为什么坦克世界里不能作弊?

News可乐吧新闻  |  发表时间:2014-01-20 15:55:42  |  推荐人:可乐吧  |  网友评论()

  亲爱的战车指挥官们,大家好

  “对方在作弊吧?”在多人线上游戏的时候,每当出现诡异的局面下大家总会产生这样的想法。这种在如何在道德底线上作保证的问题在坦克世界中也不例外。我在心底里暗自相信甚至断定,总有那么一小撮人在WoT游戏里面不断尝试可行的作弊方式。可是为何在坦克世界里很难作弊呢?针对这个问题我在这里简单地说明一下:坦克世界在这方面最关键的优势在于它的数据交换方式。

  首先我们以一款经典的第一人称射击游戏为例。作为经典的候选人,CS是绝对当之无愧的。它应该是迄今为止最广为人知的游戏,而其相应的可用外挂也多得惊人。CS绝对是一款“快速”游戏,与此相应需要非常迅速的数据交换记录。为了达到这个目的,空间位置的计算是在客户端,也就是在个人电脑上完成的。玩家在服务器上的所有相关数据在个人客户端上就已经是处于可以调用的状态了。我们称之为“空间位置数据”。

  当我在游戏里向一个地方移动时,我对服务器发出信息,“你好,我要去坐标XYZ这个位置,我的移动速度是V”

  服务器便把这个信息继续传递给其他的在线玩家。这些相应的信息可以说是外插进来的,目的是能让随之而来的延迟(也就是游戏中的PING)尽可能的小。

  当所有玩家的“空间位置数据”都处于可以调用的状态时,通过相应的舞弊操作可以隔墙看到对手(简单地说就像透过一层布一样),更进一步说,因为所有的空间位置数据都是计算好了的,狡猾的外挂程序大可以向服务器发出这样的信息:亲爱的服务器,我现在要精确地射在XYZ这个坐标点上。服务器将这条目标矢量信息配平到对手的坐标位置上。于是,对方挂了,自己爽了。

  这一切都可以称为“客户端的计算”,因为各式各样的主动数据指令都会从客户端发到服务器上。对此,一批反作弊措施出现了(比如反作弊软件aka),阻止例如像穿墙透视之类能看到对手位置的指令。但是仅仅依靠这种模式是无法全面阻止作弊的。通过定义指令来阻止作弊从来就不是什么好的办法。

  现在大家能明白一些了吧,好的,我们继续。

  那么坦克世界里的一切又是怎么运作的呢?

  因为坦克世界的节奏相对舒缓,于是“快速”记录数据交换情况就显得没有必要了。因此进行“服务器端的计算”是更明智的方式。我们用下面这个例子加以说明。

  我想向前行驶,那么按住W。可是一开始什么都不会发生,以为我必须向服务器发出请示,而不是像之前那个例子那样发出指令。这个延迟是可以细微感觉到的,并与PING值关系密切,你可以试试看,按住方向键,但是车辆并不会马上对此做出运动的反应。

  对于第一人称射击而言,这种情况无疑是个灾难,但是对于战车类的游戏来说就显得无关紧要了,我们也可以这样理解,在战场上车组成员之间的协作交流也是需要时间的。

  我向服务器发出一个请求:你好,我按了W,想向前行驶。

  服务器:嗯,你就是驾驶战车X配有装备Y的玩家吧,准许你以加速度A向坐标xyz移动。

  接下来只有一部分玩家能看到我向指定的坐标移动(可能是队友,也可能是发现我的对手)。其他人则什么都看不到,因为游戏视觉系统就是按照上面类似的方式运行的。

  服务器:嗯,处于坐标xyz上的玩家先生,你已经接近一辆50m开外的鼠式坦克,准许你发现对手。

  也就在这个时候,那辆鼠式坦克才能出现在我和我队友的显示器上。对手绝对不会提前出现,因为像这种座右铭式的请求是根本无效的,“你好,服务 器,给我显示所有对手的位置”服务器很可能会回复“*****(河蟹)”这种所谓的可以发现所有对手的雷达外挂是行不通的。所以如果你被对手击中,要么是你被发现了,要么就是有幸挨了对方瞎蒙的一炮。(不可能有其他的可能)

  同样,命中和伤害的计算也遵从这个原则,有点像“沉船法则”。

  玩家:你好服务器,我想向这个方向瞄准,并开火。

  服务器:批准,首先生成一个随机目标矢量路径(和火炮精度有关),然后检查有无玩家在这个路径上,最终计算穿透值和造成的伤害。

  以上所有的计算都是在服务器上进行的,如果我命中目标,我会得到服务器的通知,相反的过程是不存在的。炮弹造成的伤害也是由服务器端判定的,个人无法施加影响,一炮打出三万的伤害是根本不可能的事情。

  但是图像(涂装)外挂又怎么解释呢?

  如图所示,玩家真的居然能够透过障碍看到战车?其实,这个插件只显示被发现的战车,这种显示战车的插件意义很大吗?未必,因为按住Alt就有这 个功能了嘛。另外要当心外挂是病毒哦,哈哈。像承诺增加收益的那种插件百分百是木马。和收益相关的数据,诸如经验,游戏币(国服的银币),黄金(国服的金币)都是在服务器上放着的。想作弊,没门。

  可不可以黑进服务器里修改数据呢?

  应该可以,但是为什么没人做呢?因为需要付出的各种消耗太大了,绝对抵不上得到的结果。服务器和客户端数据交换是加密进行的,人们需要掌握相当 多的知识才能破解,而服务器的运行软件又是机密,也就是说自己重新编写数据(逆向工程)几乎是不可能的事情……而巨大的耗费又为了什么呢,只是为了取得金 币么?那种根本没有利润可言的事没人会去做的。

  如果真的有奇葩破解成功了,那么这么好的事儿大伙早就都知道了。

  结论

  我想大家应该都已经清楚了,一个有效的在坦克世界里作弊的手段在可预见的时期内都是不可能的。虽然有少数的涂装插件比较实用,可以标出弱点,但是这些弱点所有玩家都能知道。由于玩家可以借此不用动脑考虑每辆车的构造弱点,能明显多占一些便宜吧。

  另外,很特殊的战斗情况都是可以解释得通的,它们绝不是由于作弊造成的,这个已经再清楚不过了。

更多

我要评论