bxworks bxworks
关注数: 6 粉丝数: 64 发帖数: 670 关注贴吧数: 28
【后续】作为一个程序员给官方的分析与建议与今日的看法 7月9号我在贴吧与官方发布的帖子引起了广大网友的关注,当天我十分气愤,因为那几天外挂实在太猖獗了,论坛贴吧里到处看到的都是调侃的帖子,什么钢铁侠大战葫芦娃了,诸神之战123了之类的。作为一个半瓶醋十年多的程序员无奈的发了下面的帖子。没看过的朋友也可以去看下。 作为一个程序员给官方的分析与建议 http://tieba.baidu.com/p/2446745986?pid=35253068788&cid=&from=prin#35253068788 今天看到官方发帖了《重金招聘专业反外挂技术人员公告》,心里十分高兴,也许我的帖子已经成功的被官方高层看到,官方可能从我的帖子中看到我作为一个玩家的真心请求,采纳了我的一些建议,也许吧。 看他的招聘要求 1、分析《行星边际2》游戏外挂采用手段,研究反外挂技术; (我上篇帖子有提到) 2、对《行星边际2》游戏进行分析,找出安全瓶颈; (也有提到) 3、发现、收集及确认《行星边际2》游戏外挂程序; (提出了建议) 4、撰写《行星边际2》游戏具体相关防外挂程序。(提出了123方法) 以及任职要求里的 8、熟悉NP或相关流行反外挂程序者优先。 看来官方是真准备采纳我第二条建议,来自己构建一个类似np或者tp的保护器了(也许是我多想,说不定人家早就开始准备了。)9c这次我支持你,都说你是捞一票就闪的,我实在无法相信,你从现在开始做保护器,将来代理的游戏,和现在正在运营的游戏,都可以使用,只要搜集不同的特征码就可以了。保护机制基本是相同的。保护器是封堵外挂亡羊补牢的最好的临时措施了。 再来说下新的绿盾服务器:还是个人分析,存在差错勿喷 为什么可以在客户端无更新的情况下加强的反外挂效果? 手机验证我就不说了,我觉得应该是我们前面都小看SOE了,上篇帖子我提到很多关键性判断都是在客户端完成,这个没错,但是,我感觉客户端同样把这些判断也发送去了服务器端,只是服务器端没有响应,没有处理而已,这样可以省下服务器的资源,去干别的事情。SOE看来也是做了2手准备的,停机更新后,服务器端如今开启了一些非法判断的处理,例如我说的移动坐标的服务器判断,绿盾开启后,看到很多帖子都说,上线了几分钟就被封了,也许服务器只是5分钟或者时间更长的来扫描一下坐标之类的关键性判断数据,这样可以减少服务器压力,也可以达到一些技术屏蔽的效果。对于高调挂很快就可以实现判断,但对于低调只开透视类似的,估计还是很难。 今天还看到了贴吧贴子说是《行星边际2项目经理辞职》(未证实,非官方),心里也十分高兴,打心眼里您真不是一个PS2的死忠玩家,一个真心的玩家不会把这么好的一个游戏搞成这样的,希望继任的项目经理,真心实意为PS2创造一个新的辉煌。
作为一个程序员给官方的分析与建议,实在不行我免费帮你搞 个人理解,存在差错在所难免,不喜勿喷。本人也曾经做过g,但纯属练手,未发售,未分享。以下只是心得。 首先,游戏需要判断的数据量十分大,无可厚非,不可能每个命令都发送到服务器判断成功,在返回给客户端做来回通讯成功处理,这样1要求网速,2要求服 务器端计算十分庞大,费时费力影响体验。通过几个月的试玩,感觉通讯判断机制大致如下:1.人物栽具显示,服务器端会不停发送人物显示数据到客户端,以你为中心大约有个可见范围,然后客户端判断显示不显示,这个就是透视功能。此数据全部 存储在内存,使用简单的内存读取工具然后在做数据分析,客户端用红框显示即可实现透视功能。 2.坐标数据,SOE最大的败笔在次,任何网游,都不会放任用客户端来判断坐标数据,连十几年前的传奇,都是来回通讯判断用户坐标,即使是日系的大航海 时代,也都是判断了小区域坐标,防止你大范围瞬移,感觉PS2完全没有判断,这就会造成你随意修改内存里个人的坐标数据,会将你传送到任何地方,而服 务器端也只会接收这个你设定了的坐标数据,然后发给其他玩家,这样大家就会看到飞天遁地,穿墙的各种的情况。而其他游戏会进行服务器端判断,例如你 上1秒的坐标减去现在坐标,如果距离是你不可能走到的距离,则踢你下线,拉你进黑名单,此功能也不能在客户端实现,因为修改内存同样可以屏蔽你的客 户端判断,必须服务器端判断。实现方法:同样是修改内存,既可改变你的客户端坐标位置,并且服务器端也欣然接受了。 3.瞄准击杀数据:纯客户端判断,只要客户端里判断你瞄准了敌人,哪怕敌人的客户端上看你还没有瞄准他,你开枪后,客户端判断击中或者爆头,然后发送 到服务器端,服务器端在响应,判断血量,击杀,这样网络延迟一点点就会造成2人对射同时死亡的情况。此数据全部客户端判断,实现自瞄的步骤既是:从 第一步取得的敌人人物坐标=》执行第二步的瞬移=》修改客户端的十字准心指向,锁定用户鼠标摆动,执行开枪,即可完成“当当当”。 暂时还没有发现向服务器端发送自定义封包来实现作弊的g。 其次:解决方法,由简入难。 1.使用第三方保护程序,类似nprotect,相信nprotect之类的公关专员已经给您打了无数次电话了把。此方法一劳永逸,9c无需技术人员,只要在主程序内嵌 入nprotect即可,给nprotect交钱,他们去分析外g的特征码,从系统去检测,他们去判断有没有进程来修改ps2的内存区。甚至是危险的api命令。此方法对于您最最简单,上线时间最快,效果最好。nprotect也不是吃素的,相信人家那么久的反制经验完全能应付这样的情况。但是要花钱,我就不知道要 花多少了。 2.自制类似nprotect的程序,腾讯不是也能做吗,叫tenprotect,效果也很好啊,初期可以很简单,您可以雇佣1-2个程序员,1天写完,1天测试,即可上线 。给你个最简单的思路,去市面上买各种能买到的g,这个钱您花得起吧。然后分析特征,最简单的特征1.进程名与标题名(这个意义可能不大,但是最简单, 因为很多g都可以自己改进程名字与标题名),找到并且列入你的危险列表,发现就禁止ps2运行,拉黑名单。2.窗体特征,这是为了解决第一种无法解决的问 题,你的2个名字可以变,那你父窗体,子窗体的按钮名,label名等,总不会经常改变吧。不停的遍历所有进程的各种控件名,取得里面的字符串,和您生成 的危险字符串表进行比对,发现,结束ps2进程,拉黑。3.进行内存保护机制,禁止其他进程进行读写。禁止其他程序调用危险的api命令,例如 WriteProcessMemory之类的。玩游戏禁止别的程序修改内存。此方法对您来说花费十分少,不超过1w吧,时间不超过3天吧,只要先做到1,2就能解决问题,3可以慢慢来。 3.对SOE施压,加大官方改进力度,修改客户端判断机制为服务器端判断机制,从根本上解决问题,但是目前情况看起来不怎么乐观,就现在的服务器端的压 力都会造成人多无法修理无法补给,无法打针,在加上这么多的判断,那就会down机了把。当然解决办法还是有的,加大服务器投入,负载均衡,多个服务器 端同时协同处理,也能满足需求。此方法投入大,而且耗时长,而且要看代理合同怎么签的。除非SOE良心很快给你解决,要不然我们会等死的。 我估计您是在等SOE处理此问题吧,并且SOE也不是很可靠,速度慢,拖拖拉拉。您也很心急。我劝您,求人不如求己,按我的1,2方法来处理吧。客户是上帝,永远记住吧。 我对于此游戏:刚发现这个游戏,很难上手,那时还是一测,哇,发现真好玩,这才是科技进步的时代产物,就是应该这样,我没玩过ps1,但我脑海里想像 游戏应该就是这样,很多很多人各种鸟都有,会有各种死法。就像当时幻想的EVE+DUST512那样。那才有乐趣。这样的乐趣我一直保持到昨天,开飞机被人3次 1000m的max 当当当。指挥一个连队攻下了电力中心,当我在a点发现墙里有个人,并且不断在喊“我需要电池”的时候,我的心凉了。3个小时的努力化为灰 烬。 最后吐槽一下:连个登录器的记住用户名都搞不好的程序员,您不扣工资吗?希望您的技术总监,加快进度,快快快,公测不停机,时间不等人,简化办事流程,迅速解决问题。 希望置顶,或者朋友们人工置顶,举报在封已经无济于事,手机验证也无济于事,淘宝3毛一次验证,会员CDKEY会大量流失免费玩家,数据库的异常数据筛选 会误封一大批或者漏封一大批。还是用保护器这种技术手段来解决此问题吧。事实和时间已经证明,国内大量游戏代理在使用。
1 下一页