移动站源标题:http://mip.818114.com/news/show.php?itemid=116992
冰汽时代中每个NPC都有饥饿、生病及不满的属性。生病时按照人口比例随机发生的。但也与工作环境有关。长期不治疗将会成为重病,从而失去生产能力。,冰汽时代/寒霜朋克病机制详解及猎物漏洞,人口属性,游戏中所有的小人有以下属性(不包括姓名和血缘关系之类的无用属性):是否饥饿,是否生病,不满。,饥饿是一天不吃饭就会饿,然后就会概率饿死,这个属性是一定的,通过时间来计算,应该是有计时器系统,毕竟不是每一个人都同时生病。,是否生病(和生病概率),就是是否生病,生病机制我们下面说。,不满,这个应该是以值的方式存在,当有不满的人死掉,你的不满值就会下降,但是希望应该是一个整体值,并且通过累加,而和市民本身没有直接关系(间接关系),所以才会出现你希望满了的同时,不满其实也可以满,生病机制:,生病的系统基本上可以确定是按照人口比例随机生病。,每个小人都有生病的概率,将同等级生病概率的人放在一起计算,然后计算下一个等级,正常情况下,其实生病的值已经确定了,只是在之后才发给每个小人而已,生病概率和当前状态有关(在家,在工作地点,在路上),并且会改变(假如家里比工作点暖和,那么生病概率逐渐降低,在家里比工作地点冷,生病概率逐渐下降),上面这点可能看上去比较玄学,但是我们有验证方法。,随便开一局游戏不修房子,第一天晚上病两三个人,但是这三个人基本上不重复,但是每个人都会有生病概率。,同时也可以发现,就算工作地点很冷,只要没到严寒,就不会立刻生病,生病都是晚上的事情,那么假设,我们白天开低等级能量塔,晚上在调高+过载,就能够有效减少患病率。,那么可以大胆猜测,其实生病是从晚上某时刻结算,并在系统后台逐一随机发放给市民(这样能做出缓慢生病的效果,并节约运算量),所以我们只要在它的结算前,将温度提升,就可以避免相当数量的市民生病。,推测时间第二天0点之前,具体应该是八点到11点之间,但不可能是八点整(毕竟那个时候小人才刚刚回家),反证:如果我们在零点出现任何病人之前,将温度提升,但是生病人数并无明显变化。,其他猜想:或许是因为生病概率的改变需要时间。,总结:无论具体算法如何,结算机制肯定存在,否则无法解释为什么是随机和按比例生病,第二提前开炉子提升温度肯定可以减少生病概率,推荐六点以前开,因为预热也要时间,生病机制2:,这条机制我没测试过,不过有注意到,那就是生病之后的人,进入医疗站的时间和治疗时间成反比,比如生病立刻去医疗站,只需要两天,而到了第二天早上就会变成三天。,长期不治疗的人会变成重病。,值得一提的是,疗养院是神器,在疗养院的人,相当于获得了一个24小时的工作(并且住在里面),可以延长其生命,有人提到过,在疗养院的重病患者可以活十多天,不过你也因此减少了一个劳动力。,截肢只有30%,所以不是每一个重病的人都会被截肢,如果选择了姑息疗法,那么被姑息的人不会在医疗站得到治疗,也就是说,你第一个重病患者出现之后,你有十多天的时间出医务室(也不算赶),工作机制:,一般来说,在工作的人,不会第一时间去吃饭和看病,我见过生病的人在有医疗空位的情况下,依然选择先忙完手头的事情,再去做别的事情。,但是有一点值得一提,工作并不是一直干到底,它应该会有结算时间,结算时间一到,就会判断此人的状态,是否符合其他动作,比如工作两小时后,结算,生病,且医疗站有空位,这人就会选择去治病。,重病没有试过,但是重度饥饿则会让市民立刻去吃饭。,此外还有原力吃饭现象,就是我本来有三十多个重度饥饿的人,然后突然获得了一批食物(探索队),然后一瞬间他们的饥饿就不见了……这让我目瞪口呆。,工作本身并不会影响小人的生病概率(无法测试,理论如此,由狩猎小屋bug得出)。,狩猎小屋漏洞:,大家都知道,狩猎小屋是从晚上八点到第二天八点,那么就是说,完全可以让一个人白天去工作,晚上去打猎,这么操作虽然比较累,但是却很有效,且无副作用。,但是在这里我称之为漏洞,因为晚上打猎,白天干别的,这个人都不用睡觉了,确实有点假,但是我们也可以解释为他们在打猎的路上在中转站之类的地方休息过了(空猎则是直接在飞艇上休息。),这个漏洞产生的原因,应该是市民本身没有疲劳这个属性造成的(否则可以直接降低疲劳度),所以要修复只能加入疲劳值设定,或者干脆让狩猎小屋白天工作,晚上休息。,此外值得一提的是,我对利用规则的理解是:通过机制的不健全来规避某些惩罚或者代价,都算是漏洞,而利用频繁有目的操作来来规避一些惩罚的,则算是半漏洞。,加班机制:,加班必死这个理论在贴吧里流行了很长时间,但是经过我今天的验证,发现它是有机制的。,首先,加班机制和小人本身属性无关,具体体现在随机性和计时。,加班会过劳死,无论是完全健康的人(比如游戏刚开始的市民),还是中后期长长加班的人。,过劳死的市民完全随机,我尝试过三四把,甚至都不重复的。,但是第一次加班和资源点加班有加班保护机制,这个机制我觉得应该是制作组主动加的。,具体体现在,游戏开始,我修了工程站,然后加班,时间过去一两个钟头,再给两个资源点(木箱,废铁)加班,工程站的人就不会死,但是翻过来,先给木箱加班,或者木箱工程站同时(甚至短时间之内),都会触发。,也就是说,这个依然存在结算机制,一定时间之内,多个地点加班,会优先认为是资源点加班(或随机),通过先给工程站加班,过几个钟头再给资源点加班,则可以看作是避免结算时发生误会。,我尝试过从早上点9点开始加班,然后到13点到14点,基本上就会触发,那么有没有可能是计时呢?完全可能,后面我又推迟了加班开始时间,果然触发过劳死的时间也跟着推迟了。,但是这个时间不会减少。比如我的工程站到13点会挂一个,那么我提前将人提出来,然后十四点再放进去,依然会死,并且立即触发。,但是另一个机制就很迷了,当下班时间之后,这个机制就可以被掉卡掉。,比如我工程站6点开始加班,到8点过挂一个,记下时间,读档,到之前挂的时间,存档,挂了一个,读档以后基本上立刻出发死亡(基本上就游戏时间十分钟之内),但是,如果我这个时候把人抽出来,过几分钟再放进去,OK了,人不会死了,此外,如果你六点开始加班,八点将人抽出来,等到第二天零点以后再放进去,也不会死。,白天只要时间足够就会死(4到5个钟头),但到了晚上则机制都改变了。,或许是我测试不够详细?准备明天再次测试。,结论:可以通过存档的方式寻找触发时间,精准避开过劳死,或者通过简单操作,八点以后将所有加班的人撤出来,零点以后再放回去,无论他机制具体如何,这两个方法都是有效的。,不过我认为除了利用加班保护(第一次加班和资源点加班)避开过劳死,其它都有点过于降低游戏难度(相当于在相当长的时间内,将市民的工作时间延长为2倍。),同时初始资源怎么加班都不会死这个设定也是很迷……,剧情杀(不完全统计):,诗人,矿难,病人自杀,锯腿,欢愉之屋(没开过这个政策,所以是听说的),监狱冻死。,诗人和宣传站有关,你出这个事件之前把宣传站拆了就好。,矿难是因果律事件,只要你造了宣传站就可能爆发,拆宣传站和改用机器人下矿可以避免。,病人自杀是信仰系的那个大医务室带来的,不开就可以避免,但是开了的话,好像无论如何都会爆发(有一次我记得全是轻微病人,也有一个自杀了……),信仰系玩的比较少,希望了解的人提供信息。,锯腿是一个人哭喊着不要锯腿,这个时候你可以选由他去或者锯掉,由他去就死了,锯掉他可能自杀。,解决办法:签署疗养院和义肢,他会写信告诉他很感激(但是也可能和希望或者不满有关,我有几次及时点了疗养院,结果还是自杀了,所以还需要再测试),或者干脆就签姑息(姑息不会遇到这个事件)。,欢愉之屋,具体不明,不签就完了。,监狱冻死是给了囚犯一张湿毯子,目前只有不签来解决。,方舟来客,从那个新曼纽斯特来的人,治好他就行了,可以一开始就选截肢,然后用医疗站治疗,或者用姑息先养着,后期用医疗站治疗,工作站效率问题,游戏以效率最高的工程站为主工作站,其他工作站只提供效率加成(且效果递减),四个以上收益就开始不怎么明显了。,同时工作站吃工头加成和广播站加成,那么就很简单了,我们有四个工程站,效率160%(主站100+三个加成60%),轮流给工头,就变成60%+40%,如果还有学童就会更高了,成功达到一天1.7个科技(可能浮动)。