You are viewing a potentially older version of this package. View all versions.
BOBO550-EnergyHub-1.16.1 icon

EnergyHub

玻璃棱镜输电塔:星球间按需自动输电,内置超大蓄电器(20 级 100 GJ→1 PJ,封顶 50 TW),升级材料阶梯递增,8 个传送带进口,三级增产剂提速 ×2。

Date uploaded 3 days ago
Version 1.16.1
Download link BOBO550-EnergyHub-1.16.1.zip
Downloads 1
Dependency string BOBO550-EnergyHub-1.16.1

This mod requires the following mods to function

xiaoye97-BepInEx-5.4.17 icon
xiaoye97-BepInEx

BepInEx5.4.17 mod plugin framework, Mod框架

Preferred version: 5.4.17
CommonAPI-DSPModSave-1.2.2 icon
CommonAPI-DSPModSave

Library that allows to store mod save data separately from vanilla saves

Preferred version: 1.2.2
CommonAPI-CommonAPI-1.6.7 icon
CommonAPI-CommonAPI

A modding library for Dyson Sphere Program. Currently is under development.

Preferred version: 1.6.7
xiaoye97-LDBTool-3.0.3 icon
xiaoye97-LDBTool

Library that allows mods to add and edit Proto data. Also allows you to see Proto data, config ID's of mod Protos and change localized strings

Preferred version: 3.0.3

README

星际能量枢纽 (Interstellar Energy Hub)

《戴森球计划》MOD —— 一座既能当超大容量蓄电器、又能在星球之间直接输电的后期巨构。 玻璃棱镜塔身,塔顶三颗金翠双色能量球绕核心公转,外围六圈同心能量环。

项目 内容
版本 1.16.1
游戏版本 0.10.35(Unity 2022.3 / BepInEx 5.4.x / Mono)
依赖 BepInEx 5.4.17、CommonAPI 1.6.7、LDBTool 3.0.3、DSPModSave 1.2.2(用 r2modman 安装会自动装齐)
源码 / 问题反馈 https://github.com/bo5501/EnergyHub
作者联系 QQ 1570246504,或到 GitHub 提 Issue
多人联机 支持 Nebula(可选装):主机结算、客户端只读同步(1.14.0)
大型 MOD 兼容 尽力兼容创世之书(ProjectGenesis):材料缺失时自动降级并写日志

星际能量枢纽:功能与用途

**星际能量枢纽(Interstellar Energy Hub)**是游戏后期解锁的一座大型电力建筑,把 「超大容量储能」与「星球之间直接输电」做进同一座塔里 —— 它既是容量远超原版蓄电器的 储能站,也是星球与星球之间的直连电力通道。玻璃棱镜塔身,塔顶三颗金翠双色能量球绕核心公转, 外围六圈同心能量环随功率流动明暗。

一、它做哪三件事

1. 星球间输电(核心用途) 在 A 星放一台发送端、B 星放一台接收端,两端点一下「连接」就成一条链路。之后 B 星缺的 电由 A 星直接补上:不经运输船、不占物流塔、不用搬电池,同星系与跨星系都支持,距离不影响速率。 星球未加载时链路保留,加载后自动续传。

2. 超大容量储能(内置,不用另接) 能量池 20 级:1 级 100 GJ,每级约 ×1.62,满级 1 PJ,充放功率随容量一起长,硬顶 50 TW。 待机 / 发送 / 接收三种模式下它都兼职本地蓄电器:电网有余电就存、缺电就放,带 1% 死区不来回抖, 不需要在「储能」和「输电」之间切换。

3. 多端共享、按需自动分配 一台发送端可以同时挂多台接收端。份额不是平均分,而是每台接收端实时上报「我还能吃多少」, 按需求权重分配;池子已满的端权重归零直接退出,被在途账本或耗材卡住的份额自动转给还有空间的端。

二、典型用途

场景 怎么用
矿星 / 荒地供电 主星发电端 → 矿星接收端,矿星不必铺电网、不必运燃料,落地就能采矿
夜面与极地补能 向阳面太阳能 / 射线接收站发电,枢纽存起来,背光面持续取电
戴森球电力外送 把射线接收站集中的星球当发送端,戴森球电力分发到全星系各据点
电网削峰填谷 待机模式当纯蓄电器:白天存、夜里放,一台顶一大片原版蓄电器
跨星系联网 配翘曲器跨星系输送,比「物流塔 + 满电池来回运」省一大套产线
临时前哨 / 扩张期 新星球刚落地时先放一台接收端顶上,电网建好后再改回待机当储能

三、和原版「能量枢纽」的区别

原版能量枢纽靠蓄电器当载体:一颗星要充满得靠运输船把电池运来运去,本质是物流; 星际能量枢纽是直接能量链路 —— 发送端与接收端之间没有实体物品流转(只按传输量扣 信息矩阵 / 翘曲器),功率随能量池等级一起长,满级 50 TW,也不需要有人管电池。

上手最短路径:科技树研究「星际能量枢纽」→ 制造两台 → A 星设发送、B 星设接收 → 点连接。 发送端卡槽里备好信息矩阵(跨星系再加翘曲器与引力透镜),链路就会一直工作。

核心特性

  • 运行时生成的独立建筑:六棱玻璃棱镜塔 + 内部光柱,不用 AssetBundle,模型和 PrefabDesc 全部由 C# 构建。
  • 三种模式,蓄电器内置:待机 / 发送 / 接收。发送与接收模式下能量池自动充放(1% 死区消抖),没有多余的「储能」按钮。
  • 20 级能量池:1 级 100 GJ,每级约 ×1.62,满级 1 PJ。
  • 升级材料阶梯递增:每 4 级一档,1~4 级 1000 空蓄电器 + 2000 引力矩阵,到 17~19 级涨到 3500 + 12000, 两种材料都必须凑齐;卡槽送料(手动或传送带)自动累积进升级进度池,可跨多次投料,也能随时退回。
  • 功率随容量增长,硬顶 50 TW:充放 = min(50 TW, 容量 / 20 秒),任何等级满池约 20 秒充满,满级正好卡在 50 TW;星际传输 = min(50 TW, 容量 / 100 秒)。
  • 按需自动分配:一台发送端挂多台接收端时不再平均分。每台接收端实时上报「我还能吃多少」,池子已满的端权重归零直接退出,被在途账本或耗材卡住的份额自动转给还有空间的端。
  • 三级增产剂提速:卡槽放入「三级增产剂 Mk.III」(1143),星际传输速率 ×2,传输期间每秒消耗 1 个。
  • 8 个传送带进口:底座前后各 4 个(原版只认 4 个,剩下 4 个由 MOD 自己读取实体连接点取料)。
  • 科技树解锁:节点挂在**「能量枢纽」科技**(解锁能量枢纽建筑那条)的右下方一格、 卫星配电系统正下方,用信息矩阵研究;找不到该科技时退回「信息矩阵」正后方。
  • 点对点链路:接收端主动发起连接,发送端显示谁连了过来;星球未加载时链路保留,加载后自动续传。
  • 实时读数:电网状态、当前储量 / 总容量 + 百分比、传输速率、累计收发、在途能量。
  • 存档安全:链路状态与能量池等级通过 DSPModSave 保存;1.6.x 老存档读入后能量池按 1 级计算。

安装

方式一:r2modman / Thunderstore Mod Manager(推荐,自动装前置)

  1. 打开 r2modman,选择 Dyson Sphere Program,进入自己的 profile。
  2. 在 Online 列表里搜索 EnergyHub(或星际能量枢纽),点 Download with dependencies。
  3. r2modman 会按 manifest.json 的 dependencies 自动下载并安装全部前置 (BepInEx 5.4.17、CommonAPI 1.6.7、LDBTool 3.0.3、DSPModSave 1.2.2),不需要你一个个找。
  4. 点 Start modded 启动游戏即可。

只有「导入本地 zip」(Install from file)这种方式不会自动拉前置,此时请照下面的依赖表手动装齐。

方式二:手动

把压缩包解压到游戏根目录(含 DSPGAME.exe 的那一层),最终结构应为:

Dyson Sphere Program/
  BepInEx/
    plugins/
      EnergyHub/
        DSPEnergyHub.dll

依赖(前置 MOD)

依赖包 版本 作用
xiaoye97-BepInEx 5.4.17(5.4.x) MOD 加载器,所有 MOD 的基础
CommonAPI-CommonAPI 1.6.7 运行时注册物品 / 建筑 / 科技
xiaoye97-LDBTool 3.0.3 修改配方与物品数据
CommonAPI-DSPModSave 1.2.2 存档读写(链路状态、能量池等级)

在 Thunderstore / r2modman 上安装时这 4 个前置会随本 MOD 一起自动装好,不用手动处理。 只有手动解压或离线导入本地 zip 时,才需要自己把上面 4 个也装上。

如果启动报 missing dependencies: dsp.common-api.CommonAPI,多半是 CommonAPI 没装或版本不对。

使用方法

1. 先研究科技

打开科技树,找到**「能量枢纽」科技**(就是解锁原版「能量枢纽」建筑的那条,原版叫 「星际电力运输」),它右下方一格、卫星配电系统正下方就是新增的「星际能量枢纽」 (创世之书里是 (25,-7))。研究消耗信息矩阵(每 3600 hash 配 20 个,节点上会显示总数), 属于后期解锁。

找不到这条科技(例如别的 MOD 改过配方体系)时,节点会自动退回**「信息矩阵」正后方**, 日志里会写明最终挂在哪。本 MOD 的科技节点和创世之书一样走 LDBTool 的注册队列 (PreAddProto),在游戏建科技表那一批里一起加入,所以不会被创世或别的 MOD 建表冲掉。

2. 制作

解锁后在制作面板出现「星际能量枢纽」,组装台 5 秒:

材料 数量
能量枢纽 5
射线接收站 5
蓄电器 100
处理器 5

3. 放置并设模式

放在电网上(未接电网不能充也不能发)。点击建筑打开面板:

  • 待机 —— 池子保持当前电量,什么都不做;
  • 发送 —— 从本地电网抽电存进池子,等接收端连上来;
  • 接收 —— 在列表里选一台发送终端,点「连接」。

发送 / 接收模式下能量池自动兼职蓄电器:电网有余电就充、缺电就放,全自动。

4. 给发送端备料

卡槽 6 × 14 = 84 格,也可以直接用传送带送料(前后各 4 个进口):

链路 发送端消耗
同恒星系 每 200 MJ 消耗 1 个信息矩阵
跨恒星系 每 200 MJ 消耗 1 个空间翘曲器 + 1 个引力透镜

缺料不会硬停,会降到 50% 速率继续传。想让链路提速,再往卡槽放三级增产剂 Mk.III(1143), 传输速率 ×2,传输期间每秒扣 1 个(不传能时不扣)。

5. 升级能量池

面板底部升级区,每级都要两种材料同时凑齐:空蓄电器(物品 2206,不是满电的 2207) 和引力矩阵(物品 6005)。材料需求按阶梯递增——每 4 级抬一档,越往后越贵:

等级区间 升到下一级需要 档位涨幅
1 ~ 4 级 1000 蓄电器 + 2000 引力矩阵 起始档
5 ~ 8 级 1400 蓄电器 + 3200 引力矩阵 ×1.4 / ×1.6
9 ~ 12 级 1900 蓄电器 + 5000 引力矩阵 ×1.36 / ×1.56
13 ~ 16 级 2600 蓄电器 + 7800 引力矩阵 ×1.37 / ×1.56
17 ~ 19 级 3500 蓄电器 + 12000 引力矩阵 ×1.35 / ×1.54

材料不用一次凑齐。 送进卡槽的材料(手动投入、或 8 个传送带进口自动送料) 会被自动累积到升级进度池,面板上每格显示「已投 / 本级需求 + 百分比」, 攒够两样再点「升级」。投多了也不浪费,按当前等级需求封顶,多出来的留在背包或卡槽。 点格子右边的「退回」可以把已投材料取回背包。

等级 容量 充放电功率 星际传输 累计消耗(蓄电器 + 引力矩阵)
1 100 GJ 5 GW 1 GW —
5 695 GJ 34.8 GW 6.95 GW 4000 + 8000
10 7.85 TJ 392 GW 78.5 GW 11500 + 25800
15 88.6 TJ 4.43 TW 886 GW 22400 + 56400
20 1 PJ 50 TW(封顶) 10 TW 38100 + 108000

从 1 级升到 20 级共 19 次升级。充电功率只取决于电网空闲量,不受等级限制: 电网余量越大充得越快,不会出现「等级低所以卡在 30 MW」的情况。

参数速查

项 值
能量池容量 100 GJ(1 级) → 1 PJ(20 级),指数曲线 ×1.62/级
充放电功率 min(50 TW, 容量 / 20 秒)
星际传输功率 min(50 TW, 容量 / 100 秒)
传输提速 ×2(三级增产剂 Mk.III,每秒 1 个)
升级材料 阶梯递增:1000+2000(1~4 级)→ 3500+12000(17~19 级),两种都必需
升级进度池 卡槽送料自动累积,跨多次投料,可退回
消耗品卡槽 6 × 14 = 84 格
传送带进口 8 个(前后各 4)
传能消耗 每 200 MJ 1 个
待接收账本上限 4 × 池容量

已知限制

  • 塔顶特效跟着电网走:没电或电网没有空闲能量时,能量环与光柱会慢下来甚至停下,这是设计如此,不是 bug。
  • 内置蓄电器用 电网容量 − 电网需求 判断,带 1% 死区,电网大致平衡时会保持不动,不会来回抖。
  • 多人联机:主机结算,客户端只能看不能操作(见下方「联机」章节)。
  • 只在游戏 0.10.35 上编译测试,其它版本可能需要重新编译。
  • 只有 ±Z 两面有带口,±X 两面是实心面板,请把传送带引到前后。

联机(Nebula)

这是可选功能:不装 Nebula 就完全按单机跑,本 MOD 不会因此要求你安装任何额外框架。

装了 NebulaMultiplayerMod 后:

端 能做什么
主机(Host) 全部功能:结算充放电、传能、扣料、升级,并把状态广播给所有人
客户端(Client) 看到准确的能量池储量 / 等级 / 对接关系 / 累计收发 / 特效;切模式、连接、升级、投料需在主机端操作

设计上采取「主机权威」:

  • 客户端不再本地跑结算。Nebula 的客户端原本也会模拟自己星球的工厂,如果两边都扣料、都搬能量, 很快就会对不上,还会触发 Nebula 的 desync 警告。
  • 主机每 0.5 秒广播一次全部枢纽的状态(每台 34 字节),客户端直接覆盖显示值。
  • 客户端面板底部会提示「能量结算由主机负责」,相关按钮置灰,避免点了没反应。

与创世之书(ProjectGenesis)兼容

创世之书保留了本 MOD 依赖的全部原版物品 ID(信息矩阵 6004、引力矩阵 6005、 增产剂 1143、蓄电器 2206),所以基础功能可以直接共存。针对它的大改动作了这些处理:

  • 科技节点(1.16.0):节点挂在**「能量枢纽」科技右下方一格**(原版叫「星际电力运输」, 创世之书里是 21,-3 → 25,-7,也就是卫星配电系统正下方)。锚点按「物品 → isPowerExchanger 标志 → 配方 → 科技」反查,不认名字、不认语言,创世给它改名也不影响。 节点在 Awake 阶段就交给 LDBTool 的 PreAdd 队列(id=1999),和创世之书自己的 143 个 科技在同一批里建表,所以不会被它的整表覆盖冲掉 —— 这是上一版「科技树里找不到节点」的真因。
  • 科技节点定位兜底:找不到空格就「向右往下探、再换下一列」,保证一定放得下。
  • 配方降级:启动时按中英文名重新解析配方原料;某个物品在当前环境里不存在时, 从配方里去掉那一项并写日志,而不是让整个配方注册失败。
  • 模型数组:创世之书会把 modelArray 扩到 1024,我们的补挂逻辑放在它之后执行, 避免建筑模型被覆盖成不可见。
  • 启动自检:LogOutput.log 里会打印一段「兼容自检」,列出创世之书 / Nebula 是否在、 以及关键物品的解析结果,出问题时先看这段。

注意:创世之书大幅改写了配方体系与矿物分布,本 MOD 的配方成本在它下面会显得偏便宜或偏贵, 这是两套经济体系叠加的正常现象,不属于 bug。

反馈与联系

渠道 地址
GitHub 仓库(源码 / 更新) https://github.com/bo5501/EnergyHub
GitHub 提需求 / 报 bug https://github.com/bo5501/EnergyHub/issues
QQ 1570246504

报问题时请附上:游戏版本、BepInEx/LogOutput.log 里带 EnergyHub 的那几行、 以及出问题时的面板截图。有想加的功能也欢迎直接在 GitHub 开 Issue,写清楚期望的效果即可。

更新日志

只列最近两个版本;更早的记录见 GitHub 仓库的 Releases 与提交历史。

1.16.1

  • 发布页文案重写:短描述改成「玻璃棱镜输电塔:星球间按需自动输电,内置超大蓄电器 (20 级 100 GJ→1 PJ,封顶 50 TW),升级材料阶梯递增,8 个传送带进口,三级增产剂提速 ×2」; 正文开头改成「星际能量枢纽:功能与用途」,分「三大功能 / 典型用途 / 与原版能量枢纽的区别」三段, 先说清这座塔能干什么、什么场合用,再讲参数与做法。本版无玩法改动。

1.16.0

  • 修「科技树里根本没有星际能量枢纽」:真因不是坐标算错,而是节点建得太早。 之前的做法是在 LDBTool 建表之前,反射把 TechProto 手工塞进 LDB.techs.dataArray; 而创世之书的 143 个科技是走 LDBTool 注册队列、在建表那一批统一加入的, 建表一完成,我们手工塞的那条就不在表里了,科技树的节点列表自然遍历不到它。 日志里那行 科技节点已注册 … 坐标=(41,5) 出现在 LDBTool Pre Loading... 之前, 就是证据(锚点还读到原版的 (37,9),说明创世也还没灌表)。
  • 现在改成和创世之书完全相同的套路:Awake 里用 LDBTool.PreAddProto() 提交一个 固定 id 1999 的科技节点,由 LDBTool 在 Pre Loading 阶段统一建表; 位置、前置、图标改到 PostAddDataAction 里再算(那时原版 + 创世的科技都已经就位)。
  • 建完会重算母节点的 postTechArray,科技树从「能量枢纽」科技画一条连线到新节点。
  • 日志新增一行 科技节点已就位: … 坐标=(25,-7) 前置=#1512 … 连线=ok,可直接确认成败。

English (summary)

A Dyson Sphere Program mod: the Interstellar Energy Hub, a late-game glass-prism tower that both stores a huge amount of power and transmits it directly between planets.

What it does — put a sender on planet A and a receiver on planet B, link them once, and B draws power straight from A: no transports, no logistics towers, no accumulator shuttling, same or across star systems. The built-in 20-level pool (100 GJ to 1 PJ, hard cap 50 TW) doubles as a local battery in every mode (charges on surplus, discharges on shortage, 1 % dead band). One sender can feed many receivers; shares are weighted by how much each receiver can actually absorb, full pools drop out and their share is re-handed to the rest.

Typical uses — powering mining outposts and fresh colonies without laying a grid, covering the night side with daytime solar, exporting Dyson-sphere power from a ray-receiver planet, peak shaving on an existing grid, or replacing warp-based battery logistics between star systems.

  • Three modes — Idle / Send / Receive. In Send and Receive the pool also acts as a battery for its local grid (charges on surplus, discharges on shortage, 1 % dead band, no extra mode).
  • 20-level pool — 100 GJ (L1) to 1 PJ (L20), about x1.62 per level. Upgrade cost steps up every 4 levels: 1000 Accumulators + 2000 Graviton Matrices at L1-4, up to 3500 + 12000 at L17-19 (both materials always required; 38100 + 108000 in total).
  • Upgrade progress pool — materials fed into the slots (manually or by belt) accumulate automatically, so a level never has to be paid in one delivery. The panel shows "invested / required + percentage" and the Upgrade button lights up once both are full.
  • Power — charge / discharge = min(50 TW, capacity / 20 s); interstellar transfer = min(50 TW, capacity / 100 s). Hard cap 50 TW.
  • On-demand distribution — receivers report how much they can absorb; the sender splits by that weight, drops receivers whose pool is full, and re-hands blocked shares to the rest.
  • Proliferator Mk.III (1143) in the boost slot doubles the transfer rate, 1 item/s while sending.
  • Eight belt ports (4 on each ±Z face) feed the 84-slot consumable grid.
  • Unlocked on the tech tree just below-right of the Energy Exchanger tech (the one that unlocks the vanilla Energy Exchanger building), i.e. directly under Satellite Power Distribution; researched with Information Matrices. If that tech cannot be found, the node falls back to the slot right after Information Matrix. The node is registered through LDBTool's pre-add queue (fixed id 1999), the same way ProjectGenesis registers its own techs, so a rebuilt tech table cannot drop it.

Install — in r2modman / Thunderstore Mod Manager pick this mod and hit Download with dependencies: the four prerequisites (BepInEx 5.4.17, CommonAPI 1.6.7, LDBTool 3.0.3, DSPModSave 1.2.2) are pulled in automatically from manifest.json. For a manual install, extract so that BepInEx/plugins/EnergyHub/DSPEnergyHub.dll sits in the game folder and install those four dependencies yourself.

Recipe — 5 Energy Exchanger + 5 Ray Receiver + 100 Accumulator + 5 Processor.

Link cost — 1 Information Matrix per 200 MJ in the same star system; 1 Space Warper plus 1 Graviton Lens per 200 MJ across star systems. Without the items the link still runs at 50 % rate.

Source / feedback — https://github.com/bo5501/EnergyHub (open an Issue for bugs or feature requests). Author contact: QQ 1570246504.

Multiplayer (optional) — works with NebulaMultiplayerMod. Host runs the simulation and broadcasts hub state to clients every 0.5 s; clients are read-only (switch mode / connect / upgrade on the host). Nebula is a soft dependency: without it the mod runs exactly as single-player, and it is not listed in manifest.json dependencies. Compatible with ProjectGenesis (GenesisBook): item IDs are preserved, recipe ingredients are resolved by name at runtime and missing ones are dropped with a log line instead of breaking the recipe.

Limits — built for game version 0.10.35; effects stop when the grid has no surplus (by design).