进度保存
游戏要求第1.9点
在具有内部进度(新的开放级别,高分,成就,改进)的游戏中,在玩家提交操作或按特殊保存按钮后立即保存更改。 更新页面不应影响保存的数据。
关键规则是,用户应该能够在刷新游戏页面后继续游戏,而不会丢失他们的成就或记录。保存应该在用户每次操作后或通过一个特定的按钮完成;其他保存机制应在开发者的评论中描述。
保存进度的位置
游戏进度可以保存在云端或本地。云端保存:
- 允许用户在不同设备上继续游戏。
- 对于有应用内购买的游戏是必需的(第1.13.3项)。
根据游戏的类型和要求选择存储方式:
-
在Yandex Games服务器上 —— 大多数游戏的推荐选项:
-
在外部服务器上 —— 适用于具有完善基础设施的复杂项目:
- 在您的服务器上实现自己的数据存储和同步系统。
- 需要考虑的事项: 您将需要用于托管、管理和玩家支持的资源。
-
浏览器存储(localStorage、IndexedDB)—— 仅适用于没有应用内购买的简单游戏:
- 使用标准浏览器API在用户设备上本地保存数据。
- 限制: 进度经常丢失(更换设备、浏览器、清除缓存时),支持团队无法恢复数据。
何时保存进度
必须:在用户可以设置记录或获得成就的游戏中(例如赢得比赛、通过关卡或获得物品),需要保存进度。这样用户可以从他上次游戏会话结束的地方开始游戏。
非必须:在简单的游戏中,如果没有进度或进度不影响游戏过程,不需要保存进度。例如,这可能发生在简单的涂色游戏、拼图游戏、问答游戏中。
示例
|
需要保存 |
不需要保存 |
|
只有通过前一个等级后才能解锁新等级。 |
游戏中的所有等级一开始就可用。 |
|
游戏中可以设置记录、获得成就、胜利。 |
游戏中没有记录、成就和赢的可能性。 |
|
随着游戏的进展,难度级别逐渐提高。 |
用户进度不影响难度级别。 |
|
完成一个等级可能需要几次常规游戏会话。 |
任何等级都可以在一次常规游戏会话中完成,所有等级一开始就可用。 |
保存机制
保存进度应该发生在:
-
用户执行操作后立即或通过一个特定按钮;
备注
如果游戏有其他保存机制,请在开发者评论中描述。
-
无论用户是否已登录;
-
更改设备方向时(对于移动游戏)。
如果保存设置正确,那么在任何时候刷新页面后(如果保存是通过按钮进行的,按下保存按钮后),进度应该与刷新前相同。
对于移动游戏,重要的是在改变设备方向时不丢失进度:设备旋转后,屏幕上应该显示与改变方向前相同的游戏状态。
示例
|
正确 |
错误 |
|
刷新游戏页面后,记录或进度被恢复。 |
刷新游戏页面后,用户的记录或进度未被恢复。 |
|
玩家进行操作后或通过保存按钮立即保存进度。 |
进度是定期保存的。 |
|
在完成一个等级后或在等级上获得成就时保存进度。 |
游戏不保存用户的记录或进度。 |
|
游戏中没有任何进度:等级、复杂性、记录,因此没有保存进度的需求。 |
游戏中有进度,但未被保存。 |
|
更改设备方向时,显示的是更改方向前的游戏状态。 |
更改设备方向时,更改前的游戏状态没有被恢复。 |
|
进度在玩家操作后或通过保存按钮立即自动保存——保存机制在开发者评论中有描述。 |
游戏有其他进度保存机制,但未在开发者评论中描述。 |
|
无论用户是否登录,进度保存对每个用户都是有效的。 |
用户的结果只在排行榜中保存。 |