2013年10月17日 18:10:32
装备类手套、鞋子、戒指的损伤过程分析介绍
在暗黑秘影中蛋疼的事情之一,就是有时候才刚捡了一个手套,就被哥布林一个石头砸坏了。不得不吐下口水,骂一句:纸糊的手套。那么装备损坏的过程到底是如何的呢?本文将揭晓秘密。
所有的易损装备是指:手套位置(手套)、鞋子位置(浮空靴、速度靴)、手部位置的各种戒指(防火戒指、法术反转戒指、保护戒指),每一件装备最初获得时耐久都是5。
在前面的盗贼的可偷物品一览文章中,我讲了下乱数的概念。那是本游戏的核心子程序,专门用于产生随机数,用来参与运算游戏的方方面面:偷窃、格挡、暴击、眩晕、会心、掉落物品、开箱子的随机物品、怪物开场的行为等等等等。乱数同样影响了装备的损坏:
一、任何一件易损装备的受创过程:当你受到攻击后(敌人也好、陷阱也好)
1.装备耐久固定减少1。
2.进入对应装备的踩狗屎程序,判断你是否踩中狗屎:这个狗屎程序由当前游戏乱数和装备耐久(上一步中减1之后的值)共同运算,得出一个二选一的结果:
1)你踩中狗屎,装备判为直接损坏,耐久清零。(一旦判为损坏,则设置一个保护状态,即接下来的其他装备判断中,不会中狗屎,不会坏,所以,一次最多坏一件装备)
2)你没踩中,那么等于什么都不做。离开损伤程序。
所以,乱数和各种敌人的攻击相关,非常复杂的数据,我不再研究。物品自己当前的耐久,也对结果有影响。耐久小于等于1时,被打必定损坏(这句话要结合上述的保护状态和下文多装备来看,戒指坏了后,其他2件就被保护不坏了)。
二、多件装备同时存在,受损的顺序
多装备物品的处理先后顺序依次为:手部装备(戒指)、手套、鞋子。
举个例子:你同时持有全新耐久为鞋子、手套、戒指,被敌人攻击后:
首先,将装备保护状态清除,再:
1.戒指耐久减1,看看是否踩狗屎损坏。(如果损坏,则设置保护,下面的手套、鞋子必定不坏,哪怕耐久到0)
2.手套耐久减1,看看是否踩狗屎损坏。(如果损坏,则设置保护,下面的鞋子必定不坏,哪怕耐久到0)
3.鞋子耐久减1,看看是否踩狗屎损坏。(不论损坏与否,结束程序)
结论
所以,被人打到了,每件装备都是受伤减1,这是不可避免的。而到底坏哪件,要看各自的踩狗屎程序高兴与否,最好的结果是3件都没坏,各自耐久减1收场。最坏的结果是某一件装备的狗屎程序让你踩中了,坏了。
除非注明,暗黑秘影中文站文章均为SK原创,转载请以链接形式标明本文地址。
本文地址:https://www.chinadd2.com/equipment-damage.html
作者:sssskkkk | 分类:游戏程序 | 标签:装备 | 评论:15 | 浏览:13068
随机推荐 |
已经有 15 名冒险者 发表了评论!
似乎投技判定的啮咬类攻击(红龙、地狱犬和石像鬼)判定装备损坏的次数不只是一次,因为以前见过地狱犬和石像鬼都咬坏过两件装备。能看这三种敌人的啮咬攻击各有几次装备损坏的判定么?
记录一下,以后再看了
头那是写错……就是不明白之前那句“耐久小于等于1时,被打必定损坏”和“保护状态”的关系。
现在大概明白了,
计算A→A损坏→BC出现保护→计算B→保护中、耐久-1→计算C→保护中、耐久-1→结束。
也就是有个每次只会损坏一件的大前提。
但是耐久的最小值是多少呢……
例如ABC耐久为1,A损坏,保护BC,BC耐久=0
再被攻击,B损坏,保护C,C耐久=-1?
代码里是一个字节表示的,耐久01减少到00,00减少到FF。装备坏掉时耐久会置0。这样。
那极端情况下会不会出现耐久负250后再减1变成正5的情形www
如果同时有耐久为一的情况呢?
比如手、头、鞋耐久都是1。被打到会出现什么情况?
要是像上面说的那样,手耐2,头鞋1.被击
手套踩狗屎碎了,头鞋耐久为0.不碎。这时候再捡一个手套。被打如果手套再踩狗屎会如何?
第一个问题:3个耐久都是1时,戒指首先损坏,然后会设置保护,鞋子和手套本次不会坏。这个我上面有写。
第二个问题:捡了该物品,对应物品耐久回复到5.但是5并不等于一定很持久,还是要看下次狗屎程序。(除非在它之前有东西坏了,保护它本次必定不踩。)
你写的【手、头、鞋】我看不懂,什么时候多了个头出来,帽子是不会坏的。
简单地说,装备损坏遵循以下原则:
原则1、每一次攻击都会让所有有耐久的装备耐久-1;
原则2、因遭受攻击而使物品耐久小于1时,或物品耐久已经小于1时再遭受攻击就会损坏;
原则3、扣除过耐久后若装备未损坏则再进行一次判定,随机决定装备是否损坏,按戒指→手套→鞋子的顺序进行。
原则4、【每一次攻击最多只会损坏一件装备】,此项原则优先于原则2和原则3;
更正:
原则3、扣除过耐久后若装备未损坏则[对每一件有耐久装备再进行一次判定],随机决定装备是否损坏,按戒指→手套→鞋子的顺序进行。
涨姿势了
好评,先顶后读。
>>耐久小于等于1时,必定损坏
(不考虑程序保护)耐久不是扣到0坏,而是扣到1就坏吗?这个好象和一般装备有耐久的游戏里的设定不一样嘛…
少打了2个字。。。
耐久小于等于1时,(被打)必定损坏
提个个人的看法:个人觉得这句不如直接写成“耐久扣到0时必定损坏”之类的…
“小于等于1时再被打必定损坏”这种写法相当于有两两个条件,要两个条件都理解了才能明白句子写了什么。而“耐久扣到0则必定损坏”则等于只有一个条件,理解起来更容易。
而且会存在“小于1”这个状态么,也就是说小于1了肯定就是0了吧,肯定就坏了