枫叶似霞的BLOG

枫叶似霞—火红的枫叶,就像傍晚的霞一样,带给人温暖!

« 作弊年代还有什么可以相信的(上)改游戏,做真男人 »

作弊年代还有什么可以相信的(下)

 在网上可以找到的网络游戏外挂已经是网络游戏本身数量的好几倍了,在这个“不可思议”的年代,还有什么可以让我们相信的呢? 
●CS枪枪爆头就是作弊吗? 
●游戏里比人走得快一点就是变速齿轮了? 
●游戏里的AI人物真的是电脑吗? 
●为什么用模拟器联网游戏时会出现双方都赢的情况? 
你或许已经从本文的上半部分中学到了很多不知道的东西,比如在CS中走路超快并且不定期抽搐的家伙八成是使用了变速齿轮(如果是在网吧里发现这种人就非常值得抓出来海扁一顿了),而枪枪爆头却可能仅仅是因为调低了屏幕分辨率。尽管如此,我们还是要推出下半集,因为在这里你会知道更多…… 


游戏AI真的是电脑控制的吗? 

  在电脑游戏中,除了玩家之外,剩下的便是由电脑控制的NPC角色了。从最简单的只会重复几句无关痛痒的所谓“线索”对话的弱智NPC,一直到与玩家钩心斗角的高智商NPC,其实都是出自游戏设计者的算法设计。 
1.必备知识:AI人物看起来像真人的N个原因 
有的玩家在被具备高超AI技术的NPC无情挂掉之后,甚至开始怀疑起NPC究竟是不是真人…… 
(1)游戏角色有没有思维 
AI即Artificial Intelligence(人工智能)的缩写,NPC则是由电脑控制的人物角色,也称AI人物。虽然电脑的运算能力不断提升,但对人工智能的研究仍是处于比较落后的阶段。目前的人工智能主要分为2个派系,其中一派认为电脑完全可以模拟出人脑的“思维”,具备自主思考能力,而另一派则认为电脑永远也无法像人脑一样独立思考,它所能做的只是从庞大的数据库中查询预设的行为并作出反应。近年来已经取得一些成果的AI研究几乎全集中在后者,电脑游戏中的AI当然也是使用这种基于海量查询的技术。由于成本和家用电脑配置上的考虑,电脑游戏的AI通常都比较简单,比如让你和一个NPC对话N次,NPC可能会不厌其烦地将同样的话重复N次,但你已经烦吐了…… 
(2)敌不动,我不动 
如果玩家不动,NPC就会一直按既定目标活动。早期红白机游戏(特别是横版卷轴游戏)表现得最明显,比如画面中前方有三块砖,两块任意走都不会发生什么事,但到第三块砖时天上的蝙蝠就会攻击玩家。较理想的状态是游戏中的每个角色都会反复查询周围状态,比如“玩家是否在前方,如果在,我就去揍他”,可是这种反复查询算法实在太浪费CPU时间了,如果是一个即时战略游戏,比如《魔兽争霸》中使用狗海战术,那电脑肯定会毫不犹豫地死机的,所以在游戏中通常采用和Windows一样的“事件驱动模型”。 

名词解释: 事件驱动模型是指电脑的一切行为都是基于事件的,比如在发生“用户点击A窗口的关闭按钮”事件后,执行“关闭A窗口并回收其内存占用”的操作。 

以刚才红白机的例子来说,其“事件驱动模型”的应用就是当玩家走到第三块砖时,这块砖主动告诉蝙蝠“该出动了”,别看是小小的主动查询与被动告知的区别,对于游戏速度来说是天差地别的影响。 
(3)“变态”?有限的状态 
电脑游戏中的AI并不像真人那样状态复杂,你可能会在上班时一边工作一边保持着对QQ里某个MM的无限YY(网络流行语“意淫”的缩写),而游戏中的AI人物却只能拥有几种有限的状态,比如常见的飞行射击游戏,其中由电脑控制的敌机一般就拥有1种主状态和3种子状态(见下图):躲避、攻击、发射武器。与此同时,玩家在游戏中的状态也必须是有限的,比如在CS中,你只能做出游戏预先设定好的跳、蹲、开枪、换子弹等动作,这样电脑的AI人物(在CS中称为BOT)才能根据你的动作做出反应,如果游戏没有规定玩家的状态,玩家能够做一切动作(比如向AI人物做个鬼脸),那电脑游戏在AI设计时就必须把所有玩家可能会做出的动作和电脑AI对应的反应都预先设计好,这几乎是不可能的……你根本无法判断玩家是否即将对着AI人物做出类似跳肚脐舞之类的奇怪举动。 
 
2.看了之后,你应该知道什么 
(1)游戏中电脑控制的人物是没有思维的,你要做的只是找出他们运动的规律。 
(2)电脑游戏中采用的是事件驱动,但是如果你不动,敌人并不会真正不动,而是不改变原定操作(预设操作是向你攻击,你不动的话,电脑就持续攻击)。 
3.除此之外,你还能学到什么 
(1)在“敌不动,我不动”的问题上,很多游戏存在BUG,比如KOF2002中,如果用不知火舞来对抗八级电脑的BOSS,只要开局时玩家不动,那BOSS就不会动,过了时限后,BOSS就败了(需要在第一轮打掉BOSS一点血)。 
(2)虽然那些只会对话的NPC很弱智,但如果持续不断地和他说话(一般3~5次),就有可能拿到隐藏道具,这种恶俗的隐藏剧情来源于游戏开发者的无聊兴趣…… 
(3)在自由度比较高的游戏,如《侠盗猎车》中,都包含了很多隐藏的房间,看似进不去,但如果玩家想办法制造几次“车祸”让几辆车叠在一起后,就能顺利地爬(跳?)进去完成分支剧情。 

谁在阻碍我作弊? 

  在联机对战游戏中作弊是可耻的,但是如果只是自己玩玩单机版游戏,又何必较真呢?就拿RPG游戏中苦闷的练级过程来说,千篇一律的对战画面实在让人恶心,但是如果不练级的话又无法和最后的BOSS单挑。修改器出现了!整人专家(FPE)、金山游侠,各种游戏“作弊”工具层出不穷,但为什么有些游戏始终修改不了呢? 
1.必备知识:修改器的“作弊”手段大公开

(1)修改器在修改谁 
电脑游戏中包括人物的HP(俗称“血”)在内的诸多数据都是保存在内存中的,在Windows为这个游戏分配的内存空间中,游戏又将其分隔为多个存储不同数据的子空间,即称为“变量”的东西,比如“HP”变量的值是100,那游戏中人物的HP就显示为100。修改器要做的就是把自己伪装成游戏的一分子(插入游戏进程),像间谍一样侵入由游戏掌管的这些内存空间中查找并修改变量值。
(2)为何有些游戏无法修改 
有些变态的游戏开发商,竟然对单机版游戏也应用了反作弊技术,防止玩家修改变量值。常用的技术手段有非数值显示、多变量同步监测、变量更改幅度限定等。非数值显示就是说玩家的HP等数值在游戏界面中不以数值形式出现,如国产游戏《情侠情缘——月影传说》在普通模式下就以球体显示属性值,不过游戏修改器也推出了模糊查找的功能,只要查找数据是增加了还是减少了就能搞定它;多变量同步监测是指在内存中用多个变量来表示一个值,比如变量A的值代表HP,变量B的值的2倍也代表HP,如果你光修改了变量A的值,那么游戏监测到变量B的值的2倍不等于变量A,就能判断出玩家作弊了;变量更改幅度限定则比较麻烦,就是游戏每隔一段时间(如10秒)就检查一次代表属性的变量值,如果发现变化幅度超出了游戏的正常情况,便判定为作弊。第二和第三种情况一般都得通过修改进度文件(即玩家选择“保存游戏”后,游戏将变量存入的那个文件)。 
(3)游戏内置的“作弊qi” 

很多游戏都包含了自己的“作弊qi“,通常称它为“测试模式”。玩家可以通过键盘上的几个特殊组合键或者别的奇怪方法进入这种模式,并达到作弊的效果,比如可以任意穿墙(但其结果往往是比你厉害得多的怪物也可以穿墙来揍你)、直接升级等。这种“测试模式”是游戏开发人员在对游戏程序进行测试时预留的,因为游戏开发者当然不可能为了测试游戏有没有BUG而把所有的分支剧情都玩一遍,或者每测试一个项目都得练级十天半个月,所以为了方便自己就留了后门。这种“测试模式”通常都是保密的,在最后发布游戏时也就没有去除掉,但没有不透风的墙,几乎所有的“测试模式”最后都被泄露出来了。 

除此之外,还有很多本身没有作弊的游戏最后却出现了“作弊”的表现,比如在玩联机的街机模拟器时经常会出现双方都显示自己胜利的情况,因为这些游戏的生命值都是保存在客户端处的,服务器只是负责将玩家的操作传递过去,如果双方同时出招,而对方的动作由于网络原因延迟了一秒到达,那么在本地就会显示对方还没来得及出招就被打死了。 
2.看了之后,你应该知道什么 
(1)游戏修改器的作弊手段是修改代表游戏中属性的变量值。 
(2)如果游戏的值不能修改,那么不如关掉游戏,试着先去改改进度文件。 
(3)很多游戏内置了“测试模式”,你不必费神去使用修改器。 
3.除此之外,你还能学到什么 
(1)在Google中搜索“游戏名 作弊码”或者“游戏名 隐藏模式”就能找到开发者留下的游戏“测试模式”。 
(2)很多游戏剧情中玩家必须要死,如果你用了修改器把自己弄成无敌了没死,很可能出现奇怪的状况。比较有名的是《仙剑奇侠传》中必须要被石长老打死,还有刚才提到的《剑侠情缘——月影传说》更是搞笑,如果在第一次上武当山时就打败了天星,他会说你是修改的,然后杨影帆会因为太早成为武林第一,觉得高处不胜寒而自杀……

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Search


最新评论及回复

最近留言

最近发表

站长邮箱:jzhljr@163.com Powered By Z-Blog 1.8 Walle Build 91204 

Copyright 2008-2009 www.mapley.com.cn 枫叶似霞-版权所有 枫叶允许非商业用途的转载,但须保持内容的原始性并以链接的方式注明出处。

友情链接检查 晋ICP备09000576号