设为首页收藏本站官方微博

汉化资料 WinterMute Engine 汉化教程

[复制链接]
查看: 5785|回复: 11
打印 上一主题 下一主题

[汉化资料] WinterMute Engine 汉化教程

跳转到指定楼层
楼主
发表于 2014-3-22 22:08 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

WinterMute Engine 汉化教程

本帖最后由 weiyun 于 2014-3-24 19:11 编辑 1 q, `1 z  T" V( E
! O  D3 O2 u* R; v& w, z! {
Winter Mute这个引擎是专门用来开发点击式冒险游戏的,下面我来讲一下这个引擎的汉化方法。
! h& v0 K1 `- A" c8 _使用此引擎的游戏比较多,而且汉化非常容易,论坛之前有很多相关资料,但没有完整格式分析等
! A+ W1 Q3 g  W' o! T: k9 N0 E# K! Q( Q! l
以下是官方主页:http://dead-code.org/home/
, D+ j0 N! @9 l$ E' p注意本引擎是开源的,源码可以在这里查看:
' u- S; U0 Z3 Q& z  ghttps://bitbucket.org/MnemonicWME/wme1/
' D. q: u& D  `+ \8 T4 Q0 I* C8 c/ |! @! K' u0 I0 [: A' ?
下面开始正文4 G$ J! m1 ?4 u2 m, b& |2 a- W4 v! D
1 a8 d* t1 z5 _( I1 q
包格式
2 ^& D% l  B) n' t, u0 M游戏的包格式为dcp格式,文件标志是0xDEC0ADDE也就是DEADCODE。
) S9 c) J' [' C+ e2 i- d- B/ V7 h& G  A/ o; H! A( b: c
格式分析:
  1. struct{; T9 `, z! `/ C% X& _( M$ X
  2.         DWORD Magic1; // 0xDEC0ADDE  DEADCODE
    4 F4 N" {& H3 U4 h5 q2 o2 M) u
  3.         DWORD Magic2;  // 0x4B4E554A          "JUNK"
    * n1 F4 {0 i4 y* Z, A* `, A
  4.         DWORD PackageVersion; // 0x00000200 包版本6 ~7 U: A: X2 S3 {8 g- m
  5.         DWORD GameVersion; //游戏版本; V1 _4 h2 O. m" u7 @1 l
  6.         BYTE Priority; //优先级# r% e7 d, S% M7 z
  7.         BYTE CD;
    7 L5 f1 {4 B0 u/ l
  8.         bool MasterIndex;. c5 Q! b) A* E7 Y. v& A
  9.         __time32_t CreationTime;6 p) r! M: U; G, c. N. \7 M9 N
  10.         char Desc[100]; //包描述, ^0 ?5 k* t% t1 E' [3 c; B
  11.         DWORD NumDirs;  //目录数0 ?% s* Q* L1 P4 P  w; G
  12. } PackageHeader;) I% r! ^- L; j) |7 P6 D
  13. if (PackageHeader.PackageVersion >=0x200)
    ) c1 q8 I  n( m8 Z& Y9 o
  14. DWORD DirOffset //目录偏移量5 B$ \' q% N5 E! V+ ?
  15. struct Dir{- C  d" }8 \. \! w2 ^! x
  16. BYTE NameLength;9 p# J9 e$ v: l. d% R/ s
  17.          char Name [NameLength];   //文件名9 C& {# r7 y2 m6 q6 s6 l! r
  18.          BYTE CD;
    ) B5 y3 n! n9 ~, t8 C
  19.          DWORD NumEntries;//文件数
    " B8 R' d8 H6 |; r. C! }( F
  20.      struct Entry{- R6 F! f- r' _% ]) V/ X
  21. BYTE NameLength;
      m1 z/ r. Z# l0 `+ a9 u5 x' C
  22.        char Name [NameLength];
    : g$ e0 _$ Z" X0 I" z+ e8 G# S2 Z
  23.        DWORD Offset; //文件位置
    & a: k' y; I: i$ i
  24.        DWORD Length;//文件大小
    $ m, g: L+ J6 p; }) M' Q- Y( R' X
  25.            DWORD CompLength;//压缩大小( |5 M$ p" {: r
  26.        DWORD Flags;
    0 @7 B5 u! E2 O# m# Z2 |# F
  27. if (PackageHeader.PackageVersion >=0x200)
    3 t2 c' ~1 ~, t6 h( t' k; @% c0 ^
  28. {      DWORD TimeDate1
    / \, c$ J1 x( t
  29.        DWORD TimeDate2        // not used/ f' [* X7 U; W* S4 u; V- H5 Y
  30. }3 A! k% r0 m- k* {; ~* l
  31. } Entries[NumEntries];9 H. V# \* V* R" r( d
  32. }  Dirs[NumDirs];
复制代码
解包;
6 _8 B0 n+ b% G- J9 f0 M可选解包工具 GOBREAD,UNPAKKE,Quickbms 脚本,引擎自带的专用解包器。: @0 a4 J* G9 L9 p

( D. }6 ~3 u- y& \4 K打包:
0 }6 T* S- [: f* Z2 D  ~可以不打包,打包工具可选UNPAKKE和引擎自带的工具。, G+ h3 ^. n; I

6 I  p) J1 Z+ x6 j( E9 t1 ]& W; p文本:, w8 a7 g+ h" z! Q  g% j
语言表格式如下:  @/ U$ n% t+ Z
SYSENG0001        Game settings* t1 Z$ @0 R# C) C- S0 z
SYSENG0002        Display' Z3 T  n$ p( _; {) I6 K+ P
SYSENG0003        Sound
1 ?% b6 x. s0 v8 c3 `/ E2 YSYSENG0004        Use hardware acceleration
0 B- i$ [/ F/ S$ e3 J- ^5 OSYSENG0005        Display device:1 n/ b) D- H) @
SYSENG0006        Colors:
. g( K( D) F. d: }- w' fSYSENG0007        Run in window
! a' M/ w* T# m! M3 y$ q语言表可以互相引用
' @2 J. A6 Q0 R0 z9 y& I3 f4 iSYSENG0001        Game settings
# ~( T# B% R" q& H* `" qSYSENG0008        /SYSENG0001/
7 p7 p7 ?# Z2 d) s甚至能支持阿拉伯语等从右向左的语言,只要文本里加上这个标记就行! e' G2 D* D+ L5 u0 a4 ]
@right-to-left
% A" J5 a8 ~( p: E; Q9 C语言表一般为String.xls,这是csv文件,而不是真正的xls格式,直接翻译即可,注意编码选择可选简体中文(GBK编码,非中文系统将无法显示),和utf8编码,注意如果文本编码有BOM将自动切换为UTF8格式。' ~9 |0 |8 \, q8 P

+ ^( ^, C" \* A0 {8 n! q/ Z字库:- n1 {/ e/ }% s
游戏支持两种字库,图片字库和ttf字库,注意只有ttf字库支持中文。
& r* r6 d9 G' F5 C字库都需要描述文件,因为图片字库不支持中文,所以此处略过,有需要请看官网。4 l+ ]+ k+ V8 V
http://docs.dead-code.org/wme/inside_ui_fonts_bitmap.html) h- M9 I  J: v+ z
要注意的是ttf字库是不能打包的。. A( T. U+ s5 f5 @+ e
TTF格式字库的描述文件:
- x* O* [9 _8 i# `, @% R! PTTFONT
7 ~6 k+ _8 M* I' v) s{5 T$ p  w7 n: V6 D$ O
  SIZE = 12  
* x, I- [( t4 Y  FACE = "Arial"
3 P" r' ~$ ^1 B* l4 p' ^+ H  FILENAME = "fonts\arial.ttf", Y3 M/ b) I" g6 }- E9 V
$ r1 N% @9 _7 F$ A" p
  BOLD = TRUE, r- y  {6 |' ]  B1 U- _# u1 \
  ITALIC = FALSE
2 |$ Y) C0 P) |; R4 `: ]3 h. T6 I+ }  UNDERLINE = FALSE
! A" ]8 ]- c6 K; o: U  STRIKE = FALSE( Y/ K$ g% v! X0 y" |
! a3 U* d% b* k
  CHARSET = 1: B: a# G9 W- j+ m7 _4 x
; y; B8 ?$ ~- W% N
  COLOR { 255, 0, 0 }: R- H. [" U! N$ e; R$ B
  ALPHA = 255
$ x" y( O, b0 N9 q% ]  LAYER
/ Z4 `* o& U6 h+ z5 o1 I  {
! o5 q1 R2 ~7 u+ M/ A4 M4 m% ]    OFFSET_X = 12 u; Z7 F; [$ D
    OFFSET_Y = 1
. h, J, O# }8 k. v- b' u+ c    COLOR { 0, 0, 0 }
& r9 u5 y, ^$ S, K# Q' T$ t: m  ]    ALPHA = 2550 B  D. N3 f% @
  }
6 Q+ q. ]2 F0 ?/ x8 @6 N
- |$ r5 r$ L' }0 T# Q! ?  LAYER
0 s9 _; z6 W- T$ G. a. b1 g$ A  {3 I* ?( H. A$ n- B6 f$ |
    OFFSET_X = -12 T, Z0 Z; p9 U% C6 g2 W3 @
    OFFSET_Y = -1: u0 M( [4 r6 F  y  Q
    COLOR { 0, 0, 0 }- [- W# c: y2 X# \
    ALPHA = 2551 J5 j# K) W- \6 v" v( n$ y6 O
  }! Q8 {" ]/ T! W/ l1 R) I" ]0 ^

! a7 Q2 q3 T' `: j& [) k! y  LAYER
3 {0 H  Z# S3 B- e# P9 [  {+ @  ~( V4 x' w- b
    OFFSET_X = -1
' C- d$ V$ _( N; z    OFFSET_Y = 1
! r" L4 t! ~& J1 M    COLOR { 0, 0, 0 }
4 Z* j  o8 _1 A5 L/ _2 q/ f! f5 q    ALPHA = 255. ?) D& D3 r0 k
  }  }0 q% i5 H% d/ s/ D1 v4 I, c( _
7 e# e- Y2 q7 G) `
  LAYER
, ~2 F* V7 @& B1 G: R  {
! W% `5 m/ Q! S    OFFSET_X = 1+ D  I) Z: m6 r4 N/ y, p. W& c. B
    OFFSET_Y = -1
' q1 Z$ m/ m. w+ Z; `; d    COLOR { 0, 0, 0 }
+ A& O& y2 Y, V4 v    ALPHA = 255. m/ y5 b; p( l8 ~. H3 Q; C
  }  p# T! H- _4 b  {
' [. V6 y& g1 X: ^
  LAYER
& O4 H+ K' {; g- P# r! L/ n  {
3 \& C2 e9 A# L! y/ z    OFFSET_X = 0
3 @: q$ ]7 N2 d! _) s0 V1 J    OFFSET_Y = 0, O1 k: K( C- f& `- y9 `
    COLOR { 255, 0, 0 }
4 l  _7 ^% e& A" |% \    ALPHA = 255
" W. Y0 R3 i3 j% Q  }
. a* {; N6 T9 i& W3 e}
1 ~3 |+ W: k9 O0 I; M各参数说明
, s! Z* J3 A$ k6 P% d•        SIZE – 字库的大小,一般根据英文来选择。9 Q9 ^: U% E2 C9 V6 e$ S3 e' O
•        FACE – 字库的名称,注意是显示名称,比如系统自带宋体SimSun 。建议不要写中文,容易出现问题。8 T& k$ N- ^7 w6 j, i) [* O% E
•        FILENAME – 字体文件名称,就是ttf的文件名,如果要直接使用系统自带字库可以留空。9 L, i- n1 L: a. w
•        BOLD – 为TRUE则以粗体显示。2 m- i7 ^1 v! g3 S, o  i) ^
•        ITALIC -为TRUE则以斜体显示。
. F+ U9 h* e3 e/ s0 ^: y: l# U•        UNDERLINE -为TRUE则显示下划线。
' P7 [  I( ]9 B' [( r8 Q* O% w•        STRIKE -为TRUE则显示删除线。
" u' ]' l* x. Z# u•        CHARSET – 字符集,简体中文要选6,繁体要选4.
- d+ t: n6 M' Y# X•        COLOR – 文字颜色(RGB)显示! y  |( p; d1 V8 b5 j- q
•        ALPHA – 透明度, (0 到 255),一般选255.& h: M$ a; s2 M8 F. m$ P) ]) w
注意这个定义文件下面的Layer就是按层绘制,可以实现模拟的描边效果,就是左移,右移,上移,下移1像素各绘制一次,颜色不同。如果不需要描边效果只需要1曾就够了。
2 {  W7 {" f2 r+ m5 X
; ~( m* v. c9 {/ c2 Z/ J- J. C9 M" \以下是字符集,注意和windows的GDI中LOGFONT的值是一样的,游戏本身也是用GDI处理文本绘制的。
/ L* Z. j3 `& U% @详细内容请看MSDN# n; _$ y) b- U! X4 F/ E( U
http://msdn.microsoft.com/en-us/library/windows/desktop/dd145037(v=vs.85).aspx
1 h4 M0 {, V, ?WME 字符集编号        解释
3 V% ?+ G+ q+ z8 `" v0        ANSI 字符集(注意这是英文字符集)
4 A& |) T6 @. a9 ~( n1        默认字符集,根据系统语言变化。, r! x5 }( J; c& @
2        OEM 字符集,根据系统变化。0 s' q' d; r7 V: Y* i! [
3        波罗的海。
* u8 G5 ^8 }; g4        繁体中文。4 @; B! m$ N% ?. j/ Q8 p- k
5        中欧及东欧语言。
8 Q' e) A% F" S0 S( c6        简体中文。2 I8 s2 S7 f2 ?2 \- X
7        希腊语。
3 U, O, v2 e* G7 V8        韩语(Wansung)。
7 J' Y+ S9 B: l& o8 ~" i) N9        Mac字符。' O5 [  D+ Y: ]. ~1 B5 }! ?
10        西里尔字符(俄文)。  o, T  u- w3 ~6 O+ I
11        日文 shift-jis 字符。$ \* d/ a4 E" i; o  _! k1 p
12        标准符号集。! ~8 j6 e6 J9 K& u. X' v! Q
13        土耳其语。
* h2 ~3 f  F: S& F. H14        越南语。, [7 S5 @+ u. L3 `' G: c
15        韩语(Johab) 。
% Q. G: I1 H2 H7 X16        阿拉伯语。- X5 F% p6 o6 t) c; m2 [+ J5 \
17        希伯来语。
# {, }. ^4 h% o, y8 N2 B/ `; ]" k18        泰语。
6 y! C, i3 C  d' I2 K- b
- A6 w! h  w+ b% x% U5 S- @; r5 a+ P图片:8 _4 A( l+ x1 _
本游戏图片格式为PNG,直接处理即可。! J' e5 G+ e7 j# [4 X# @

1 J  G( \4 Y& }: w脚本:
1 t# m0 J% j& H3 n一般不需修改,除非遇到文本保存在脚本中。1 {/ U9 _4 ^" D' X3 q. \
, r" _4 G' ~+ _) [, d% K3 @
脚本格式分析(不含虚拟机分析):
  1. DWORD magic; //DEADC0DE
    6 I; h- }; f- H4 Y3 I& @
  2. DWORD version; //当前版本为0102
    4 v' b3 K7 {6 i
  3. DWORD code_start ;//代码地址  Q$ H1 P" j8 [  W' C
  4. DWORD function_table_start; //函数表地址
    , i/ K1 h& `" Q7 p2 G& W+ j7 @0 e& {
  5. DWORD string_table_start; //字符串表地址,修改字符串表后需要更新后面的偏移! Q# I# J; y5 c! l+ O: p! p  N. s, j
  6. DWORD event_table_start; //函数表地址: ?6 f; |/ g) J) u6 H1 o3 l3 Z
  7. if (verson >=0x0101)
    / ]3 w- P. Z. A
  8. DWORD dll_table_start;& ~- g: u! f, t3 D0 a% |7 W1 T
  9. if (verson >=0x0102)
    ! X5 B( p+ O* H+ ^; ^: v
  10. DWORD method_table_start;
    6 r) S, C+ U( N+ U& b1 S
  11. string source_name; //0结尾字符串
    0 N! D+ j2 b0 n. X7 e) o
  12. byte[]  code; //代码的字节码$ |0 G' L) P7 |# k
  13. ) L7 ]- _( }! ]% [# n" X1 ~/ L
  14. struct {
    9 V( a& ~! n& K3 U+ r
  15. int num;5 U) x* n  p$ S: n- O1 R6 `2 r; y
  16. struct {0 x1 Z/ M' a9 j+ x
  17. int pos;" Y6 f' [' T; |
  18. string name;
    ( O. w, j4 r2 M  S! d& E
  19. } function[num];
      _5 F8 Y6 W; n8 [* `1 N3 ?
  20. }  function_table ;
    6 w: ~" d4 J: p& `  D
  21. struct {2 D- N* x+ _! w3 G8 v2 g& p. ?
  22. int num;
    # u- f! W- b6 u) D- m0 F
  23. struct {) A% L- S0 |& U
  24. int id;# ?# k9 {9 E2 Q  s
  25. string name;
    0 U, v% s% V' I! e  A0 r
  26. } string [num];
    3 w! h  |5 L4 ?4 B! A$ P& K
  27. }   string_table;
    8 t& q, {2 `" b* P( H' f7 R) ]
  28. struct {
    & t% F% R' ~) j% K7 V; r
  29. int num;# y+ R+ e# q" U8 ?6 {
  30. struct {
    % N! G4 @8 x# h7 o4 `. x% g
  31. int id;: ~/ H: X  z0 M) m
  32. string name;' |+ j0 q6 B& f2 [  s% Y  n
  33. } event [num];
    # u" m" `1 S/ B8 ~5 w! U

  34. " E# x% `' v/ \0 y5 x8 L7 B
  35. }   event_table;( _  H" L! p# B% o8 o
  36. if (version >=0x0101)4 A  E( f5 k% @7 D" K" A
  37. struct {0 Z! e0 n1 |: a! A
  38. int num;
    " J0 ^% W0 v1 B/ m( C- {+ r
  39. struct {
    * M% }% {) |; ]: N8 _
  40. string dll;
    ! j) \, L  X: L! R5 [1 T5 ^) N
  41. string name;
    + f2 S' j. i1 e
  42. int call;
    & p  m, q8 Z" q* H% n8 Z+ s8 `
  43. int returns;
    ) p+ _" q) r& t
  44. int num_params;$ j6 O; T+ f! A4 R5 E% ^  `; j" Q: }
  45. int params[num_params];
    : ?8 y5 m0 v2 F, Y
  46. } dll [num];
    ) H. s( K  J3 P. W
  47. / x4 u) d4 Q! }
  48. } dll_table;; f4 N/ p$ Z# M2 Q$ u- h8 r" }
  49. if (version >=0x0102)
    . w  o  b5 A% `0 ]% e+ Z! K% p
  50. struct {+ _  V1 E$ N- g2 V
  51. int num;% W+ L' V6 b2 D8 B2 n# P8 G
  52. struct {; A- D6 q9 P8 c2 |& j
  53. int pos;5 |7 s# z3 K+ f
  54. string name;  r" ]: M; x4 L) b, @
  55. } method [num]; + {% V& N# _) [
  56. }  method table;
    2 C$ U- |+ w8 ^2 w) {5 G3 _9 c
  57.   ^. b2 G# H4 M  w$ |
复制代码
音频:, e0 r& h3 m$ O' M& l8 w! X* l
游戏音频格式是Ogg格式,Vorbis编码。+ C) ^( v% N# P7 G; F2 k
# g/ f; E1 i/ {9 S6 q
视频:
" E2 v( j6 C0 Q# X游戏视频是ogv格式,theora编码。
  [" O& [: ^* V
. p- O- [* t3 t7 ~9 \汉化流程:
; G' z0 _" j2 i' Z1.        如果有dcp包,先解包6 E7 x* Q; i# G3 |/ q
2.        翻译字符串表
* L1 X# y$ E8 `- n6 v3.        找到中文ttf字库放入游戏目录,并修改定义文件为ttf的定义,参数根据需要调整
: b/ C- b# L9 h5 m% }+ ]: Y( Z4.        修改图片1 {; U) o! t4 E' b* w9 o
5.        改过的文件放到目录,或者打包" v/ L9 J3 u, Q) b2 k3 H0 {
6.        测试0 ~/ Y7 s+ _4 \+ \! ~: j
# {! g% ]+ w$ W! p  g
注意:" k* w9 ]$ d1 w5 J. ~
换行问题,经测试ansi格式下换行有bug,中文超出行数会出现乱码,utf-8也会出现一些问题,如unicode码低位为00时会无法显示,可以采用自定义编码方法解决,需修改文本编码和ttf中的映射表,或修改引擎解决,较为麻烦。
- ^3 s: T; v0 }! G
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

12#
发表于 2015-1-27 13:27 | 只看该作者
感谢分享,下来研究研究
回复 支持 反对

使用道具 举报

11#
发表于 2014-3-25 01:26 | 只看该作者
本帖最后由 zxh17175 于 2014-3-25 01:27 编辑 3 v, _! ~6 Z/ A1 s8 E0 T) K; R
0 W( F( ^0 Y! p( Z; C3 ]/ A+ b% K
默默撸过,既然鱼总发帖了,我就不敢献丑了。
' z5 c! L: K6 {7 b; g说说改字库就好了,修改TTF fontforge非常强大,不过好像windows下面有点不太稳定
. i+ Q+ ^+ u& w8 F. n7 p  s+ t" }用fontforge打开字体之后有个脚本功能,& x8 N( {1 g, ?3 T7 ^( d& C6 G
打开一个脚本文件,内容如下
  1. Select(0u4e00)4 i3 i( f6 k5 a( @! e& |9 Z& D; u
  2. Copy(): U' F1 O% z; ^
  3. Select(0u53b7)
    ( R- d8 U! g% a
  4. Paste()
    - k& V/ x2 Q8 I8 e6 H4 i% ?: f

  5. # D. O5 O) S! J, H( E- n! m* l! z
  6. Select(0u5200)/ g, {0 Q; u; t3 B3 T2 Q  V
  7. Copy()# M- u. f" c  _$ v9 @. i! Z' g5 |
  8. Select(0u53b8)- _' S" R2 ?8 J) C
  9. Paste()
    ! ^7 q" b$ Q, O3 f
  10. ; n/ t, h9 q8 M: A
  11. Generate($filename + "_2.ttf")
复制代码
0u4e00就是低位为00的Unicode编码,0u53b7随便找的ttf里面的偏僻字,并且游戏文本也没有出现过的字符4 x1 b0 j8 Y# }, p  T
执行这段脚本之后0u53b7实际显示就是0u4e00的字形,我这里就示范了两个。
& J7 a7 a# A3 H8 @然后生成一个字体文件名_2.ttf的文件/ P# \; G' ]1 P. H" p
批量处理TTF字库还算方便
+ d6 ?5 S) H# j2 U/ s4 g3 `0 g. V如果系统已经存在游戏的TTF字库,游戏默认会优先调用系统字库。所以还需要把修改好的TTF文件的内部名称(也就是字符脚本调用的FACE)改得尽量复杂和唯一。* m( |. n3 f4 i+ N/ o$ H3 s! E
最后把游戏的文本替换成相应的字符就好。) ^' @& R+ a$ b* r6 `

评分

参与人数 1威望 +2 金币 +20 收起 理由
XYZ + 2 + 20 感谢分享

查看全部评分

回复 支持 反对

使用道具 举报

10#
发表于 2014-3-24 23:58 | 只看该作者
突然感受到了大家对汉化技术的热情,顶weiyun。
回复 支持 反对

使用道具 举报

9#
发表于 2014-3-24 23:47 | 只看该作者
感谢楼主秉承着热爱汉化之心所做的技术分享~
回复 支持 反对

使用道具 举报

8#
发表于 2014-3-23 18:12 | 只看该作者
不明觉厉。。。:D
回复 支持 反对

使用道具 举报

7#
发表于 2014-3-23 09:54 | 只看该作者
支持楼主的处女贴
回复 支持 反对

使用道具 举报

6#
发表于 2014-3-22 23:31 | 只看该作者
嗯,很详细,值得学习
回复 支持 反对

使用道具 举报

5#
发表于 2014-3-22 23:27 | 只看该作者
本帖最后由 setsail615 于 2014-3-22 23:35 编辑
, i2 m( j2 ~' b& f' j/ R& `$ F9 g
不明觉厉啊~膜拜楼主~~
# B4 I; Q' e9 i! S: o2 h6 IPS 友谊哥,328好像不是wme的,我也不太清楚……
回复 支持 反对

使用道具 举报

地板
发表于 2014-3-22 23:23 | 只看该作者
牛贴必顶,强人必赞
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

冒险解谜游戏中文网 ChinaAVG

官方微博官方微信号小黑屋 微信玩家群  

(C) ChinaAVG 2004 - 2019 All Right Reserved. Powered by Discuz! X3.2
辽ICP备11008827号 | 桂公网安备 45010702000051号

冒险,与你同在。 冒险解谜游戏中文网ChinaAVG诞生于2004年9月9日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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