场景:
在测试战斗的过程中经常需要调数值来方便测试。比如要测某张卡牌的法术技能,直接测要等这张卡牌满蓝了放法术看效果,这样不是很方便,因为它可能在放法术之前被杀了,又或者放法术的时机不是自己想要的时机,等下次放法术时CD又比较长,遇到这类情况都是通过改配置表后重启游戏再进行测试。这样会有两个问题:一是改配置后需要重启游戏才能生效比较耗时;二是改了配置表测完后又必须改回去不然svn会有冲突,如果忘了改回又会出莫名奇妙的BUG。
解决方案:
游戏启动后工程会把配置表读取过来并赋值给对应配置对象中的各属性(对应着配置表中的各字段),之后进入战斗后又会取对应的值进行战斗计算,我在项目中找到了开发写的可以get 和修改各属性的方法,基于这两点在unity里写了一个工具可以即时修改各卡牌的属性并在下一场战斗中生效(部分属性可以立即生效),重启游戏后当前修改失效,也不用改动配置表,这样可以提升测试团队的效率。
效果展示:
用EditorWindow GUI 实现的最终效果图,左边列表显示的是所有的英雄,右边显示的是对应卡牌的所有属性列表,后面的输入框中可以修改,点击上面“应用修改”按钮就可生效。