找回密码
 注册
X系列官方授权正版
搜索
查看: 8789|回复: 12

[转帖] 妖王全部5个数据仓库位置最可靠获取方法(亲测有效)

[复制链接]
发表于 2022-3-26 18:27:00 | 显示全部楼层 |阅读模式
本帖最后由 RAZORBACK 于 2022-3-26 20:23 编辑

转自https://forum.egosoft.com/viewto ... 45929&start=120,往下数第5楼

第一步,把在5.0+以及贪婪之潮DLC的存档复制一个出来,随便放一个地方,如果是压缩包就解压缩,直至看到一个xml文件,并记住这个路径;
第二步,在这个xml文件所在目录下,按住Shift并右键文件夹空白处,选择“在此处打开Powershell窗口”,如下图所示;

第三部,在打开的powershell界面中,粘贴如下代码,注意,将第四行的括号中替换为你解包后存档的位置及存档名,比如我是$Xml.Load("G:\models\save_007.xml\save_007.xml"),则如下图所示,然后回车运行;
  1. #This uses a fair amount of memory - if you have limited ram exit X4 first...

  2. $Xml=New-Object Xml
  3. #unzip .gz file with 7-zip or gunzip first or use uncompressed saves
  4. $Xml.Load("存档解包路径\存档文件名")
  5. $components=Select-Xml -Xml $Xml -XPath "/savegame/universe//component"
  6. $erl=$components | ?{$_.Node.macro -and $_.Node.macro.Contains("erlking")}
  7. $vaults = $erl | ?{$_.Node.macro -and $_.Node.macro.Contains("landmarks_erlking_vault")}

  8. #From hatevampire at https://www.reddit.com/r/X4Foundations/comments/thjbik/how_to_read_save_file/
  9. #Not sure where the real source of friendlyname is..

  10. $locationtoname = @{
  11.     cluster_500_sector001_macro="Avarice I"
  12.     cluster_500_sector002_macro="Avarice IV"
  13.     cluster_500_sector003_macro="Avarice V"
  14.     cluster_501_macro="Windfall I"
  15.     cluster_502_macro="Windfall III"
  16.     cluster_503_macro="Windfall IV"
  17. }

  18. $macrotocoords=@{
  19.      "Zone004_Cluster_503_Sector001_macro"="139680,0,-3215.59"
  20.      "Zone003_Cluster_500_Sector003_macro"="-115796.9,0,-96109.38"
  21.      "Zone002_Cluster_503_Sector001_macro"="-2269.199,0,165758.4"
  22.      "Zone006_Cluster_500_Sector002_macro"="-184409.83,0,-3343.0"
  23.      "Zone003_Cluster_501_Sector001_macro"="-97898.44,0,-23632.81"
  24.      "Zone003_Cluster_500_Sector001_macro"="-97898.44,0,-23632.81"
  25.      "Zone005_Cluster_501_Sector001_macro"="-23023.44,0,-160132.8"
  26.      "Zone004_Cluster_504_Sector001_macro"="157616.8,0,-84263.63"
  27.      "tzoneCluster_500_Sector002SHCon9_GateZone_macro"="-39827.2,0,200000"
  28.      "tzoneCluster_500_Sector002SHCon5_GateZone_macro"="-50000,0,200000"
  29.      "Zone001_Cluster_500_Sector003_macro"="-117046.9,0,82593.75"
  30.      "Zone001_Cluster_501_Sector001_macro"="-127062.5,0,133718.8"
  31.      "Zone005_Cluster_504_Sector001_macro"="-23023.44,0,-160132.8"
  32.      "Zone004_Cluster_500_Sector001_macro"="103164.1,0,-32492.19"
  33.      "Zone002_Cluster_500_Sector001_macro"="-10960.94,0,112070.3"
  34.      "Zone003_Cluster_500_Sector002_macro"="-7132.69,0,531.25"
  35.      "Zone002_Cluster_500_Sector002_macro"="-118489.4,0,-131687.5"
  36.      "tzoneCluster_500_Sector003SHCon9_GateZone_macro"="50000,0,200000"
  37.      "Zone005_Cluster_500_Sector002_macro"="98694.83,0,-126406.3"
  38.      "tzoneCluster_500_Sector001SHCon2_GateZone_macro"="66960.9,0,-207957"
  39.      "tzoneCluster_500_Sector003SHCon5_GateZone_macro"="40054.7,0,200000"
  40.      "tzoneCluster_500_Sector001SHCon10_GateZone_macro"="-45738.28,0,-200000"
  41.      "Zone005_Cluster_500_Sector003_macro"="34671.88,0,-152515.6"
  42.      "Zone001_Cluster_504_Sector001_macro"="-127062.5,0,133718.8"
  43.      "Zone003_Cluster_502_Sector001_macro"="-97898.44,0,-23632.81"
  44.      "Zone002_Cluster_504_Sector001_macro"="137904.1,0,135199.3"
  45.      "Zone005_Cluster_503_Sector001_macro"="-23023.44,0,-160132.8"
  46.      "Zone001_Cluster_500_Sector001_macro"="-127062.5,0,133718.8"
  47.      "Zone004_Cluster_501_Sector001_macro"="103164.1,0,-32492.19"
  48.      "tzoneCluster_500_Sector001SHCon4_GateZone_macro"="76886.7,0,-207957"
  49.      "Zone006_Cluster_502_Sector001_macro"="47000.0,0,172000.0"
  50.      "Zone002_Cluster_500_Sector003_macro"="44015.63,0,158125"
  51.      "tzoneCluster_500_Sector001SHCon6_GateZone_macro"="-55785.2,0,-200000"
  52.      "Zone002_Cluster_501_Sector001_macro"="-10960.94,0,112070.3"
  53.      "Zone001_Cluster_500_Sector002_macro"="-78593.63,0,157937.5"
  54.      "Zone003_Cluster_503_Sector001_macro"="-199365.3,0,-55454.45"
  55.      "Zone001_Cluster_502_Sector001_macro"="-127062.5,0,133718.8"
  56.      "Zone003_Cluster_504_Sector001_macro"="-226443.3,0,-97194.67"
  57.      "Zone005_Cluster_500_Sector001_macro"="-23023.44,0,-160132.8"
  58.      "Zone004_Cluster_500_Sector003_macro"="110359.4,0,7250"
  59.      "Zone001_Cluster_503_Sector001_macro"="-190039.3,0,180073.9"
  60.      "Zone005_Cluster_502_Sector001_macro"="-23023.44,0,-160132.8"
  61.      "Zone004_Cluster_500_Sector002_macro"="101721.7,0,100656.3"
  62.      "Zone002_Cluster_502_Sector001_macro"="108009.3,0,115933.7"
  63.      "Zone004_Cluster_502_Sector001_macro"="103164.1,0,-32492.19"
  64. }

  65. #Get offsets up the tree
  66. function Recurse-Offsets($node){
  67.     if($node.class -and $node.class -eq "galaxy"){
  68.         return @()
  69.     }
  70.     if($node.offset -ne $null){
  71.         if($node.offset.position){
  72.             $x=$node.offset.position.x
  73.             $y=$node.offset.position.y
  74.             $z=$node.offset.position.z
  75.         } else {
  76.             $x,$y,$z=0,0,0
  77.         }
  78.         if($node.offset.rotation){
  79.             if($node.offset.rotation.yaw){$yaw=$node.offset.rotation.yaw} else {$yaw=0}
  80.             if($node.offset.rotation.pitch){$pitch=$node.offset.rotation.pitch} else {$pitch=0}
  81.             if($node.offset.rotation.roll){$roll=$node.offset.rotation.roll} else {$roll=0}
  82.         } else {
  83.             $pitch,$roll,$yaw=0,0,0
  84.         }
  85.         if($macrotocoords[$node.macro]){
  86.             $x,$y,$z=$macrotocoords[$node.macro].Split(",")
  87.         }
  88.         $obj = [pscustomobject]@{
  89.             x=$x
  90.             y=$y
  91.             z=$z
  92.             pitch=$pitch
  93.             roll=$roll
  94.             yaw=$yaw
  95.             code=$node.code
  96.             macro=$node.macro
  97.             class=$node.class
  98.         }
  99.         return @($obj) + (Recurse-Offsets -node $node.ParentNode)
  100.     } else {
  101.         return Recurse-Offsets -node $node.ParentNode
  102.     }
  103. }

  104. . {
  105.     foreach($vault in $vaults){
  106.         $data=Recurse-Offsets $vault.Node
  107.         $sums = $data | Measure-Object -Sum -Property x,y,z
  108.         $location = $data |?{$_.class -eq "sector"} | select -ExpandProperty macro
  109.         if([string]::IsNullOrWhiteSpace($location)){
  110.             $location = $data |?{$_.class -eq "cluster"} | select -ExpandProperty macro
  111.         }
  112.         [pscustomobject]@{
  113.             location=$locationtoname[$location]
  114.             Xkm=($sums |?{$_.property -eq "x"}).sum/1000
  115.             Ykm=($sums |?{$_.property -eq "y"}).sum/1000
  116.             Zkm=($sums |?{$_.property -eq "z"}).sum/1000
  117.             blueprint=$vault.Node.connections.connection.component.blueprints |?{$_ -ne $null}
  118.             vault=$vault.Node.macro
  119.             code=$vault.Node.code
  120.         }
  121.     }
  122. } | ft -AutoSize
复制代码


第四步,安心等待,注意,可能运行时间稍长,而且比较吃内存;
第五步,运行完毕,在Powershell界面中出现如下信息,即表明这5个数据仓库所在星区和大致位置,然后就可以派一艘高速的飞船结合高级人造卫星来找到,注意,这里面x坐标向右为正,y坐标向屏幕外为正,z坐标向上为正,单位是km,关于星区的原点位置,我推测应该是默认情况下六边形的中央,但坐标数值在游戏中没有显示,那么可以参考高级人造卫星探测半径是75km、飞船自身雷达搜索半径40km,后面具体去找应该就不难了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2022-3-26 18:32:22 | 显示全部楼层
可怕,你游玩家太过硬核
回复

使用道具 举报

 楼主| 发表于 2022-3-26 18:35:58 | 显示全部楼层
Catuzki 发表于 2022-3-26 18:32
可怕,你游玩家太过硬核

别问,问就是德国蠢驴脑袋被同类踢了
回复

使用道具 举报

发表于 2022-3-26 19:06:16 | 显示全部楼层
这代码能不能转成极坐标啊,感觉找东西是不是极坐标好找点。三维坐标看不懂。。
回复

使用道具 举报

发表于 2022-3-26 22:39:51 | 显示全部楼层
本帖最后由 xiaoht 于 2022-3-26 23:51 编辑

这边再提供一个官方论坛上看到的方法

1.前两步同楼主
2.搜索:landmarks_erlking_vault_01_macro,把owner="ownerless"这行改成owner="player",如果没有就自己添加
3.同样处理其他几个:landmarks_erlking_vault_02_macro,landmarks_erlking_vault_03_macro,landmarks_erlking_vault_04_macro,landmarks_erlking_vault_05_macro
4.保存,去游戏里打开地图,搜索data vault就会高亮显示这5个数据库
5.这样操作会使存档变成modded,如果不想可以截图去原存档找

就像这样

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

点评

这个应该是最快最有效的  发表于 2022-5-26 09:00
回复 2 0

使用道具 举报

发表于 2022-3-27 02:15:20 | 显示全部楼层
这几个是随机的吗?
回复

使用道具 举报

发表于 2022-3-27 13:01:30 | 显示全部楼层
随机的,不过只刷在新的星区里
回复

使用道具 举报

发表于 2022-6-5 15:08:24 | 显示全部楼层
xiaoht 发表于 2022-3-26 22:39
这边再提供一个官方论坛上看到的方法

1.前两步同楼主

这才是最有效的
回复

使用道具 举报

发表于 2022-6-10 09:25:21 | 显示全部楼层
根据亲身操作改良如下:

第一步:同楼主一致,把在5.0+以及贪婪之潮DLC的存档复制一个出来,随便放一个地方,如果是压缩包就解压缩,直至看到一个xml文件,并记住这个路径;
第二步:用Ultraedit软件直接打开存档的xml文件;
第三步:按下Ctrl + F,在弹出的搜索框里搜索:landmarks_erlking_vault_01_macro,把owner="ownerless"这行改成owner="player",如果没有就自己添加,同样处理其他几个:landmarks_erlking_vault_02_macro,landmarks_erlking_vault_03_macro,landmarks_erlking_vault_04_macro,landmarks_erlking_vault_05_macro;
第四步:保存,去游戏里打开地图,搜索data vault(中文版游戏就搜索数据仓库),就会绿色高亮显示这5个玩家拥有的数据仓库;
第五步:依次去五个数据仓库,不用打开,靠近数据仓库70公里左右,游戏界面就显示解锁相应的蓝图,五个蓝图到手。
回复

使用道具 举报

发表于 2022-12-9 00:12:36 | 显示全部楼层
yonghu9922 发表于 2022-6-10 09:25
根据亲身操作改良如下:

第一步:同楼主一致,把在5.0+以及贪婪之潮DLC的存档复制一个出来,随便放一个地 ...

我用这个软件改完存档再读档进不了游戏,难道是因为我使用的是试用版的关系?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|DeepTimes.NET 太空游戏站