» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

[游戏类] clash of clan遇到个作弊的,挫气

因为clash of clan是在客户端进行的战斗计算
服务器只传谁攻击谁,谁赢了和战斗replay数据
具体的战斗单位、移动、目标、伤害计算均不从服务器验证

所以只需要修改客户端数据,将兵种等级修改一下就行
这事开发商还不好改,只能封号解决


TOP

引用:
原帖由 真忘私绵 于 2013-1-27 18:58 发表
posted by wap, platform: iPhone

胡说八道
很多东西只是延迟验证罢了
这也是用户体验好的原因之一

楼主说的事情肯定不是修改行为
大哥……你不是也开发ios游戏的么,这都看不出来?
首先,服务器验证的话,必须要知道单位布置的位置、兵种、单位的寻路移动、攻击目标、攻击时间、伤害计算全部要由服务器来计算并传给客户端
客户端只是一个播放器,将服务器计算的结果播放出来而已。(但显然COC不是这么做的)
这个过程是肯定会造成延迟,不会这么顺畅,而且运算量对于服务器非常大。

最简单的验证方法,你在攻击敌方基地时,断开客户端网络,如果它仍然运行,就说明只有客户端在计算战斗,战斗结束后将结果传给服务器。
当然这个过程服务器也会有一定的验证保护,但是现状是它验证不了兵种的等级。

[ 本帖最后由 ZENITHknight 于 2013-1-27 21:52 编辑 ]



TOP

引用:
原帖由 真忘私绵 于 2013-1-27 23:12 发表
posted by wap, platform: iPad

你不是自己也说了吗,战斗过程完肯定要验证的,所以不存在修改客户端欺骗服务器的问题。
现在的问题是,那些人的实验室本身就训练出了高级兵,你访问他们可以在兵营看到。
所以出问 ...
首先,COC这款游戏不可能是服务器预先运算结果传给客户端的对吧。

那么,只要是客户端进行运算,服务器就不可能有什么“延迟验证”或“后置验证”。
1.后置验证对于即时战略类,即使服务器与客户端算法完全相同,其验证结果也不可能100%完全相同。
2.每次验证战斗,服务器都要运算一次,这需要服务器的运算强度非常的大。
(COC的规模绝对达到同时全球几十万人进行战斗,而且每次战斗消耗的运算量还是不小的)
3.手游不可能实时传输完全的战斗数据(按现有模式,一次战斗的完全数据就能上M,replay数据只是关键点事件所以很小)
4.根据现有bug表现,也就是战斗单位等级不进行验证这点,完全说明它战斗过程根本是不验证的(不提交战斗单位数据)
5.以上推断很简单,只要在战斗过程中,你断网它还能继续,就说明战斗程服务器不参与,是客户端独立运算将结果提交服务器。
6.只要由客户端独立进行运算,服务器就不可能验证。

COC本来数据就不严谨,否则不会定出只有在离线状态下才能被攻击(因为不能实时从服务器更新数据,它是隔段时间同步一次数据)
而且你跟朋友可以试试在他正在攻打你的状态下,你登陆并将全部资源消费出去。同时你朋友打赢你,看他是否还能获得资源。
(按我的推断,你朋友是可以获得资源的)

[ 本帖最后由 ZENITHknight 于 2013-1-28 00:19 编辑 ]


TOP

发新话题
     
官方公众号及微博