半影1做完很久了,不过具体方法忘了放上来。突然想起来007交代的这件事情。。。2 v. R Z3 _) H6 _# G+ I$ c) ~
) ~+ M) j/ u& z; D
半影 字库图片制作方法详解:
6 Z7 t9 O1 M; V2 o& L' i
' s$ c$ a" B& x9 T" u$ \半影1和半影2的制作方法是一样的。半影3没有自己的字库,使用的是2的。( v7 i- c3 ~' {
半影1虽然是和后裔同一个妈生的,但是半影1年代有点久远,所以在编码方面有点不同。不同点在于,之前的一个帖子提到:“总字符超过10000游戏会出错。 ”
$ n0 o$ v" n+ ?0 E# `- I& b由于中文字符的unicode编码往往都是大于10000的,所以在这个游戏中的处理方法是,自己重新设定编码,然后在字库图片描述文件中修改对应编码。
% X# P! W# k3 x, U) @5 ^* c$ y% j2 f
1. 使用tt(通用提取非重复字符及排序工具)提取中文文本。
1 l6 ~9 f, ^4 d8 t- N
: A0 x* w% N; O/ L6 m2. 使用bitmap font generator制作所需要的字库文件。图片大小可以取大于256,原装的版本是使用256的,大于256有可能使游戏不稳定;但也有人说是因为分辨率/显卡问题导致游戏不稳定。字体大小、是否粗体、spacing等可以参照原装版本。制作完后,fnt要分别改成原装的文件名,用来覆盖原装版本,图片不用改名(如果图片改名的话,注意对应的fnt里边要相应改名)。
+ e8 X8 i3 T- {2 S注意:fnt里边的中文字体名,需要改成英文的。: K4 t! H( G/ Q! n3 c) u
; |) x% k9 s4 |, N- l- V
3. 使用转换Unicode编码工具一枚。3 D: U4 K8 e+ ~# C" v0 T7 y
) |7 j( N9 Q' e6 B, R使用方法:选择源文本(翻译好的中文文本),然后选择保存位置。
Y& c9 M! C: j* b7 c7 l" F4 m& f/ C注意:源文本要求为UTF-8格式的。如果不想转换格式,也可以自行到源码中修改(Line 35的编码)。
6 K2 G! }+ [: `7 H d3 q; f输出的文件将会把所有2个字节的字符转换为[uXXX]形式,并且后边加空格(加了空格才能在游戏中自动换行)。, D7 D7 u/ C* T2 J; ~
/ }5 o1 y* R. r& S. L4. 使用字符排列编码工具一枚。5 d3 ?! I: g% R& R |2 I
+ _( `5 Q0 Z1 }1 |: N& C
1)把所有2个字节的字符重新设定编码。本枚工具设定从1100开始(已附上src,可自行修改;在const变量中定义了)。
" Z' z( q6 E6 M使用方法:选择文本(推荐使用tt提取后的文本),选择保存位置' ]6 e+ X% C- q7 o/ H; u, w
输出的文件格式为txt,形式是:- M3 g% L- b3 Z& f; @1 c# @+ S. v
新的编码 文字 原来的unicode码+ e7 ?" H, n4 u* u/ C; Y5 B
2)修改字幕和字库图片定义文件
- ?6 a( y, l* S使用方法:选择1)所产生的文本,选择字库图片定义文件(fnt文件)所在文件夹,选择转换为[uxxx]形式的字幕(后两者其一不为空即可进行修改,两者不为空,两者都作修改)。
8 [. @( F$ C `2 w: ^ v输出为新的编码所定义的字幕和字库图片定义文件。7 k9 c9 c2 o/ e( D7 d8 W- y2 Y
& O# p/ B/ a; X* z
5.在游戏原来的对应位置覆盖原装版本(注意把原来的做好备份,没备份又崩了就重装吧~)
; C) B0 P% k+ b
$ M A1 Z* @! P$ I% {2 \' Y所制作的工具都是使用VS2005,C#。可能有错误,有兴趣的话欢迎联系本人交流。, f, z# b( `% ?3 i d/ H: u/ K0 P
不过也不是什么通用工具,没什么现实意义。XD |