戴森球计划吧 关注:80,731贴子:700,375

开贴:关于戴森球游戏中那些反直觉的事情

取消只看楼主收藏回复

被吧主吐槽了我只回复不发帖,那我就写一点这几年玩戴森球的体验,内容大部分来自前辈大佬小部分是我自己的游戏体会,想到哪写到哪,如果你发现了哪些反直觉的东西也可以发出来交流。
我的银河系铭牌:50980865-64-A8 326T+10w糖
顺便一说我星区第一1.4p那位是开挂的,估计过不了多久就要被服务器删了


IP属地:山东1楼2023-10-25 15:35回复
    第一个就说说锅这个东西。
    射线接收站,俗称锅。名字里的接收两个字表明了这东西是不能独立工作的,锅是接收端,是个被动设备,那肯定有一个配套的主动发射端,这个发射端,就是戴森球/戴森云。
    那么问题1:锅有几个接收属性?
    反直觉1:两个,接收强度/接收效率
    其中接收强度指的是锅上面那个百分比,向阳面高背阴面低,这个百分比又决定了锅能不能暖锅,低于75%不能暖锅,暖锅的程度决定了锅的接受效率,接收效率是这个锅最终能在球上接受多少电和提供多少光子。
    接下来问题2:锅接收的射线是从哪个方向射来的?
    反直觉2:是太阳,且唯一,不是戴森球也不是戴森云。
    为什么会这样?其实非常好理解,一个壳或者一圈云轻松上百万的反射面,如果每个反射面都向星球发射线,还要分内发射和外发射,这种百万级且每秒60次的并发运算会导致你电脑瞬间爆炸,双11的淘宝都没这么大的数据并发量。
    那么就需要一个让玩家能接受的发射端,这个发射端要稳定,轻易不能挪位置导致射线数据需要重算,因此行星正圆轨道的圆心,也就是太阳就是这个最稳定运算量最小的发射源。这也解释为什么有些包星锅背阴面还是会黑,因为太阳照不到。


    IP属地:山东2楼2023-10-25 15:37
    收起回复
      在了解了太阳才是射线发射源的知识后,我们可以接着问
      问题3:光照强度这个和太阳有关的属性影响锅的接收强度么?影响锅的接受效率么?
      反直觉3:完全没有一丁点影响。
      为什么没影响呢?这也很好理解,说到底,锅还是接受的球/云发出来的电,是电!不是接收太阳光,所以光照强度完全不会影响锅的接受强度,也不影响锅的接受效率。
      所以锅的射线接受方向和能源接收是分开算的!


      IP属地:山东3楼2023-10-25 15:38
      收起回复
        好,我们现在可以接着问了
        问题4:什么东西在影响锅的接收强度?
        答:3个属性影响锅的接受强度
        其一:球壳半径与锅行星半径的比值
        其二:反直觉4,好理解但不太正确的的说法是,锅所在行星的地心到锅与太阳的夹角
        不好理解但正确的说法是,锅所在行星的地心分别到锅与太阳的空间向量积
        其三:反直觉5,行星的大气层厚度
        其一不解释,大家都懂。
        其二这个,就是大佬们经常说的:“锅要放极点”和“横躺自转最菜”。前面说了射线来的方向是太阳,那潮汐锁定面向太阳就有最大的接受强度。而非潮汐星球,赤道地区白天0°角强度最高晚上180°角强度最低,不能稳定暖锅,就会损失效率,因此一个正常星球有稳定南北极的极点就变成这个收太阳照射最最稳定的90°中间点,既能保证在合适的位置暖锅又不会掉到暖锅强度以下。横躺没有稳定的南北极,全球都没有一个稳定的暖锅点,除非全包。
        与太阳能板不同是因为,太阳能板不需要暖板!
        其三这个,没错,戴森球里的行星是有大气层厚度这个属性的。最厚的比如火山灰70米大气层,最薄的贫瘠荒漠0米大气层,地中海居中60米大气层。
        继续问问题5:那我找一个大气层比较厚的是不是就能在比较远的距离暖锅了?
        反直觉6:不能,大气层的相关运算在引力透镜里,不装透镜的锅=0大气。
        最后一个问题:我球比较小,透镜装上功率提升球供电不足,而且我全包了那都能暖锅,那我是不是就不放透镜了?
        反直觉7:不行,有透镜的锅比无透镜的锅省了35%左右的运算量,不管你包不包。
        没想到吧!加了一个透镜多了一层透镜运算量的锅居然比无透镜的锅省算力游戏帧数更高!
        这部分涉及到游戏的判断逻辑,有无透镜是个if的分支,有透镜部分的运算量比无透镜部分要少一些,但不管你有没有透镜,这个判断有没有透镜的if是省不掉的,因此实际比的算力是if里面的分支运算,结果就是,有透镜的运算量小。
        因此不管你包不包球,不管你多大球电多少锅,透镜是不能省的。球电超载带不动了拆锅也不能省透镜。


        IP属地:山东4楼2023-10-25 15:38
        收起回复
          下一个我写啥?


          IP属地:山东5楼2023-10-25 15:41
          收起回复
            回6楼@快乐的阿伟 井+3材料复合产线如图下2进上1进侧面1出,4材料的在2层再加一带做成2上2下进料侧面1出,讲就算了,这东西b站有教程:


            IP属地:山东8楼2023-10-25 18:49
            回复
              反驳@沐铁之心 全包并不能全接收:



              IP属地:山东9楼2023-10-25 19:20
              收起回复
                既然说到锅了,那就顺着说一点球相关的吧。
                前文提到了锅的条件一:壳半径与锅所在星球轨道半径的比值。然而我们在实际游玩中,一般不会只建一层壳,还有那些戴森云,所以问题来了
                问题1:壳半径是怎么算的?
                反直觉1:壳半径只记最外层壳。
                反直觉2:帆半径与壳半径算法不同。
                反直觉3:壳半径和帆半径相比,谁大算谁的。
                没错,不管你有多少层壳多少层云,真正参与锅的运算的只有1个经过运算的壳半径,真正的壳和帆只给球整体提供能量总值。
                那么问题可以扩展一下了
                问题2:最外层壳指的是哪层壳?
                答:指的就是本行星上Y键面板里,你所创建的半径最大的那层壳。
                那么哪里反直觉呢?反直觉4:不论这层最大壳上有没有东西,它都算是半径最大的壳。
                没错,空壳也算壳,在实际运算中,戴森壳最大半径以你创建球壳时生成的半径为准,而不管你有没有往上画节点框架之类的东西。0节点0细胞的壳只要你点了创建,那就是壳。
                所以我们可以有这样一种玩法:建一层最大的空壳来维持锅的接收强度,建一层小壳来应对前期的资源不足。


                IP属地:山东13楼2023-10-25 23:29
                收起回复
                  问题3:不同的壳或者云会遮挡吗?
                  反直觉5:不会。
                  还是前面说到的,计算只会记最大壳,因此不同的壳层和帆,最终发电是相加的总值加给最大壳。
                  至于为什么没有遮挡的设定,还是那个老生常谈的问题:制作组怕运算太多你电脑爆炸。要知道球壳的画法自由度相当高,谁知道玩家会画出来什么奇奇怪怪的球壳,不同层之间自转速度还不一样,至于帆更是一片一片散落的,如果要做遮挡,那就是一个不规则球面百万级三角面实时点光源投影渲染,这东西放在专业3D建模软件里出1帧的720p画面都要大几十分钟的,4K画面1帧按天计,怎么可能放在游戏里给你玩?所以为了照顾玩家们的钱包,还是省点运算量吧。
                  接下来就是一个奇怪的问题4:帆半径到底怎么算的?
                  反直觉6:这次不算最大帆半径了,而是一个奇奇怪怪的算法:最大帆半径*75%+平均帆半径*25%。
                  幸好帆轨可以交叉,多帆轨的可以全都拉最大来规避这个25%的半径损失,但如果你只打帆还是多轨的每个轨道半径还不一样,那实际最终帆轨半径肯定比你看到的最大帆轨小得多。
                  现在我们了解了壳半径和帆半径是怎么算的,那么结果很明显了,壳半径拉最大是对锅来说的最优解,因为壳半径没有平均稀释。


                  IP属地:山东14楼2023-10-25 23:30
                  回复
                    以上是壳和锅的关系,了解了这层关系之后,就可以聊一聊球的建设了。不过没什么可聊的就是了。简单说几点。
                    首先我们知道不管你建不建壳,只要你想通关的,就要搓那4000个白糖,那就需要至少有点帆在天上。这个打帆里面就有一些反直觉的东西了。
                    问题1:帆的入轨点是怎么算的?
                    反直觉1:打帆星到恒星连线,以右手定则做连线的垂线,与帆轨的交点即为帆的入轨点。
                    简单理解一下就是,打帆球,入轨点,恒星组成一个直角三角形,恒星是直角点。
                    不少人第一次接触打帆的时候应该想过这东西要不然是打离星最近的轨或者是打切线的吧?但实际上制作组体谅玩家,选了一个运算量比较小入轨算法。
                    因此这里也出现了很多玩潮汐的误区:问题2:潮汐的向阳面一定可以打帆吗?
                    反直觉2:不能,只能说向阳面有不少位置能打但也有一大片俯仰限制的死区。
                    因为俯仰限制这东西的存在,帆在赤道区有一大片仰角太高的,极地区又有一大片仰角太低的,不过这个限制啥星球都有,不只是潮汐的问题。
                    潮汐真正的问题是,向阳面是正对恒星的,是直角三星的直角边,帆入轨打的是斜边,因此向阳面有一部分位于打帆死区看不到入轨点,黑夜面反而有一片打帆区能看到入轨点。但每个潮汐星球的轨道不同,形成的直角三角形就不一样,因此实际一个潮汐到底哪里能打哪里不能打建议还是直接铺全球4845弹射器打一打就知道了,能打的留下不能打的拆了


                    IP属地:山东15楼2023-10-26 00:50
                    回复
                      说到全球弹射器,4845正常能有35%左右的在打,其余的俯仰限制,也就是每分钟大约4845*40*35%=6.9万帆在打,而我们知道打帆很卡的,那么问题来了
                      问题3:打帆的哪个阶段最卡?
                      反直觉3:帆从炮里出来到入轨前这段路程上最卡。
                      为什么会这样呢?因为帆入轨后就是轨道帆量+1和帆寿命的倒计时,入轨前是个物品躺在传送带上和箱子里,只有入轨的这段路,星球有自转有公转,每一片打出去的帆都是独立轨道,这运算量可太大了,一个球的火力全开就足以把你帧数打骨折。因此在这里感谢橙棂九月大佬的mod可以跳过这一段打帆运算提升帧数(严格来说算作弊)


                      IP属地:山东16楼2023-10-26 00:50
                      回复
                        好,帆入轨了,该成壳了,那么这里就有一个经典问题了
                        问题4:壳的框架建设到什么程度节点才能开始吸帆?
                        反直觉4:不需要框架,节点成了就能吸帆。
                        没想到吧,制作组在这里又体谅了玩家一下,省了框架的运算只按节点运算,省下了很多的算力。
                        所以只要一个壳的所有的节点建设完成了,就算框架是空的,有壳面就能开始吸帆成壳。
                        最后1个问题:没框架我怎么画壳面呢?
                        反直觉5:还真能画。
                        让我们来捋一下我们画球壳的顺序:先画节点→框架连接节点形成封闭图形→点击成壳。
                        有没有发现这里面可以操作的部分?就是这个节点和框架,我们其实是分开两步画的!这里就有了很大的操作空间。接下来就是怎么利用这两步中间的空隙。
                        这时候就要轮到小火箭出场了,节点和框架都是小火箭做的,那有没有一种可能?如果我没有小火箭,就无法建设框架。
                        于是一个神奇的思路诞生了:先画节点→发射小火箭建设所有的节点→拆了所有的小火箭→画框架→没有小火箭无法建设框架→但框架画出来了不影响画壳→能画壳就能吸帆。
                        对于这种戴森球,我们有一个形象的名字:豆腐渣球。
                        此种戴森球适用于0.1倍资源大前期资源紧张的情况下,省下来的小火箭能省很多矿,要知道小火箭的矿物用量可是比白糖还要多很多的。


                        IP属地:山东17楼2023-10-26 00:51
                        收起回复
                          提到节点,那有一个新问题了
                          问题6:戴森球到底哪部分运算在卡你?
                          反直觉6:只有节点和框架,壳面在戴森球里没运算。
                          在上古时期,大佬们有一个经典言论:戴森球的壳面太卡了,建球要建钢丝球。没错,上古戴森球的壳面承担了非常多的运算,卡的玩家们纷纷怀疑人生,并因此引来了许多玩家想尽各种办法往可面上排节点来增加发电量,毕竟单框架发电量并不高。从原初的1920节点到现在2720节点,向壳面塞节点一直在探索中,现在也没有停下。
                          但是!历史的拐点在2022年1月17日到来,这一天,制作组发布了一个视频,名字叫《好消息!蓝巨星戴森球即将获得“史诗级性能优化”~》。此视频中制作组演示了一个全壳面的蓝巨星超大戴森球,且游戏画面非常流畅。自此以后,壳面仅作为能量加值,不再承担球壳运算,运算任务交给了用量比较少的节点和框架。于是历史翻转了,钢丝球这种全框架结构被扫进了历史的垃圾堆,其后更是有大佬通过程序算法算出了450节点最短框架戴森球蓝图,这张图因其优秀的帧数表现成为了现在不论何种情况下都最优先推荐使用的发电用戴森球蓝图。


                          IP属地:山东18楼2023-10-26 00:51
                          收起回复
                            一时之间不知道写啥了,那就写个进游戏肯定需要做的事情:发电。
                            发电相关的内容其实挺少的,不过戴森球这个发电系统确实有反直觉的地方。
                            首先,问题1:好好的火电为什么会烧黄了停机?
                            反直觉1:戴森球的发电机都是按需发电的,而不是常态满额发电。
                            按需发电这种事情其实挺好的,用电低那发电就低,发电低燃料消耗就低,玩家就不用太过刻意关注燃料的消耗问题,对新手是比较友好的。
                            但问题恰恰出在这里,玩家没有刻意关注燃料的消耗问题!
                            举例:火电机满载2.7mw功率,80%效率,2.16mw发电,煤正好2.7mj能量,也就是满载火电1秒1个煤。出门黄带运载量6每秒,因此一个黄带满载6个火电机的煤正好。
                            相信到这里你已经看出来问题了,黄带6火电满载,多了就会供煤不足,但游戏里一个黄带带20个火电煤还供得上的场景有很多。
                            所以我们算错了?并不是,这里就要提到戴森球里所有的发电机都有的一个特性:按需发电。
                            前面说到火电实际发电2.16mw,那如果我此时整个电网的负载只有1.08mw,也就是一半,那火电机只会发一半的电。也就是游戏面板虽然显示了2.16mw的功率,但火电机实际只提供了1.08mw的需求。这有什么好处呢?好处是燃料也会按需消耗,一半的电就是一半的燃料消耗速度,原本满载1秒烧1颗的煤现在半功率供电变成了1秒烧0.5煤。
                            现在我们继续,如果我放两台发电机,现在电网提供了总计2.16*2=4.32mw最大功率,电网耗电还是刚才的1.08mw,此时电网负载下降到1/4,燃料消耗也会下降到1/4,此时燃料消耗速度是1煤*(1/4消耗)*2台发电机=0.5煤。
                            继续增加发电机,加到4台,现在电网8.64mw总功率,1.08mw耗电,燃料下降到原本的1/8,1*(1/8消耗)*4台发电机=0.5煤。还是那么多的煤。
                            所以火电的停机就很明确了。
                            反直觉2:火电的真实发电量,取决于这条传送带能送多少煤,而不是有多少发电机。
                            真实的黄带就是6煤每秒,每个煤提供2.16mw满载发电,合计提供2.16*6=12.96mw电网满载供电功率。
                            如果你在耗电只有1.08mw的时候在一条黄带上怼了20个发电机,电网会给你显示43.2mw发电量,并且因为实际耗电低只消耗0.5煤所以发电机看起来正常,一旦你的耗电量超过了一带满电12.96mw,煤就供不上了,前面的6台满载后面的缺煤导致电网总功率最终掉到12.96mw,你的电就黄了。


                            IP属地:山东30楼2023-10-27 17:04
                            收起回复
                              那么问题来了,问题2:这不还是有12.96mw的发电么,火电停机是什么原因?
                              这就是什么反直觉的事情了,电量低了嘛,电网里所有的耗电设施共享电量,所以这时候会按比例降速来维持低电量工作,那煤是谁给的?煤是采矿机给的。现在啥情况?缺电了要降速降低煤的开采速度。煤采少了会怎么样?会导致原本12.96mw的煤进一步减少数量。如此一个恶性循环形成了:缺电→采矿机降速→缺煤→更缺电。
                              但这个循环中,其实有一个反直觉的问题存在:假如,我是说假如,我在采矿机和火电机中间放了非常非常多的大箱子存煤,即使采矿机速度不够了我还有缓存,阁下又该如何应对?
                              反直觉3:爪子也是个耗电设备,而且比你想象中要耗电高得多。
                              你存在箱子里的煤总要用爪子拿出来放传送带吧?你火电机总要爪子运煤进火电吧?现在电网的电不够了,实际上第一个反应过来的就是爪子,电不够了爪子抓煤会降速!所以实际上火电的恶性循环是:缺电→爪子降速→火电供煤不足发电降低→进一步缺电→爪子进一步降速→电网崩溃。
                              现在你已经了解了火电崩溃的根本原因,那其它的发电机有没有这个问题?
                              是有的,核电和小太阳同样有缺电后导致制造速度降低,速度降低导致燃料产出减少,燃料减少导致发电进一步降低的恶性循环。但一般我们不提这俩发电机是因为我们有3级传送带了呀!氘棒和黑棒这俩燃料棒本体的能量密度很高,一个3级增产氘棒在核电机里烧40秒,一个3级增产黑棒在小太阳里烧50秒,不是煤这种1秒1个的东西。一个三级传送带满速每秒120个物品,因此实际上一个满速蓝带可提供核电机120*40=4800台核燃料或者120*50=6000台小太阳燃料。对比黄带6个火电超载,后期发电只要制造量足够了,是不会发生传送带速度不足的问题的。


                              IP属地:山东31楼2023-10-27 17:04
                              收起回复