我们正在开发一款拥有英雄和士兵的游戏。所有这些都可以升级。但是,随着它们的升级,使用不同的算法来获得下一级别的属性。
随着我们的发展,我们首先实施士兵部分,然后是英雄部分。对于士兵,在生成属性值时,我们将每个士兵属性存储到数据库中。随着开发的进行,我们为英雄做了同样的事情。但这是一个好习惯吗?我的意思是实际上我们可以从设计器XML文件中获取所有属性,只要提供级别和类,将所有属性保存到数据库似乎是一种重复。我们被教导要避免重复,不是吗?
更多的是,当英雄升级时,我们会为每5个级别解锁一些行李网格,将这些解锁信息保存到数据库是否合适?
答案 0 :(得分:1)
经验丰富的经验法则,如果您在数据库中存储价值,它应该优先于任何默认值。如果是这种情况,设计是正确的。如果不是,那就是冗余,应该避免。未来的开发人员如果发现游戏中的值与存储在数据库中的值不同,他们会如何反应?第一个预期的反应是 - 哦,有一个错误,我们需要解决它。