在进入游戏行业之前, 作为一位单纯的玩家, 我其实并没有对“存档数据”和“配置数据”的概念, 都是游戏数据, 有什么区别?
配置数据, 指的是预定义的, 静态的, 游戏过程中不变的数据. 例如关卡配置, 物品信息. 关卡里有几棵树? 分别在什么位置? 恢复药水售价多少? 能回复多少生命值? 配置数据往往庞大而繁杂, 数值策划们每天正是和它们打交道.
存档数据, 则是指动态的, 游戏过程中随玩家行为改变的数据. 例如玩家生命值, 商店的商品存货量, 剧情进度. 存档数据的结构和游戏逻辑直接挂钩, 相对而言更加简单和清晰.
两类数据的区别意味着它们的存储和读取方式不同. 静态数据需要以方便浏览和编辑的形式存储, 并在游戏运行时一次性加载到内存中. 动态数据则需要在运行时重复保存和读取, 但对数据本身的可读性没有要求.
存档数据解决方案
选用简单易用且免费的插件 Save Game Free. 其原理是将数据实例序列化后存储(例如 json), 在读取时再进行反序列化.
配置数据解决方案
和存档数据类似, 游戏运行时将其反序列化成数据实例以供调用. 问题是数据的存储方式, 简单的 json 格式显然不利于人眼读取和修改. 为此我选择使用 xlsx 格式, 也就是用 Excel 来配置和存储数据. 使用的插件是 tabtoy, 一款较为成熟的表格导出工具, 在游戏运行时将 Excel 表格反序列化为数据实例.
配置数据表格实例
暂无关于此日志的评论。