starfield吧 关注:72,696贴子:1,840,730
  • 23回复贴,共1

为什么所有人看到的景色都不一样?星空背后的种子生成逻辑

只看楼主收藏回复

原贴地址


IP属地:福建1楼2024-03-11 15:12回复

    《星空》的程序生成是随机的,不同于旧的BGS游戏(匕首雨)。或者至少默认情况下是随机的。这包括太阳系——地球、火星和几乎所有程序生成的东西,在不同玩家看来都不一样。
    如果玩家A与玩家B访问火星上的同一地点,则两人所见的兴趣点和景观将不匹配。


    IP属地:福建2楼2024-03-11 15:14
    回复
      简言之
      如果你愿意,有一种方法可以改变种子
      加载游戏
      打开控制台,输入:setini“iPlanetContentManagerSeed:Planet”14731564
      保存游戏
      你只需要做一次。继承的存档将具有相同的种子值。在游戏中途更改种子不应影响您已经访问过的位置。(可以看看最近那个视频,着陆点的显示上限为4个但是保存上限近30个)
      同一命令嵌入到nexus的批处理文件中: n网mod 4915
      我分享的种子是哥白尼/伽利略的出生日期的组合,但请随意使用您自己的数字。因此,每个玩同一颗种子的人都会看到完全相同的世界。这将是程序性的,但不是随机的。这意味着——无论玩家A降落在哪里,ta的经历都会与玩家B在这个星球上的位置相匹配——相同的兴趣点,相同的风景。
      天气和事件会有所不同。如果有人发现了一些有趣的东西,ta可以与社区分享坐标,其他人也可以访问这个位置,就像匕首雨(1996)一样。在我看来,这给探索带来了价值,尽管有些玩家认为随机世界更适合游戏传说。
      视频证据和更多细节:

      (我转载到b站了,搜flexcreator即可)


      IP属地:福建3楼2024-03-11 15:15
      回复
        b站有人发视频了


        IP属地:北京来自Android客户端4楼2024-03-11 15:15
        收起回复
          长期技术性:
          星空是如何工作的?
          行星名称和行星生物群落数据是固定的,并存储在游戏文件中。然而,“着陆”是基于种子按程序生成的(兴趣点和景观)。被称为“星球内容管理器”的游戏子系统具有种子值。每次创建新角色时,种子都会随机生成,并写入存档。相同的角色将携带相同的种子,但一旦你创建了一个新的角色,新的角色将探索一个完全不同的宇宙。

          如果我们深入了解游戏的内部工作原理-每次启动游戏并进入主菜单时,它要么使用StarfieldPrefs/StarfieldCustom中的iPlanetContentManagerSeed值,要么(如果iPlanetContentManagerSeed的值为0)随机生成新种子。如果您启动一个新游戏并从主菜单创建新角色,“星球内容管理器”将使用此值进行初始化。
          主菜单中的游戏内存:

          游戏内存从主菜单开始新游戏后,种子会继续:

          我们可以通过转储游戏内存并搜索种子值来验证它。第一个条目是INI读数,第二个条目是行星内容管理器结构


          IP属地:福建5楼2024-03-11 15:18
          收起回复

            请注意,ini值仅作为输入,不同步以表示地形生成中使用的实际种子。这意味着,如果加载保存游戏并键入-geini“iPlanetContentManagerSeed:Planet”,它将不会显示正确的值。读取所用实际值的唯一方法是读取游戏内存,Planet Content Manager属性开头的第一个DWORD(4字节)是实际种子。也许将来可以通过Papyrus脚本来完成。
            Content Manager属性:前4个字节始终表示种子整数。


            IP属地:福建6楼2024-03-11 15:20
            回复
              因此,不要试图使用StarfieldPrefs.ini/StarfieldCustom.ini为已经存在的角色/存档更改种子-这将不起作用。
              以下是检查哥白尼/伽利略种子是否正常工作的参考资料:
              参观位于月球(太阳系)的这个地点:


              它应该是这样的:


              IP属地:福建7楼2024-03-11 15:21
              回复
                同意这种生成的基本逻辑,但结论嘛,对一半错一半吧。多周目部分还没验证过。


                IP属地:上海来自Android客户端8楼2024-03-11 17:05
                收起回复
                  景色其实是一样的,你所说的使用种子控制地貌生成没啥问题,但你为啥会觉得他要给每个人不同的种子


                  IP属地:吉林来自Android客户端9楼2024-03-11 21:03
                  收起回复
                    嗯... 那能不能做一个rimworld MOD-- rimfield


                    IP属地:河南10楼2024-03-11 22:19
                    回复
                      这么专业啊,好厉害


                      IP属地:黑龙江来自Android客户端11楼2024-03-11 23:20
                      回复
                        话说星空的DLC现在做的如何了?到什么进度了?


                        IP属地:新疆来自Android客户端12楼2024-03-12 12:10
                        收起回复
                          如果在游戏中使用命令更改了角色的样貌,那么会影响种子啥么?


                          IP属地:北京13楼2024-03-12 12:35
                          收起回复
                            我靠什么6666


                            IP属地:江苏来自Android客户端14楼2024-03-29 20:02
                            回复