避免丢失工作
自动保存和撤销能覆盖什么、不能覆盖什么,哪些操作完全无法撤销,以及如何找回关卡
有三样东西保护你的工作:自动保存、撤销和关卡文件夹的副本。每一样都覆盖了另外两样覆盖不到的部分。关卡的完整快照只能是它文件夹的副本,因为整个关卡就是一个文件夹
养成习惯
每完成一段就按Ctrl+S。每次重组之前复制一份关卡文件夹。在认定关卡完成之前运行规则检查
自动保存
自动保存默认开启,工作方式如下:
- 出现未保存的修改时,开始
60秒倒计时 - 游戏把关卡的一份副本写入游戏文件夹中的
backups/<level id>/,它位于levels之外 - 然后像按
Ctrl+S一样保存关卡本身
编辑器开着但没有任何改动时,不会写入任何东西。自上次保存(无论是你手动保存还是自动保存)以来的所有改动都只存在于内存中
最多保留25份副本,最旧的最先删除。副本只包含关卡文件本身,不含元数据、音轨和图片。关卡被删除后副本仍然存在。受保护关卡的副本使用该关卡的密码保护
开关、间隔和副本数量在设置 → 编辑器中
恢复:关卡设置的危险区域标签页,从备份恢复。副本按从新到旧排列,每份以创建时刻命名。被替换的文件会先复制到backups中,所以恢复操作本身也可以撤回
也可以手动恢复:把备份复制到关卡文件夹中,命名为level.json(或level.blob)
未保存的修改
会替换或离开当前打开关卡的操作,会先询问如何处理未保存的修改:
- 从关卡列表打开另一个关卡,包括复制关卡并打开副本
- 创建关卡
- 在编辑器设置和关卡设置中点击
退出到菜单 从备份恢复- 在
危险区域中:复制关卡并打开副本、更改文件格式、设置密码
对话框有三个选项:
保存:保存关卡,然后继续执行操作不保存并继续:红色按钮,也是唯一会丢失修改的选项取消:什么也不做
从关卡设置中游玩时也会询问,但只有两个选项:保存并游玩和取消。这里没有放弃修改的选项,因为从游戏返回时会重新从磁盘读取关卡。没有未保存的内容时不会弹出对话框
撤销能覆盖什么
撤销覆盖对关卡的修改,也只覆盖这些。对物体、关键帧、资源、主题、预制件和设置的每一次更改都经过同一个操作缓冲区
不改变关卡的操作不会被撤销:
- 选用哪个控制柄、哪个时间轴工具,吸附和网格是否开启
- 面板布局、打开的标签页、播放头的位置
- 剪贴板缓冲区
- 本次会话重新生成的种子。重新加载关卡时会再次选取
- 保存。撤销回退的是内存中的关卡,而不是磁盘上的文件
完全无法撤销的操作
有两个操作会直接写入磁盘:
- 更改关卡的文件格式。把关卡写成
Blob会删除原来的Json。而Blob无法用肉眼阅读或修复 - 删除关卡。所以它被放在
危险区域里
原始数据标签页
原始数据标签页把整个保存文件显示为一棵字段树。它不做任何检查:没有规则,没有数值钳制
这是最后的手段。它的整个会话作为一次操作提交,这次操作可以撤销
你在原始数据标签页中写入的内容从未经过任何检查。手边要留一份关卡文件夹的副本。更多:关卡文件夹与备份 › 备份与恢复
规则
值得运行的检查是规则标签页。它显示校验发现的问题:失效的引用、重复的ID、父级循环、嵌套过深的预制件、重叠的节拍段
游戏可以修复其中一部分问题:逐个修复,或用全部修复一次修复全部。修复在点击保存后生效,作为一次可撤销的操作。放弃会丢弃这些修复。图结构类的问题没有修复方法
子物体的时段超出父级并不是错误,这是合法数据,行为符合设计。要让时段相互适配,请运行span-fit修改器