我正在开发一款包含很多物品的游戏。我想知道在内部将对象数据存储在程序中是否更有效,或者从文件中加载项目列表。
实施例
[内部]:
Item sword = new Item();
sword.Damage = 40f;
sword.Value = 100;
Weapons.add(sword);
[外部]
items.txt
name:sword
damage:40
value:100
LoadItems("items.txt");
A认为在文件中存储对象数据可能意味着玩家可能会篡改或破坏文件,并且在IDE中添加新对象会更容易。一个比另一个更有效吗?
答案 0 :(得分:2)
:一种。存储在记忆中
优点:
缺点:
<强> B中。存储在文件
优点:
缺点:
这里您的主要因素是数据大小。如果它的小内存保存。如果它的大号保存在文件中。
答案 1 :(得分:0)
除了@Jigneshk所说的问题(这些都是很好的指南)之外,通常数据应该存储在程序之外(不是硬编码),硬编码数据将更难以开发游戏内容(例如,你必须在游戏中编写每一把剑的代码,而外部文件很容易在内容中增长(即使使用相同的程序,作为更新或mod),所以我建议将所有游戏内容(统计数据等)放在一个单独的file(检查结构化文件,如XML或JSON,甚至sqlite数据库都可以工作)
但是当然要记住存储速度较慢(因此在使用之前必须加载),并且您不应该读取所有数据,而是加载所需内容(一个级别)例如)