我花了一周终于完善了CS2MapView!

各位盒友们,大家好!

        对于曾沉浸于《天际线1》的盒友来说,CSLMapView 这款MOD绝对称得上是无人不知的神器。尤其对热衷于造景的玩家而言,当你历经数百小时精心雕琢出一座城市后,能够通过它导出一张清晰美观的城市地图,见证自己一笔一画构筑的梦想跃然纸上——那些亲手命名的街道、区域和地标建筑——一个个熟悉的名字浮现于眼前,那一刻所带来的满足与成就感,着实难以用言语形容。

        果然,《天际线2》发售后,其地图工具CS2MapView也悄悄跟进了。不过可能很多盒友还没注意到它——因为它似乎没有正式上架P社的MOD平台,传播度并不高。作为一个喜欢欣赏自己规划成果的普通玩家,我其实一直在关注这方面的消息。后来偶然在B站上刷到,才知道它已经更新支持二代了!于是我立马下载下来试用。

        但实际体验下来,效果并不理想。最主要的问题是:它根本不支持中文显示。我辛辛苦苦给城市里那么多建筑和道路重新起了名字,结果在这工具里全变成了“口口口”。一开始我还发现,手动修改主题配置文件、把字体换成微软雅黑这类系统字体,其实是可以正常显示的。但每次想换字体都得翻文件、改代码,实在太麻烦。就是在这种折腾之下,我萌生了一个念头:不如自己动手,把这个MOD修补一下吧。

就像这样,中文全都变成了口口口

        于是我说干就干,立刻从GitHub上拉取了源代码。打开项目一看,好家伙——注释清一色全是日文!原来作者是来自霓虹国的开发者。既然都到这一步了,那就硬着头皮改吧。我一个文件一个文件地翻看、修改、测试,几乎重构了整个字体系统,顺手把图标系统也重写了一遍。第一阶段终于完成了:现在工具可以动态识别根目录下的字体文件,图标也能根据建筑类型唯一标识稳定显示了。

CS2MapView Github首页

感谢原作者gansaku的源码支持不要因为是JP就骂俺啊

github.com/gansaku/CS2MapView/tree/main

字体系统与图标系统重构

全局字体系统+注释

用户设置+注释

当然还有一些没汉化的注释

实在是太多了,不汉化注释也没事

第一版效果

        但我并没有就此满足。最近高德地图推出了深色模式,我用了一段时间,越看越觉得它的UI风格和配色特别舒服。突然灵光一闪:为什么不试着做一套高德风格的图标和主题呢?

高德深色模式

        说干就干,我立刻上iconfont-阿里巴巴矢量图标库找素材,再用PS一点点调整、绘制,很快就完成了一批新图标。数量说多不多,但前前后后也做了54个,全部是SVG格式。最终的效果自己还挺喜欢的,简洁又现代,一眼就有高德那股味儿。

iconfont-阿里巴巴矢量图标库

图标样式

        一开始,我完全参照高德深色模式的配色,仔细提取了它的建筑颜色、道路和地形色值。可做完预览一看:哎哟,这效果怎么这么丑?更让我注意的是,高德地图上的建筑名称其实依然是五颜六色的。于是我转变思路,让建筑名称的颜色直接读取其对应建筑的颜色,并添加黑色描边,觉得这样既统一又有层次。

模仿高德深色模式的样子

彩色建筑名称样式

        实际应用之后却发现……更糟糕了。名字不仅显得杂乱,在很多背景下根本看不清楚。纠结再三,我终于意识到:有时候简洁反而更有效。于是果断放弃了彩色方案,把所有名称统一成一种清晰的颜色,视觉果然干净多了,辨识度也大大提升。

恢复名称单一颜色显示

不过,考虑到高德深色模式的建筑颜色分类不是很清晰,于是我又改成了CS2原版建筑类型各自的颜色

        至此,核心功能已基本完善,是时候加入中文支持了。考虑到原版采用硬编码方式处理文本,不仅修改起来繁琐,未来扩展多语言支持也会非常困难。我认为与其一次次手动替换,不如直接设计一套语言管理系统——这样既方便当前中英文切换,也为后续接入更多语言本地化打下了基础。

中英文语言切换

        于是,语言选择功能顺利上线。当然,目前还只支持中文和英文两种选项,但整个架构已经就位,未来要新增语言将会轻松很多。

        到了这个阶段,功能已经基本齐全,但我总觉得还缺了点什么。仔细一看才发现:字体和图标的显示尺寸都偏小,阅读和辨认起来有点费劲。好吧,那就再进一步,在设置界面里加入字体大小和图标大小的调节选项。随着这个功能的加入,这个版本的优化总算告一段落,终于达到了一个让我比较满意的状态。

字体及其大小设置

        我对程序的部署方式也做了一番调整,与原版形成了明显的对比:

文件构成区别

        原版本依赖系统安装特定版本的.NET环境,对于不常折腾运行时的玩家来说,很容易出现兼容性错误或无法启动。而现在,修补版直接内置了运行时,真正做到下载解压、双击即用,极大降低了使用门槛。同时,模块化的文件结构也为后续更新和社区拓展提供了清晰的方向——未来加入新语言、新图标包或主题,都将更加方便。

        总结一下功能:

国际化支持[优点]

  • 多语言翻译系统:内置完整的翻译管理器,轻松适配不同语言环境。

  • 支持语言:当前已涵盖英文(en)与简体中文(zh-CN),满足基本的多语言使用需求。

  • 动态语言切换:用户可在运行时实时切换界面语言,无需重启应用。

  • 本地化资源:提供完善的本地化字符串资源文件,方便社区贡献更多语言版本。

资源管理[优点]

  • 更多字体:额外提供两个字体文件,显著改善中文及特殊字符显示效果。

  • SVG 支持:全面增强矢量图形处理能力,实现图标高清缩放与自适应渲染。

  • 图形渲染:基于更完整的 SkiaSharp 生态系统,提升跨平台渲染一致性及性能。

存储占用[缺点]

  • 文件大小:由于包含大量运行时依赖库,修补版总体积较原版显著增大。

  • 磁盘空间:需要更多存储空间,属于功能增强与便利性提升所带来的合理代价。

PS:字体、主题、图标包均可以在根目录的Fontsthemeimages中添加并动态识别,需重启哈,主题样式可以查看高德深色的主题,有注释。

说些题外话,开发这个修补版遇过点挫折,然后整个推翻重建了

最开始的版本

公交站点名称都让其显示出来了

但是一直报错,找不到问题

干脆推掉重建了,所幸后边的几乎一遍过,嘿嘿

下载链接:

1.解64编码

aHR0cHM6Ly9ncWNhdC5sYW56b3V1LmNvbS9iMDJuaGZwZ3RlCuWvhueggTpnc2Q5

2.直链

https://gqcat。lanzouu。com/b02nhfpgte

密码:gsd9

更多游戏资讯请关注:电玩帮游戏资讯专区

电玩帮图文攻略 www.vgover.com