“力量必有其代价。”
概述
巫术学的法术需要探索和试验才能习得。
在试验期间,往往会出现意外情况,导致试验失败,给玩家带来惩罚。
在特定情况下,惩罚可能会导致严重的后果(如在熔岩旁试验时物品四下纷飞)且法术等级越高,惩罚的后果越严重。[1]
想要避免惩罚,有以下两种手段:
发射器可以避免惩罚直接使用未鉴定卷轴,可利用这一点事先进行确认,但这不能让卷轴变为“已鉴定”状态。
如果正在试验的法术在当前环境下可以被正常释放(如,释放投射物法术,使用未解锁的传送试图对着传送石阵shift+右键,对着实体使用未解锁的隔空取物,反例:对着空气释放传送法术,满血释放轻伤治愈),则未触发惩罚时,将会直接解锁这个法术。
机制详解
本质上,巫术学的试验&惩罚系统是事件触发,所以其他模组可以相当轻松的取消这个系统的影响,或是覆盖整个系统。
以下为这个系统工作时,一次施法具体发生的事情:
惩罚触发逻辑
首先,在一次施法开始时,施法物品会发送预施法事件(源代码),这个事件会将施法物品的种类,法术,施法者,法杖强化的信息传递给一切潜在的侦听器。
此时,作为预施法事件侦听器的“惩罚”将会响应这个事件,并进行惩罚判定(源代码),惩罚判定会先确认施法者是非创造模式,且使用卷轴和法杖作为施法物品的玩家(待测试:其他施法物品是否会触发惩罚?),否则结束惩罚判定,之后会读取惩罚概率,配置文件中的默认惩罚概率为20%,如果佩戴了智慧护符,则在此次结算中将惩罚概率除以2。
随后,有(1-惩罚概率)的概率结束惩罚判定,惩罚概率判定完毕后,如果玩家解锁了正在使用的法术,结束惩罚判定。
如果此时仍然没有结束惩罚判定,则进行惩罚。
(注意,触发以上逻辑的预施法事件对于一切施法行为都会结算一次,而不仅仅针对于未解锁法术,因此有很多看似冗余的步骤)
进行惩罚
试图进行惩罚时,会直接取消正常施法的后续逻辑,因此如果一次施法触发了惩罚,则无法解锁法术。
随后,根据法术等级抽取一条惩罚,有20%概率抽取低一级的惩罚,有60%概率抽取同级的惩罚,有20%概率抽取高一级的惩罚(源代码),如果没有低一级/高一级的惩罚,则对应惩罚的概率将会被加到同级惩罚的概率内(即,新手法术有80%概率新手惩罚,20%概率学徒惩罚,大师法术有20%概率进价惩罚,80%概率大师惩罚)
之后,执行抽取到的惩罚,抽取魔力/消耗卷轴,获得惩罚相关成就,播放惩罚声音,根据手持法杖/卷轴发送惩罚提示。
结算解锁
最后,一次施法结束时,会发出施法结束事件(源代码)在施法结束事件发出时,直接解锁释放的法术(源代码)
(但如果试验时触发了惩罚,或是被试验的法术无法成功释放,则会在法术判断条件时被打断施法,所以无法解锁,因此才出现了能成功施法的情况下解锁概率很高的现象)
惩罚列表
惩罚效果的具体代码实现在这里,以下是效果的简述。
另外,巫术学附属模组也可以注册自己的惩罚,按照同样格式填写即可。
惩罚效果 | 惩罚提示 | 触发条件: |
---|---|---|
点燃自身5秒。 | %s在你的手中迸发出火焰! | 火焰-新手 |
从玩家面前6格向玩家面部发射一发伤害为5的火球。 | 一个火球出现在你的前面! | 火焰-学徒 |
从玩家上方5格落下一发燃烧弹。 | 火焰炸弹出现在你的上方! | 火焰-学徒 |
发生威力1,不破坏地形的爆炸。 | 突如其来的爆炸将你撞倒在地! | 火焰-进阶 |
身边4*4*2的空间内出现0-5个敌对烈焰人(会在30秒后消失)。 生成类惩罚不会生成在方块内部,所以有可能所有生成全部失败。 | 突然,敌对的烈焰人你周身显现! | 火焰-进阶 |
身边半径6格的地面出现火焰。 | 你周围的区域被点燃了! | 火焰-大师 |
在8*8水平范围,上方40~70格垂直范围的空中落下3个默认属性的烈火陨星。 | 毁灭世界的烈焰从天而降! | 火焰-大师 |
获得冻伤状态10秒。 | 你感到一股冰冷寒意涌来! | 冰霜-新手 |
陷入冰封状态15秒。 | %s 释放出如此强烈的寒冷,竟将你原地锁住! | 冰霜-学徒 |
脚下水平4*4范围内出现最多5个默认属性的冰霜尖刺。 | 冰尖从你脚下刺出! | 冰霜-学徒 |
原地生成一团默认属性的暴风雪。 | 你突然被狂暴的暴风雪包围了! | 冰霜-进阶 |
身边4*4*2范围内出现0-3个敌对冰封幽灵。 | 忽然,你的周围出现了充满敌意的冰封幽灵! | 冰霜-进阶 |
生成一团瞄准你当前位置的默认属性冰雹风暴。 | 冰刺像雨点一样砸在你身上! | 冰霜-大师 |
面前4格出现1个敌对冰霜巨人。 | 一个充满敌意的冰霜巨人出现在你面前! | 冰霜-大师 |
向背对的方向以1平方格每刻的速度击退玩家,并生成假爆炸。 | 卷轴发出震耳欲聋的声音,将你撞倒在地! | 雷电-新手 |
进入300~900秒的雷暴天气。 | 看起来风暴正在酝酿之中! | 雷电-学徒 |
四个正方向距离两格处生成4个默认属性的闪电陷阱。 | 注意你的脚下! | 雷电-学徒 |
所在位置生成闪电。 | 你被闪电击中了! | 雷电-进阶 |
陷入麻痹状态10秒。 | 你瘫痪了! | 雷电-进阶 |
身边4*4*2范围内出现1-3个敌对闪电幽灵。 | 忽然,你的周围出现了充满敌意的闪电幽灵! | 雷电-进阶 |
四个正方向距离3格处生成4个敌对风暴元素。 | 充满敌意的风暴元素从四面包围而来! | 雷电-大师 |
陷入反胃状态20秒。 | ......嗯? 刚刚发生了什么? 我在哪里? | 死灵-新手 |
身边4*4*2范围内出现0-3个僵尸。 | 一大群僵尸出现在你的周围! | 死灵-学徒 |
陷入凋零效果20秒。 | 黑暗将使你的灵魂凋亡! | 死灵-进阶 |
受到当前生命值-1的魔法伤害,忽略保护附魔等防护时近似为将血量设为1。 | %s 发出死亡般震彻骨髓的嚎叫,你的灵魂盘踞着在绝望中颤抖! | 死灵-大师 |
四个正方向距离3格处生成4个敌对暗影幽灵。 | 你的周围出现了大片的暗影幽灵! | 死灵-大师 |
四个正方向距离1格处生成4个默认属性的自然陷阱。 | 这是一个陷阱! | 自然-新手 |
身边突然出现1个乌贼。 | 乌贼! | 自然-新手 |
半径5格内的植物被摧毁。 | 附近的植物都被连根拔起! | 自然-学徒 |
陷入中毒效果20秒。 | 你中毒了! | 自然-学徒 |
被突然出现的半径2格的水源包围。 | 水涌了出来! | 自然-进阶 |
半径4格内的低硬度方块(如泥土)被向上抛射。 | 地面在你身下坍塌! | 自然-大师 |
全身物品掉落,飞散四处。 | 你的物品四下纷飞! | 秘法-新手 |
对自己释放半径8~16格的驱逐。 | 你被瞬间传送到了哪里! | 秘法-学徒 |
陷入漂浮状态10秒。 | 你开始无助地向上漂浮! | 秘法-进阶 |
在4*4*2的范围内生成最多4个恼鬼。 | 一大堆恼鬼出现在你身边! | 秘法-进阶 |
面前4格处生成默认属性的黑洞。 | 旋转的漩涡出现在你面前! | 秘法-大师 |
生成瞄准你的默认属性的箭雨。 | 箭雨朝你落下! | 秘法-大师 |
受到4点魔法伤害。 | 哎哟! | 治愈-新手 |
全身盔甲掉落,飞散四处。 | 你所有的盔甲都掉了! | 治愈-新手 |
陷入饥饿5状态20秒。 | 你突然觉得很饿! | 治愈-学徒 |
陷入失明状态10秒。 | 你什么都看不见了! | 治愈-学徒 |
陷入虚弱4状态30秒。 | 你被严重削弱了! | 治愈-进阶 |
获得奥术干扰状态15秒。 | 你的魔法全部失去了效用! | 治愈-进阶 |
受到107,374,182.125秒(大约3.4年,21亿游戏刻)的死灵诅咒。 | 你被诅咒了! | 治愈-大师 |
资料分类: | 法术 |