游戏任务系统设计思路

表结构

id

range

display

title

content

param_name

param_value

before_id

attachments

2

扫描二维码关注公众号,回复: 4235739 查看本文章

day

1

击杀训练

累计击杀10个敌人

day_kill

10

0

[{"name": "diamond", "number": 1}]

201

month

1

签到1天

签到1天

month_signin

1

0

[{"name": "diamond", "number": 1}]

202

month

1

签到2天

签到2天

month_signin

2

201

[{"name": "diamond", "number": 1}]

203

month

1

签到3天

签到3天

month_signin

3

202

[{"name": "diamond", "number": 1}]

344

all

1

2级

账号升至2级

level

2

0

[{"name": "diamond", "number": 1}]

345

all

1

3级

账号升至3级

level

3

344

[{"name": "diamond", "number": 1}]

346

all

1

4级

账号升至4级

level

4

345

[{"name": "diamond", "number": 1}]

347

all

1

5级

账号升至5级

level

5

346

[{"name": "diamond", "number": 1}]

ange:任务类型,day为日常任务,month为月任务(签到任务),all为成就任务;
display:是否显示
title:任务标题
content:任务说明
param_name:任务数值参考变量名
param_value:任务完成数值
before_id:前置任务id
attachments:任务奖励

说明

我们取id=345这一条来进行说明:
param_name= level,param_value=3,代表用户的数值统计(用户的数值统计自己设计)中,变量level(也就是用户等级)需要达到3,这个任务才能完成。如果没有达到3级,我们也可以根据数值显示任务进度条
before_id=344,代表这个任务的前置任务是id=344的账号升至2级这个任务,也就是需要领取了2级的奖励后,3级的任务才显示出来
range=all,代表这是个成就任务,如果range=month则代表这是个月任务,比如说签到任务,而月任务或者日任务对应的param_name变量一般会在每月或每日进行重置

猜你喜欢

转载自blog.csdn.net/a459909293/article/details/79393436