游戏中任务系统设计

本文介绍了游戏中的任务系统设计,包括任务分类如主线、支线、日常和活动任务,任务的开启和完成条件,任务逻辑的配置,以及任务过程的状态管理。任务逻辑涵盖杀怪、采集等多种类型,并可通过配置表或脚本进行判断。任务状态包括不可接、可接、进行中、完成未领取奖励和已领取奖励等阶段。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、任务分类

         游戏中任务可以分为主线任务、支线任务、日常任务、周任务、节日活动任务,其中周任务和节日任务可以根据设定的日期进行开启关闭,属于重复性任务。

2、游戏条件

        各类任务开启条件:1、玩家等级 2、玩家攻击力3、前置任务等等

        完成条件:玩家进行任务进度是否达成

        任务关闭:1、玩家领取奖励后关闭任务。2、时间过期

3、任务逻辑类型:

      任务逻辑有多种,这个往往跟游戏内容相关,比如 杀怪、采集、聊天、升级、完成某家物品等等。每种任务逻辑配置成一张表,例如杀怪类,有任务id,场景(或副本)id,npc id等,这样执行任务判断时直接根据配置表进行判断,任务进行是否一致,然后进行任务进度计算。

      也有一些任务逻辑可以配置成脚本,程序根据脚本内容进行判断。

       简单任务逻辑处理方式(伪代码):

void kill_boss()
{
    //玩家杀死怪物
    TaskTrigger->updateTask(player,taskid, npcid);
}


class TaskLogic
{
public:
    virtual bool logic(tableElement *pelem, int n, ...) = 0; //tableElement代表策划配置表
};

class KillBossTaskLogic : public TaskLogic
{
public:
    bool logic(tableElement *pelem, int n, ...)
    {
        va_list arg;
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值