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

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

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

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

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

惊恐鬼屋Scratches初步汉化分析

看了一下惊恐鬼屋Scratches这个游戏。, d  ]9 {; D$ I# O4 J4 ~" ?
包文件有2个,scratches.res和scream.res,
5 ]1 Z# ^' D) e9 o0 b包文件的格式如下,可以用Game Extractor来解开。
4 y- J) J6 w  zhttp://wiki.xentax.com/index.php/Scratches_RES
7 q; o) x0 L/ u* Y: c( `/ W从scratches.res里面解出一个font-michael.tga文件,就是在游戏利用的字体。; w* B6 C0 n. g! g9 M
scream.res里面也有一个字体文件,但是游戏好像没有用到。2 X+ y& L  O" x$ s2 P

6 B$ n* [* s, @- q4 T1 f用OD调试后,发现这是一个使用opengl API的游戏。9 v0 o! w0 C$ J4 D  d
在某句字幕上下了内存断点,断下来之后找到了和显示有关的代码段。* E" Q) w: G3 b( t8 O4 r+ O0 A
& _. f+ `  J  c7 z# O) l1 M
0040C5D0  /$  53            push    ebx
9 Q% W6 @3 l4 t! B0040C5D1  |.  51            push    ecx1 t7 g1 z: g# V% i) l
0040C5D2  |.  52            push    edx
4 J1 t6 i8 K# Y& E7 P9 n0040C5D3  |.  56            push    esi( Z: ^4 _* F+ x+ c& N/ H) o$ r
0040C5D4  |.  57            push    edi
% f! {+ X( Y- N0040C5D5  |.  55            push    ebp
6 E$ \4 h+ d9 L& S0040C5D6  |.  81EC 10010000 sub     esp, 1104 C+ Q3 H! @; }: X' J
0040C5DC  |.  89C6          mov     esi, eax
8 X, G* M0 ?+ l! M0 B. Y2 J0040C5DE  |.  89C7          mov     edi, eax
# y% }2 e3 ^/ T" t0040C5E0  |.  29C9          sub     ecx, ecx
/ v, A3 ~0 J1 Z6 ]1 V2 [/ i0040C5E2  |.  49            dec     ecx. Q' v1 m6 ]: b4 a$ p! D0 c
0040C5E3  |.  31C0          xor     eax, eax
+ J& T6 Z6 B& l7 S1 V4 p: a0040C5E5  |.  F2:AE         repne   scas byte ptr es:[edi]% M$ e" S8 t4 F0 W4 q
0040C5E7  |.  F7D1          not     ecx
; e$ C2 d9 M5 n+ ?& I0040C5E9  |.  49            dec     ecx
1 e$ {: B8 l  N& V3 G6 E0040C5EA  |.  31DB          xor     ebx, ebx
: w+ R* }; d; L0040C5EC  |.  31ED          xor     ebp, ebp
5 C5 S/ M6 ?! X) \0040C5EE  |.  81F9 00010000 cmp     ecx, 1008 i/ K9 M8 ]  h/ e$ c
0040C5F4  |.  72 0D         jb      short 0040C603
9 h  S9 S0 ~2 r" ]: P2 R$ `% D0040C5F6  |.  81C4 10010000 add     esp, 110
7 P% F9 C# ]. R; t- B: w0040C5FC  |.  5D            pop     ebp8 b; A7 X8 f1 w4 [; E
0040C5FD  |.  5F            pop     edi; K; f9 I5 ]! t
0040C5FE  |.  5E            pop     esi
4 F3 X3 ^# t. n* |9 D( R: f0040C5FF  |.  5A            pop     edx
  ?$ |0 A' n7 N6 {1 ?0040C600  |.  59            pop     ecx) u# P* f/ q- f* b; z
0040C601  |.  5B            pop     ebx
, I5 A. i0 P+ h! Q: r7 v8 ?: q0040C602  |.  C3            retn
" e: I2 \3 n, T) v5 |/ j+ v0040C603  |>  89E7          mov     edi, esp
- p9 i3 s" @; A& _$ K- v0040C605  |.  57            push    edi
% U0 d7 {0 |+ ?* D2 |0040C606  |>  8A06          /mov     al, byte ptr [esi]
4 @7 N+ u% L9 \4 E1 K/ s0040C608  |.  8807          |mov     byte ptr [edi], al
3 `/ H1 a9 _; R6 b, k/ _9 j3 z/ }0040C60A  |.  3C 00         |cmp     al, 0: M7 u+ n) g5 H3 n0 `+ Z* O2 @/ C
0040C60C  |.  74 10         |je      short 0040C61E
# s" j. `% i. J+ h$ `0040C60E  |.  8A46 01       |mov     al, byte ptr [esi+1]) ]1 [& _& J! h
0040C611  |.  83C6 02       |add     esi, 2
9 u/ y  b* F  E4 I3 A; X0040C614  |.  8847 01       |mov     byte ptr [edi+1], al# E" X* B* M/ h
0040C617  |.  83C7 02       |add     edi, 2
- M& Q7 i) K6 J7 w0040C61A  |.  3C 00         |cmp     al, 0
0 B5 W1 [! D; i, z0040C61C  |.^ 75 E8         \jnz     short 0040C606
1 @. n* h' A/ I+ ?0040C61E  |>  5F            pop     edi6 p( a8 F' r; D9 c6 s2 J; N
0040C61F  |.  8A1424        mov     dl, byte ptr [esp]. x4 {8 i+ P8 F% ^  M
0040C622  |.  89E0          mov     eax, esp+ Z# V% q* q1 M, B1 n/ \+ s
0040C624  |.  84D2          test    dl, dl
/ b+ l, @' M1 t8 H, n+ `0 B2 R# g0040C626  |.  74 09         je      short 0040C631
: u* h  |1 F! N) f0040C628  |>  8A70 01       /mov     dh, byte ptr [eax+1]! U- J; U' g! H& P0 E5 T4 R# x
0040C62B  |.  40            |inc     eax% m: [/ l2 T8 E* V" M( i
0040C62C  |.  45            |inc     ebp
, x4 c; P( g# b" X4 t/ x6 [0040C62D  |.  84F6          |test    dh, dh
7 I+ c6 L0 ]. X% }8 ~# u1 r0040C62F  |.^ 75 F7         \jnz     short 0040C628  `6 ~/ R: k& `, u9 x% y
0040C631  |>  81FD D2000000 cmp     ebp, 0D2. M+ A  m& e3 q1 m
0040C637  |.  0F8E 61010000 jle     0040C79E
: w( V5 x. z, F2 c3 O0040C63D  |.  89EA          mov     edx, ebp% x* f9 n, M, ^# i" p. b
0040C63F  |.  89E8          mov     eax, ebp
' n  j: h: Q- b7 Z7 x' o0040C641  |.  C1FA 1F       sar     edx, 1F
) p* |6 R( }% z; b/ }0040C644  |.  C1E2 02       shl     edx, 2; f% a) W; V0 s( i: W* v
0040C647  |.  1BC2          sbb     eax, edx( d1 X' t7 C5 ~+ X  H
0040C649  |.  C1F8 02       sar     eax, 21 t# N) p9 N; f" j9 e
0040C64C  |.  89C7          mov     edi, eax
# b: H1 i! B  M0 E& u0 U9 W5 t0040C64E  |.  C78424 040100>mov     dword ptr [esp+104], 3
  T# U' Y( J) }. K; e, X) i0040C659  |>  89E0          mov     eax, esp! o+ f. W! f" r) |; G0 W
0040C65B  |.  31D2          xor     edx, edx
: e+ _6 F0 n2 k2 U, \" U0040C65D  |.  8A0C24        mov     cl, byte ptr [esp]0 r% Y: K# \+ u1 @/ B
0040C660  |.  8915 8477EF02 mov     dword ptr [2EF7784], edx* W* I& M- B/ O! @7 P( K3 f( m
0040C666  |.  8915 8C77EF02 mov     dword ptr [2EF778C], edx6 Y' h; ]  [& C; ?+ B
0040C66C  |.  899424 080100>mov     dword ptr [esp+108], edx" ?8 s$ A2 R, k& f. s" q
0040C673  |.  89E2          mov     edx, esp2 K4 m/ R  d5 J7 g8 S. M- F. l
0040C675  |.  84C9          test    cl, cl
% b: d0 M2 \4 R0040C677  |.  0F84 89000000 je      0040C706) _1 W8 A+ }& M  |
0040C67D  |.  8B8C24 040100>mov     ecx, dword ptr [esp+104]& B5 n' P7 e$ H3 o+ {2 t
0040C684  |.  4F            dec     edi
, A6 l9 z( Q7 M3 M0040C685  |.  C1E1 02       shl     ecx, 2
9 s  x/ c5 N% P" s4 ]; k0040C688  |.  89BC24 000100>mov     dword ptr [esp+100], edi
5 e  J) D- K+ u- q( C% y0040C68F  |.  898C24 0C0100>mov     dword ptr [esp+10C], ecx! f" v+ {4 @: F; I  u& ?3 O7 {
0040C696  |>  8A0A          mov     cl, byte ptr [edx]
6 j7 Z3 Y) P: s4 c0040C698  |.  80F9 20       cmp     cl, 20
- V7 Q3 R% l) ~. f  J( E  W0040C69B  |.  0F85 6A010000 jnz     0040C80B1 n* V" [; }( A' T$ z
0040C6A1  |.  3B9C24 000100>cmp     ebx, dword ptr [esp+100]
: x1 D* i4 E# j5 O0040C6A8  |.  7C 53         jl      short 0040C6FD1 w0 a9 M, z; G
0040C6AA  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]' J! u7 y9 p2 Q
0040C6B1  |.  C602 00       mov     byte ptr [edx], 0$ v" h* J: _- m
0040C6B4  |.  89C6          mov     esi, eax
. W- Q6 b4 J5 t) [# C$ \0040C6B6  |.  8BBF 7477EF02 mov     edi, dword ptr [edi+2EF7774]
4 A$ q% [, Q  k0040C6BC  |.  31DB          xor     ebx, ebx
) J* e: B# X( P; R0040C6BE  |.  57            push    edi0 [: J0 B9 `6 |
0040C6BF  |>  8A06          /mov     al, byte ptr [esi]& |, f+ q7 O: ?+ e: W% N( \
0040C6C1  |.  8807          |mov     byte ptr [edi], al
* F) |) q- _) T0 w0040C6C3  |.  3C 00         |cmp     al, 0
; F! q1 f" z, i+ D0040C6C5  |.  74 10         |je      short 0040C6D7
1 l$ b4 X7 z5 O$ R8 ~0040C6C7  |.  8A46 01       |mov     al, byte ptr [esi+1]" n2 v  H$ d& D
0040C6CA  |.  83C6 02       |add     esi, 27 M: Y) H- ?2 Q
0040C6CD  |.  8847 01       |mov     byte ptr [edi+1], al4 O( |; x2 U; w# X7 z, d' O& s2 S
0040C6D0  |.  83C7 02       |add     edi, 24 g7 Z9 K6 T4 [
0040C6D3  |.  3C 00         |cmp     al, 0
6 U/ r# C  T( E) o% U0040C6D5  |.^ 75 E8         \jnz     short 0040C6BF
. {( T3 m7 Q  j! M4 _0040C6D7  |>  5F            pop     edi
6 p3 O8 N1 R# H! H. o$ G: M0040C6D8  |.  8D42 01       lea     eax, dword ptr [edx+1]
- H7 J4 O) e5 u8 F0040C6DB  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]0 Q1 }3 A* p, ~! ~! Z$ V* Q# v( F
0040C6E2  |.  8B9424 080100>mov     edx, dword ptr [esp+108]
7 y* Q! y# t9 E" j% g& k, B& h( b" y0040C6E9  |.  83EF 04       sub     edi, 4
; Q4 j6 r8 s: g1 d- M+ c* H5 c* W0040C6EC  |.  42            inc     edx
' g: b( t' h/ V$ Y- ?9 \0040C6ED  |.  89BC24 0C0100>mov     dword ptr [esp+10C], edi5 J7 X% g  o) @" D* \- h% d7 ~1 \# z
0040C6F4  |.  899424 080100>mov     dword ptr [esp+108], edx$ L4 D' p. i" Q* o
0040C6FB  |.  89C2          mov     edx, eax( G, x' D3 s1 y' N  q  R) f  K
0040C6FD  |>  43            inc     ebx
' d$ i/ L2 w, ]0040C6FE  |.  8A6A 01       mov     ch, byte ptr [edx+1]
* b! H( m2 g0 i' ?% W0 `4 b0040C701  |.  42            inc     edx
$ N+ p3 N+ w; [/ X% {: {0040C702  |.  84ED          test    ch, ch
  B2 v4 D% u( B4 W  d* w0040C704  |.^ 75 90         jnz     short 0040C696) v2 n+ q; O' J' h
0040C706  |>  83FD 10       cmp     ebp, 10
2 z  c/ w3 ]- L0040C709  |.  7F 05         jg      short 0040C7104 U/ q' R8 ]1 x, R' q" {9 K
0040C70B  |.  BD 20000000   mov     ebp, 20) A" ]7 F" H, ~% ^& \
0040C710  |>  8B9424 040100>mov     edx, dword ptr [esp+104]
6 r) Z- V) d% h" ]- V. M" H0040C717  |.  2B9424 080100>sub     edx, dword ptr [esp+108]
9 q+ p; D; k1 F& I0040C71E  |.  85D2          test    edx, edx
+ S7 ^1 [* x% v  U/ {0040C720  |.  7C 23         jl      short 0040C745
0 D: i$ `5 `8 |( D0040C722  |.  89C6          mov     esi, eax
( T+ c/ |& n$ b0040C724  |.  8B3C95 7477EF>mov     edi, dword ptr [edx*4+2EF7774]
5 v! S" J% C/ M& X& V% A0040C72B  |.  57            push    edi( U7 R% ]5 x, n1 ]/ w
0040C72C  |>  8A06          /mov     al, byte ptr [esi]. O- d7 g6 l  I' p! X
0040C72E  |.  8807          |mov     byte ptr [edi], al% l$ m4 l: [3 |  c9 A  N2 _
0040C730  |.  3C 00         |cmp     al, 0
( x# ]. v# s" V- V- P" n9 D( B! B  k0040C732  |.  74 10         |je      short 0040C744" D+ Z! e1 U2 }& C0 C
0040C734  |.  8A46 01       |mov     al, byte ptr [esi+1], Y& B( C8 j! Q
0040C737  |.  83C6 02       |add     esi, 2! T3 K+ ^8 ^: b, k1 o6 O! P3 b! U
0040C73A  |.  8847 01       |mov     byte ptr [edi+1], al; `- V  c3 o3 O, x, V
0040C73D  |.  83C7 02       |add     edi, 2
; e! N2 q3 j7 I! `* G) n; a0040C740  |.  3C 00         |cmp     al, 0
! A; {* d: i$ \3 n. |% K0040C742  |.^ 75 E8         \jnz     short 0040C72C  v8 ~; K( X- J8 \
0040C744  |>  5F            pop     edi
- H5 i) R5 b6 O6 p: U4 u0040C745  |>  E8 E6500100   call    00421830
/ V5 Q$ V$ l3 H2 j$ l( Y0040C74A  |.  A3 8877EF02   mov     dword ptr [2EF7788], eax- i" k' B. i  `: W
0040C74F  |.  8B8424 040100>mov     eax, dword ptr [esp+104]& k* P- s' G, C2 t  v8 H
0040C756  |.  40            inc     eax4 c+ i; A4 d7 ?2 e
0040C757  |.  A3 8477EF02   mov     dword ptr [2EF7784], eax
0 A9 U) g+ p! Z0040C75C  |.  C705 8C77EF02>mov     dword ptr [2EF778C], 10 l5 \9 N: u: e6 ~* F
0040C766  |.  B8 64000000   mov     eax, 64
3 l- k1 j, V  r0040C76B  |.  89C2          mov     edx, eax7 s+ M$ m6 [( n9 W2 |
0040C76D  |.  8B0D E880EF02 mov     ecx, dword ptr [2EF80E8]
* l; n" H- ], U; @3 v# h; b0040C773  |.  C1FA 1F       sar     edx, 1F, j& C! L' ?* A! [" G
0040C776  |.  F7F9          idiv    ecx
4 v8 z, R1 O% v0 B. V0040C778  |.  89C3          mov     ebx, eax
( G4 ^/ ^( C. @% d9 U. _0040C77A  |.  89EA          mov     edx, ebp
, E4 m8 S1 r6 E! S; t0040C77C  |.  89E8          mov     eax, ebp
- ?9 i% d0 w0 X; c. e/ ]0 U0040C77E  |.  C1FA 1F       sar     edx, 1F9 l- n5 K3 X, O$ O9 K# H
0040C781  |.  C1E2 04       shl     edx, 46 m6 k" t- h7 A7 `) Y
0040C784  |.  1BC2          sbb     eax, edx
2 f6 L" E7 g1 f; X% m0 T3 r0040C786  |.  C1F8 04       sar     eax, 4
) a" ^* p" I1 O& A0040C789  |.  01C3          add     ebx, eax" q& H/ M& ?/ c. a. x7 P
0040C78B  |.  891D 9077EF02 mov     dword ptr [2EF7790], ebx
1 `& R" e/ I' n0040C791  |.  81C4 10010000 add     esp, 110( x! v6 H& {) S* T; H1 L9 \! k
0040C797  |.  5D            pop     ebp+ }) K; F( u2 t/ @6 c% ^3 G! f
0040C798  |.  5F            pop     edi
) S4 `) S7 n/ q9 |& o2 Z0040C799  |.  5E            pop     esi: N  u  a7 r& T5 P1 x" z
0040C79A  |.  5A            pop     edx
7 Q' H" T2 j5 b& w5 v0040C79B  |.  59            pop     ecx) p- H* E' B" }, \2 k8 n
0040C79C  |.  5B            pop     ebx
9 m- O  M0 K, P0040C79D  |.  C3            retn
; I- D  n) b& R1 k4 t  q/ V0040C79E  |>  81FD 8C000000 cmp     ebp, 8C
, v$ B- e% \! y" C$ K) w1 H0040C7A4  |.  7C 28         jl      short 0040C7CE
. Y0 @+ Y9 y$ U; D2 |  b0 H0040C7A6  |.  81FD D2000000 cmp     ebp, 0D23 N9 Z7 M* V. o% ?9 t# @. P5 ^9 w
0040C7AC  |.  7F 20         jg      short 0040C7CE
% G' R, y. U: o$ O. @) D  F5 c0040C7AE  |.  B9 03000000   mov     ecx, 3& e3 a# X0 S0 s. {" q# y% z
0040C7B3  |.  89EA          mov     edx, ebp. d' q  h% W! E; u/ W
0040C7B5  |.  89E8          mov     eax, ebp4 Y) \5 r3 r/ |
0040C7B7  |.  C1FA 1F       sar     edx, 1F  p" e' A4 u" `# g, L
0040C7BA  |.  F7F9          idiv    ecx
" `% m: U* X: {0 S0040C7BC  |.  C78424 040100>mov     dword ptr [esp+104], 20 z7 `! q) @* t- n
0040C7C7  |.  89C7          mov     edi, eax% V* a* U! v* T& J0 G1 x7 ]+ s
0040C7C9  |.^ E9 8BFEFFFF   jmp     0040C659
2 a4 a5 J, C' ~0040C7CE  |>  83FD 46       cmp     ebp, 46- e- ]3 \, ?- C$ t+ f, P
0040C7D1  |.  7C 25         jl      short 0040C7F8
. I- ]& m5 ^9 }( o' R. Y* M( z0040C7D3  |.  81FD 8C000000 cmp     ebp, 8C
& V: c5 P( u. B' r8 i% O: n0 X  t0040C7D9  |.  7F 1D         jg      short 0040C7F8# b9 a) K, a1 C/ u
0040C7DB  |.  89EA          mov     edx, ebp( O" g3 W; ]) Q4 v' [2 e
0040C7DD  |.  89E8          mov     eax, ebp0 f7 ?; ]( \' g5 _4 o, D
0040C7DF  |.  C1FA 1F       sar     edx, 1F: m# f9 B2 n% G1 y, b
0040C7E2  |.  2BC2          sub     eax, edx1 ]6 C" q" D8 I1 Y" \- E2 D
0040C7E4  |.  D1F8          sar     eax, 1" \  F( j" f5 E7 r
0040C7E6  |.  C78424 040100>mov     dword ptr [esp+104], 1( E. ]4 v  I# O7 I+ Z9 e. Q; o
0040C7F1  |.  89C7          mov     edi, eax( y% m$ a: u; s
0040C7F3  |.^ E9 61FEFFFF   jmp     0040C659* p# m! L) W5 j: x! e) H9 ?& L
0040C7F8  |>  31D2          xor     edx, edx
! G2 x( _9 e* E- G0040C7FA  |.  BF 46000000   mov     edi, 46. R6 l4 E1 M9 Q( W; o5 h
0040C7FF  |.  899424 040100>mov     dword ptr [esp+104], edx
) l$ q+ X6 S: Y4 ]* j) ^' p/ c0040C806  |.^ E9 4EFEFFFF   jmp     0040C659
8 _1 a% z$ V4 `' s0040C80B  |>  80F9 7C       cmp     cl, 7C' {" Z1 g3 U% R/ Z* ~1 i6 ?
0040C80E  |.^ 0F85 E9FEFFFF jnz     0040C6FD
* ?' W5 `) Z7 {3 i6 I  n* m; ]0040C814  |.  C602 20       mov     byte ptr [edx], 20; Z" T+ q% c; x3 U4 Q! I" N# N
0040C817  \.^ E9 E1FEFFFF   jmp     0040C6FD( a* d5 m2 |  I1 `: t+ G0 I
- h, [5 ~4 @8 R/ K
在scratches.sc和scream.sc里面有lua的脚本,保存有字体文件名。# ]/ T: ~, W; [3 G
估计要汉化就要在上面的代码段下功夫了,以后继续研究。+ ]7 q- [& K1 o3 A
; `4 c- b% T& x4 m
找到2个俄文的补丁,也许对以后研究有用。
  n; M9 L3 j4 S, D% W" F) ehttp://www.megaupload.com/?d=EZH6X672
  C# }( y7 p5 Y* @7 ahttp://rapidshare.com/files/94227080/ScratchesDC.7z
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

本版积分规则

冒险解谜游戏中文网 ChinaAVG

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

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

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

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