章前说明:此类文章主要以个人整理思路,几乎在文章中不会有代码模块出现,若需要参考且有疑问可以留言或者QQ群问。
前提摘要
1.分式产出:
《幻战修仙》采用的是分式背包,意思就是<span style="color: #0000ff">属性类(装备)</span>和<span style="color: #0000ff">非属性类(普通道具)</span>是分开在不同背包中的,所以这里需要在产出时候需要分开存储属性类和非属性类道具;
同时,属性类类道具又存在着随机属性和属性调控,那么就需要使每个装备都存储成一个伪实例(相当于背包中的装备产出后就是唯一且独立的)。
2.产出等级调控:
《幻战修仙》中属性类产出为一个模板(默认1级),通过地图等级与怪物类型进行等级调控,所以在产出时需要获取到地图的等级和产出怪物的等级加成后,以基础属性与等级调控来计算属性模板。
3.产出品质调控:
《幻战修仙》中所有装备/道具在道具表中是以一个基础品质存储的,产出后的品质还会因为产出怪物的类型不同而进行一定范围的调控。
4.多怪物产出:
《幻战修仙》作为半回合制放置类游戏,奖励结算肯定是在一整场比赛结束之后,所以需要根据战斗时随机出的怪物ID以及品质来对怪物产出进行批量计算产出的道具。
核心思路
基础数据 | 衍生数据1 | 衍生数据2 | 衍生数据3 |
---|---|---|---|
玩家所在地图 | 当前地图等级 | 怪物类型等级产出加成 | 怪物类型品质产出加成 |
玩家属性 | 暂未制作幸运和掉落挂钩(暂留) | ||
怪物ID | 怪物基础掉落列表(ID、数量、权重) | ||
道具基础属性 |
需求数据:(基础数据是通过其他方式存储的数据,衍生数据是以基础数据计算或者配置中读取的数据)
基础数据 | 衍生数据1 | 衍生数据2 | 衍生数据3 |
---|---|---|---|
玩家所在地图 | 当前地图等级 | 怪物类型等级产出加成 | 怪物类型品质产出加成 |
玩家属性 | 暂未制作幸运和掉落挂钩(暂留) | ||
怪物ID | 怪物基础掉落列表(ID、数量、权重) | ||
道具基础属性 |
实现流程:(注意思维导图不是流程图)