这是缘于《魔兽争霸3》的验证机制,确定了不可能出现任何外挂能修改金钱和属性等,而要实现这些就只能借助于修改地图,也就是所谓的作弊地图。
一个游戏。在发布5年之后依然在全球拥有几千万的忠实玩家,有着数以万计的开发者不断的深入研究它的机制和扩展接口,并为它开发第三方的地图,插件,以及模型。诸多的电视,网络以及平面媒体紧追其后,捕捉关于它的点点滴滴。任何一个小小的升级都经过开发团队上万次的平衡性测试以及讨论。一个可以用“伟大” 来形容的游戏。
我无力的描述并无法表达我对这款游戏以及开发者由衷的赞美和敬佩。暴雪带给我的是一种精神,让我深有感触。
晚上遇到了iSaiAh.net,向他请教了一下魔兽的验证机制。学到很多东西,记录与此:
我的问题是,魔兽的联网对战并没有通过官方架设服务器,那么它是如何来判断双方数据准确性以及合法性的呢。为什么5年之后这款游戏仍然没有一个可以严重影响平衡性的作弊器出现呢?iSaiAh 的回答中包含了几个关键字,如果你都清楚的明白它的含义,那么我的疑问也就可以解答了。
数据同步结构
操作流
相互验证
魔兽发送的封包不包含任何操作的结果,而发送的是操作的本身,即操作流的概念。比如封包A发送的可能是X玩家制造了一个建筑,封包B发送的是Y玩家选择Z 英雄用普通攻击打了X玩家的某一建筑。那么在这两个封包的内容中,只包含操作的方法,不包含任何计算或结果,比如B封包中不会包含Z英雄有没有打到X玩家,打了多少血等等信息。发送的只是一个操作,单纯的向对方描述我的这一动作。但是问题又出现了,如果封包中不包含结果那么如何确保双方的计算结果相同呢,如果计算中有随机因素的出现,又如何确保双方的随机因素一样呢?这就说到了数据同步结构。iSaiAh.net 说魔兽3的数据同步结构可以保证同时计算,同一时刻,双方的随机因素相同。对于这种描述以及所谓的同步结构我并不理解,数学基础只是淡薄。但似乎也只有这么一种方法才可以解释。最后,如果其中某一结果被单方面恶意篡改,则双方计算结果必然不同。即认为双方结果都无效。这就是所谓的相互验证。
欢迎任何来访的达人指出上面分析中的错误,并补充。 我将万分感激。
iSaiAh.net说:在离散数学中,关于递推的原理有一句描述,大概用在这里正合适:
If we Start out right and if Nothing can go wrong,then we will always be right.
其实生活中的很多东西也都如此。
感谢 iSaiAh.net
魔兽秘籍网 >> 为什么从来都没有出现过修改金钱的作弊器
为什么从来都没有出现过修改金钱的作弊器
发布:yucde 日期:2007-11-16 2:43:37
转载请注明来自:【魔兽秘籍网】
分类: 魔兽全图揭密
Tags: 魔兽作弊器
