大家好。
我正在Unity3D中开发一款故事驱动的游戏,我想让玩家必须完成任务才能完成故事。
实现任务系统的最佳和最有效的方法是什么?
目前我有以下数据结构:
- 任务(类)
- 任务名称
- 任务描述
- 任务奖励
- 任务位置
- 这是支线任务吗
- 主要任务的名称是什么
- 有必要继续主要任务吗
- QuestManager(班级)
- 所有任务列表
- 该剧目前追求的是什么目标
- 当前任务的目标和支线任务列表
- 该剧在当前任务中要完成什么目标
- 检查玩家是否完成了任务/目标/支线任务,并相应地处理事件
数据结构看起来很合理,但我不知道如何以如此通用的方式实现,以便在游戏中轻松快速地创建任务。有什么想法吗?
您的总体想法似乎不错。我会稍微修改一下。我可能会让探索奖励也成为一门课程。这样就更容易定制奖励。。我也会制作"主要任务的名字是什么?"一种抓取任务对象(如果存在的话)的方法。这样你就可以很容易地从子任务中引用父任务。
我假设你使用数据库来存储所有这些信息?如果没有,我建议使用sqlite。
这样,添加更多任务等所需的就是向用户发送更新的数据库文件。将数据添加到数据库中也非常容易/快速。没有硬编码任务等
因此,您将这些Quest类创建为Models,填写数据,然后将该对象转换为JSON。然后可以将其存储在数据库中。一旦它被拉出,你就可以将Json转换回任务对象。
使用Newton soft Json和Sqlite 来完成此操作
或者您也可以这样做:演练:简单对象模型和查询