drdplus / skills
Drd+ 技能
3.0.0
2021-09-27 07:55 UTC
Requires
- php: >=7.4
- drdplus/armourer: ^3.0
- drdplus/background: ~3.0
- drdplus/hunting-and-fishing: ~3.0
- drdplus/lighting: ~3.0
- drdplus/profession-levels: ~3.0
Requires (Dev)
- granam/exceptions-hierarchy: ~5.0
- granam/test-with-mockery: ^2.0
- mockery/mockery: ~1.2
- phpunit/phpunit: ~9.0
- rector/rector: ^0.11.53
- roave/security-advisories: dev-master
README
你会游泳吗?你将花多长时间读完那本书?你能骑马吗?
关于与 PPH 规则区别的警告
阅读和写作技能在 PPH 规则中阅读和写作是不可能的,但它会给阅读速度一个“加成”。
这个库给阅读速度加上了 -164 的“加成”,这意味着 100 年。原因主要是技术性的——因为返回“一些东西”比返回“无”(通过 null 或异常)更容易和更清晰,部分是因为它的逻辑性——十年后你有机会解码那些奇怪的符号,尤其是当它们意味着你已知语言中的某种东西时。
结构
技能是所有个人技能的堆叠。-> 同类型技能是同一类型的技能,如身体技能,在同一个堆叠中 -> 技能是特定的学习“能力”,如骑马 -> 技能等级是技能的“级别” -> 技能点是一个技能等级的唯一但必需的价格
技能点是技能等级的货币单位,由特定的值以特定的组合组成 -> 背景技能点是第一级给出的标准值 -> 职业等级是一个等级增量,带有属性增量,提供技能点 -> 可以使用不同于付费类型的两个技能点进行新技能点的交易
检查支付是否在其他地方被多次使用:(这应该检查至少技能作为最终的聚合器,或者更好的是检查每条路径上的每个聚合器)
技能点
- 背景技能点 - 通过 \DrdPlus\Background\BackgroundSkillPoints::getSkillPoints 检查它们的总使用量与可用性
- 职业等级 - 没有什么要检查的,在每一个等级都可以获得大量的技能点
- 跨类型技能点作为支付 - 必须是唯一的,因此没有人可以使用它,无论是作为支付还是作为标准技能点
技能等级
- 技能点在整个宇宙中必须是唯一的,参见技能点跨类型支付检查
技能
- 由于其聚合意义,可以使用它作为一个仲裁者
可以检查背景技能点是否过度使用不应该检查它,这太复杂了,留给技能去检查- 可以检查技能点和技能等级在本地是否唯一
- 可以检查作为支付使用的跨类型技能点是否唯一且在本地未用作标准点
同类型技能(可以计算所有第一级和下一级的技能等级)
- 由于其聚合意义,可以使用它作为一个仲裁者
组合技能 + 物理技能 + 精神技能(有能力找出同类型技能未使用的技能点值)
- 它聚合的所有同类型技能在整个宇宙中必须是唯一的
技能
- 组合技能 + 物理技能 + 精神技能在整个宇宙中必须是唯一的
- 应该是最终的仲裁者,
建议的方法是重用子聚合器的现有检查