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

汉化资料 惊恐鬼屋Scratches初步汉化分析

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

[汉化资料] 惊恐鬼屋Scratches初步汉化分析

跳转到指定楼层
楼主
发表于 2009-12-23 13:37 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

惊恐鬼屋Scratches初步汉化分析

看了一下惊恐鬼屋Scratches这个游戏。. w" Q7 q" g% }$ F
包文件有2个,scratches.res和scream.res,, U( t$ ~0 l( _, E0 f; n% r: H
包文件的格式如下,可以用Game Extractor来解开。
9 R  l6 K; h) Y7 qhttp://wiki.xentax.com/index.php/Scratches_RES! E7 i" {* _5 Z
从scratches.res里面解出一个font-michael.tga文件,就是在游戏利用的字体。
2 [' _2 K/ {; ~* x* mscream.res里面也有一个字体文件,但是游戏好像没有用到。
$ `* d" U1 |) p. N5 t# b
+ r; b$ J8 t1 }, V$ g% P  j用OD调试后,发现这是一个使用opengl API的游戏。- c9 |* ?2 A% j; U& d
在某句字幕上下了内存断点,断下来之后找到了和显示有关的代码段。) X( I0 {& ?( O+ U7 \/ E
: F: M. |# A/ H* }9 f; G3 [
0040C5D0  /$  53            push    ebx
; E7 B) R# f3 k7 P; b- N' K0040C5D1  |.  51            push    ecx
( [" G# l8 J. F) \$ w3 T" m0040C5D2  |.  52            push    edx
5 L% h; W* ?' _: ?0040C5D3  |.  56            push    esi
3 Y5 t6 Z* \1 |0040C5D4  |.  57            push    edi
2 E2 a& @. ^" c0040C5D5  |.  55            push    ebp9 G0 Z2 w, j3 X+ @; t5 V
0040C5D6  |.  81EC 10010000 sub     esp, 110; V3 [9 I) ?+ W% q% o, [
0040C5DC  |.  89C6          mov     esi, eax
* L7 g; o- \: x$ v( a& y( s0040C5DE  |.  89C7          mov     edi, eax
/ M) j$ n& Q/ b5 i( I7 S$ G) V0040C5E0  |.  29C9          sub     ecx, ecx  L0 H' \8 B" {3 U, X: ?- _) a
0040C5E2  |.  49            dec     ecx
; h; A3 L2 I9 \0 @0040C5E3  |.  31C0          xor     eax, eax
! P4 D  m' W) ?7 @, @0040C5E5  |.  F2:AE         repne   scas byte ptr es:[edi]( B" T  Y% _# }" _# t/ c
0040C5E7  |.  F7D1          not     ecx  d, n5 _9 ]# i: M
0040C5E9  |.  49            dec     ecx! n+ c! ]8 R' ^
0040C5EA  |.  31DB          xor     ebx, ebx
& C7 W" c& e2 t6 \5 M0040C5EC  |.  31ED          xor     ebp, ebp* J8 L, h1 K9 T7 i- k) k  l  z
0040C5EE  |.  81F9 00010000 cmp     ecx, 100
  g$ F( X! y, w0040C5F4  |.  72 0D         jb      short 0040C6030 l* ]) W+ S$ d0 \+ K. h% ?5 E
0040C5F6  |.  81C4 10010000 add     esp, 110! d& z. ]- U& H- F! S8 Q8 S: o& {
0040C5FC  |.  5D            pop     ebp
: B& Q1 h9 v3 ?$ Z0040C5FD  |.  5F            pop     edi8 y- L/ n% s' j" E$ p5 ^6 R
0040C5FE  |.  5E            pop     esi8 `& C  I& b, s
0040C5FF  |.  5A            pop     edx$ @3 q! B2 E7 Z* h" ]) |$ m
0040C600  |.  59            pop     ecx1 u. q: F, N2 C5 M$ M
0040C601  |.  5B            pop     ebx7 x4 v, d0 q7 z
0040C602  |.  C3            retn+ C4 Y% K) m" Y: w; ^: _  x
0040C603  |>  89E7          mov     edi, esp
5 e, `+ \/ Z1 u) E0040C605  |.  57            push    edi
3 ~6 _5 o2 x+ f/ k  T0040C606  |>  8A06          /mov     al, byte ptr [esi]& `' U. P, d- K- h# ~. M
0040C608  |.  8807          |mov     byte ptr [edi], al& u* `9 v: J3 d) M8 h; C; r
0040C60A  |.  3C 00         |cmp     al, 0
+ E; g: L' G9 a6 F- x. l3 ~7 \+ Z0040C60C  |.  74 10         |je      short 0040C61E
4 H6 d) O( C* R( s5 X  J0040C60E  |.  8A46 01       |mov     al, byte ptr [esi+1]9 v& h/ o( ~* |  }4 w! a; G% t4 L/ r
0040C611  |.  83C6 02       |add     esi, 23 |4 g4 ]" n/ l
0040C614  |.  8847 01       |mov     byte ptr [edi+1], al! R$ z, l" I8 x" z- e. n
0040C617  |.  83C7 02       |add     edi, 27 ^% a( |3 h( ^6 C) A2 [; Q0 l9 S( ^: U; ?
0040C61A  |.  3C 00         |cmp     al, 0
* j, t$ _- l8 g+ |0040C61C  |.^ 75 E8         \jnz     short 0040C6069 p5 Z. V; ?4 H; [) P2 h
0040C61E  |>  5F            pop     edi
# t  S4 n& R$ ~( `0040C61F  |.  8A1424        mov     dl, byte ptr [esp]. v- }. S; V' k' i  ~9 Q4 A
0040C622  |.  89E0          mov     eax, esp% f5 {: Z) e. O
0040C624  |.  84D2          test    dl, dl
1 `7 a2 P9 N. [& `7 [0040C626  |.  74 09         je      short 0040C631
+ E; r) l: q" B8 B- |& Y0040C628  |>  8A70 01       /mov     dh, byte ptr [eax+1]
, U  c' ~* H4 n  i7 d. v% X0040C62B  |.  40            |inc     eax6 `1 N8 a9 Y* L' a
0040C62C  |.  45            |inc     ebp5 C1 ~" Y/ D" r1 ]
0040C62D  |.  84F6          |test    dh, dh3 _, q' k/ q* g7 M. I& v# w; r
0040C62F  |.^ 75 F7         \jnz     short 0040C628
5 e0 ^" f0 k" L! i" [0040C631  |>  81FD D2000000 cmp     ebp, 0D2. W1 ^( D$ V; _
0040C637  |.  0F8E 61010000 jle     0040C79E7 {& T% U! o2 x7 R# M) i
0040C63D  |.  89EA          mov     edx, ebp
8 ^1 Z3 W& s; K% P$ |  J) k0040C63F  |.  89E8          mov     eax, ebp
0 I. \- e3 c$ G- y0040C641  |.  C1FA 1F       sar     edx, 1F
6 b7 n' ]2 l; k: w4 p4 O9 v9 }0040C644  |.  C1E2 02       shl     edx, 21 ]& ]9 ^6 [" L  q3 G5 O* x0 U1 g
0040C647  |.  1BC2          sbb     eax, edx2 u! W1 e8 w( Y2 u. ]3 |% h# n
0040C649  |.  C1F8 02       sar     eax, 2
- t' M: J+ T! U  k! e$ r. ~0040C64C  |.  89C7          mov     edi, eax" G$ y2 F' K$ ~: `- v: w$ r
0040C64E  |.  C78424 040100>mov     dword ptr [esp+104], 3
1 a* D' U, q) g& v3 r0040C659  |>  89E0          mov     eax, esp# n5 M6 W3 V; D4 ?# I
0040C65B  |.  31D2          xor     edx, edx
1 V  {% u! M/ x/ @$ H0040C65D  |.  8A0C24        mov     cl, byte ptr [esp]
- j/ s  K1 e2 s8 Z$ i2 G0040C660  |.  8915 8477EF02 mov     dword ptr [2EF7784], edx
" h8 D+ q! i! K* `7 s4 p5 }0040C666  |.  8915 8C77EF02 mov     dword ptr [2EF778C], edx1 ~, n+ ]0 A. s$ R! o4 P
0040C66C  |.  899424 080100>mov     dword ptr [esp+108], edx6 B1 ~) B' Q, i  l0 a( |
0040C673  |.  89E2          mov     edx, esp& ^7 V, ~: J% v+ D% f
0040C675  |.  84C9          test    cl, cl
/ R8 y) w$ _# a$ L8 u, q" ~$ C) {0040C677  |.  0F84 89000000 je      0040C706( V& j1 e5 N/ Y8 i0 Z. N
0040C67D  |.  8B8C24 040100>mov     ecx, dword ptr [esp+104]
9 e% L5 x0 o# N# S9 c" B1 F0040C684  |.  4F            dec     edi
# L5 F- p2 G$ f7 W2 o  ^0040C685  |.  C1E1 02       shl     ecx, 2) z2 I  }3 q- Q$ j" H! h3 ^  l
0040C688  |.  89BC24 000100>mov     dword ptr [esp+100], edi; N; I" v- J& C0 z4 }2 S& K
0040C68F  |.  898C24 0C0100>mov     dword ptr [esp+10C], ecx) a$ |3 s0 `4 ]2 c
0040C696  |>  8A0A          mov     cl, byte ptr [edx]
7 v2 i' }' x0 P' ~4 c3 \- E0 ]0040C698  |.  80F9 20       cmp     cl, 20  q6 H( x9 j$ w
0040C69B  |.  0F85 6A010000 jnz     0040C80B8 F- d' h+ G% b7 B' a. B; T; h0 x9 g4 m
0040C6A1  |.  3B9C24 000100>cmp     ebx, dword ptr [esp+100]
8 q* X; L* s7 M5 P# p0040C6A8  |.  7C 53         jl      short 0040C6FD
1 \8 x9 E% l: }$ [0040C6AA  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]
' J' F' C- r' ?+ w0040C6B1  |.  C602 00       mov     byte ptr [edx], 0  u; M6 V3 D5 i# q4 t0 T5 f
0040C6B4  |.  89C6          mov     esi, eax7 e  t4 r# Y( V
0040C6B6  |.  8BBF 7477EF02 mov     edi, dword ptr [edi+2EF7774]
+ _8 F+ S4 l0 |& K1 Q0040C6BC  |.  31DB          xor     ebx, ebx
' j* U) U( _# ]+ t0040C6BE  |.  57            push    edi
6 V2 g' `* T0 ^! i' h- b, r0040C6BF  |>  8A06          /mov     al, byte ptr [esi]
- e; s& _2 q$ F" U/ y0040C6C1  |.  8807          |mov     byte ptr [edi], al
0 c# X1 ?& Z2 Q* E) r' `7 v0040C6C3  |.  3C 00         |cmp     al, 0
8 S- C, b3 W3 [/ ]- V% R0040C6C5  |.  74 10         |je      short 0040C6D7
1 W7 F; L; I# k0 C0040C6C7  |.  8A46 01       |mov     al, byte ptr [esi+1]' g4 d2 r* F8 w+ C1 e
0040C6CA  |.  83C6 02       |add     esi, 2! ?9 L, N% H( r# s! v+ t8 d+ _. w
0040C6CD  |.  8847 01       |mov     byte ptr [edi+1], al
" r3 H  b$ P$ B1 S0040C6D0  |.  83C7 02       |add     edi, 2" i. S/ B5 @2 I/ h9 G
0040C6D3  |.  3C 00         |cmp     al, 0
3 A, ^) }3 h0 g. e2 _' V7 H1 F$ i0040C6D5  |.^ 75 E8         \jnz     short 0040C6BF& A6 e4 ]. D. D0 ]7 [6 c+ E" o
0040C6D7  |>  5F            pop     edi# N4 a' D4 V5 J' ~9 r- P. y, k2 i
0040C6D8  |.  8D42 01       lea     eax, dword ptr [edx+1]7 O' Q% I- k7 {5 z/ k. z  r* b6 d
0040C6DB  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]: D% h1 W) U7 d/ R
0040C6E2  |.  8B9424 080100>mov     edx, dword ptr [esp+108]/ @  v! y  t" W* h9 X* h
0040C6E9  |.  83EF 04       sub     edi, 4  _' G7 ~1 |6 ?* w& P3 W* E1 d7 S
0040C6EC  |.  42            inc     edx2 p4 _' l- N! r  R
0040C6ED  |.  89BC24 0C0100>mov     dword ptr [esp+10C], edi
3 j" I/ |! f& s$ }& R$ a8 i  x  [- d0040C6F4  |.  899424 080100>mov     dword ptr [esp+108], edx; y' D3 G/ P4 A! @' X7 c
0040C6FB  |.  89C2          mov     edx, eax/ R9 G! f; E  A$ I
0040C6FD  |>  43            inc     ebx7 D# \, s6 v4 P. {0 Y
0040C6FE  |.  8A6A 01       mov     ch, byte ptr [edx+1]
. p- c3 t. b( m/ M, d0040C701  |.  42            inc     edx
9 ^1 W9 y' @6 G9 k4 {- Y0 m: o0040C702  |.  84ED          test    ch, ch
' R! V4 U  ^( f* C, n$ S# \! U% {% x0040C704  |.^ 75 90         jnz     short 0040C696
9 r) p# P: N7 ~. W9 X0040C706  |>  83FD 10       cmp     ebp, 10
1 q. Q/ k/ d$ A0040C709  |.  7F 05         jg      short 0040C710
0 d2 }9 r6 a$ H3 m3 u0040C70B  |.  BD 20000000   mov     ebp, 20
3 R* E) e  z2 \5 _0040C710  |>  8B9424 040100>mov     edx, dword ptr [esp+104]
. c. [( z8 M2 Z8 _  V' G/ a0040C717  |.  2B9424 080100>sub     edx, dword ptr [esp+108]) ^# |6 Y# l, G+ H6 q% b7 n3 K. z
0040C71E  |.  85D2          test    edx, edx
- W, @; ]1 F( s$ l2 U. Y$ `0040C720  |.  7C 23         jl      short 0040C745' c6 @6 B0 A7 w
0040C722  |.  89C6          mov     esi, eax
7 ?; Y4 B5 r% p* k8 [1 }0 G+ j0040C724  |.  8B3C95 7477EF>mov     edi, dword ptr [edx*4+2EF7774]4 ]! K, ^+ p, J9 u8 ~' Z$ p
0040C72B  |.  57            push    edi
. E3 b2 D( f0 B0 I% O0 o0040C72C  |>  8A06          /mov     al, byte ptr [esi]8 |9 v1 F/ r; E( w# W0 R
0040C72E  |.  8807          |mov     byte ptr [edi], al
0 n  C4 F) e0 K4 d# I7 s* c0 c3 E0040C730  |.  3C 00         |cmp     al, 0
5 m% O4 Z: D# T1 }1 L0040C732  |.  74 10         |je      short 0040C7449 D) G2 ~0 }' k! s- |
0040C734  |.  8A46 01       |mov     al, byte ptr [esi+1]
  N# y& M) p% H3 a" L6 P0040C737  |.  83C6 02       |add     esi, 24 V' G- A. _# U5 k. r- a
0040C73A  |.  8847 01       |mov     byte ptr [edi+1], al. y2 k+ _+ B$ ~, F
0040C73D  |.  83C7 02       |add     edi, 2
4 k/ l4 [$ X# O4 y% u! y9 |0040C740  |.  3C 00         |cmp     al, 0
) q+ m+ Y4 f4 u3 F0 y# c! ?  e: z0040C742  |.^ 75 E8         \jnz     short 0040C72C4 C5 o4 h; y+ I2 b& J: J' E& r
0040C744  |>  5F            pop     edi
5 h$ F0 I& @, R* a7 y9 _$ Q0040C745  |>  E8 E6500100   call    00421830
9 R1 D  }. s& `, J0 d4 m, Q" O* _0040C74A  |.  A3 8877EF02   mov     dword ptr [2EF7788], eax
# k' ^3 B* G4 S% X# E$ ]0040C74F  |.  8B8424 040100>mov     eax, dword ptr [esp+104]) ~& u, I* \% M
0040C756  |.  40            inc     eax
9 T' S; E8 H( y8 [. `% J5 ]0040C757  |.  A3 8477EF02   mov     dword ptr [2EF7784], eax; |3 c) Q1 }* _$ D, P& Y% ?
0040C75C  |.  C705 8C77EF02>mov     dword ptr [2EF778C], 1
* f  h# N9 G4 }' M. {7 _, `% S0040C766  |.  B8 64000000   mov     eax, 64; l. h, B  p1 d. G, E
0040C76B  |.  89C2          mov     edx, eax4 d4 t! v: G7 A; i. t* v
0040C76D  |.  8B0D E880EF02 mov     ecx, dword ptr [2EF80E8]# F$ N+ i8 X& r% ^
0040C773  |.  C1FA 1F       sar     edx, 1F0 u& P5 G/ ~; n7 T' f7 z
0040C776  |.  F7F9          idiv    ecx9 \+ H( U  e% u# i) p" i& A, S
0040C778  |.  89C3          mov     ebx, eax
5 b9 A( Q! t# c. ], `# w0040C77A  |.  89EA          mov     edx, ebp% O5 C- J" ?7 T* m  f7 @" j
0040C77C  |.  89E8          mov     eax, ebp7 Y9 J4 j" l; e- ?% r8 D3 W& Q
0040C77E  |.  C1FA 1F       sar     edx, 1F
0 p3 K+ f* `" k- i' ^0040C781  |.  C1E2 04       shl     edx, 4
/ Y( g9 ~* v9 O$ [& z0040C784  |.  1BC2          sbb     eax, edx9 R. \$ H( M( Q6 g, g
0040C786  |.  C1F8 04       sar     eax, 4
6 ?7 w; N! r4 N0040C789  |.  01C3          add     ebx, eax
3 l0 _: ~. n8 ~* R! o* a% ?0040C78B  |.  891D 9077EF02 mov     dword ptr [2EF7790], ebx2 \9 s# U3 e2 p
0040C791  |.  81C4 10010000 add     esp, 1101 F1 f1 v' h. n* V6 A2 f6 s* b
0040C797  |.  5D            pop     ebp
8 |" Y- P6 w; b3 d3 Z+ ?0040C798  |.  5F            pop     edi- m9 e# G" \9 i/ E  y2 O
0040C799  |.  5E            pop     esi& a: H  [$ y: ?" e/ s
0040C79A  |.  5A            pop     edx
: N5 y6 ^2 S: M0040C79B  |.  59            pop     ecx
' p7 U' I6 Y( w/ ?& m6 x4 @0 I/ X0040C79C  |.  5B            pop     ebx" f7 _9 C2 w* f1 U7 E! ]9 Q# W
0040C79D  |.  C3            retn
+ V7 U  f! N# D' G2 |0 d2 n0 A0040C79E  |>  81FD 8C000000 cmp     ebp, 8C
! g! \) i2 d5 Y7 F1 G. N7 ^0040C7A4  |.  7C 28         jl      short 0040C7CE
3 V/ t, z+ D; h/ x4 p% A7 l0 ]0040C7A6  |.  81FD D2000000 cmp     ebp, 0D25 J& C% A! U8 r% O8 L
0040C7AC  |.  7F 20         jg      short 0040C7CE" V9 u$ h2 q" f4 m$ S
0040C7AE  |.  B9 03000000   mov     ecx, 3; z3 g6 @& J( V* a: [
0040C7B3  |.  89EA          mov     edx, ebp8 l& ?% _( i8 b% Z/ H! g2 i' p$ y
0040C7B5  |.  89E8          mov     eax, ebp
/ @* u: ~/ J; Q( _! Y; O4 e- m& [0040C7B7  |.  C1FA 1F       sar     edx, 1F; z5 i' r' ?$ T8 r6 P
0040C7BA  |.  F7F9          idiv    ecx
% D; @2 s8 Y) }/ e6 q0 Z, K0040C7BC  |.  C78424 040100>mov     dword ptr [esp+104], 2
" d2 N$ c& d8 I* g2 Q) N0040C7C7  |.  89C7          mov     edi, eax
2 M" [& A: ~! O, E- [0040C7C9  |.^ E9 8BFEFFFF   jmp     0040C6590 S# Z' C9 s- d  Y3 j" q9 c4 T# ~
0040C7CE  |>  83FD 46       cmp     ebp, 46
2 c2 a4 \* f& h8 X% n# L% P0040C7D1  |.  7C 25         jl      short 0040C7F86 o- P9 o% ^5 ~2 z1 n
0040C7D3  |.  81FD 8C000000 cmp     ebp, 8C& s7 ~9 N8 o" [# Q- c
0040C7D9  |.  7F 1D         jg      short 0040C7F8% R$ a. D# z: N/ [9 Q
0040C7DB  |.  89EA          mov     edx, ebp) ~) T5 X1 \7 i. v* n( k
0040C7DD  |.  89E8          mov     eax, ebp1 w7 A9 w# D  f( |1 q  b
0040C7DF  |.  C1FA 1F       sar     edx, 1F% J! H, q1 f8 I4 A) }+ Q
0040C7E2  |.  2BC2          sub     eax, edx
8 K3 W, @9 `# Y" i8 W1 A6 o/ i+ ^0040C7E4  |.  D1F8          sar     eax, 1
) F' p7 V/ y) l2 k0 H* J0040C7E6  |.  C78424 040100>mov     dword ptr [esp+104], 10 j* F8 H9 O9 H9 I: P( _. Y' y
0040C7F1  |.  89C7          mov     edi, eax2 a- N9 N5 i1 @1 ~* C7 F
0040C7F3  |.^ E9 61FEFFFF   jmp     0040C659
4 ?  V& j4 C! u+ v0040C7F8  |>  31D2          xor     edx, edx
. G' P. B# O' Q3 r5 @0040C7FA  |.  BF 46000000   mov     edi, 46) V0 V$ ~+ S: k; |- }
0040C7FF  |.  899424 040100>mov     dword ptr [esp+104], edx& x* X7 g" Q- \! J3 ^9 d
0040C806  |.^ E9 4EFEFFFF   jmp     0040C659
7 }) N* M2 O/ j0040C80B  |>  80F9 7C       cmp     cl, 7C
' \# k" x" P8 x* N/ Z# Q0040C80E  |.^ 0F85 E9FEFFFF jnz     0040C6FD
4 r7 |' u2 M' h1 Y8 ?0040C814  |.  C602 20       mov     byte ptr [edx], 20& h. T2 Y9 N' ~/ A2 w& F
0040C817  \.^ E9 E1FEFFFF   jmp     0040C6FD4 g# [; y2 r) \; T% t

) ~6 R. o- ?. R在scratches.sc和scream.sc里面有lua的脚本,保存有字体文件名。& X3 C) a  d$ Z. b
估计要汉化就要在上面的代码段下功夫了,以后继续研究。
5 N& P% e- a+ q" c' y5 f
" o  i6 ~+ n0 c& R找到2个俄文的补丁,也许对以后研究有用。. W9 p* B. Y1 n5 x' Q: h& C$ W' f5 |
http://www.megaupload.com/?d=EZH6X672
$ K& h8 m9 Q9 A0 `http://rapidshare.com/files/94227080/ScratchesDC.7z
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

板凳
 楼主| 发表于 2011-4-11 06:48 | 只看该作者
顶上来备用1
回复 支持 反对

使用道具 举报

沙发
 楼主| 发表于 2010-9-28 07:54 | 只看该作者
顶上来备用
回复 支持 反对

使用道具 举报

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

本版积分规则

冒险解谜游戏中文网 ChinaAVG

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

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

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

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