脱机游戏的考虑点

文章目录

  • 0.大纲
  • 1.三个方向
    • 客户端
      • 内存加密
      • 本地文档
      • 代码混淆
    • 服务端
      • 存档文件
      • 重放攻击
    • 客户端和服务端交互
  • 2.落地
    • 外围
    • 内围
  • 3.业务和技术
    • 选择和平衡
    • 应对措施

0.大纲

两种不同的角度,有不同的设计方案

  1. 单机游戏支持联机玩法
  2. 联机游戏支持单机玩法

考虑点:

  • 离线数据存档

  • 外挂对抗:脱机挂、内存挂、按键类挂

  • 用户体验

1.三个方向

客户端

内存加密

  • 加密入口:进是加密,出是解密。内存信息是加密的。
  • 内容:配置信息,用户状态等。

本地文档

  • 存档加密:加密方法 加密key
  • 存档转移:文档打上使用者信息,比对使用者信息
  • 存档降级:文档打上客户端自身的版本信息,低版本的客户端不能加载高版本的存档文件

代码混淆

一般打包工具都有

服务端

存档文件

客户端将存档文件上传CDN服务器,联网是下载做比对。

服务端不允许修改客户端的存档。1.防止解存档方法扩散。2.数据一致性。

重放攻击

加入Nonce(Number once)机制

客户端和服务端交互

  • 联网成功后,服务端下发盐值salt。

  • 交互协议加密

  • 数据采集,客户端上报玩家核心数据的变化

2.落地

外围

客户端加密 防作弊等

事后校验:校验每一个操作,理论上可行,实际不可行

玩家在游戏过程中,减少数据采集

内围

可玩性,好的体验,流畅度

展示效果依赖的数据,用本地缓存

3.业务和技术

选择和平衡

  • 作弊,也是一种玩家体验

  • 确定作弊就封号,主流的做法

  • 提高账号归属感

  • 大数据,数据建模

  • 重要程度 误杀率 > 漏杀率

  • 参考成功的作品

    家园花园系列:将客户端信息打包上传CDN,降低了工作量。

    开心消消乐:诱导玩家联网,每过15关必须联网,才能继续玩。一局进程中断恢复,如果联网才能恢复。

    天天酷跑:收集大量的数据,数学模型,然后多指标交叉校验。

应对措施

  • 修改内存

    内存加密,协议加密

  • 修改时间

    允许提取未来的收益,但不能超过校验时间点。否则,回滚。

  • 重放攻击

    加入序列号

  • 本地缓存上报数据过大

    引导玩家联网

  • 使用作弊器

    扫描系统是否运行了黑名单中的应用进程

  • 如何修改玩家数据

    下发邮件,然后上行领取信息,客户端本地修改数据,服务端校验闭环。

参考:

单机游戏计时器防作弊解决方案

《开心消消乐》如何防玩家作弊

天天酷跑后台反作弊方案

单机游戏计时器防作弊解决方案

手游外挂分类及原理介绍

你可能感兴趣的:(设计,脱机游戏)