求warzone2100中文彻底解决方案。(已解决)

游戏讨论
回复
767344148
帖子: 23
注册时间: 2010-08-17 15:46

求warzone2100中文彻底解决方案。(已解决)

#1

帖子 767344148 » 2010-08-19 12:04

viewtopic.php?t=237756提供的方案,会导致终端字体改变。

我装了文泉驿字体,
修改~/.warzone2100-2.2/config
把“fontname=”改为
WenQuanYi Micro Hei
WenQuanYi Zen Hei
wqy-microhei
wqy-microhei.ttc
wqy-zenhei
wqy-zenhei.ttc
都不行(连个字都不显示了)。

我的要求是:不改变系统字体,而使war2100可以显示中文。
多谢。

四五楼高手解决了。
我找不到~/.fonts目录,换成 /usr/share/fonts/目录。(10.04)
解决!
多谢 人间正道-shzsc
上次由 767344148 在 2010-08-30 12:00,总共编辑 3 次。
yetist
帖子: 37
注册时间: 2007-02-02 0:11

Re: 求war2100中文彻底解决方案。

#3

帖子 yetist » 2010-08-19 23:51

运行一下fc-list,将列出系统字体名。
头像
人间正道-shzsc
帖子: 180
注册时间: 2010-07-30 22:57

Re: 求warzone2100中文彻底解决方案。

#4

帖子 人间正道-shzsc » 2010-08-25 2:04

从 Terminal 与 log 文件的输出信息和配置文件的变化来看,似乎游戏认不出文泉驿等字体的英文名称,偏偏它又不支持中文字体名,所以只有 AR PL U**** 那几个文鼎字体是可以直接用的,可那几个字体用来显示真的很挫……

晒一下我的微米黑解决方案(Ubuntu 10.04,不爱折腾的话楼下有我改过的现成字体,直接安上并修改配置文件就可以了):
基本思路:制作一个微米黑的副本,删除该副本中的中文字体名并更改英文字体名以使其与微米黑共存,然后刷新字体缓存,最后修改 wz2100 配置文件中有关界面字体名称和 style 的内容令其调用修改后的字体。

详细步骤:
Fontforge 打开文泉驿微米黑的字体文件(无需 root 权限;源里有这个软件,不过用之前最好做好心理准备,这东西的界面出奇的……朴素 :em06):

代码: 全选

fontforge /usr/share/fonts/truetype/wqy/wqy-microhei.ttc
提示选择字体(因为是 ttc 文件),选择文泉驿微米黑,确定:
screenshot1.png
等待字体加载完成,不用理会屏幕右下的警告信息。最终会出现主界面:
screenshot2.png
这界面可能很让人头大,不过您全然不用理会,直接菜单上【基础】->【字体信息】。出来一个对话框:
screenshot3.png
将【字族名】和【昵称】全部改成 MicroHei Faked:
screenshot4.png
单击左侧的【TTF 名称】:
screenshot5.png
在第一行的【文泉驿微米黑】字样上点一下,然后连续单击【删除】,直到所有【中文 (**)】的内容都被清除(如果看不到【语言】列那就拖动下面的滚动条或以红色行为准——事实上只要一删到红色的行那个删除按钮就灰掉了),确定:
screenshot6.png
菜单【文件】->【生成字体】,保存到 ~/.fonts(就是用户目录下面的【.fonts】隐藏子目录)。注意文件名下面的那个【TrueType】不要错,并点掉【保存之前确认】的大叉以免节外生枝:
screenshot7.png
(如果您对找不到那个目录很困惑或实在不会捣鼓这个“另类”的保存对话框,您可以点一下左上角的那个文件夹再保存,这样就保存到了用户目录中,然后 Ctrl_Alt_T 进 Terminal,mv <文件名> .fonts,如果提示没有目录就先 mkdir .fonts)

关闭 Fontforge,无需保存。

刷新字体缓存:

代码: 全选

fc-cache -fv
修改配置文件(我的 WZ 版本号是 2.3,请将下面的 2.3 替换为您的版本号;如果是 SVN 下来的 trunk 分支,那这里就应该是 trunk):

代码: 全选

gedit ~/.warzone2100-2.3/config
着色的三行为修改过的涉及字体的地方:

width=1280
type=14
bpp=32
masterserver_name=lobby.wz2100.net
UPnP=1
MiddleClickRotate=0
radarTerrainMode=0
language=
fontface=Regular
radarObjectMode=0
maxPlayers=2
fontfacebold=Regular
masterserver_port=9990
voicevol=100
sound=1
showFPS=0
music_enabled=1
debugmode=0
shake=0
textureSize=512
power=700
visfog=1
playerName=玩家
FMVmode=0
scroll=800
fxvol=86
RightClickOrders=0
difficulty=0
phrase0=
fullscreen=1
vsync=1
mouseflip=0
colour=0
phrase1=
gameserver_port=2100
phrase2=
trapCursor=0
phrase3=
phrase4=
framerate=60
SinglePlayerFPS=60
fontname=MicroHei Faked
cdvol=40
shadows=1
rotateRadar=1
reopenBuild=0
alliance=2
height=800
gameName=My Game
base=1
ColouredCursor=0
PauseOnFocusLoss=0
fog=1
mapName=Sk-Startup
subtitles=1
用 Terminal 进入游戏测试,中文显示正常,Terminal 和 log 中也没有关于字体的错误和警告信息。
上次由 人间正道-shzsc 在 2010-08-25 2:31,总共编辑 2 次。
头像
人间正道-shzsc
帖子: 180
注册时间: 2010-07-30 22:57

Re: 求warzone2100中文彻底解决方案。

#5

帖子 人间正道-shzsc » 2010-08-25 2:24

传上我修改过的字体文件,下载后双击打开压缩包,在 microhei-faked.ttf 文件上右击鼠标,选【打开方式】,双击【字体查看器】,在新打开的窗口中点【安装字体】,接着在根据上述修改配置文件就可以了。
附件
microhei-faked.ttf.bz2
(1.7 MiB) 已下载 525 次
头像
tabletime
帖子: 55
注册时间: 2010-08-21 17:10

Re: 求warzone2100中文彻底解决方案。

#6

帖子 tabletime » 2010-08-25 12:41

装雅黑行不行?华康少女
头像
人间正道-shzsc
帖子: 180
注册时间: 2010-07-30 22:57

Re: 求warzone2100中文彻底解决方案。

#7

帖子 人间正道-shzsc » 2010-08-25 23:06

tabletime 写了:装雅黑行不行?华康少女
至少我不认为可以。
其一,根据我的分析,只要字体文件中包含中文的字体名(注意是“字体名”而非字体文件名),wz 就没法调用;
其二,版权问题(这应该算我洁癖吧……因为微米黑是自由字体,所以拿它来改应该不会有潜在的问题)
头像
luojie-dune
帖子: 22033
注册时间: 2007-07-30 18:28
系统: Linux
来自: 空气中

Re: 求warzone2100中文彻底解决方案。(已解决)

#8

帖子 luojie-dune » 2010-09-10 12:12

lol 我发现


fontname=WenQuanYi Zen Hei Sharp 就可以。。。

Mono也可以。
『这个世界都是我的 ,我爱你们』

ENTP ⥂ INTP ⥄ INFP ⇦ INTJ

在此发布的文章使用 Creative Commons Attribution-ShareAlike 4.0 协议
头像
人间正道-shzsc
帖子: 180
注册时间: 2010-07-30 22:57

Re: 求warzone2100中文彻底解决方案。(已解决)

#9

帖子 人间正道-shzsc » 2010-09-11 22:40

luojie-dune 写了:lol 我发现


fontname=WenQuanYi Zen Hei Sharp 就可以。。。

Mono也可以。
这样一来 2.2 版(源里的版本)就没字了。2.3 版尽管正常显示中文,但使用的不是设定的字型,且终端里面有类似无法加载字体的信息。或许您系统里碰巧有一些设置把字体给 Fallback 到中文字体上了(我就曾把 fontconfig 里面把微米黑设置成了最终的 Fallback)。
头像
luojie-dune
帖子: 22033
注册时间: 2007-07-30 18:28
系统: Linux
来自: 空气中

Re: 求warzone2100中文彻底解决方案。(已解决)

#10

帖子 luojie-dune » 2010-09-11 23:25

确实如你所说。可能是我安装了的Droid Sans Fallback被检测出了作为第一阶梯。
『这个世界都是我的 ,我爱你们』

ENTP ⥂ INTP ⥄ INFP ⇦ INTJ

在此发布的文章使用 Creative Commons Attribution-ShareAlike 4.0 协议
leshanwei
帖子: 4
注册时间: 2010-09-13 10:29

Re: 求warzone2100中文彻底解决方案。(已解决)

#11

帖子 leshanwei » 2010-09-13 20:51

太麻烦了。哪个是英文字体,改成英文字体不就解决了。用LINUX的人多半是看得懂英文的。
头像
luojie-dune
帖子: 22033
注册时间: 2007-07-30 18:28
系统: Linux
来自: 空气中

Re: 求warzone2100中文彻底解决方案。(已解决)

#12

帖子 luojie-dune » 2010-09-13 21:44

改成英文locale就可以了。但是这里真的有很多很多人不认识或者不想要看英文的。
『这个世界都是我的 ,我爱你们』

ENTP ⥂ INTP ⥄ INFP ⇦ INTJ

在此发布的文章使用 Creative Commons Attribution-ShareAlike 4.0 协议
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 求warzone2100中文彻底解决方案。(已解决)

#13

帖子 eexpress » 2010-09-13 21:54

这干嘛。这么麻烦。
直接英文吧。
难道这游戏,不遵循fontconfig,而是直接渲染字体? 这也可能。
● 鸣学
leshanwei
帖子: 4
注册时间: 2010-09-13 10:29

Re: 求warzone2100中文彻底解决方案。(已解决)

#14

帖子 leshanwei » 2010-09-14 7:48

更简单的办法。点“第四个菜单”->“第一个菜单”,然后不断点“右边第一个菜单”,直到选定ENGLISH,再点下那个菜单。这样每次都是英语的,从根本上解乱码的问题,还防止有可能因配制字体错误,导致其它软件无法正常显示的问题。
wormux也不能正确显示中文。也可以点“右边第三个菜单”->“上面第二个菜单”改语言。
头像
人间正道-shzsc
帖子: 180
注册时间: 2010-07-30 22:57

Re: 求warzone2100中文彻底解决方案。(已解决)

#15

帖子 人间正道-shzsc » 2010-09-15 0:21

leshanwei 写了:太麻烦了。哪个是英文字体,改成英文字体不就解决了。用LINUX的人多半是看得懂英文的。
我以前在瘟到死下做过汉化(高一时就开始小打小闹),现在自己又是学本科英语专业的(尽管不是什么好的学校,专业课也多多少少有点三脚猫),所以有时候只要一看到英文的界面就有把它改成中文的冲动……
回复