概要
使用UrulePro4规则引擎实现一套原神刷圣遗物机制及圣遗物评分评级的规则模型,功能包含 根据用户“指定圣遗物的个数”和“指定圣遗物的部件”进行规则模型计算,返回所得圣遗物的集合。
1.原神圣遗物机制图
1.1 圣遗物部件种类
1.2 圣遗物部件与词条关系
1.3 圣遗物部件与词条属性关系表
1.4 主词条与副词条属性数值取值的概率表
1.5 圣遗物评分机制图
1.6 圣遗物评级机制
2.获取圣遗物出入参
2.1 获取圣遗物出入参关系图
2.2 获取圣遗物相关结构表
圣遗物/Relics | ||
中文名 | 英文名 | 数据类型 |
圣遗物部件类型 | type | String |
主词条 | mainEntry | Object |
所有副词条 | allAdverbialEntry | List |
圣遗物评分 | score | BigDecimal |
圣遗物评级 | rate | String |
词条/Entry | ||
中文名 | 英文名 | 数据类型 |
词条名称 | name | String |
词条数值 | value | BigDecimal |
满级数值 | maxValue | BigDecimal |
获取圣遗物出入参/InOutRelics | ||
中文名 | 英文名 | 数据类型 |
获取圣遗物个数 | relicsCount | Integer |
指定圣遗物部件类型 | relicsType | String |
获得的圣遗物集合 | relicsList | List |
2.3 获取圣遗物流程图
3.具体规则实现
(1)根据入参 ”获取圣遗物个数” 判断是否继续获取圣遗物
(2)初始化 参数”圣遗物” 和 参数”词条”
(3)根据入参 ”指定圣遗物部件类型” 判断是否要指定获取圣遗物部件类型
(4)获取圣遗物部件和主词条
(5)根据主词条属性获取主词条属性数值
(6)根据规则百分比获取副词条个数
(7)根据圣遗物部件和主词条属性获取副词条属性及属性词条数值
(8)根据圣遗物所有属性词条数值求得圣遗物的评分及评级
(9)入参 ”获取圣遗物个数”=0时,不再获取圣遗物,规则结束
3.1 根据入参 ”获取圣遗物个数” 判断是否继续获取圣遗物
3.2 初始化 参数”圣遗物” 和 参数”词条”
3.3 根据入参 ”指定圣遗物部件类型” 判断是否要指定获取圣遗物部件类型
3.4 获取圣遗物部件和主词条
(1)有指定的圣遗物部件,根据指定部件概率随机获取主词条
(2)没有指定圣遗物部件,概率随机获取圣遗物部件概率随机获取主词条
(3)圣遗物各部件概率随机获取主词条规则
生之花 主词条:生命值,概率:100%
死之羽 主词条:攻击力,概率:100%
时之沙:
空之杯:
理之冠:
3.5 根据主词条属性获取主词条属性数值
3.6 根据规则百分比获取副词条个数
3.7 根据圣遗物部件和主词条属性获取副词条属性及属性词条数值
循环获取副词条,所有词条不能出现重复属性(包括主词条中的属性)
不同圣遗物部件获取副词条属性的概率不同
例如:生之花的副词条属性概率
3.8 根据圣遗物所有属性词条数值求得圣遗物的评分及评级
4.测试
4.1获取一个圣遗物、指定圣遗物类型
4.2 随机获取一个圣遗物、不指定圣遗物类型
4.3 获取多个圣遗物、指定圣遗物类型
4.4 随机获取多个圣遗物、不指定圣遗物类型
5 开放用户账号
地址:http://urule.bstek.com/urule/login
登录进去若提示已过期也无碍,仍可以继续使用
(1)用户1:权限只允许进行rest接口调用
账号:yuanshen0001 密码:Aa123456
(2)用户2:权限允许进行rest接口调用及规则文件的查看和测试
账号:yuanshen0002 密码:Aa123456
(3)有兴趣想进项目或需要项目文件的朋友可以与我私信