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

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

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

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

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

惊恐鬼屋Scratches初步汉化分析

看了一下惊恐鬼屋Scratches这个游戏。
- _" Z& \7 S2 B1 p, B" ~4 K包文件有2个,scratches.res和scream.res,
; L3 T* b: H- |* e( D  U; d% R包文件的格式如下,可以用Game Extractor来解开。# R  i6 v: E$ |% k, _: }6 g" ~
http://wiki.xentax.com/index.php/Scratches_RES' t8 t7 ?5 W. e1 m5 Z, D
从scratches.res里面解出一个font-michael.tga文件,就是在游戏利用的字体。
( B$ u  @2 F) \$ _$ u9 Kscream.res里面也有一个字体文件,但是游戏好像没有用到。
' }0 w; }8 q6 i
( o3 c+ L2 d3 B8 y: |用OD调试后,发现这是一个使用opengl API的游戏。
0 t% L2 r$ a3 N5 z! i/ T& q, o4 ^在某句字幕上下了内存断点,断下来之后找到了和显示有关的代码段。1 d# e2 k' [$ C# n
7 n0 a1 p5 x" n" M. A
0040C5D0  /$  53            push    ebx
+ A( f' H6 g: E0 r0040C5D1  |.  51            push    ecx
4 P  D: ?  z) P; W% c* @3 t0040C5D2  |.  52            push    edx
0 ?% F3 Y( t% ^6 f0040C5D3  |.  56            push    esi% e! Y; d6 s$ F
0040C5D4  |.  57            push    edi
1 }1 I9 A& ~2 u0040C5D5  |.  55            push    ebp
9 p8 M: S0 l; x% o, {0040C5D6  |.  81EC 10010000 sub     esp, 110, O2 F; C0 r' U+ K& r
0040C5DC  |.  89C6          mov     esi, eax
- {; y9 r7 P% a9 D6 Y0040C5DE  |.  89C7          mov     edi, eax
7 _5 r( Y. T1 f( [$ a: F0040C5E0  |.  29C9          sub     ecx, ecx
3 w2 x! s* f9 m6 y( X# E0040C5E2  |.  49            dec     ecx
$ @8 E, j0 }) N* V) y% z* \0040C5E3  |.  31C0          xor     eax, eax
' f- h; w2 X( H9 f: U0040C5E5  |.  F2:AE         repne   scas byte ptr es:[edi]' R" K4 i7 T6 h6 |, N8 A
0040C5E7  |.  F7D1          not     ecx3 @' U, `6 _8 v* n
0040C5E9  |.  49            dec     ecx
  \3 m+ s! r7 g' |$ D6 ?, O1 S0040C5EA  |.  31DB          xor     ebx, ebx
: h8 S, {5 K# H1 U+ q0040C5EC  |.  31ED          xor     ebp, ebp/ E' {$ Q6 U; j3 V* D+ T  S/ G
0040C5EE  |.  81F9 00010000 cmp     ecx, 100
9 W% N) S3 V: U+ J0040C5F4  |.  72 0D         jb      short 0040C603* _, A" s! E% P% f% N" O3 D1 X' L
0040C5F6  |.  81C4 10010000 add     esp, 110
% i- ?7 v5 J& l7 u: n/ O! l0040C5FC  |.  5D            pop     ebp
# b: s3 L9 R' k' @8 S  j0040C5FD  |.  5F            pop     edi& R- A4 p3 F, m4 S; L
0040C5FE  |.  5E            pop     esi5 O: U3 Z/ W8 H3 s. Y/ T
0040C5FF  |.  5A            pop     edx
8 ]7 b# O) v( m/ h8 g" B6 ?+ I0040C600  |.  59            pop     ecx8 K1 T# p) G% F3 ^$ [  W9 l
0040C601  |.  5B            pop     ebx# M0 v4 S1 y& S& F: u1 c; u& m
0040C602  |.  C3            retn$ {% D) i) o0 L0 p  e
0040C603  |>  89E7          mov     edi, esp  A3 ]7 L9 z: q
0040C605  |.  57            push    edi2 k" k9 [8 s- [, q
0040C606  |>  8A06          /mov     al, byte ptr [esi]
/ @* D/ D: e3 t$ E: H# Z0040C608  |.  8807          |mov     byte ptr [edi], al
3 v; I2 R0 Y3 n0040C60A  |.  3C 00         |cmp     al, 0
. P& d3 W" @" U9 N2 X/ I0040C60C  |.  74 10         |je      short 0040C61E
' `- L6 _8 {& u& {! {' E0040C60E  |.  8A46 01       |mov     al, byte ptr [esi+1]
7 y$ k. A6 F, V: p% m0040C611  |.  83C6 02       |add     esi, 2
( l6 W5 c% K0 Y: F: b! \6 D. n: A0040C614  |.  8847 01       |mov     byte ptr [edi+1], al6 u. Z' I7 j  t- O- r& \
0040C617  |.  83C7 02       |add     edi, 2; [" k( r6 j6 Q7 e0 Q/ t. l# o
0040C61A  |.  3C 00         |cmp     al, 0
# K: i  A1 U7 n' [5 c) f& U0040C61C  |.^ 75 E8         \jnz     short 0040C606
- y) F2 A$ y4 `) N0040C61E  |>  5F            pop     edi
# B! L! l  x; s. K2 j0 t; [6 c) E/ F0040C61F  |.  8A1424        mov     dl, byte ptr [esp]
- M( O. |' V# V! I' u5 {* A0040C622  |.  89E0          mov     eax, esp
, `6 W! K2 H$ Z6 M0040C624  |.  84D2          test    dl, dl: U6 J0 L5 O) ?: m
0040C626  |.  74 09         je      short 0040C631  b' I) ]- v  L1 x% Q2 N: D
0040C628  |>  8A70 01       /mov     dh, byte ptr [eax+1]! @( S. \/ @6 h" L
0040C62B  |.  40            |inc     eax' }( ?' N4 d/ r! k/ ~9 |/ @
0040C62C  |.  45            |inc     ebp
9 I) K5 G7 _4 R1 c0040C62D  |.  84F6          |test    dh, dh: p( r" }4 M1 j- e# x5 K6 r4 N) _
0040C62F  |.^ 75 F7         \jnz     short 0040C628
( b0 i& T$ s& e. D+ k) o0040C631  |>  81FD D2000000 cmp     ebp, 0D2
# E5 R' k- I3 y5 X  F) r7 D, t2 N0040C637  |.  0F8E 61010000 jle     0040C79E9 B  P0 J8 D3 u! u( @- `" [& L
0040C63D  |.  89EA          mov     edx, ebp5 w* X/ B2 s: s7 z9 R6 i# |, O/ a
0040C63F  |.  89E8          mov     eax, ebp# {' ?9 C3 _' ?. {$ h
0040C641  |.  C1FA 1F       sar     edx, 1F6 F( H% N: O4 K0 U- q
0040C644  |.  C1E2 02       shl     edx, 2) J6 H- @, I( G
0040C647  |.  1BC2          sbb     eax, edx: ]  N) V; x7 D
0040C649  |.  C1F8 02       sar     eax, 28 ^' W# I. q" h% \4 z
0040C64C  |.  89C7          mov     edi, eax" c1 `; P# E" T$ {4 T% q2 Q9 m- R
0040C64E  |.  C78424 040100>mov     dword ptr [esp+104], 3
' P# G, Y/ C# d0040C659  |>  89E0          mov     eax, esp
. n* E( F: a# A+ u0040C65B  |.  31D2          xor     edx, edx4 L2 C, D/ Z1 |! N7 M
0040C65D  |.  8A0C24        mov     cl, byte ptr [esp]
- L! I# W" u5 E$ x0040C660  |.  8915 8477EF02 mov     dword ptr [2EF7784], edx' n8 k4 R% M) K$ K, u! B
0040C666  |.  8915 8C77EF02 mov     dword ptr [2EF778C], edx
! F! O) C- K0 F3 A+ P0040C66C  |.  899424 080100>mov     dword ptr [esp+108], edx
2 r$ u: v9 h) x$ I3 J0040C673  |.  89E2          mov     edx, esp
" F) k  y5 R. ^& P) H0 M2 X0040C675  |.  84C9          test    cl, cl
$ {( ^8 v- f" i* i+ _0040C677  |.  0F84 89000000 je      0040C7064 O6 X  s, e7 o, m) O5 v
0040C67D  |.  8B8C24 040100>mov     ecx, dword ptr [esp+104]8 O% n* ~! q; b6 p) {% b( f/ T, [( Y
0040C684  |.  4F            dec     edi
7 T9 z' s* R% s% V) j) v0040C685  |.  C1E1 02       shl     ecx, 2
' m! u3 I( g  _0040C688  |.  89BC24 000100>mov     dword ptr [esp+100], edi
8 R* W# |' W8 R# |0040C68F  |.  898C24 0C0100>mov     dword ptr [esp+10C], ecx: E4 p# W* r/ o& V3 ^8 B* i( c
0040C696  |>  8A0A          mov     cl, byte ptr [edx]
; p; a+ A0 w; j% O# f, t3 R0040C698  |.  80F9 20       cmp     cl, 20
' E9 J- |& `" V0040C69B  |.  0F85 6A010000 jnz     0040C80B1 @" e- H$ H( m6 R5 Z
0040C6A1  |.  3B9C24 000100>cmp     ebx, dword ptr [esp+100]: ?# R9 k' f! }* }3 u. b; y7 H
0040C6A8  |.  7C 53         jl      short 0040C6FD& N4 V2 h7 V! I
0040C6AA  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]
- @1 [& a; f0 P* W0040C6B1  |.  C602 00       mov     byte ptr [edx], 0* w6 z1 P  b8 K# g0 Q' E; J
0040C6B4  |.  89C6          mov     esi, eax
6 t4 V: O7 d. P) w8 ~0040C6B6  |.  8BBF 7477EF02 mov     edi, dword ptr [edi+2EF7774]/ o/ t" V, D0 L8 U, E! C
0040C6BC  |.  31DB          xor     ebx, ebx* L; X5 |3 q1 V. Z# \3 {. R
0040C6BE  |.  57            push    edi
$ M2 c2 e  n  }; |0040C6BF  |>  8A06          /mov     al, byte ptr [esi]
! }" x4 F) w. ]0040C6C1  |.  8807          |mov     byte ptr [edi], al( \* A+ `- \* I: C' e3 N3 l9 @- G
0040C6C3  |.  3C 00         |cmp     al, 0
9 i4 N5 z- G9 v0040C6C5  |.  74 10         |je      short 0040C6D73 R0 K% ]" Q7 c
0040C6C7  |.  8A46 01       |mov     al, byte ptr [esi+1]
* g$ m* u4 F; T+ z- ~, a, V& v0040C6CA  |.  83C6 02       |add     esi, 2
! R7 K. T- ^! Y3 T* `. t0040C6CD  |.  8847 01       |mov     byte ptr [edi+1], al7 J) U; l! B( G! w
0040C6D0  |.  83C7 02       |add     edi, 2
' }( ]( F& l, W' I: C8 w3 |0040C6D3  |.  3C 00         |cmp     al, 0
1 ]9 y( q+ s# X" q  t0040C6D5  |.^ 75 E8         \jnz     short 0040C6BF: b$ J$ _5 L' f: Q! ]: X
0040C6D7  |>  5F            pop     edi
9 E5 `/ a1 y7 q. b0040C6D8  |.  8D42 01       lea     eax, dword ptr [edx+1]
7 p. c9 u, |4 F4 a( u( w! L( y$ Y0040C6DB  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]$ F+ m" q2 D# F+ l7 Z; q
0040C6E2  |.  8B9424 080100>mov     edx, dword ptr [esp+108]' w2 e# ]$ w2 C( w, y2 G$ g" R  H
0040C6E9  |.  83EF 04       sub     edi, 4
- S# x/ r* _3 v0040C6EC  |.  42            inc     edx
/ J5 S" t8 Q* ?5 X8 u' Z9 v7 b0040C6ED  |.  89BC24 0C0100>mov     dword ptr [esp+10C], edi
. Y( S0 v6 E" }- q" n$ X6 G  u0040C6F4  |.  899424 080100>mov     dword ptr [esp+108], edx
& x: `+ C! c# X% x0040C6FB  |.  89C2          mov     edx, eax' J' F9 o6 x" G$ O8 V, u+ K
0040C6FD  |>  43            inc     ebx" v4 z7 A9 Y4 k1 l
0040C6FE  |.  8A6A 01       mov     ch, byte ptr [edx+1]
4 n( G0 u4 Y4 F. c! F% z: n- k0040C701  |.  42            inc     edx4 j8 f! A: q. u: ]& x0 [4 H
0040C702  |.  84ED          test    ch, ch
  [2 ]7 Q1 i# Z5 g$ L* S" c" ~- ?0040C704  |.^ 75 90         jnz     short 0040C696
4 ^9 X3 E0 B  O0040C706  |>  83FD 10       cmp     ebp, 10
  b! F" l# v; l' n3 Q0040C709  |.  7F 05         jg      short 0040C710$ s: T7 V  y" H: J
0040C70B  |.  BD 20000000   mov     ebp, 20; O" p% e# Z; S7 U, _. m& q3 Z
0040C710  |>  8B9424 040100>mov     edx, dword ptr [esp+104]- H* g2 A- A: ]. n# `- \8 C( ~
0040C717  |.  2B9424 080100>sub     edx, dword ptr [esp+108]+ L4 b' \* X* n: t" w$ y/ l5 y  ^
0040C71E  |.  85D2          test    edx, edx
4 P8 E2 \' k# v3 L0040C720  |.  7C 23         jl      short 0040C745. Z) C! W1 L3 s: J8 c- a
0040C722  |.  89C6          mov     esi, eax
$ b5 ~+ S" n2 G2 {" S0040C724  |.  8B3C95 7477EF>mov     edi, dword ptr [edx*4+2EF7774]8 X9 v$ S" K1 ?) ~! W* W, `
0040C72B  |.  57            push    edi
) \! W* R1 V3 U4 D5 {! l+ ^! w0040C72C  |>  8A06          /mov     al, byte ptr [esi]
7 J& F( l) ^( [; Q; T8 k7 X' ~0040C72E  |.  8807          |mov     byte ptr [edi], al0 F' ]9 z" N' C7 A3 C( o
0040C730  |.  3C 00         |cmp     al, 0
$ m, [% r3 r8 c+ B* c0040C732  |.  74 10         |je      short 0040C744  V; V$ ]8 @% w; ^( D% i
0040C734  |.  8A46 01       |mov     al, byte ptr [esi+1]
& r" d5 M( q( J  P0040C737  |.  83C6 02       |add     esi, 2% V+ R' j3 l# ]) K& i
0040C73A  |.  8847 01       |mov     byte ptr [edi+1], al2 a) Y3 q+ i7 l7 I: y
0040C73D  |.  83C7 02       |add     edi, 2; t/ e- I8 w) N. Q1 g9 y$ i
0040C740  |.  3C 00         |cmp     al, 0- l5 V$ D/ Z. e) O
0040C742  |.^ 75 E8         \jnz     short 0040C72C
- ^- N7 |/ x1 C; J' C7 o$ r9 ]0040C744  |>  5F            pop     edi
. m. \; f6 X6 q" f1 C% z  @+ q0040C745  |>  E8 E6500100   call    00421830- V% D8 m3 a% q' v8 z) z7 Y0 e4 n
0040C74A  |.  A3 8877EF02   mov     dword ptr [2EF7788], eax6 X: q2 J/ D+ D* |% T; c0 |
0040C74F  |.  8B8424 040100>mov     eax, dword ptr [esp+104]
+ b2 b1 `, o' t3 T9 p; U& O. x0040C756  |.  40            inc     eax
! D) u5 h& x1 o# V  _5 A3 W' M0040C757  |.  A3 8477EF02   mov     dword ptr [2EF7784], eax1 L: }+ N" G- T, e
0040C75C  |.  C705 8C77EF02>mov     dword ptr [2EF778C], 1
/ H1 r* g& ?! |7 J7 i" t0040C766  |.  B8 64000000   mov     eax, 64
6 [' f. x8 p  Q: ]2 ?5 j0040C76B  |.  89C2          mov     edx, eax! {4 q+ R- i" ^, R/ m! W" x5 r8 c
0040C76D  |.  8B0D E880EF02 mov     ecx, dword ptr [2EF80E8]7 Z. x4 u# P. b6 F7 G( E: Q& e
0040C773  |.  C1FA 1F       sar     edx, 1F/ x$ z9 o6 s  V3 l6 O+ }
0040C776  |.  F7F9          idiv    ecx9 x5 N* ]& l5 P; S' x4 ?" K
0040C778  |.  89C3          mov     ebx, eax
5 @" G3 P2 L! t  Q2 u0040C77A  |.  89EA          mov     edx, ebp
% U  o" |( ]- Y' G3 t7 f8 {6 N0040C77C  |.  89E8          mov     eax, ebp+ a% P4 n  E% J! `) q# O
0040C77E  |.  C1FA 1F       sar     edx, 1F: {7 j$ V7 r/ ]; D& c2 {0 @
0040C781  |.  C1E2 04       shl     edx, 4
( {/ X: S  b1 F% {" Y0040C784  |.  1BC2          sbb     eax, edx
# W) H$ I. k- ^2 w0040C786  |.  C1F8 04       sar     eax, 4
7 V- _4 ?! h2 g7 L8 K0040C789  |.  01C3          add     ebx, eax
5 |& I. M& y4 W& r: R2 q0040C78B  |.  891D 9077EF02 mov     dword ptr [2EF7790], ebx# _) D# k: k( t/ b2 Z4 h: d
0040C791  |.  81C4 10010000 add     esp, 110, p  n' X7 }& Y1 X) b4 L$ H7 D7 J- K
0040C797  |.  5D            pop     ebp6 M! ?0 V0 u* M6 ?6 p# o
0040C798  |.  5F            pop     edi( ^: V' h# M% D: {- X
0040C799  |.  5E            pop     esi9 S1 f( r& j) @: v$ X
0040C79A  |.  5A            pop     edx  u$ N0 x& `9 Y# L2 y' U
0040C79B  |.  59            pop     ecx
5 U4 @/ p- G% F! u  \! A' c0040C79C  |.  5B            pop     ebx9 w8 |$ p( Y8 J5 K: w
0040C79D  |.  C3            retn
) p* O  b7 g( d0040C79E  |>  81FD 8C000000 cmp     ebp, 8C% {; Z: e6 V3 v* s9 f0 Z8 ~$ A
0040C7A4  |.  7C 28         jl      short 0040C7CE
; N( @! l4 R' I" O# H' Y+ b2 y0040C7A6  |.  81FD D2000000 cmp     ebp, 0D2
- ^1 g# ?8 i  z4 y% d7 \; Q) ?0040C7AC  |.  7F 20         jg      short 0040C7CE
" ^! y( {9 B; t" b0040C7AE  |.  B9 03000000   mov     ecx, 39 ]" b+ V7 y3 e
0040C7B3  |.  89EA          mov     edx, ebp
- e2 W' m  E) ~. x8 v5 L0040C7B5  |.  89E8          mov     eax, ebp
& }, d2 Q# g2 O. t0040C7B7  |.  C1FA 1F       sar     edx, 1F
5 D3 s5 `! v- |# S# ^; W1 K9 x; S0040C7BA  |.  F7F9          idiv    ecx$ c9 x3 a, [3 U
0040C7BC  |.  C78424 040100>mov     dword ptr [esp+104], 2
( `* F! g' m3 v# u2 a0040C7C7  |.  89C7          mov     edi, eax
) |9 u/ s7 F5 n4 W0 h* h: W2 S6 {0040C7C9  |.^ E9 8BFEFFFF   jmp     0040C6596 X+ U) L8 L& }4 X! Z9 Q* e
0040C7CE  |>  83FD 46       cmp     ebp, 468 A7 o" U4 G1 R" V8 E
0040C7D1  |.  7C 25         jl      short 0040C7F83 i+ N: f. x% g( D9 T
0040C7D3  |.  81FD 8C000000 cmp     ebp, 8C% N( H  O5 \2 v: q/ }/ t
0040C7D9  |.  7F 1D         jg      short 0040C7F8
( Y6 n( t) t( u) d% k) m( F0040C7DB  |.  89EA          mov     edx, ebp+ S6 s1 O! Y/ k
0040C7DD  |.  89E8          mov     eax, ebp
4 i' N; W- X* i+ a0040C7DF  |.  C1FA 1F       sar     edx, 1F
$ p1 M9 k2 j* T/ n* F4 m1 D; O3 [4 l0040C7E2  |.  2BC2          sub     eax, edx+ q( |: {3 X' i: E% F' Y" o
0040C7E4  |.  D1F8          sar     eax, 1
, R6 K& k# P& L0 q8 U  `0040C7E6  |.  C78424 040100>mov     dword ptr [esp+104], 1
+ b' D! F' s' r. P, u0040C7F1  |.  89C7          mov     edi, eax
8 L- p& c. [# Z' |# q0040C7F3  |.^ E9 61FEFFFF   jmp     0040C659
; ^  R1 i8 w$ O/ A8 w) w! f0040C7F8  |>  31D2          xor     edx, edx: _1 M$ R8 j% H# J4 K& a) A; }
0040C7FA  |.  BF 46000000   mov     edi, 46. r% e6 j6 }1 U' Z8 S8 @0 |- o+ c
0040C7FF  |.  899424 040100>mov     dword ptr [esp+104], edx
. @  V! p5 \& {0040C806  |.^ E9 4EFEFFFF   jmp     0040C659& }( v! {3 u6 W8 J8 |$ C0 F
0040C80B  |>  80F9 7C       cmp     cl, 7C  `/ S" m7 @8 {( l
0040C80E  |.^ 0F85 E9FEFFFF jnz     0040C6FD) Z; n4 x7 M3 s. \9 @* P6 ^9 W9 [
0040C814  |.  C602 20       mov     byte ptr [edx], 20
  f# q5 ~; ?( z5 P) r6 {) _( u, H0040C817  \.^ E9 E1FEFFFF   jmp     0040C6FD& O4 p- o/ \% l/ j' p) Z/ x, x
, @% X) w- g8 n/ D' o
在scratches.sc和scream.sc里面有lua的脚本,保存有字体文件名。
( z# ~# T8 Z6 E% ?0 ^2 r; @估计要汉化就要在上面的代码段下功夫了,以后继续研究。
. F2 I" ?# m+ q2 h) G9 D) }# e. }7 @& _: L0 k- Z
找到2个俄文的补丁,也许对以后研究有用。0 K* n6 ^, R9 U# O
http://www.megaupload.com/?d=EZH6X672# h6 D1 m) K: {' |$ m* k  `
http://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日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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