[0.98a][测试] 政治地图 - 星图图层 - KMU
本帖最后由 Klark Morrigan 于 2026-10-21 18:32 编辑政治地图
星图图层的首发功能
本 Mod 目前处于预发布阶段,用于公开测试与收集反馈。
欢迎提前试用并分享你的体验,帮助我改进它。
本帖是 KMU 的简体中文版,由作者与英文版一同发布,不是搬运,也不是第三方汉化。
两个版本内容相同,只有文字不同,设置可以互通。如发现译文不通顺或术语不一致,欢迎在本帖回复指出。
你是否苦于跟不上各势力的扩张与消长?
你是否想在出发之前就知道哪些星系已被宣称、被谁宣称?
你是否想用自己的征服为星图上色?
你是否只是想看看你 Mod 列表里的各路势力制造出的边界地狱?
下载
[*]KMU 的压缩包见上方的下载面板。适用于 0.98a-RC8。
[*]源码与英文版
[*]Fractal Softworks 论坛上的 KMU 帖子
前置
[*]远行星号中文汉化(覆盖到 starsector-core)
[*]LazyLib
[*]LunaLib
[*]KMLib(Klark Morrigan 的程序库):见上方的下载面板。KMU 所需的 KMLib 版本写在 mod_info.json 中,下载面板中的 KMLib 始终是与当前 KMU 配套的版本。
安装:把每个 Mod 解压到 starsector/mods 文件夹,然后在游戏启动器中启用它们。
可在游戏中途安装;
若卸载后仍想保留存档,需要先执行一个简短的卸载步骤。
本 Mod 已与 Nexerelin、Fast Rendering、Random Assortment of Things 做了兼容。
星图图层是叠加在星图界面 (Tab, Q) 和情报信息界面 (E, 1) 上的叠加层;若安装了 Random Assortment of Things,也会显示在屏幕右下角的小地图上(它替换了原版的雷达)。
星图界面。
情报信息界面。
一切都根据游戏数据计算并绘制,并随星域局势的变化而更新。地图图层不会修改用于绘制它的任何数据,因此地图图层在设计上是只读的。
原版加 Nexerelin。
KMU 的星图图层功能默认开启。读取存档或开始新游戏后,打开星图界面或情报信息界面,地图筛选栏中会多出一个地图图层按钮。点击它或按 (M) 即可开启地图图层叠加层及其侧边栏。
星图界面。
情报信息界面。
地图图层的主要控制界面是可折叠的侧边栏,其中列出了所有可用图层以及相关的控件与开关。
[*]关注有人居住的殖民地(市场)及其归属。
[*]只有它们会为地图上色。
[*]荒蛮市场视为有人居住(可在设置中关闭),归入中立势力(政治上无组织,与非势力团体相对)。只有荒蛮市场的星系以独立的样式绘制(可在设置中调整)。
[*]带有废弃空间站条件的市场视为无人居住,不为地图上色。
[*]所有非市场实体都不为地图上色。
无宣称的无人星系只以极淡的线条绘制,仅用于显示星系之间的相接位置。
无人星系的这些轮廓可以独立于有人星系开关;
有人星系始终绘制,即使星系中没有任何有组织的势力(例如星系内所有殖民地都已荒蛮)。
你也可以独立于势力星系和荒蛮星系调整它们的外观样式。
[*]每个星系只能由一个势力上色,因此每个星系会沿其边界绘制一条存在色带,以持有各殖民地的势力颜色表示每个有人居住的殖民地。当星系中只有一个势力或联盟在场,且这种存在不违反任何无条件宣称时,色带会缩短,以表示稳固的控制。
存在色带:Hybrasil 的色带显示 2 个速子科技市场、1 个非势力团体市场、1 个海盗市场和 1 个中立市场。
[*]可展开的星系提示框详细说明每个市场如何影响力量平衡。
提示框会列出中立(无主)市场。
提示框会列出不产生主导得分的市场。
[*]持有任何有人居住市场的势力都会列在一个可排序的筛选列表中。选中其中任意一个,即可聚焦其在整个星域的存在。中立与有组织的势力并列其中,选中它即可聚焦所有持有荒蛮殖民地的星系。
[*]在主导视图(势力与联盟)中,实色填充表示主导,斜线填充表示在由他人主导的星系中的存在,不填充表示对无人星系的宣称。
[*]在宣称视图中,所有星系均以实色填充绘制。
势力筛选列表,按势力对玩家的关系排序。
按海盗筛选的势力视图。
在主导视图中,无人星系不上色。
Tia 星系显示为霸主所有,因为霸主对它持有无条件宣称。
政治地图提供 3 种视图:
[*]势力:根据自定义的主导算法(可在设置中大幅调整)为势力领土上色。该算法综合考虑市场规模、稳定性、市场是否隐藏、是否有轨道空间站(以及空间站殖民地是否建有轨道空间站),以及生成的巡逻队数量(按其规模)。
[*]联盟(仅在安装了 Nexerelin 时可见):与势力视图相同,但结盟的势力作为单一政治实体出现,其持有合并计算。
[*]宣称:根据原版的星系宣称机制为势力领土上色,包括动态宣称与无条件宣称。无条件宣称通过星域记忆设置,具有最高权威。除非宣称是无条件的,否则星系宣称会动态判定:参与经济的最大单个市场胜出,同势力市场(任何类型)的存在和已建成的军事设施会给予加成。你的势力和非领土势力无法动态宣称。若按非领土势力筛选,则会聚焦其在场的无宣称星系。
为避免剧透,地图图层基于一套源自原版的可见性系统运作(每一项都可在设置中调整):
[*]隐藏星系(没有由恒星、星云或黑洞生成的超空间锚点)不会显示,除非其中有可见的有人居住的市场,或持有激活的星门。
[*]标记为可发现的实体(在玩家舰队探测范围之外时不显示在星系地图上)不会显示。由于原版在宣称计算中会用到它们,它们也会列在宣称提示框中,但会被隐去。
[*]标记为隐藏的市场不会显示,除非其他非同盟势力在该星系持有可见的殖民地,或玩家已到访该星系。由于原版在宣称计算中会用到它们,它们也会列在宣称提示框中,但会被隐去。
[*]荒蛮市场不会显示,除非它们一开始就是荒蛮的,或玩家已对其完成全面调查(可在设置中调整)。若其他非同盟势力在该星系持有可见的殖民地,这些市场也会显示。
[*]带有废弃空间站条件的无主市场遵循隐藏市场的可见性规则。
本 Mod 附带一整套 LunaLib 设置,可调整外观、音量、按键以及底层机制。
若安装了 Console Commands,可以使用以下指令。
由 KMU 提供:
[*]kmu_profiling :按需将完整或指定范围的性能测量写入游戏日志。超出预算的调用会自动记录,无需此指令。需要在设置中启用性能分析。
由 KMLib 提供:
[*]kmlib_activate_gate <id>:激活当前星系中该 id 的星门。
[*]kmlib_colonise :建立殖民地。 默认为最近的可殖民市场。 默认为你的势力。
[*]kmlib_list_factions :列出每个势力及其持有:地点数量、隐藏数量、可发现数量,以及所在的星系。默认不应用任何筛选。
[*]kmlib_list_map_spoilers:以星系、实体、势力的树状结构列出势力所有的星系,并标出被截断的星系和未发现的市场。
[*]kmlib_list_system_entities :以轨道树列出当前星系的实体,然后是无轨道的实体以及带坐标的舰队。默认不应用 筛选。
[*]kmlib_spawn <gate|jump_point> :在舰队位置生成星门或跳跃点。 默认为星系中心。 默认由半径推算。 默认为 0.25。
[*]kmlib_transfer_market :将现有殖民地移交给另一所有者。 默认为最近的可殖民市场。 默认为你的势力。
KMU 将地图图层作为仅在地图上显示的地形注入星图控件。为了在星景模式下也能显示,星景地形变体被标记为滑流。自定义地形是唯一必须以 Java 类引用的形式序列化进存档的内容,这也是禁用本 Mod 前需要干净卸载的原因。
游戏会复用星图控件,许多 Mod 也是如此。这些自定义放置的星图控件会免费获得地图图层,但在没有兼容补丁的情况下,它们没有鼠标悬停检测,也没有控件(图层选择沿用星图界面这一主实例的选择)。
此外,本 Mod 专门与以下 Mod 做了兼容:
[*]Fast Rendering v0.9.1rc1 及更高版本,它会自行应答星图的光标读取。在更早的版本上,星图不再跟随光标,并会有通知说明应更新到哪个版本。
[*]Nexerelin,以支持其联盟机制。
[*]Random Assortment of Things 及其小地图替换。小地图通过屏幕角落的一个提示框绘制星图控件。本 Mod 附带默认开启的 RAT 兼容模式,将鼠标检测限定在该星图控件范围内。图层选择沿用星图界面。此外,当星图控件停靠到屏幕外时(停靠是 RAT 在玩家停靠市场或打开任何界面时隐藏星图控件的方式),本 Mod 会将其设为不可见,从而跳过相关渲染,在不显示星图的菜单中应能带来少许性能提升(在超空间中更明显)。
问:星景模式下的星云会遮挡地图的部分内容,能把它们隐藏吗?
答:你可以选择地图图层的哪些部分绘制在星景模式的星云之上、哪些留在星云之下。打开设置中的地图 - 政治 - 外观标签页,找到其中的星云绘制顺序部分,共有四项设置:领土填充、边界、存在色带和势力名称。
在试用本预发布版的过程中,如果你认为以下情况与本 Mod 有关,请反馈:
[*]遇到了哪些视觉或技术问题,
[*]性能表现如何,
[*]使用体验如何,
[*]是否发现 Mod 不兼容,或地图忽略了某些 Mod 内容,
[*]地图是否剧透了你认为不该显示的内容。
诊断选项:
[*]KMLib 与 KMU 开发设置中的 DEBUG 日志详细程度,用于写入 Mod 的全部内部日志。
[*]KMU 开发设置中的反射日志开关,用于追踪与原版界面交互时的问题。
[*]KMU 地图开发设置中的性能分析开关与级别,配合 kmu_profiling 控制台指令使用,用于定位性能下降的位置。
你可以尝试把这个 Mod 玩坏,也可以像平时一样正常游玩。
也欢迎分享建议、想法和需求,它们会影响本 Mod 的方向与优先级。我已经构思并规划了接下来想实现的一些信息图层及其大致设计,但那只代表我自己的想法,我也想听听你的。
本 Mod 的制作使用了大语言模型(LLM),用于调研、头脑风暴、代码生成、代码审查、代码重构和翻译。每一步都在人工监督和实机测试下完成,并尽 Mod 项目所能进行了人工代码审查。
简体中文翻译按以下方法完成。原版词汇对照中文汉化逐一匹配,其他 Mod 的词汇对照其各自的中文版匹配。论坛相关词汇也一并收集,全部汇总为一份翻译参考,并为每个术语注明选词理由。KMLib 与 KMU 自身的词汇依据每个术语背后的含义翻译。收集的全部词汇均经 Mod 作者对照选词理由审阅,译文分多轮应用,以求前后一致。
致谢:
感谢 Fractal Softworks 团队带来《远行星号》并持续改进它。
感谢 Mod 社区创作了众多精彩而富有启发的 Mod,让我一次次回到这个游戏。
感谢 LazyLib、LunaLib、Console Commands 的开发者与维护者提供了本 Mod 所依赖的功能。
感谢 Nexerelin 的开发者与维护者让星域的政治变得鲜活。
感谢 Genir 在 Fast Rendering 中实现了更稳定的兼容方案。
感谢远星汉化组:本中文版所用的字体和原版术语都出自他们的汉化。
感谢水仙Mk 帮忙推进本 Mod 的审核。
感谢 Fractal Softworks 论坛、Fossic、r/Starsector 和各 Discord 社区的朋友们给予的反馈与支持。
新的宣战借口(为了版图美观) 本帖最后由 NH4CI 于 2026-10-6 08:32 编辑
发现了一个问题,我帮你修复好了。是mod_info.json里将原mod和依赖的位置写错了,导致加载时会把lazylib直接给覆盖掉,这个报错是加载mod时发现的。 wow这是远神群星 本帖最后由 Klark Morrigan 于 2026-10-6 19:49 编辑
KMU 0.2.1 与 KMLib 0.5.1 已发布,压缩包已在本帖上方的下载面板中更新。
[*]修复了在安装了 Fast Rendering 与 VRAM Optimizer 的游戏中,星图标签字体偶尔加载失败、每个字形被绘制为实心矩形的问题。由 lChronosl 在 USC 报告。
[*]mod_info.json 中的 dependencies 部分移到了文件末尾。有些 Mod 安装工具只读取第一次出现的 id 字段,会用正在安装的 Mod 覆盖其前置 Mod。由 NH4C 在本帖报告。
钦佩鱼 发表于 2026-10-7 10:42
抱歉!附件现在应该能正常显示了。上次保存帖子修改,我前后试了差不多 10 次,还被验证码折磨了一番。附件当时好像也传坏了。我还以为那些问号表示文件还在处理中,过一会儿就会显示出来。 KMLib 0.5.2 已于昨晚发布,压缩包已在本帖上方的下载面板中更新。
[*]第二次修复了 星景 模式下星云效果无视星图图层绘制顺序的问题。由 MiniRockytheOracle 在 USC 报告。
你做的好啊!!太棒了! 发布MOD请使用附件功能。。。。。。日期标注 还有我建议直接吧前置整合到MOD里 水仙Mk 发表于 2026-10-9 23:41
发布MOD请使用附件功能。。。。。。日期标注
这个网站的发布方式对我来说有点文化冲击,搞得我现在一想到发更新就头大,笑死。我习惯的是挂一个指向完整 Mod 包的 TriOS 链接(会自动拉取最新版本),不用手动一个个更新文件。XD
所以附件分两种:显示在页面顶部的,按我的理解就是下载包;显示在页面底部的,看起来是顶部没列出来的多余附件。
多余的附件我应该删掉吧。
日期已经改好了。还是说你的意思是别的地方也要标日期?
至于整合前置,别人的 Mod 我觉得不该二次分发。我可以把两个 Mod 文件夹打包进同一个压缩包,但这样的话,比如我只更新了 KMLib,你也得连带着覆盖一遍 KMU(KMU 本身其实没有任何变化)。如果你习惯先删旧文件夹再放新的,这不是反而更麻烦吗?删掉多余附件之后,上面的下载本身就是一套完整能用的组合。 Klark Morrigan 发表于 2026-10-10 10:32
这个网站的发布方式对我来说有点文化冲击,搞得我现在一想到发更新就头大,笑死。我习惯的是挂一个指向完 ...
你把帖子模组类型改为功能 然后找管理申请快速审核上索引 第一次使用好像有这个报错,重启电脑之后就没有了。
就是这两个图片 唐晓白 发表于 2026-10-10 16:15
就是这两个图片
日志里显示 shaderLib 缺少一个 LunaLib 设置项,不过我自己的 Mod 列表里也是这样。只要有回退值就不会致命,而 shaderLib 在这里会回退为 false。
弹窗(不是日志)里提到的是 os_windows.cpp 中的这段代码:
3611 if (!pd_commit_memory(addr, size, exec)) {
3612 warn_fail_commit_memory(addr, size, exec);
3613 vm_exit_out_of_memory(size, OOM_MMAP_ERROR, "%s", mesg);
3614 }这是你的系统内存不足的最有力证据。简单来说,就是游戏向系统申请更多内存,Windows 拒绝了。 水仙Mk 发表于 2026-10-10 12:28
你把帖子模组类型改为功能 然后找管理申请快速审核上索引
类型已经改成功能了,可安全移除也改成了"是"。 Klark Morrigan 发表于 2026-10-11 14:45
类型已经改成功能了,可安全移除也改成了"是"。
你去加个管理的QQ吧你的MOD链接发过去给他说快速审核 Klark Morrigan 发表于 2026-10-11 14:41
日志里显示 shaderLib 缺少一个 LunaLib 设置项,不过我自己的 Mod 列表里也是这样。只要有回退值就不会 ...
有意思,那我明白为什么重启电脑问题解决了,那应该没问题了,大概 来加我们的群,有很多moder 675560274 如果可以隐藏星云的颜色就好了,颜色看起来有些脏 对的,星云会挡住颜色区块 浅色弧光 发表于 2026-10-17 19:42
如果可以隐藏星云的颜色就好了,颜色看起来有些脏
在星景模式下,政治地图的哪些部分绘制在星云之上、哪些留在星云之下,都可以调整。打开设置中的地图 - 政治 - 外观标签页,找到其中的星云绘制顺序部分,就是那里的四项设置(领土填充、边界、存在色带、势力名称)。颜色区块就是领土填充,把它设为 Above 即可,边界也会一同抬高。我已把这条加入主楼的常见问题部分。 这个太棒了,势力分布一目了览 本帖最后由 水仙Mk 于 2026-10-21 16:44 编辑
帮你申请啦,已经通过了,恭喜恭喜^O^ 水仙Mk 发表于 2026-10-21 14:05
帮你申请啦,已经通过了,恭喜恭喜^O^
谢谢你的帮忙!^_^ {:5_124:}这下能在大地图看见国境线了() 不用一个个的点星系找势力真好{:tieba_43:} 很迷人
社会学+3 请问有考虑填充星系与星系之间的空隙吗?有的星系不挨着,中间也没有其他星系,地图上的区域就会空出一大块出来 浅色弧光 发表于 2026-10-27 12:05
请问有考虑填充星系与星系之间的空隙吗?有的星系不挨着,中间也没有其他星系,地图上的区域就会空出一大块 ...
有的!从首次发布开始,我就一直在私下尝试各种思路。附件是之前一版的示例图,出自我在开发初期随手写的一个简单的游戏外渲染器:它读取从存档中提取的星域数据快照并计算几何形状,方便我更快地做原型验证。
我的设想是这样的:地图图层覆盖的其实是超空间。政治地图显示的不一定是有约束力的边界,而是以星系为锚点的控制区,这些星系是各势力拥有立足点的地方。舰队离自己的行动基地越远,行动自然越困难,所以控制区只能延伸到一定距离。我想实现的是:当单一势力主导了足够多相邻的星系时,填充这些星系之间(或边缘地带)的空间,用来表示横跨无星虚空、更加稳定安全的航道。
等我对这些填充形状满意之后,还要再做一些调整,但到那时我就可以试着发布一个版本了。反正它也不会改变游戏玩法。
目前这项工作暂时搁置了,因为我正在重构代码库、调整架构,为外交地图(它会大量复用政治地图的实现)以及我计划中的其他图层做准备。等最大的一波代码改动过去,我就会继续这项工作。
而最新的一版应该就是我会定下来的方案,因为它切分虚空的方式更自然:不仅能填补空隙,还能填补相邻星系之间的楔形缝隙,而且不只在星域边缘,在更小的尺度上也一样。这样即使还没有发生任何大规模征服,开局就能看到明显的效果。它应该能让原版星域的地图基础形状不再像一堆泡泡。
不过在这些功能上线之前,你可以先用一个权宜之计:在设置中调大地图单元的半径。具体是设置中地图 - 开发标签页的单元几何部分里的领土范围。
页:
[1]