cataclysmdda吧 关注:22,134贴子:342,629

回复:大家关注过cdda的消化系统模拟吗

取消只看楼主收藏回复

刚刚发现了一个bug:
由于解渴函数计算方式的问题,玩家可能从食物中吃进远大于食物体积的水到胃里,同时得到一个负数的干体积
例如草莓果酒1单位是42ml,但是有15解渴
15解渴=75ml水,经过计算后会倒扣干物质体积
结果就是喝一口草莓果酒胃里有75ml水和-53ml干物质


IP属地:陕西26楼2024-11-27 12:34
回复
    本来我是想继续对比热量需求和热量密度并举出几种饮食方案的,但是因为ls这个bug,某些食物的计算会有问题,这一步先跳过吧


    IP属地:陕西27楼2024-11-27 16:17
    回复

      还有一个问题,是关于食物的“满足”这一栏
      其实这个代表的是食物能量密度的高低,而非每一份食物能填充多少胃部空间,减少多少饥饿
      事实上,只要进行了进食行为,角色的饥饿度是会被立刻清零的
      我在21l贴出的热量/体积基本对应满足的高低
      但是这个函数目前也是有缺陷的,等我提个PR改一下,改完再继续聊这个吧


      IP属地:陕西28楼2024-11-27 16:35
      回复
        PR还没合并,等合并了就更新
        说一个小知识:避难所提供的蛋白口粮吃多了会有debuff,那个debuff是“恶心食物”这个维生素的过量症状
        “恶心食物”这个维生素只有蛋白口粮有,每份5点,代谢速率是4h/1点,吃一根的量就得一天才能代谢

        不过这个debuff除了持续扣心情倒也没什么了


        IP属地:陕西31楼2024-12-02 12:14
        收起回复

          重新贴一下更新后的“满足/饱腹”条
          这个代表的是换算后的等效食物能量密度,计算体积按时按前面的算法进行了调整
          这个可以作为一种参考,即如果你完全以这种食物维持饱腹度,摄取的热量是什么级别
          油渣的|||||其实已经超过显示上限2000了,除此之外最接近上限的固体食物还是干炼油脂吧
          目前最高的一类是草莓果酒这种纯液体食物,因为液体代谢快,所以等效能量密度甚至是油渣的1.5倍
          最低的就是各类茶,每单位只有1热量,显示为最低的.....
          下表为我调整时的对比,有兴趣的可以看下,不是重点


          IP属地:陕西32楼2024-12-03 11:00
          回复
            是不是又 了


            IP属地:陕西33楼2024-12-03 11:03
            回复


              IP属地:陕西34楼2024-12-03 11:04
              回复


                IP属地:陕西35楼2024-12-03 11:04
                回复
                  接下来我们要对比一下,进食行为如何同时影响饥饿度和热量水平,并研究高新陈代谢角色的进食方案
                  在此之前,我们要先知道cdda是怎么计算饥饿度的:
                  执行过一次标准化状态后,角色的饥饿度重置为0点
                  每过5分钟,游戏计算一次最小消化循环的时候,会同时计算一次饥饿度变化
                  对于默认角色,其代谢水平为1,此时理论上应该增加1点原始饥饿度
                  不过这里面有一点随机数学过程,加上cdda数字精度问题,角色的原始饥饿度并不总是上涨,平均下来每小时大概上涨10点
                  对于代谢水平更高或更低的角色,其饥饿上涨速度也会按比例增减
                  这里还要注意的是,代谢水平会受角色等效饥饿度的影响,而等效饥饿度中除了饱腹与否的影响,还看玩家的体脂水平
                  如果角色的体脂水平在“正常”水平的95%及以下,也就是长期忍饥挨饿了,就会开始产生饥饿惩罚,最小100,80%热量水平时达到300,体脂5kcal时达到5300,极限是致死水平的0热量时的6000
                  将原始饥饿度与长期饥饿惩罚相加,再经过速度调整,得到有效饥饿度,当有效饥饿度大于300时,开始产生代谢水平惩罚,不过这个惩罚曲线不陡峭,在2000有效饥饿度时代谢降低至80%
                  继续说回原始饥饿度,虽然每5分钟会增加饥饿度,但根据玩家过去的进食情况,结果还会变化
                  如果玩家吃得肠肥肚满,那么饥饿不会上涨
                  如果玩家过去10分钟内吃过东西,哪怕只是嚼了个口香糖喝了口水,只要没有长期忍饥挨饿热量不足,饥饿度都不会高于0
                  如果玩家很久没有进食导致胃里空空如也,那么根据玩家的三类热量水平,饥饿度会直接跳变为300/100/0
                  这也是瘦弱角色容易处于饥饿状态的原因,胃里的东西一消化饥饿度就涨回来了,而普通角色只会1点1点涨


                  IP属地:陕西36楼2024-12-03 12:05
                  回复
                    考虑进食方案的时候,如果有相应设备能够看到摄入和消耗,那自然是最轻松的,如果没有完整设备或者不想总是盯着读数算呢?
                    在我调整之后,固体食物的能量密度和显示出的满足/饱食刻度能够准确对应了
                    1.0的能量密度对应1000满足度也就是正中的刻度条|||..(营地容易产出的几种食物基本是1.0或略高的能量密度)
                    角色默认胃容量2500,理想情况下每天用1.0能量密度的食物塞满肚子就是7500kcal的能量摄入
                    根据角色的新陈代谢水平,我们可以调整食谱中不同能量密度食物的比例,达到摄入消耗基本平衡(可参考21l和25l的摄入及消耗模型),用口香糖、饮水等方式调整进食量
                    如果是想减肥,就少吃多餐,饿了就吃个脱水蔬菜,睡前灌一肚子水,也不会吃到饥饿度debuff


                    IP属地:陕西37楼2024-12-04 11:44
                    回复
                      因为默认2500ml的胃容量下,吃10成饱的3餐热量其实是过剩的,所以3倍代谢的情况下,只要点了美食家(或者其他加胃容量的变异),正常吃3餐也是能保证热量平衡的
                      问题主要在于消耗食物的数量大增后,仅靠玩家自己制作,可选的食谱确实少了很多(低热量食谱就不说了,即使是正常代谢,也不可能成为主要食物)
                      不过新版本(也包括0.H)NPC帮助下,许多食物是能够批量生产的
                      经典的熏肉、脱水肉、干肉饼之类的就不说了,肉派、香肠、蛋糕这些也可以让NPC做(大多数NPC可以在一两天内掌握制作这种级别食物的技能,更复杂的可能要多花点事件培养)
                      不过最新实验版修改了营地制作的逻辑,也会调用制作界面,但是我调试的时候似乎有点问题,不知道正常游戏中是否会遇到bug

                      图为使用理想模型模拟测试下的热量收支,可以看到吃40个熏肉能够覆盖热量消耗


                      IP属地:陕西38楼2024-12-04 19:45
                      收起回复