声明:本人游戏开发新手,经验少脑子笨,好东西都要记录下来以备查阅。本篇博客主要摘抄自我 大知乎相关问答,仅为本人的学习记录,感谢相关作者的分享。预知详情的同学请点击如下宇宙超级无敌最强至尊超链接: 如果做网游的时候,把算法过多地放在客户端上面,可能会导致什么问题?
以及 战斗放在客户端计算的手游,如何在考虑玩家作弊可能性的情况下,设计比较好玩的PVE玩法? 。
—————————平行宇宙分割线—————————-
战斗放在客户端
优势:1、对网络条件的依赖减小。如断网,掉线,延迟等。2、更好的战斗表现与更佳的战斗体验,如降低延迟以及更流畅的节奏感。
劣势:1、防作弊开销增大。
客户端作弊的四种途径:
1、反编译并修改源代码。
2、修改客户端运行内存。
3、修改客户端的配置表。
对配置表打包加密。
4、用抓包工具修改协议内容。
防作弊途径:
1.服务端检测客户端发来的包的合法性,对收到的数据做有效性验证。
如ARPG手游,可以将本场战斗的关键数据按照时间节点打包,最后与服务器交互的时候发送给服务器。设置一系列指标并分配权重,计算阈值,偏离阈值太远的判定为作弊。
2.客户端与服务器都进行战斗计算。一定时间间隔周期发消息验