奖励系统可以在用户触发特定事件时,将预先设定好的奖励按照规则发放给用户的系统。普遍应用在游戏、C端软件产品上,支持自定义规则的奖励系统将是产品运营的一大助力。本文将针对相对复杂的奖励系统规则进行拆解分析及技术实现。
目录
一、奖励系统的基本结构
1)触发时机与条件:例如在游戏场景中,击杀Boss、提交任务是常用的奖励触发时机,而角色攻击Boss的累计伤害、提交任务时需要的道具等则是用来判断的触发条件。
2)计算奖励:奖励的基本类型可以分为固定奖励、随机奖励,触发奖励时则应根据该奖励的规则计算奖励内容。
3)发放奖励:通过奖励页面、系统邮件等方式将奖励内容呈现给用户,再由用户自行拾取奖励。
以上三步构成了奖励系统的基本结构,而奖励系统的核心则在于通过奖励规则计算奖励内容满足不同的场景,在下文中我们将重点阐述如何设计奖励规则。
二、奖励系统的规则分析
我们可以将奖励看作为一个包裹(下文将简称为奖励包),任何事件都可以调用奖励包进行奖励发放,奖励包中允许有固定奖励以及随机奖励,该设计可以参照以下数据结构:
1、如何产出固定奖励
Reward_package是描述奖励包的数据表,Reward_list是描述奖励包内容的数据表,其中字段“是否固定”(值为1/0,1:True;0:False,下文仍会用到该定义方式)是用来描述该物品是否为该奖励包的固定奖励,如果想为「包裹1」添加固定奖励,则我们应该在Reward_list中增加一条数据,如下图所示,我们打开「包裹1」时,应固定产出[物品A]和[物品B]。
2、如何产出随机奖励
如果字段“是否固定”值为0,则代表该奖励内容为随机奖励,那么为了让奖励包能正确产出随机物品,我们则需要在Reward_package中定义奖励包的浮动参数。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/84750.html