数据存储指南
修改于04/2083 浏览开发心得
1. 本地存储
常用于实现本地文档,使用关键词“File API”。
数据保存在当前设备中,而不是云端,除非手动清除app数据,否则不会丢失。一种可靠的储存方案。
优点:不丢数据、无需联网。
缺点:不能跨设备。
备注:仅在【扫描手机上测试】才能数据不丢失,浏览器中均为模拟保存文件,刷新浏览器页面文件数据会丢失,正常现象,无需担心,真机测试即可。可让嗒啦啦简单加密保存本地存档数据,避免萌新就能作弊改存档。
2.云变量:
单机游戏中,当前玩家可读写自己的云变量。
在多人游戏中,必须通过服务端访问云变量,但不限玩家,可任意指定玩家(通过userid)。
优点:与taptap账号绑定,在任何地方数据都一致。
缺点:限制多,问题多,有门槛。
备注:
a. 云变量与userid (用户唯一标识)绑定,一个userid 对应一份数据。
b. 真机测试和研发预览为真实userid,而100人分享测试版本用户不使用真实userid,而是额外专属的测试userid。一个真实userid一个测试userid,意味着可以有两个独立数据的账号测试。
c. 设置为多人游戏模式,务必确保游戏连接服务端状态,服务端无法连接,云变量也是无法使用。
d. 引擎多人游戏服务端架构,采用Websocket技术持久连接方式,将游戏挂后台一段时间后,会断开服务端连接。【并且超时间挂后台,很有可能无法恢复连接,无法连接服务器】,务必知晓无法连接服务器时,服务端无法使用,及云变量也无法使用。
e. 引擎全权接管【登录】和【服务器连接与断线重连】,游戏运行代码时,一定是登录状态。
代码无需【也不能】管理连接服务器,只能获取和展示服务器连接状态。
f. 嗒啦啦存在一定幻觉,遇到反复问题,记得提醒“查引擎文档”。
g. 云变量使用频率和容量均有严格限制,使用前务必确保已询问嗒啦啦具体 频率限制和容量,判断是否满足使用要求,再打算是否使用云变量。
【超出使用限制,云变量将暂时所有人都无法使用。】
h. 云变量不是数据库,查询能力极其有限,不具备模糊查询,不具备自定义索引,不具备多玩家查询能力(仅能通过排行榜查询多个玩家),使用前务必让嗒啦啦查询引擎文档了解,是否满足设计要求。
i. 如果项目是多人游戏模式,则云变量API只能在服务端使用,客户端通过服务端间接使用。
单机游戏模式下,客户端可直接使用云变量API。
补充:
很多人说“云变量无法在服务端使用”。这个结论是错的,云变量无论什么环境,都可以使用,说不能用是因为被嗒啦啦误导了。
因为 在 客户端 和 服务端 中,使用云变量功能,用的并不是同一个接口,有两个接口。
一个云变量接口是专门在客户端用的,另一个接口是专门在服务端用的。
这就导致,很多人容易被误导 “客户端云变量接口” 不能在服务端用,就以为 服务端就没有云变量接口了。


