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

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

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

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

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

惊恐鬼屋Scratches初步汉化分析

看了一下惊恐鬼屋Scratches这个游戏。
# {% Y3 W: i3 l+ B+ B4 Q' J包文件有2个,scratches.res和scream.res,9 g  V( c+ }; w, u
包文件的格式如下,可以用Game Extractor来解开。& J& ^# O: l/ x$ O) O* Z3 X% }
http://wiki.xentax.com/index.php/Scratches_RES* p" |1 d% T  U! l$ [/ m2 b
从scratches.res里面解出一个font-michael.tga文件,就是在游戏利用的字体。0 h2 q( g# O  ^) y
scream.res里面也有一个字体文件,但是游戏好像没有用到。" V; Q5 P* u' R8 o: L
! s+ Z1 j  W1 W% U) w3 Z9 }1 U; q
用OD调试后,发现这是一个使用opengl API的游戏。* ?. w$ F! T8 `1 n3 A* u2 q* j/ l
在某句字幕上下了内存断点,断下来之后找到了和显示有关的代码段。3 S+ `9 w- W$ E7 p7 [

6 S! }8 Q+ A5 n: j) W! [  W2 y0040C5D0  /$  53            push    ebx3 m1 Q+ A' i3 y, [
0040C5D1  |.  51            push    ecx7 l( O, @5 V- W* e8 I7 ]1 M+ ?; S/ |9 ?
0040C5D2  |.  52            push    edx% Q+ {# p# e# ]; v/ h
0040C5D3  |.  56            push    esi* v- A# T% w* C5 l9 p
0040C5D4  |.  57            push    edi; `8 @* f, ]8 v- l
0040C5D5  |.  55            push    ebp5 g! a4 t# s4 r3 p) I7 T3 K
0040C5D6  |.  81EC 10010000 sub     esp, 110
; s% P' _2 Y; w$ r0 w! O$ |0040C5DC  |.  89C6          mov     esi, eax
6 @3 ^# s( ^- a9 ]0040C5DE  |.  89C7          mov     edi, eax- c$ y" d1 I' |, m& ^0 X. s
0040C5E0  |.  29C9          sub     ecx, ecx+ W5 P0 Y) [# S7 W6 _, R
0040C5E2  |.  49            dec     ecx/ Q% a  ^/ ^( E# {: b
0040C5E3  |.  31C0          xor     eax, eax
  w. m9 \2 ~4 r& a# v0040C5E5  |.  F2:AE         repne   scas byte ptr es:[edi]# r# |& Z9 Q2 h7 W6 `) P
0040C5E7  |.  F7D1          not     ecx/ F5 ?$ p) Z9 y
0040C5E9  |.  49            dec     ecx
2 k1 s0 i# J; c6 l4 T7 ]$ W6 G0040C5EA  |.  31DB          xor     ebx, ebx
. E  M: m' O7 }5 m0040C5EC  |.  31ED          xor     ebp, ebp$ |. }% Y7 I3 S% R9 |# j% J
0040C5EE  |.  81F9 00010000 cmp     ecx, 1009 A4 h2 W5 u, V8 c$ a3 c' Y
0040C5F4  |.  72 0D         jb      short 0040C603
, J; B1 O& C2 [% y6 l0 p0040C5F6  |.  81C4 10010000 add     esp, 110; f8 h3 I) p2 e( {( P  c; }# L
0040C5FC  |.  5D            pop     ebp
, @' O4 J: K% W4 Z) N6 w0040C5FD  |.  5F            pop     edi
7 w9 C: @5 f. x  J0 T0040C5FE  |.  5E            pop     esi7 h  j' T6 q% m" w+ V' x! W- ^
0040C5FF  |.  5A            pop     edx- c5 Q4 n5 A, X9 Z# ]6 }; x5 Q
0040C600  |.  59            pop     ecx) ^, f' \5 S6 ?- w, o! i$ M
0040C601  |.  5B            pop     ebx
! |& i$ N$ }. U' o0040C602  |.  C3            retn) P5 k% m3 B" i/ M2 N9 B
0040C603  |>  89E7          mov     edi, esp/ v4 p; P5 q0 X' T' _1 O2 ~
0040C605  |.  57            push    edi
! E' b, D/ c/ K. M0040C606  |>  8A06          /mov     al, byte ptr [esi]/ ~/ ]9 H# \* Y1 h' |% ~) e1 Y
0040C608  |.  8807          |mov     byte ptr [edi], al
2 D& h$ C  I( U/ q0040C60A  |.  3C 00         |cmp     al, 0- ?! u% P1 ~: K8 E/ l+ h
0040C60C  |.  74 10         |je      short 0040C61E
/ r/ y- j& I( Y9 d# M0040C60E  |.  8A46 01       |mov     al, byte ptr [esi+1]
* [$ ], Q8 p. h8 j6 ^8 k7 C# M( j0040C611  |.  83C6 02       |add     esi, 23 r. ~. P: ~1 B1 ]) n2 F
0040C614  |.  8847 01       |mov     byte ptr [edi+1], al) h4 P7 d1 f6 K8 _* s9 a! M. Q
0040C617  |.  83C7 02       |add     edi, 2) P% f; S' D# ]
0040C61A  |.  3C 00         |cmp     al, 0
3 G7 o1 }) B8 F" |; G$ v  A: N6 {, d0040C61C  |.^ 75 E8         \jnz     short 0040C606
8 F# x( _9 s- E0 a( p% J4 S; P0 `- E0040C61E  |>  5F            pop     edi
- Z) C& K  d$ i) ?. s0 s0040C61F  |.  8A1424        mov     dl, byte ptr [esp]% W4 N- |/ @5 m5 k/ N! n& R: j: Y
0040C622  |.  89E0          mov     eax, esp
9 [! R/ S1 h* ~5 j' G/ i# [0040C624  |.  84D2          test    dl, dl$ |& p: X9 M2 M7 l3 R7 c! G
0040C626  |.  74 09         je      short 0040C631* N/ B: E& W3 Q8 b# e* W+ k
0040C628  |>  8A70 01       /mov     dh, byte ptr [eax+1]! V- P" e5 l, R, x! L2 f
0040C62B  |.  40            |inc     eax
* i# @  m* G) q6 t5 W0040C62C  |.  45            |inc     ebp, x& X0 j/ A( }/ l% i0 s* d4 L
0040C62D  |.  84F6          |test    dh, dh
# r2 S8 U% d- I  y( R4 x; \  Q  w0040C62F  |.^ 75 F7         \jnz     short 0040C628
# z- x* N5 B$ w* j3 I" M+ {0040C631  |>  81FD D2000000 cmp     ebp, 0D2
1 Z; t% s& f9 T0040C637  |.  0F8E 61010000 jle     0040C79E; ^' D% W' V/ {: s$ b: |. T9 @8 I
0040C63D  |.  89EA          mov     edx, ebp
. i2 P6 }4 f9 \' k5 t' |) [0040C63F  |.  89E8          mov     eax, ebp6 l: A7 ~) A8 B
0040C641  |.  C1FA 1F       sar     edx, 1F3 T$ M4 a2 z# }1 C0 E
0040C644  |.  C1E2 02       shl     edx, 2. H9 Z% X9 @# s) [) a
0040C647  |.  1BC2          sbb     eax, edx( a' w. V( A- D+ ^( N
0040C649  |.  C1F8 02       sar     eax, 2
+ C7 o8 b3 v- @. ]: l* o% N0040C64C  |.  89C7          mov     edi, eax
2 T" k7 T5 C" G& H0040C64E  |.  C78424 040100>mov     dword ptr [esp+104], 3
3 c% f) c! H: v% ]0040C659  |>  89E0          mov     eax, esp! S' b' U! I- L, c- A9 V. q4 e
0040C65B  |.  31D2          xor     edx, edx
% K4 m! Z0 E$ c: B# u; j0040C65D  |.  8A0C24        mov     cl, byte ptr [esp]! h7 S6 d4 i: l5 E$ c
0040C660  |.  8915 8477EF02 mov     dword ptr [2EF7784], edx; A1 ?8 T9 z% Y
0040C666  |.  8915 8C77EF02 mov     dword ptr [2EF778C], edx' T" m7 C' ?  V6 ^  R3 z  x
0040C66C  |.  899424 080100>mov     dword ptr [esp+108], edx
2 J% p2 k' v5 ^" l0040C673  |.  89E2          mov     edx, esp
* v: N0 c  a- Y- L( r0040C675  |.  84C9          test    cl, cl
( }) C! n4 a2 `' s+ n, a; B0040C677  |.  0F84 89000000 je      0040C706
, t- ?/ p+ x- W4 t- a0040C67D  |.  8B8C24 040100>mov     ecx, dword ptr [esp+104]9 ?2 _% C( x" A
0040C684  |.  4F            dec     edi
1 p! s* c/ a. D5 L* N$ A0040C685  |.  C1E1 02       shl     ecx, 2. H( f8 [% Y, m. M
0040C688  |.  89BC24 000100>mov     dword ptr [esp+100], edi5 M* K! r7 }4 ~, i. I" w) w0 Z
0040C68F  |.  898C24 0C0100>mov     dword ptr [esp+10C], ecx( R1 a) S6 q% T2 N4 h
0040C696  |>  8A0A          mov     cl, byte ptr [edx]1 o$ X$ R1 f; H+ u
0040C698  |.  80F9 20       cmp     cl, 20
# \4 M% `& g: c! U) e% H0040C69B  |.  0F85 6A010000 jnz     0040C80B6 \' \$ t' L3 P% P' w
0040C6A1  |.  3B9C24 000100>cmp     ebx, dword ptr [esp+100]& g6 H+ Q8 q+ e) U9 r3 I: C
0040C6A8  |.  7C 53         jl      short 0040C6FD
/ l* o0 ~; n1 c8 Y0040C6AA  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]
7 K$ Z; g* M. G. {" h. \0040C6B1  |.  C602 00       mov     byte ptr [edx], 0( O4 m. a$ G' S/ I1 N5 M
0040C6B4  |.  89C6          mov     esi, eax
3 K' }. f5 b! M1 t# {$ o" R0040C6B6  |.  8BBF 7477EF02 mov     edi, dword ptr [edi+2EF7774]7 z2 ^/ k  @6 N: t
0040C6BC  |.  31DB          xor     ebx, ebx) z; k, a% z8 D6 o4 N5 |
0040C6BE  |.  57            push    edi
7 {( B+ e; ?4 L6 L- c3 O0040C6BF  |>  8A06          /mov     al, byte ptr [esi]
- @5 ]! n  Z2 g; t! V8 ?8 i0040C6C1  |.  8807          |mov     byte ptr [edi], al
  ]' @1 @! G4 r6 f6 }9 q0040C6C3  |.  3C 00         |cmp     al, 0
7 ^0 ]6 O) K) u$ T8 b0040C6C5  |.  74 10         |je      short 0040C6D7
! b* w$ C# q: r0 f$ i+ W0040C6C7  |.  8A46 01       |mov     al, byte ptr [esi+1]
( ^% b6 z0 Y! e7 G  W2 I& g3 a; A3 J0040C6CA  |.  83C6 02       |add     esi, 2
+ |5 ?/ z. h  N9 s0040C6CD  |.  8847 01       |mov     byte ptr [edi+1], al
8 v4 Y  M  E6 A. f: ^0040C6D0  |.  83C7 02       |add     edi, 2
) W& x$ x0 c, x1 X4 c& f' w; l0040C6D3  |.  3C 00         |cmp     al, 0
3 T# ?, M" _" F6 P, K) P5 @+ B0040C6D5  |.^ 75 E8         \jnz     short 0040C6BF
2 t+ E6 R( t5 a1 H" Y0 @0040C6D7  |>  5F            pop     edi
( P$ W1 |; `" q( c+ W# f0040C6D8  |.  8D42 01       lea     eax, dword ptr [edx+1]
& v- x! w4 T8 E; K' A: Z: C0040C6DB  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C], N* r7 H, C  d8 U) y
0040C6E2  |.  8B9424 080100>mov     edx, dword ptr [esp+108]' R- q6 c& T8 R- C  ~
0040C6E9  |.  83EF 04       sub     edi, 4/ B" C& O8 o4 O, y5 Y! m
0040C6EC  |.  42            inc     edx
/ R+ j  [& P. W. v  h7 N9 q0040C6ED  |.  89BC24 0C0100>mov     dword ptr [esp+10C], edi+ i3 ~9 N% |% R9 a# W* k; p
0040C6F4  |.  899424 080100>mov     dword ptr [esp+108], edx4 n7 I+ _2 N3 W, g  Q
0040C6FB  |.  89C2          mov     edx, eax9 `' X) v' H( w
0040C6FD  |>  43            inc     ebx
3 k- e) O3 L8 I* S  K" e% V$ w0040C6FE  |.  8A6A 01       mov     ch, byte ptr [edx+1]
% g6 U) a! Y6 K, `1 {; S& t0040C701  |.  42            inc     edx
1 X" o; s( Q" O5 `0 E0040C702  |.  84ED          test    ch, ch
' E0 B  p4 |' t! m/ @0040C704  |.^ 75 90         jnz     short 0040C696
( Q2 v! \  p& t0040C706  |>  83FD 10       cmp     ebp, 10
% B4 \0 `2 o( m. ]+ `0040C709  |.  7F 05         jg      short 0040C7107 ~5 r! X' Z) d; c
0040C70B  |.  BD 20000000   mov     ebp, 20, r& R) J: v; Y5 B$ h
0040C710  |>  8B9424 040100>mov     edx, dword ptr [esp+104]1 j- g5 |, O6 f4 ^% D
0040C717  |.  2B9424 080100>sub     edx, dword ptr [esp+108]
; |- m$ M4 U6 X0040C71E  |.  85D2          test    edx, edx0 q8 K  f) f8 ~# \: ?$ P
0040C720  |.  7C 23         jl      short 0040C745  `3 M4 @3 A/ @3 U! {1 Z
0040C722  |.  89C6          mov     esi, eax
. d2 o+ n8 z- f1 L5 d; W0040C724  |.  8B3C95 7477EF>mov     edi, dword ptr [edx*4+2EF7774]. l) _- V: l+ N2 U
0040C72B  |.  57            push    edi' O+ V7 x/ L" B" {! ]; z7 q
0040C72C  |>  8A06          /mov     al, byte ptr [esi]
' c  R/ N, c) `3 y2 c0040C72E  |.  8807          |mov     byte ptr [edi], al
5 G# T) S# V! d/ D- f% |8 K0040C730  |.  3C 00         |cmp     al, 0  b; T' z  |) S" T2 g' _/ }3 C4 B; j& v
0040C732  |.  74 10         |je      short 0040C744, F  |$ Q, w% B6 ~/ _5 h$ K: ~
0040C734  |.  8A46 01       |mov     al, byte ptr [esi+1]: M' S0 O& K, d$ M/ p" n
0040C737  |.  83C6 02       |add     esi, 2
. s. n. y( P9 P+ u0040C73A  |.  8847 01       |mov     byte ptr [edi+1], al3 s% n- V, s# Z: O, `
0040C73D  |.  83C7 02       |add     edi, 24 X: t- `1 |% E1 @
0040C740  |.  3C 00         |cmp     al, 0
7 s' _7 |: ^! M. a0040C742  |.^ 75 E8         \jnz     short 0040C72C
2 H7 b; X1 q) U* L. {$ F& B1 i0040C744  |>  5F            pop     edi
- v  X$ B  A5 D0 B5 |& k0040C745  |>  E8 E6500100   call    004218300 b7 E3 f; v/ d2 @
0040C74A  |.  A3 8877EF02   mov     dword ptr [2EF7788], eax
4 m1 k# R1 q: ?- V0040C74F  |.  8B8424 040100>mov     eax, dword ptr [esp+104]
/ J9 p' D! z' Q# S. j0040C756  |.  40            inc     eax
: p1 f! x% h  G3 d( n) j0040C757  |.  A3 8477EF02   mov     dword ptr [2EF7784], eax" `6 Q) e+ M0 l. V' Z
0040C75C  |.  C705 8C77EF02>mov     dword ptr [2EF778C], 1+ M1 F0 s" w! o" I
0040C766  |.  B8 64000000   mov     eax, 64% I2 R. F1 H; d9 y8 X; ?  b
0040C76B  |.  89C2          mov     edx, eax3 g# ^3 {4 T: ~0 m
0040C76D  |.  8B0D E880EF02 mov     ecx, dword ptr [2EF80E8]
' a, v! `; o+ Y$ J0040C773  |.  C1FA 1F       sar     edx, 1F
  [& V3 s% W" ]; T! T* V0040C776  |.  F7F9          idiv    ecx
9 ~- U  @1 [: o" B3 t+ v0040C778  |.  89C3          mov     ebx, eax
. f8 T% `  h+ @* f1 V! g7 s0040C77A  |.  89EA          mov     edx, ebp7 X/ C! U! t- c; u& M
0040C77C  |.  89E8          mov     eax, ebp, y& y# B4 k! i, l  {' g9 t8 O# h1 F* g
0040C77E  |.  C1FA 1F       sar     edx, 1F+ U# b5 U  T# j$ R( C
0040C781  |.  C1E2 04       shl     edx, 49 v: n+ q  A9 ?4 h( x
0040C784  |.  1BC2          sbb     eax, edx
6 I7 G' z; \$ I( {/ H& W5 L0040C786  |.  C1F8 04       sar     eax, 48 m7 c+ W6 E6 X; V
0040C789  |.  01C3          add     ebx, eax
+ o$ t: ^5 V0 i( j- V  K0040C78B  |.  891D 9077EF02 mov     dword ptr [2EF7790], ebx5 _/ B7 i" ]: U0 p2 u7 a
0040C791  |.  81C4 10010000 add     esp, 1108 R$ T3 k1 w2 k. n- ]7 P
0040C797  |.  5D            pop     ebp8 G0 Y# B% Y8 u* e3 G- F( l; H
0040C798  |.  5F            pop     edi2 L  E* s! v0 M) U1 D
0040C799  |.  5E            pop     esi
3 t8 a3 M% n3 _8 u$ X, c1 Q0040C79A  |.  5A            pop     edx
$ P5 ~- v9 T- [8 z' X5 w0040C79B  |.  59            pop     ecx& f4 r( v. _1 m) d1 ~  ~# A
0040C79C  |.  5B            pop     ebx; Q; R' ~1 K9 f8 J" s
0040C79D  |.  C3            retn0 H4 A# n8 p9 B: @  ~3 @3 x, T" L
0040C79E  |>  81FD 8C000000 cmp     ebp, 8C
* w3 t) ?( n9 {5 f0040C7A4  |.  7C 28         jl      short 0040C7CE; a, V  f% S+ u
0040C7A6  |.  81FD D2000000 cmp     ebp, 0D23 o) B4 c% m: A0 p3 h2 g, }& K6 [
0040C7AC  |.  7F 20         jg      short 0040C7CE
7 _! p- a+ g5 \  s% p0040C7AE  |.  B9 03000000   mov     ecx, 34 \( f: \5 g* c  p! }( r& N
0040C7B3  |.  89EA          mov     edx, ebp( u5 }8 P4 H+ P( ?8 \
0040C7B5  |.  89E8          mov     eax, ebp( D, o' t1 V: |0 o
0040C7B7  |.  C1FA 1F       sar     edx, 1F
/ x& E" u1 }1 S! Z( J* O0040C7BA  |.  F7F9          idiv    ecx& ~0 `( |! G. N+ R* p
0040C7BC  |.  C78424 040100>mov     dword ptr [esp+104], 2
7 z, _# }7 F& S: H0040C7C7  |.  89C7          mov     edi, eax
* n/ H0 f; @# R( H7 d0 v3 R0040C7C9  |.^ E9 8BFEFFFF   jmp     0040C6595 W" _& c5 u( J& p7 x% v1 i/ k
0040C7CE  |>  83FD 46       cmp     ebp, 46! c8 g8 S3 b0 N) p8 d  u' t+ A9 O  E
0040C7D1  |.  7C 25         jl      short 0040C7F88 w; d: u1 a, k1 n% O  a4 c& V
0040C7D3  |.  81FD 8C000000 cmp     ebp, 8C/ G* e3 X& u+ `
0040C7D9  |.  7F 1D         jg      short 0040C7F8
/ U1 }. N. f( n# B5 F0040C7DB  |.  89EA          mov     edx, ebp% y$ l/ h  H2 ]1 Y
0040C7DD  |.  89E8          mov     eax, ebp" w" }* K3 q5 P/ Q) ~+ l  X1 Y
0040C7DF  |.  C1FA 1F       sar     edx, 1F
8 D. |% a. T4 \5 ?8 a/ d6 z0040C7E2  |.  2BC2          sub     eax, edx2 R) b% e4 X' y: u
0040C7E4  |.  D1F8          sar     eax, 18 C4 V$ A! b  s, L- g! R& x$ H4 P0 M
0040C7E6  |.  C78424 040100>mov     dword ptr [esp+104], 14 C8 }$ ~: N% w$ Z
0040C7F1  |.  89C7          mov     edi, eax
- D" L$ \& L) y9 E/ k! @0040C7F3  |.^ E9 61FEFFFF   jmp     0040C659
5 T- ~9 ?, p' G- r! Q0040C7F8  |>  31D2          xor     edx, edx
. H1 O5 X; g1 s$ z0040C7FA  |.  BF 46000000   mov     edi, 468 U/ ~$ l6 l/ E" |
0040C7FF  |.  899424 040100>mov     dword ptr [esp+104], edx# g& t/ b) V  Q( P! ^$ R3 q
0040C806  |.^ E9 4EFEFFFF   jmp     0040C659
) I1 I$ p# ^" `6 k0 x* F4 u% [+ s' ?0040C80B  |>  80F9 7C       cmp     cl, 7C" {) x# C5 ~' O1 f! J- f( e
0040C80E  |.^ 0F85 E9FEFFFF jnz     0040C6FD5 ~2 [+ C: e2 {6 b4 R2 M
0040C814  |.  C602 20       mov     byte ptr [edx], 20
8 w  m' G, j/ A0 S5 s' h9 g7 a0040C817  \.^ E9 E1FEFFFF   jmp     0040C6FD9 B' D7 s% \5 v5 {6 s6 L% F

" V4 N$ J5 n& E# B' e+ V在scratches.sc和scream.sc里面有lua的脚本,保存有字体文件名。
: U" k5 p: I$ P- E) x, ?' ?估计要汉化就要在上面的代码段下功夫了,以后继续研究。1 s% z  l1 p  R* q! t7 t" W6 X

5 h, d" i0 [: m5 g找到2个俄文的补丁,也许对以后研究有用。3 D! t5 C* {3 Q: @. P6 R
http://www.megaupload.com/?d=EZH6X672
, q) m% Y: b0 P) Nhttp://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日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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