3l psi 发表于 昨天 17:36

【0.98a】【优化mod】Hypernova 无限引擎

本帖最后由 3l psi 于 2026-11-5 17:17 编辑


紧急提醒:
目前 Hypernova 围绕 FR 0.9.7-rc2 开发,对于这两天刚发布的 FR 0.9.8 ,暂不兼容。今晚上就修。好像工作量有点大,我先不说大话了(

加 mod 玩一时爽,一直加 mod 一直爽。但是随着加的 mod 越来越多,加载的体验就变得漫长而无比折磨了。

本 mod 聚焦于优化了a圣写的一些神奇东西(现场编译脚本,全量贴图&法线图的加载解码),把它们挪到了其它更合适的时机去做,以实现更快的加载速度优化。

当然,此 mod 不提供任何新玩法就是了,这是个纯粹的优化 mod

闲话少叙,以下是详细介绍。对于一般玩家真正有用的话我都加粗了,技术部分看个乐呵或者无视即可。

一,大体上此 mod 分两部分:

1.本体。它会在舰队发现、联系人对话、部署、进入星系这些时机,按帧预算预取接下来要用的舰船和武器贴图。没命中的照旧走原版加载。

2.Java agent 模块。它负责在类加载期,管理启动阶段的优化。我的 mod 还优化了一些别的 mod (当然,没了它们其实不耽误什么):Fast Rendering 的文件索引、Janino 脚本的预编译缓存、GraphicsLib 法线图的缓存补丁。另外还有纹理懒加载、显存淘汰、帧时间探针几个实验性模块,默认全关(当他们没有就行,想折腾另说)。

二,怎么装这个 mod ?

A.本体部分

1.解压,把 hypernova_infinite_engine 整个文件夹放进游戏目录的 mods
2.在启动器里勾选这个 mod
3.双击 hypernova_infinite_engine/hypernova-tools/generate-manifest.bat,稍等片刻
注:第三步还是很重要的!不然主 mod 会摸鱼少干很多活。

B. agent 部分

4.双击 hypernova-tools/install-agent.bat,按一次回车。
它会自己认出你的启动文件,把 -javaagent 那一行插在 Fast Rendering 的 agent 之前。这个顺序不能反,反了补丁会静默失效。每个改过的文件都留一份 .bak-hypernova-时间戳 备份,重复双击不会插出第二行。

什么,你说这么做之后,你的游戏连启动器都打不开了?

问题不大,双击 hypernova-tools\rollback-agent.bat。但建议发个贴向我反馈一下,我会来修 bug 的!
这个脚本的作用,就只是是把启动文件里 Hypernova agent 相关行删除干净,以实现回滚。
注1:虽然一般玩家应该不会这么做,但我在这里做出提醒:别改 mod 文件夹的名字,改了那一行就指向不存在的路径,游戏会直接启动不了。

然后启动游戏即可。

三,模组各默认值(选看)

主 mod 运行期预取|开|hypernova.json 里的 enabled
agent 文件索引|开|fileIndex.enabled
agent Janino 脚本缓存|开|scripts.enabled
agent 法线图缓存补丁|开|textures.enabled
纹理懒加载|关|textures.lazy.enabled
DDS 懒加载|跟随懒加载|textures.lazy.dds
显存淘汰和 LRU|关|textures.lazy.eviction.enabled
场景卸载|关|textures.lazy.eviction.sceneUnload
帧时间探针|关|-Dhypernova.frameProbe=true

注:后四项暂时关,因为尽管它们技术上的收益成立,但我在实机测试里,暂未找出任何稳定的收益。当然,如果你乐意跟我一起瞎折腾,自己想打开测试,那么感激不尽!

四,参考数据&预期优化效果

在 VramOpt + FR 0.9.7rc2 + Hypernova(agent , manifest 都正常开启) + 260 mod +Mikohime java 28,缓存已预热的测试环境下,我测试出了 47.6s 加载入主菜单的中位数结果。
作为对比,同环境下完全关掉 Hypernova,加载时间的中位数为 75.6s。

当然,我必须得说明,不同人电脑的cpu,硬盘读写性能不同,我的大量测试数据也表明,cpu,硬盘的占用,散热情况,后台占用等等,都会严重影响远神的加载性能表现。且远神的加载很吃 cpu 性能。因此我不保证每个人装260多个 mod ,都能在此组合下轻松跑到 50s 以内。作为参考,我的电脑配置为5070ti laptop + r9 9955hx +1tb pcie4.0 ssd。

五,兼容性和已知冲突

同表单,都是软冲突,只是会让部分模块不生效。

MixinFR,它基于 FR 0.9.5 ,Hypernova 的 agent 因此不会干活。

Fast Rendering 0.9.5 及更早,同理。文件索引和懒加载不适用,会 fail-open 走原版路径。

目前没发现会让游戏崩掉的硬冲突。

跑过的组合有 Fast Rendering 0.9.7rc2、VramOptimizer 1.0.45、GraphicsLib 1.12.1、260 mod 的整合环境、汉化测试版、四个字体 mod、十一个 UI mod。
菜单层面的纹理错误是 0。

叠个甲!由于测试量大的离谱了,中后期相当一部分测试我是将流程自动化后给 Claude Code 跑的。如出现莫名其妙的字体乱码,还请向我反馈!

六,我没做到的部分(燃尽了...)

测试没有覆盖到触发任意 mod 里特定的赏金,特定的任务线。

如出现问题,欢迎在帖内反馈。

七,我的游戏连启动器都打不开了/玩一半报错了,怎么办?(以下是关闭此 mod 的方法,此操作可逆)

1.双击 hypernova-tools\rollback-agent.bat,一步让 agent 跑路(其实到这一步你就可以再启动试试了,应该不会再出问题)
2.主 mod ,启动器里取消勾选(第二步结束,此mod就彻底关了)
注:其实也就比一般mod的开关多一步啦,也都是一键脚本就可以解决的,应该不太困难吧...?

八,Q&A,常见问题

Q1:它会动我的存档吗?
A:不会。它只在游戏目录里读写自己的配置和日志,日志落在 saves/hypernova/。

Q2:和 FR、VramOpt 等等优化 mod ,一起用行不行?
A:我举双手双脚推荐这么做!虽然此 mod 和 FR 的关系是软依赖,但是搭配 FR 可以非常有效的打连携进一步提升性能表现。
此外,据我测试,理论上此 mod 目前没有与之不兼容的其它优化 mod。当然,FR 0.9.5 及以前,和目前的 MixinFR 暂时是例外。

Q3:我装完了,感觉没区别啊?
A:温馨提醒:
manifest 是否基于你的游戏目录生成?(参考前文:“二,怎么装这个 mod ?”)还有,agent 加载了吗?

Q4:会不会影响平衡?
A:当然不会啦...这是个纯粹的优化 mod。

Q5:为什么这个 mod 这么大,十几 mb ?
A:我偷懒了...最后打包的时候一看,生成 manifest 的脚本居然基于 python。
但我今天真不想再调试了,燃尽了,故暂时用了个取巧的方式:打包了个很迷你的 python 进去。抱歉!

Q6:图呢?
A:这是个优化 mod,我在发布前还真没想过图的事。
emm...也许之后会基于名字,搞一张酷炫吊炸天的宣传图?

Q7:我装了此 mod,加载的好慢啊?
A:深呼吸,简略地说,第一次加载要缓存很多东西,因此会很慢,这是正常的。之后就会变快很多。

九,更新记录
注:(较简略,基于300多个 commit 挨个扒一遍版本号,我大概会累死罢(瘫))

1.9.5(2026-11-05),最新
当前版本。
- 进一步提升了 manifest 生成脚本的可靠性。
这下就算目录里如同核弹爆炸,它的解析应该也不会错了

1.9.4(2026-11-05)
当前版本。
- 修复了 Graphicslib 最新版(1.12.2)的兼容性问题,现在此 mod 兼容1.12.1,1.12.2;
- 修复了上个版本的打包,缺文件夹套在外面的问题;
- 提升了脚本的可靠性;
- 初始化 manifest 脚本增加了进度条,心跳和一条会来回游的小鱼。

1.9.3(2026-11-04)
1.0.0 之后累计九个 minor 版本和三个 patch,主要是诊断工具、环境审计、兼容性日志和一堆修复。

1.0.0(2026-11-02)
第一个功能完整的版本。从这个版本号起,主 mod、agent、manifest、懒加载, LRU 等均实现了。

十,许可

代码 Apache-2.0,文档 CC BY 4.0。附件, github 仓库均无任何其它 mod ,游戏本体,汉化包的二次分发。
我的测试环境里长时间使用了 Fast Rendering、VramOptimizer 和 GraphicsLib,谢谢这几位作者。

欢迎任何人转载、二次分发、打包进整合包,而无需单独向我申请授权。

只需遵守许可证:保留 LICENSE、NOTICE 和版权声明,注明你对代码的修改。

以上是摘要,具体以仓库 LICENSE/NOTICE 为准。

仓库地址:f25h-233/Hypernova-Infinite-Engine

这是发在制作发布区的测试版,有问题、有想法直接回帖。

一些发癫,本来寻思放在帖子最上面的,但是感觉过于无关了(

超级远神,我们的家园。
废船海,堆mod,外出抠坟...我们的游戏之道。
但爽玩...也有其代价。
(你的游戏进度条僵在那里,一动不动了差不多10分钟)
“不,我的游戏事业啊...不——!”
*INVASION*
哈哈,Looks familiar?
这样的场景,此时此刻正在全球各地(的远神玩家电脑上)上演!
u could be next。
除非,你能做出生命中最重要的决定!
向所有人证明,你拥有大战混淆和绿皮代码的勇气
加入...优化 mod 的行列吧!
成为 modder 里的精英!
见识奇异的抽象混淆代码(OO00ooOOO)
让管理式优化遍布各个 mod
成为社区的英雄
成为传奇(?
成为——jvav大佬。







黑白爱丽丝 发表于 昨天 17:59

远神,起飞!

3l psi 发表于 昨天 18:45

开发的过程是很爽的,打包,收尾,真的折磨啊...

在这里画个饼,之后我会出第二版的多mod组合优化教程。

朔风舞雪 发表于 昨天 19:51

这个和你之前写的那个贴,嗯就是把贴图压了的那些是并行的吗?
压贴图的办法很遗憾失效了(我怎么整都在看到主菜单界面前就跳出),单独用你这个效果如何?

相位自走洗衣机 发表于 昨天 19:51

我想知道mod内容的变动会不会让游戏每次启动都重新预加载?比如我自己做mod要频繁开关游戏,每次打开都会有些许内容变动,能否借助你的优化来降低debug时长?

3l psi 发表于 昨天 20:01

朔风舞雪 发表于 2026-11-4 19:51
这个和你之前写的那个贴,嗯就是把贴图压了的那些是并行的吗?
压贴图的办法很遗憾失效了(我怎么整都在看 ...

1.对,和那个是可并行(或者说叠叠乐)的,这个还优化了一下 Fast Rendering 的部分实现(若你安装了FR,不安装也无影响)
2.单独用的话,效果不会那么好,因为这会让原本优化其它 mod 的收益消失,但加载速度的优化依然有。

3l psi 发表于 昨天 20:04

相位自走洗衣机 发表于 2026-11-4 19:51
我想知道mod内容的变动会不会让游戏每次启动都重新预加载?比如我自己做mod要频繁开关游戏,每次打开都会有 ...

1.理论上来说,不会。等我晚上回寝实测一下。
2.和FR,Vramopt等优化mod组合,可以极大幅度降低你的时间成本。

ladylex与快乐岛 发表于 昨天 20:08

FileNotFoundError: No such file or directory: 'E:\\Starsector\\mods\\enabled_mods.json'
老哥问一下这是什么情况

ladylex与快乐岛 发表于 昨天 20:12

本帖最后由 ladylex与快乐岛 于 2026-11-4 20:13 编辑


我把mod文件单独放进一个新建的文件夹里,然后放在Mod文件包里

3l psi 发表于 昨天 20:13

ladylex与快乐岛 发表于 2026-11-4 20:12


啊这...
等我回寝,今晚上会 debug 的

3l psi 发表于 昨天 20:48

有点馋校门口夜市的肉夹馍,debug时间稍微延后一点()

夜色 发表于 昨天 21:09

兼容汉化优化测试版吗?{:tieba_04:}

3l psi 发表于 昨天 21:11

夜色 发表于 2026-11-4 21:09
兼容汉化优化测试版吗?

兼容。

share 发表于 昨天 21:25

社区里在自己长出优化内容.jpg
我说好东西得多出()

3l psi 发表于 昨天 22:06



debug前瞻

为构建 manifest 的 脚本增加了进度条

和一条会来回游的小鱼,避免大伙在加载过程中无聊到爆炸

星海不落雨 发表于 昨天 22:17

https://www.fossic.org/thread-21785-1-1.html请问大佬,和这个MOD兼容吗

3l psi 发表于 昨天 22:21

星海不落雨 发表于 2026-11-4 22:17
https://www.fossic.org/thread-21785-1-1.html请问大佬,和这个MOD兼容吗

坏了,这个我没测过

目前正在激情和代码搏斗中,你可以自己试一下

反正试错成本挺低的,顶多几十秒(目移

3l psi 发表于 昨天 22:39

3l psi 发表于 2026-11-4 20:48
有点馋校门口夜市的肉夹馍,debug时间稍微延后一点()

没出摊!!!!!!!!!

不不不我无疑是红温的

艾贝路斯 发表于 昨天 23:24

不会用{:5_124:}

3l psi 发表于 昨天 23:34

艾贝路斯 发表于 2026-11-4 23:24
不会用

其实真没啥(

对比一般的 mod ,只是多了两个需要点的一键脚本,之后啥也不用管的

3l psi 发表于 19 小时前

适配快给我做麻了...

前略后略,1.9.4 马上于今晚发布

3l psi 发表于 11 小时前

3l psi 发表于 2026-11-5 00:22
适配快给我做麻了...

前略后略,1.9.4 马上于今晚发布

已震撼发布。
不行了,我得趁水课狠狠睡觉

ladylex与快乐岛 发表于 11 小时前

本帖最后由 ladylex与快乐岛 于 2026-11-5 08:55 编辑


这月宫为啥读不出来(挠头)

ladylex与快乐岛 发表于 11 小时前

ladylex与快乐岛 发表于 2026-11-5 08:53
这月宫为啥读不出来(挠头)

卧槽125个模组已经20s进菜单了,大佬牛逼,顺便问一下这个对帧数的改善有多少

星海不落雨 发表于 10 小时前

[注意] duplicate mod ids: {'IndEvo': ['IndEvo', 'Industrial.Evolution4.0.i'], 'presmattdamon_takenoprisoners': ['TakeNoPrisoners', 'presmattdamon_takenoprisoners'], 'UniversalUnionNavy': ['lw_lazylib', '寰宇联合']}
missing_file: L1: unresolved asset graphics/CFT/weapons/CFT_wavemotion_base.png
FATAL: manifest not written (Critical findings)
可以进菜单,但感觉效果不明显

艾贝路斯 发表于 8 小时前

3l psi 发表于 2026-11-4 23:34
其实真没啥(

对比一般的 mod ,只是多了两个需要点的一键脚本,之后啥也不用管的 ...

启动游戏还用Java的启动器吗?

3l psi 发表于 8 小时前

艾贝路斯 发表于 2026-11-5 11:28
启动游戏还用Java的启动器吗?

此 mod 只是跟一般 mod 相比,只是第一次使用多两个脚本要点,除此之外它就和一般 mod 一样

如果你没安装 mikohime ,就用远行星号自己默认的启动器启动即可,你也没别的选择不是么()

如果你安装了 miko ,那就用 miko 的启动脚本

艾贝路斯 发表于 8 小时前

3l psi 发表于 2026-11-5 11:33
此 mod 只是跟一般 mod 相比,只是第一次使用多两个脚本要点,除此之外它就和一般 mod 一样

如果你没安 ...

只需要第一次启动打开generate-manifest和install-agent吗?

3l psi 发表于 8 小时前

艾贝路斯 发表于 2026-11-5 11:46
只需要第一次启动打开generate-manifest和install-agent吗?

对的,这是一劳永逸的,之后再也不用管这两个脚本。

狗头菌丝 发表于 7 小时前

《jvav》{:5_124:}

3l psi 发表于 6 小时前

连续快一周都天天熬大了, debug 暂缓

正好下午还是水课,我睡爽了之后,晚上 debug(

悲剧缠身 发表于 5 小时前

full: L1=3216 L2=15102 L3=41520 baked=60718/60722 unresolved=4
[注意] duplicate mod ids: {'IndEvo': ['IndEvo', 'Industrial.Evolution4.0.i'], 'SEEKER': ['SEEKER', 'Seeker - Unidentified Contact 0.6.6 CN']}
missing_file: L3: file not found E:/Starsector/mods/IndEvo/graphics/industry/repository/dronehub.png
missing_file: L3: file not found E:/Starsector/mods/IndEvo/graphics/industry/repository/museum.png
missing_file: L3: file not found E:/Starsector/mods/IndEvo/graphics/industry/repository/palace_light_2.png
missing_file: L3: file not found E:/Starsector/mods/IndEvo/graphics/industry/repository/Teleportation structure_v2.png
cross_layer_duplicate: 13 engine key(s) appear in multiple layers: graphics/fx/empty.png, graphics/planets/terran.jpg, graphics/weapons/heavy_adjudicator_hardpoint_base.png, graphics/weapons/heavy_adjudicator_hardpoint_recoil.png, graphics/weapons/heavy_adjudicator_turret_recoil.png
coverage_baked: baked=0.9999341260169297 < 1.0
baked_unresolved: 4 enabled baked texture(s) unresolved: IndEvo/graphics/industry/repository/Teleportation structure_v2.png, IndEvo/graphics/industry/repository/dronehub.png, IndEvo/graphics/industry/repository/museum.png, IndEvo/graphics/industry/repository/palace_light_2.png
FATAL: manifest not written (Critical findings)

AlanP 发表于 5 小时前

!?强强!?

浅色弧光 发表于 4 小时前

仍在处理:校验清单
full: L1=1154 L2=3902 L3=27059 baked=20812/20813 unresolved=1
missing_file: L3: file not found E:/Starsector/mods/【扩展】灰烬船插 - Aptly Simple Hullmods v2.1.50/graphics/abilities/ash_forging.png
cross_layer_duplicate: 315 engine key(s) appear in multiple layers: graphics/ships/aeneid-tds.png, graphics/ships/alert-tds.png, graphics/ships/algos-tds.png, graphics/ships/apprehension-tds.png, graphics/ships/apprehension-xiv-tds.png
coverage_baked: baked=0.9999519531062316 < 1.0
baked_unresolved: 1 enabled baked texture(s) unresolved: aptlysimplehullmods/graphics/abilities/ash_forging.png
FATAL: manifest not written (Critical findings)

[失败] 清单没写成功(原因见上面几行)。
       游戏照常能玩,只是主 mod 的预取效果会打折。
       把上面的信息复制到帖子下面,我看看。

3l psi 发表于 4 小时前

浅色弧光 发表于 2026-11-5 15:17
仍在处理:校验清单
full: L1=1154 L2=3902 L3=27059 baked=20812/20813 unresolved=1


莫名的卡在了一张图片上了啊,似乎和上面那位原因一样...

今晚会修的,看来我那个脚本还是不够健壮

3l psi 发表于 3 小时前

本帖最后由 3l psi 于 2026-11-5 16:53 编辑

emm...

今晚预计能让文件索引功能适配 FR 0.9.8?

工作量不大,也就 4~6 个小时(瘫

脚本倒是快修好了

后记:

若让其它实验性功能也适配 FR 的话,emm,大概够我干个一两天的

不豪,我镁嚎的周末

3l psi 发表于 2 小时前

浅色弧光 发表于 2026-11-5 15:17
仍在处理:校验清单
full: L1=1154 L2=3902 L3=27059 baked=20812/20813 unresolved=1


已修复。使用最新版本应该不会再遇到问题。

3l psi 发表于 2 小时前

悲剧缠身 发表于 2026-11-5 14:07
full: L1=3216 L2=15102 L3=41520 baked=60718/60722 unresolved=4
[注意] duplicate mod ids: {'IndEvo':...

已修复。下载新版本试试?

艾贝路斯 发表于 1 小时前

3l psi 发表于 2026-11-5 11:46
对的,这是一劳永逸的,之后再也不用管这两个脚本。

太好用了,进游戏后感觉流畅很多,延迟也降低了{:5_118:}
页: [1]
查看完整版本: 【0.98a】【优化mod】Hypernova 无限引擎