找回密码
 初始化身份识别芯片
查看: 265|回复: 9

【十步替换游戏字体!】理论上适用于所有版本的中文字体包制作工具/游戏内字体替换工

[复制链接]

战列舰长

发表于 昨天 04:43 | 显示全部楼层 |阅读模式
本帖最后由 Nov.Co 于 2026-6-4 12:02 编辑

本工具的基本原理是将用户提供的 TTF/OTF 字体转换为远行星号原生可读取的 AngelCode BMFont 位图字体资源,而不是修改游戏运行时的字体加载机制。
远行星号的字体由两部分组成:`.fnt` 文件记录字符的 Unicode 编号、位置、宽高、偏移、行高、间距等排版数据;对应的 `_0.png` 文件则保存实际渲染出来的字形图集。游戏在运行时并不直接读取 TTF 字体,而是根据 `.fnt` 中的坐标信息,从 PNG 图集中取出字形进行显示。
本工具首先分析现有字体库中的 `.fnt` 文件,提取其中已经被游戏或汉化包使用的字符集合;随后检查目标字体是否支持这些字符,并过滤掉缺失或无法正常渲染的字形;之后使用目标字体重新渲染字符图集,生成与原字体库同名的 `.fnt` 和 `_0.png` 文件。由于输出文件保持原有文件名和 page 引用关系,游戏仍然按照原来的路径加载字体资源,但实际显示效果已经替换为新的字体。
因此,本工具并不是传统意义上的外挂式 MOD,也不是让游戏直接支持 TTF 字体,而是一个外部字体替换器:它通过“分析原字体库—提取字符集—过滤目标字体—重建位图字体—备份并替换字体文件”的流程,在尽量不改动游戏机制的前提下实现中文字体替换。
依赖已有的汉化资源。
还有星币的符号到底是啥?怎么找了一大堆字体都没它的。。
github地址:https://github.com/NovCo114514/starsector-font-replacer
image.png
项目文件以MIT协议的方式开源,允许任何人以任何方式在任何地方使用或转载,不必另行告知我,可以的话标明我这个原作者就行。

战列舰长

 楼主| 发表于 昨天 04:45 | 显示全部楼层
本帖最后由 Nov.Co 于 2026-6-4 11:41 编辑

这个是解压即用的版本,用前先看眼readme
(凌晨搓出来后困的直接睡着了,现在再来补充说明)
打开压缩文件内的starsector-fontgen-gui.exe
image.png
然后会弹出这个界面,执行如图所示的第一步:(当然,需要是一个汉化过的远行星号,如果没汉化过,则只会替换英文字体与符号,不会自动翻译和生成中文!)
image.png
第二步选择你想要的字体,随便扔在哪,只要你自己能找到就行,建议用相对细一点的字体,毕竟远行星号原生只支持最大24px的字体,再大都是靠缩放,就会导致较粗的字体看起来有些糊——截图中我选择的这个字体比较适合作为一个反面例子。 image.png
第三步在随便哪个地方找个文件夹——最好是干净点的,不要求限定位置和名称,作用如图所示,有错误的话将日志发给我。
image.png
第四步确定你要的png尺寸——主要是防止有可能存在的巨型体量汉化包,否则一版情况下2048尺寸是够用的。
image.png
第五步,让软件检查路径是否有效,有效的话会弹窗+日志说明目录有效,否则得检查第一步的路径。
image.png
第六步让软件分析这个目录下的字体库——字体库越大,分析时间越长,所以有汉化的版本一般都要一点时间,如果是原版远行星号的话,就会很快,因为英文的字库其实很小,比中文小太多了。如果报错,把日志发给我。
image.png
第七步过滤字符集,这一步简单而言就是检查你的字体是否支持游戏所需要——不完全支持也没关系,会用问号符号替位。
image.png
第八步生成字体,最为核心的功能,但也没啥好说的,如果报错把rebuild_fontlib_report.md和starsector_font_replacer_gui.log发给我就行。
image.png
接下来就是应用到游戏,这是覆盖操作,所以那怕我让软件自动备份原文件,也会提醒一下你,有需要的话最好还是手动备份一下。选择“是”后应该会很快完成——看到完成字样后再进行下一步。
image.png
现在游戏中如图:
image.png
image.png
当然,如我所说的,太大的字体会比较糊:
image.png
最后,如果你不满意现在的字体,可以通过从备份还原来自动还原原字体,如果你手动备份了的话,也可以手动还原——这里因为同样是覆盖操作所以会弹提示,选是还原,选否放弃。
image.png
这张图后面莫名其妙多了一张。。。还在编辑界面里找不到,无法删除,请自行无视吧,那个并不是恢复后的效果。
image.png

Starsector-Font-Replacer-v0.2.zip

90.21 MB, 下载次数: 0

战列舰长

 楼主| 发表于 昨天 11:58 | 显示全部楼层
起因是因为我在试着给远行星号重新搓一套UI,但原版的UI应用方式我实在看不懂,因此干脆雇佣了一位程序员来帮我把设计落地,最近程序员老哥发现UI好像只能通过修改源文件的方式进行覆盖,因此我寻思干脆把字体也换一套好了,于是自个和codex合作了一天,有了楼上那个程序。
image.png
下面放点在figma中的新UI预览,不确定能100%落地,因为远行星号的UI应用方式确实不太支持完全的定制。
新UI的制作原则为信息层级→使用习惯→界面美观。既,我会优先考虑重新设计原游戏中屎一样的信息层级,在信息没问题的条件下优先考虑玩家在原UI中培养出的习惯,在符合习惯的前提条件下进行界面美化。
image.png
image.png
image.png
这头像是我在PS里拿画笔一笔一笔改的原游戏头像,目前改好了20多个,估计全部改完还得要好一会。。扔给AI生成出来的总感觉味道不对
image.png
image.png
image.png
image.png

海鲜水手

战列巨擘

论坛元老见习机师学院教员

发表于 昨天 12:10 | 显示全部楼层
这个重做ui原来才是重点,非常不错。参考的是ZEPHON?
相当一部分,我确实很喜欢ZEPHON的UI设计风格。 不过目前落地应该还有数个月的时间,初期版本可能还会有兼容性问题  详情 回复 发表于 昨天 12:39

战列舰长

 楼主| 发表于 昨天 12:39 | 显示全部楼层
lili 发表于 2026-6-4 12:10
这个重做ui原来才是重点,非常不错。参考的是ZEPHON?

相当一部分,我确实很喜欢ZEPHON的UI设计风格。
不过目前落地应该还有数个月的时间,初期版本可能还会有兼容性问题
哦哦,十分期待落地。兼容性方面应该问题不大,如果沟通能力强的话…大部分modder(甚至alex)看到如此规模的项目应该会很有兴趣合作的,现有与ui、窗口相关的mod小改动的居多  详情 回复 发表于 昨天 12:52

海鲜水手

战列巨擘

论坛元老见习机师学院教员

发表于 昨天 12:52 | 显示全部楼层
Nov.Co 发表于 2026-6-4 12:39
相当一部分,我确实很喜欢ZEPHON的UI设计风格。
不过目前落地应该还有数个月的时间,初期版本可能还会有 ...

哦哦,十分期待落地。兼容性方面应该问题不大,如果沟通能力强的话…大部分modder(甚至alex)看到如此规模的项目应该会很有兴趣合作的,现有与ui、窗口相关的mod小改动的居多

英仙统领

高级机师译码专家通讯记者

发表于 昨天 19:09 | 显示全部楼层
原游戏中屎一样的
非常赞同
十分有发展潜力,期待
最重量级的信息及管理界面还没开始做,但其他界面大部分都设计出来了——设置界面我重新规划了一套信息层级,找某个设置可以不用在单个页面里上下翻,而是根据所属的类型来寻找了。  详情 回复 发表于 昨天 20:41
不要再破坏StarSector的世界观了desuwa!

管理员

原初の律动

高级机师论坛元老远星汉化组成员战术专家通讯记者

发表于 昨天 19:21 | 显示全部楼层
ui重置要不可避免地触碰绝大多数的ui逻辑,ss的ui是基于tooltipapi的,修改ui及hud肯定要用到包括但不限于反射、agent等侵入性操作,稳定性仅在不使用mod的情况下才有所保证。


另外星币的符号:com.fs.starfarer.api.impl.campaign.ids.Strings.C
谢谢。 就是因为UI修改太难了,所以才开出一笔不菲的费用雇佣程序员来帮我落地,稳定性和兼容性方面确实存在隐患,我目前寄期望于程序员的个人能力以及AI,实在不行未来也会考虑增加团队人员数量。  详情 回复 发表于 昨天 20:37
咆哮吧!生命的大鼓!
-我的爱发电链接:Originem
如果对我的mod有任何疑问,请用论坛的消息功能私聊我。

战列舰长

 楼主| 发表于 昨天 20:37 | 显示全部楼层
议长不死于锉刀 发表于 2026-6-4 19:21
ui重置要不可避免地触碰绝大多数的ui逻辑,ss的ui是基于tooltipapi的,修改ui及hud肯定要用到包括但不限于 ...

谢谢。
就是因为UI修改太难了,所以才开出一笔不菲的费用雇佣程序员来帮我落地,稳定性和兼容性方面确实存在隐患,我目前寄期望于程序员的个人能力以及AI,实在不行未来也会考虑增加团队人员数量。

战列舰长

 楼主| 发表于 昨天 20:41 | 显示全部楼层
厉害啊 发表于 2026-6-4 19:09
非常赞同
十分有发展潜力,期待

最重量级的信息及管理界面还没开始做,但其他界面大部分都设计出来了——设置界面我重新规划了一套信息层级,找某个设置可以不用在单个页面里上下翻,而是根据所属的类型来寻找了。

本版积分规则

Archiver|手机版|小黑屋|远行星号中文论坛

GMT+8, 2026-6-5 02:01

Powered by Discuz! X3.5

© 2001-2077 Tencent Cloud | Durian Software Studio

快速回复 返回顶部 返回列表