这是本文档旧的修订版!
活动
枚举
时间类型枚举,方便活动配置时间
标准天(从2019年1月1日 起算第几天。1月1日算第1天),如果在模拟模式则以模拟天数为准 | 3101 | STARDARD_DAY |
标准小时 服务器的小时数 | 3102 | STARDARD_HOUR |
标准小时 服务器的分钟数 | 3103 | STARDARD_MIN |
标准星期几 服务器的星级几,周日是0 | 3104 | STARDARD_WEEKDAY |
玩家创建角色经过了几个自然天(第一天算1) | 3105 | PLAYER_DAY |
在30天的周期里面的第几天(第一天算1) | 3110 | DAY_IN_LOOP30 |
在30天的周期里面的第几轮 | 3111 | ROUND_IN_LOOP30 |
在60天的周期里面的第几天(第一天算1) | 3112 | DAY_IN_LOOP60 |
在60天的周期里面的第几轮 | 3113 | ROUND_IN_LOOP60 |
在一年周期里面的第几天,方便配置每年的节日(闰年不受影响)(第一天算1) | 3114 | DAY_IN_YEAR |
在第几年 | 3115 | ROUND_IN_YEAR |
活动条件配置
等级达到XX级 | 105 等级 |
战力达到XX | 306 生涯最高战力 |
主线关达到XX | 101 主线关卡进度(四位数) |
竞技排名达到XX | 108 我们大服不适合排名,108是掠夺天梯组 |
生涯累计充值人民币 | 316 累计充值金额(美元/RMB) |
活动期间累计充值人民币 | 316+progress |
生涯累计充值获得钻石 | 318 累计充值钻石获得 |
活动期间累计充值获得钻石 | 318+progress |
生涯累计消耗钻石 | 317 生涯累计钻石消费 |
活动期间累计消耗钻石 | 2+progress |
VIP等级达到XX级 | 是否会员111 是否超级会员112 |
progress的配置方法
1/ 在activity_progress_config中配置 , 把某样条件的绑定到 进度记数
2/ 在activity_quest_config 中通过 progress_condition 判断完成条件
原型表
activity_config 活动配置表
activity_schedule_config 活动时间配置表
activity_progress_config 活动进度配置表
activity_quest_config 活动任务配置表
填写
activity_config的panel_type当
panel_type=1 描述进度列表, panel_type=2 描述条件列表, panel_type=3 抽奖类型,抽奖类型抽一次的消耗点数填写在抽奖活动对应的activity_quest_config的progress_condition,且抽奖点的icon填在activity_quest_config的cost_icon字段 panel_type=4 翻牌类型, panel_type=5 iap购买活动 此时activity_config.pre_quest_id填写的是iap_schedule_config的id用于与iap活动关联,此时活动页面下方的标题和内容则是相应的activity_quest_config的description和sub_description panel_type=6 商店购买活动 此时activity_config.pre_quest_id填写的是shop_schedule_config的id用于与商店活动关联,此时活动页面下方的标题和内容则是相应的activity_quest_config的description和sub_description panel_type=7 前往某个页面activity_quest_config的ui_jump>0有前往按钮,否则没有前往按钮(值填写 ui_jump_config.id) panel_type=8 前往某个网页activity_quest_config的ui_jump_url不为空有前往按钮,否则没有前往按钮(值填写网页地址) panel_type=9 兑换类活动 panel_type=10 成长基金
activity_schedule_config中时间条件如果display_time不为空(如该活动是周几开始)则优先显示这个为活动时间,否则是根据活动条件算出来的时间。
存档表
activity_progress_info 活动进度信息
activity_quest_info 活动任务信息
协议
ActivityQuestCommit 活动任务提交
其他笔记
启动弹出流程
新的时间填写方法
填写
之前的自然时间 或者 开服时间还是比较难填
我们现在处理成 开始条件 和 结束条件。
结合第一节讲的时间枚举, 通过填写 xxxx_schedule_config.start_condition 和 end_condition来实现
如果要小时时间,需要 填写成 (3106=1)&(3102>=3)|(3106>1)在第一天且大于等于3点 或者 大于第一天
重置
通常我们用一个 xxxx_schedule_config.id就可以判断是不是在同一期,
但是如果是轮回型活动,则可能出现新一轮条件满足的时候,还认为是同一轮的情况。
这时候需要结合 xxxx_schedule_config.reset_condition 重置判断依据 。
这个重置判断依据 通常是 在30天的周期里面的第几轮3111 这样的条件。
会和 xxxx_schedule_config.id 拼接写入 xxxx_info的reset_key字段,
只要这个字段一样,肯定就在同一期,如果不一样,则需要重置。
查时间
今天是今年第几天,可以用excel快速计算, 也可以在游戏里直接打指令GetCondition(3101) 参考:https://jingyan.baidu.com/article/546ae185293b871148f28c4b.html