
生命之泉 - 贴合背景且高度易读的Alegreya衬线字体
符合背景设定、高度易读的中世纪衬线字体Alegreya,为《巫师3》用户界面定制。支持拉丁文和西里尔文。
查看大图[size=6][b]生命之泉字体[/b][/size]
[size=5][b]契合世界观且高度清晰易读[/b][/size]
[size=5][b]中世纪衬线字体[/b][/size]
[size=4][b]含悬挂数字
及西里尔字母支持[/b][/size]
[size=4][i]一图胜千言,因此请随意查看下方十余张截图,而无需阅读数千字的描述。话虽如此,详细的说明如下。[/i][/size]
[img]https://staticdelivery.nexusmods.com/mods/952/images/13507/13507-1791143011-1752127531.jpg[/img]
[b][size=4]概述与目的[/size][/b]
默认情况下,[i]《巫师3》[/i]使用了[url=https://parachutefonts.com/]Parachute Fonts[/url]的[url=https://old.parachutefonts.com/sites/default/files/2200_DinTextCondPro.pdf]PF Din[/url]字体的三个变体:[i]PF Din Text Cond Pro[/i]、[i]PF Din Text Cond Pro Bold[/i]和[i]PF Din Text Cond Pro Italic[/i]。这是[url=https://en.wikipedia.org/wiki/DIN_1451]DIN 1451[/url]的一个变体,后者是一种大约一百年前在德国开发的、无处不在且极其易读的无衬线字体。
这绝不是糟糕的选择,事实上我自己也曾是它的粉丝,甚至将从[i]《巫师3》[/i]中提取的同一字体移植回了[url=https://www.nexusmods.com/witcher2/mods/990]《巫师2》[/url],甚至[url=https://www.nexusmods.com/witcher/mods/961]《巫师》[/url]。然而,尽管它很实用,却与游戏本身、世界观、世界或其所设定的时代毫无关联。
我最近通关了[url=https://dawnwalkergame.com/]《黎明行者之血》[/url],这款游戏非常具有[i]《巫师3》[/i]的精神,并且设定在类似的中世纪背景中。整个过程中,我一直使用[url=https://www.nexusmods.com/thebloodofdawnwalker/mods/217]一个模组[/url],该模组由[url=https://www.nexusmods.com/thebloodofdawnwalker/users/86268293]WinterElfeas[/url]在[i]Nexus Mods[/i]上制作并提供。
它在沉浸感方面对我来说效果极佳:它感觉恰如其分,非常适合那个时代,同时也提供了出色的可读性,它深深打动了我的心,以至于我甚至无法想象[i]《黎明行者之血》[/i]看起来会有任何不同:现在看到原版游戏的截图或影像时,总感觉少了点什么。
[url=https://htfonts.com/en/fonts/alegreya/]Alegreya[/url]字体是一颗惊人的瑰宝,它在[i]《黎明行者之血》[/i]中极大地提升了我的体验,我希望其中一部分能延续到新的重制版[i]《巫师3》[/i]中,并与他人分享。[url=https://en.wikipedia.org/wiki/Text_figures]悬挂数字[/url]尤其对我效果显著,尽管我可能有点偏心,因为我总体上就喜欢它们。可以说它们也更容易阅读(除非要处理电子表格中的大量数字,但这不是猎魔人的工作内容)。
然而,尽管[i]Alegreya[/i]非常出色,在[i]《巫师3》[/i]中替换字体却是一个非常特殊的情况,需要考虑到某些因素。因此,我并没有直接嵌入该字体通用的、全能字形,而是对它们进行了轻微修改,特别是使其更加紧凑,以最大限度地提高文本在整个游戏过程中保持在分配空间内的几率。我尝试了大约十几种不同的参数变体,最终确定了我认为最合适的设置。另外,字体的[b]粗体[/b]变体同时使用了小型大写字母作为一种独特的风格选择:例如可以在[i]昆特牌[/i]卡组以及带有附魔物品的[i]物品栏[/i]面板描述中观察到:我非常喜欢这个效果,希望你也喜欢。
如果你想知道这个模组为什么叫[i](The)Font of Life[/i],这是指[i]《黎明行者之血》[/i]中某个重要的任务物品。考虑到这个字体相关的模组是受到我之前为那款游戏所使用的模组的启发,我认为这个名称上的联系很恰当。
[size=2][i]已注意调整和自定义替换字体,使其不会溢出用户界面,尽管原版游戏使用的字体极其紧凑,偶尔出现问题可能在所难免。在字体大小方面,对于我使用非常特定配置(40英寸 21:9 3440×1440 像素)的通关过程来说,它们看起来没问题,但在某些地方本可以(大幅)更小,而在另一些地方本可以稍大一些。我觉得[i]《巫师3》[/i]尽管已经开发了超过十二年,却在用户界面自定义方面严重不足,这不是本模组能修复的,也不是它的目标。在没有游戏内通用界面大小调整设置的情况下,可以通过反复试验进行无尽的定制和修改来应对特定用例。如果对我有效的方案对你无效,请接受我诚挚的歉意,但我也许无法提供变体版本,因为创建和维护这些版本非常耗时。[/i][/size]
[size=4][b]安装[/b][/size]
下载压缩包并将其内容解压到[i]《巫师3》[/i]游戏目录下的[font=Courier]mods\[/font]子目录中。如果这碰巧是你安装的第一个模组(可能性不大),你需要事先创建该目录。
游戏目录因游戏来源而异。典型示例:
[list]
[][font=Courier]C:\Steam\steamapps\common\The Witcher 3[/font][/]
[][font=Courier]%ProgramFiles(x86)%\GOG Galaxy\Games\The Witcher 3 Wild Hunt GOTY[/font][/]
[/list]举例来说,假设游戏安装在[font=Courier New]%ProgramFiles%\The Witcher 3[/font](因为我就是把它放在那里),解压文件的完整路径将是:
[list]
[][font=Courier]%ProgramFiles%\The Witcher 3\[b]mods\modFontOfLife\content\blob0.bundle[/b][/font][/]
[][font=Courier]%ProgramFiles%\The Witcher 3\[b]mods\modFontOfLife\content\metadata.store[/b][/font][/]
[/list]
[b]潜在冲突:[/b]本模组仅覆盖原版游戏中的一个文件,如果你希望字体更改生效,其他任何模组都不应触碰该文件。如果本模组与其他模组之间存在冲突,那是因为你必须选择要使用哪一个。不可能同时使用多个字体模组(除非对整个用户界面进行全面改造)。
[b]移除:[/b]要卸载,只需删除上面列出的文件,或者实际上删除整个目录[font=Courier]mods\modFontOfLife[/font]即可。
[b]安装协助:[/b]我不熟悉模组管理器,也不知道它们是否与本模组兼容。我无法就此提供任何支持。希望手动安装过程足够简单明了。
[size=4][b]问题与限制[/b][/size]
[list]
[]仅支持[b]最新的游戏版本(目前为[font=Courier]5.00c[/font])[/b]。这很可能完全是由于打包原因,因为我怀疑修改后的资源在原版游戏中多年来根本没有变化。然而,工具链仅支持为匹配的游戏版本生成模组,而且由于即将推出的扩展包,这将是几乎所有人从现在开始游玩的版本,因此在可预见的未来,这也是本模组唯一兼容的版本。
[/]
[]仅更改了[b]拉丁字母和西里尔字母字体[/b],包含的字符集应适用于[b]捷克语、英语、法语、德语、匈牙利语、意大利语、波兰语、葡萄牙语、欧洲及拉美西班牙语、土耳其语[/b],以及[b]俄语、乌克兰语[/b],以及任何其他使用拉丁字母或西里尔字母的自定义翻译语言。另一方面,阿拉伯语、简体及繁体中文、日语、韩语、俄语和乌克兰语使用各自的字体资源,不受本模组影响。
[/]
[]游戏中仅定义了[b]三种字体变体[/b]:常规、[b]粗体[/b]和[i]斜体[/i],只有这些可以被修改。此外,游戏在何处使用哪种变体以及使用什么大小是预定义的,除非实质上制作另一个模组,否则无法轻易更改。另外,由于默认字体特别[b]紧凑(压缩)[/b],切换到任何替代字体都可能导致偶尔的文本溢出。我已尽力减轻这种情况,但可能无法完全解决。
[/]
[]我没有真正测试[b][i]斜体[/i]变体[/b],因为坦率地说我不记得它在游戏中实际用于何处(如果有的话)。距离我上次通关已经有一段时间了,所以如果你知道答案,请在反馈区留言。
[/]
[]出色的[i]Alegreya[/i]字体采用[url=https://en.wikipedia.org/wiki/SIL_Open_Font_License]SIL Open Font License 1.1[/url]许可。该许可非常宽松,但如有疑问,请参阅其条款以确保合规。[/]
[/list]
[size=4][b]工作原理:致好奇者[/b][/size]
游戏使用的字体字形存储在文件[font=Courier]content\content0\r4gui.bundle[/font]中,更具体地说,位于该包内[font=Courier]gameplay\gui_new\swf\witcher3\fonts_en.redswf[/font]的资源中。这适用于英语和其他使用拉丁字母书写的语言。西里尔字母字形分别存储在[font=Courier New]fonts_ru.redswf[/font]和[font=Courier New]fonts_ua.redswf[/font]中,这两个文件实际上是同一文件的两个完全相同的副本。对于使用其他书写系统的语言,有遵循类似命名约定的单独文件。
本模组通过提供这些文件的自定义版本来工作,这些版本优先于原版游戏中包含的版本。不修改任何游戏资源。因此,移除或禁用模组后,原始字体即刻恢复。
[size=3][b]致[i]真正[/i]好奇者[/b][/size]
该文件是[url=https://en.wikipedia.org/wiki/Zlib]ZLib[/url]压缩的[url=https://en.wikipedia.org/wiki/Scaleform_GFx]Scaleform GFx[/url]文件(压缩时称为CFX,使用扩展名[font=Courier].gfx[/font]),这本身就是一项已停用的技术,基于曾经无处不在但如今几乎被遗忘的Web动画格式——[url=https://en.wikipedia.org/wiki/Adobe_Flash#Macromedia]Macromedia Flash SWF[/url]。这些文件如今仍可使用[url=https://www.adobe.com/products/animate.html]Adobe Animate[/url]制作(或编辑,如果恰好有[font=Courier].fla[/font]源文件的话),不过还有其他方法可以修改它们,其中之一便是古老而强大的[url=https://github.com/jindrapetrik/jpexs-decompiler]JPEXS Decompiler[/url],它具备此特定用例所需的所有功能,甚至更多。
[i]Scaleform[/i]的CFX格式实际上与原始[i]Flash[/i]的CWS(未压缩时为FWS)略有不同。包含嵌入字体的文件以及所有其他[i]Scaleform[/i]文件,在游戏开发时实际上最初是[font=Courier].swf[/font]文件,然后使用[i]Scaleform[/i]的[i]GFxExport[/i],具体来说是[i]CD Projekt[/i]的[i]Red Kit[/i]中包含的[font=Courier]gfxexport_mult4fix.exe[/font]工具,转换为[font=Courier].gfx[/font]以准备发布。
得益于[i]《巫师3》[/i]完整模组工具包[url=https://www.thewitcher.com/us/en/redkit/modding]Red Kit[/url]的可用性,我们现在可以访问开发阶段的原始[font=Courier]fonts_*.swf[/font]源文件,而不必从游戏资源中提取已转换的衍生版本。尽管这有代价:[i]Red Kit[/i]是一个67GB的下载,安装后占用103GB存储空间,然后在使用前还需要额外100GB空间用于提取的游戏资源(即"the depot")。然而,它当然能做的远不止更改字体:你实际上可以用它在所有提供的[i]《巫师3》[/i]资源之上构建自己的游戏。人们不禁会想,如果这一切能更早发布,模组社区会是什么样子。
现在,你可能已经注意到实际要修改的资源文件是[font=Courier]fonts_*.[u][b]red[/b][/u]swf[/font],而不仅仅是[font=Courier]fonts_*.swf[/font],或者实际上如果从游戏中提取出来的话应该叫[font=Courier]fonts_*.gfx[/font]。这是因为这些不是[i]原始[/i]文件,而是[i]已处理[/i]的文件,包含了游戏使用的[i]CR2W[/i]格式(即"[The] [u][b]W[/b][/u]itcher [u][b]2[/b][/u] [u][b]R[/b][/u]esource [u][b]C[/b][/u]lass"首字母倒读)的某些元数据。所涉及的元数据有多种用途,通常长度可变,但对于[font=Courier]fonts_*.redswf[/font]而言,它由一个601字节的头部组成,通常可以保持不变,除了最后四个字节,它们以无符号小端(当然)32位整数指定有效载荷大小。在有效载荷之后,还有另外四个字节(或者如果你愿意,可以称为双字)完全为零。
对这些文件的任何更改都必须保留并恢复正确的元数据才能正常工作。除了使用需要270GB存储成本的[i]Red Kit[/i]之外,也可以手动完成,并用脚本自动化(这是我在最终选择官方修改方法以最大化未来兼容性之前开发的方法)。也有可以处理该过程的工具:[i]Red Kit[/i]本身附带[i]WCC_Lite[/i],这是[i]CD Projekt[/i]自己使用的功能精简工具:过去它可以单独分发,无需安装整个[i]Red Kit[/i],但这已不再被允许,而且该工具的先前版本无法处理当前游戏的资源(反之亦然),尽管游戏本身显然可以处理较旧的包版本,至少目前如此。还有一个社区开发的开源替代品[url=https://github.com/WolvenKit/WolvenKit]WolvenKit[/url],但它在[i]《巫师3》[/i]方面已停止开发(仅[i]《赛博朋克2077》[/i]继续开发),因此它没有为重制版更新,与之不兼容(而且,即使更新了,也部分依赖于现已不可再分发的[i]WCC_Lite[/i]的功能)。
[size=3][b]创意部分[/b][/size]
所以,如你所见,这里有很多内容需要拆解(双关语意在言外)。反编译、替换字体、重新编译和重新打包的过程可能有些繁琐,无论你选择哪种方式。然而,这还不是全部。在替换之前,字体变体本身已经过调整和自定义,以获得更好的游戏内外观和一致性。这是使用另一个强大的开源工具[url=https://fontforge.org/]FontForge[/url]完成的。
[size=4][b]致谢与相关链接[/b][/size]
[list]
[][url=https://htfonts.com/en/fonts/alegreya/]Alegreya 字体[/url],由[i]Huerta Tipográfica[/i]制作:一款华丽的字体,拥有[url=https://htfonts.com/en/fonts/alegreya/test/]众多变体[/url],也可在[url=https://github.com/huertatipografica/Alegreya]GitHub[/url]和[url=https://fonts.google.com/specimen/Alegreya]Google Fonts[/url]上获取[/]
[][url=https://www.nexusmods.com/thebloodofdawnwalker/mods/217]Alegreya 模组[/url],由[url=https://www.nexusmods.com/thebloodofdawnwalker/users/86268293]WinterElfeas[/url]为[url=https://dawnwalkergame.com/]《黎明行者之血》[/url]制作:很棒的模组,是本模组的灵感来源;也是一款值得一试的好游戏,如果你还没玩过的话,特别是如果你喜欢[i]《巫师3》[/i][/]
[][url=https://fontforge.org/]FontForge[/url]让我轻松调整和自定义字体,使其在游戏的特定环境中看起来更好[/]
[][url=https://github.com/jindrapetrik/jpexs-decompiler]JPEXS Free Flash Decompiler[/url]在其众多其他功能中,使得在最终化的[i]Flash[/i]或[i]Scaleform[/i]文档中替换字体资源变得非常直接,甚至无需回到(通常不可用的)源文件[/]
[][url=https://www.thewitcher.com/us/en/redkit/modding]《巫师3》Red Kit[/url]是修改游戏的官方方式,也是用于创建本模组的方式;但请注意,它是一个67GB的下载,将占用270GB存储空间(不包括游戏本身)[/]
[][b][s]WCC Lite[/s][/b]现在是[i]Red Kit[/i]的一部分,不再允许单独分发[/]
[][url=https://github.com/WolvenKit/WolvenKit]WolvenKit[/url](未用于制作本模组)可能是进行此类和其他更改的替代方式之一,如果它能为重制版获得更新的话,尽管它仍然需要[b][s]WCC_Lite[/s][/b]作为依赖项[/]
[][i]维基百科[/i]上的[url=https://en.wikipedia.org/wiki/Text_figures]悬挂数字[/url]条目解释了为什么本模组如此契合[i]《巫师3》[/i]和[i]《黎明行者之血》[/i]所处的时代,作为排版爱好者,我鼓励你去看看[/]
[/list]
[size=4][b]版本历史[/b][/size]
[size=3][b]1.1[/b][/size]
[list]
[]添加了西里尔字母支持。拉丁字母用户无需更新。[/]
[/list][size=3][b]1.0[/b][/size]
[list]
[]首次公开发布。[/]
[/list]
[size=2]本模组及所有相关的文本和视觉资源均为100%人工制作。
在开发的任何阶段或以任何方式均未涉及AI。[/size]
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。