planetside吧 关注:186,421贴子:8,289,986

作为一个程序员给官方的分析与建议,实在不行我免费帮你搞

只看楼主收藏回复

个人理解,存在差错在所难免,不喜勿喷。本人也曾经做过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会大量流失免费玩家,数据库的异常数据筛选
会误封一大批或者漏封一大批。还是用保护器这种技术手段来解决此问题吧。事实和时间已经证明,国内大量游戏代理在使用。


IP属地:陕西1楼2013-07-09 17:42回复
    太专业,不想看。


    IP属地:四川来自Android客户端2楼2013-07-09 17:43
    收起回复
      2025-12-24 21:00:08
      广告
      不感兴趣
      开通SVIP免广告


      3楼2013-07-09 17:44
      回复
        @the9行星边际2 把你们的老大叫出来!


        IP属地:上海来自iPad4楼2013-07-09 17:45
        回复
          @the9行星边际2 把你们的老大叫出来!


          IP属地:四川5楼2013-07-09 17:46
          回复
            @the9行星边际2 有人抢饭碗了 速度黑了他


            IP属地:上海6楼2013-07-09 17:47
            回复
              @the9行星边际2 把你们的老大叫出来!


              来自Android客户端7楼2013-07-09 17:49
              回复
                专业人士,就是不一样


                来自手机贴吧8楼2013-07-09 17:50
                回复
                  2025-12-24 20:54:08
                  广告
                  不感兴趣
                  开通SVIP免广告
                  @the9行星边际2 把你们的老大叫出来!


                  来自手机贴吧9楼2013-07-09 17:51
                  回复
                    写的不错,不知道官网论坛你发过没有,没有就去发一份


                    IP属地:广东来自Android客户端10楼2013-07-09 17:52
                    收起回复
                      看完了。。。感觉好简单的样子。。希望狗城尽力


                      IP属地:浙江来自Android客户端11楼2013-07-09 17:52
                      收起回复
                        潜水党帮顶


                        IP属地:北京来自手机贴吧12楼2013-07-09 17:52
                        回复
                          ……


                          来自手机贴吧13楼2013-07-09 17:53
                          回复
                            @the9行星边际2 把你们的老大叫出来!


                            IP属地:广东14楼2013-07-09 17:53
                            回复
                              2025-12-24 20:48:08
                              广告
                              不感兴趣
                              开通SVIP免广告


                              来自手机贴吧15楼2013-07-09 17:54
                              回复