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

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

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

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

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

惊恐鬼屋Scratches初步汉化分析

看了一下惊恐鬼屋Scratches这个游戏。$ w/ K* G" r( \9 B3 b& N
包文件有2个,scratches.res和scream.res,+ D. O( S* @8 I! h3 ?- n* e
包文件的格式如下,可以用Game Extractor来解开。
% [) C! y1 R( dhttp://wiki.xentax.com/index.php/Scratches_RES
' C( r' a5 m  ?2 |9 {& Q从scratches.res里面解出一个font-michael.tga文件,就是在游戏利用的字体。8 U( {. o8 H; Q
scream.res里面也有一个字体文件,但是游戏好像没有用到。
/ E0 c" X3 h( F( [( T# D& N* O7 ^% M8 j; k6 u, B
用OD调试后,发现这是一个使用opengl API的游戏。
$ |& I0 }! J/ n2 A在某句字幕上下了内存断点,断下来之后找到了和显示有关的代码段。: r9 F9 N- V8 p+ y1 L( H

8 f/ D- X% }! h. K! X* z) Z0040C5D0  /$  53            push    ebx8 t2 |, j$ z- z3 ^8 y
0040C5D1  |.  51            push    ecx! h2 O) t( W# m* R4 ]
0040C5D2  |.  52            push    edx1 I4 q1 s6 g+ \' d) x
0040C5D3  |.  56            push    esi
% M+ a6 o. G7 K5 s5 [' `0040C5D4  |.  57            push    edi& k% u( v5 Y  D1 m! Y% K6 J. A; ^
0040C5D5  |.  55            push    ebp
; \2 v' P7 j/ K4 r0040C5D6  |.  81EC 10010000 sub     esp, 110
, ~4 x5 W# {: y- y; R1 [) ?& r1 Q0040C5DC  |.  89C6          mov     esi, eax' w4 s: p! x9 s( {: \
0040C5DE  |.  89C7          mov     edi, eax
' t. @8 k7 ]" c$ x# }1 h0040C5E0  |.  29C9          sub     ecx, ecx: n$ T" r( b; L3 H
0040C5E2  |.  49            dec     ecx
9 [- |: |% l1 X8 [8 E0040C5E3  |.  31C0          xor     eax, eax6 O8 N, @% ^6 Q. D3 f. N, Q
0040C5E5  |.  F2:AE         repne   scas byte ptr es:[edi]
5 t. v* m3 X4 }* q1 Q0040C5E7  |.  F7D1          not     ecx: Y9 _" |7 \2 ]% l8 V5 ^0 y
0040C5E9  |.  49            dec     ecx% h1 p' U# x2 I# R4 O6 S
0040C5EA  |.  31DB          xor     ebx, ebx
8 o! [+ K2 B  m- ^8 C# K% Q3 Q0040C5EC  |.  31ED          xor     ebp, ebp
$ u* h4 }0 U8 {& V  A0040C5EE  |.  81F9 00010000 cmp     ecx, 1005 x/ x( E: J1 q: N% {! J1 {' C
0040C5F4  |.  72 0D         jb      short 0040C603! M. }2 P; d: u# l5 L/ F' ?
0040C5F6  |.  81C4 10010000 add     esp, 110+ `! `# D! F) _% H9 ?
0040C5FC  |.  5D            pop     ebp
# e& ?& D5 F3 }3 `3 L- z& ~9 c2 x0040C5FD  |.  5F            pop     edi! X4 U, y. E/ j7 i4 C( u
0040C5FE  |.  5E            pop     esi4 h6 m+ Y- O$ {# L
0040C5FF  |.  5A            pop     edx
, ^  {0 t) [7 u/ O0040C600  |.  59            pop     ecx
' ]; B( m) T9 W2 L! s# I4 i3 g0040C601  |.  5B            pop     ebx
# E  [. r8 X8 g7 ?+ T  @0040C602  |.  C3            retn0 e2 G6 v6 W% t  Z
0040C603  |>  89E7          mov     edi, esp
1 K0 l( ^' e6 g; y* w3 v0040C605  |.  57            push    edi
! P, W% s- `4 ?# F- R0040C606  |>  8A06          /mov     al, byte ptr [esi]
4 ~& S# ]+ J* Z+ y- `/ W# U0040C608  |.  8807          |mov     byte ptr [edi], al3 |6 \! M' ]( h; k
0040C60A  |.  3C 00         |cmp     al, 0& C% m% s5 l/ [4 N! g5 r
0040C60C  |.  74 10         |je      short 0040C61E3 O; [0 _3 n# k, n% [1 v
0040C60E  |.  8A46 01       |mov     al, byte ptr [esi+1]; v0 e- ?9 d/ ]* ^8 R. f
0040C611  |.  83C6 02       |add     esi, 2
9 f, S  i: V: H: ^, i: P0040C614  |.  8847 01       |mov     byte ptr [edi+1], al
! P9 [- j+ M# K0040C617  |.  83C7 02       |add     edi, 29 J) b) v6 x: k1 b, X
0040C61A  |.  3C 00         |cmp     al, 0' O5 @5 I; F& Y. ^
0040C61C  |.^ 75 E8         \jnz     short 0040C6060 c8 }6 H) @3 r( r) ^1 }# q- s
0040C61E  |>  5F            pop     edi
, K2 ?; M5 l9 {) k% `- T' ?0040C61F  |.  8A1424        mov     dl, byte ptr [esp]; k3 @6 {) [: X
0040C622  |.  89E0          mov     eax, esp
' x0 V" j8 v* j+ o4 G: B0040C624  |.  84D2          test    dl, dl; g! f9 T- [5 @1 ]4 H/ x
0040C626  |.  74 09         je      short 0040C631, n8 [2 q$ R- d7 j
0040C628  |>  8A70 01       /mov     dh, byte ptr [eax+1]
4 t' c6 M) E- p$ Q0040C62B  |.  40            |inc     eax- k1 \5 a' y2 ~  x/ ^
0040C62C  |.  45            |inc     ebp
$ ]8 S/ d( S3 z8 `* @7 ?/ Z0040C62D  |.  84F6          |test    dh, dh
8 j0 R6 {0 [# u: ?0 ~+ Q  q0040C62F  |.^ 75 F7         \jnz     short 0040C6283 M0 z& M" b% s. K
0040C631  |>  81FD D2000000 cmp     ebp, 0D2+ S! _0 }  c# t% Z7 D
0040C637  |.  0F8E 61010000 jle     0040C79E
& m& H1 X" E$ L! z6 p" u0040C63D  |.  89EA          mov     edx, ebp
6 ]  Z; v6 W7 K0040C63F  |.  89E8          mov     eax, ebp9 ]* ^% T8 h# f2 O
0040C641  |.  C1FA 1F       sar     edx, 1F, v) v' V* g* P4 D, s
0040C644  |.  C1E2 02       shl     edx, 2
0 `# k1 Y; g8 o9 M* m% A0040C647  |.  1BC2          sbb     eax, edx5 V6 n  Y, o0 i0 B2 V
0040C649  |.  C1F8 02       sar     eax, 2
9 B$ ], s! i2 |0040C64C  |.  89C7          mov     edi, eax4 U: ~$ u2 |  h" c/ V$ Q" Q
0040C64E  |.  C78424 040100>mov     dword ptr [esp+104], 3
, e5 ^, ^8 ?7 |6 \- [0040C659  |>  89E0          mov     eax, esp; d" B8 E0 I# `) g+ V1 W/ K
0040C65B  |.  31D2          xor     edx, edx: [% g9 `# U8 m: T
0040C65D  |.  8A0C24        mov     cl, byte ptr [esp]& S. p1 H. g/ V. `9 F
0040C660  |.  8915 8477EF02 mov     dword ptr [2EF7784], edx2 c4 ?' h' a* u6 Z, r2 h
0040C666  |.  8915 8C77EF02 mov     dword ptr [2EF778C], edx* S- |( \' u( y, Q
0040C66C  |.  899424 080100>mov     dword ptr [esp+108], edx& k% q, o8 N# {  {
0040C673  |.  89E2          mov     edx, esp
* }- m) w! O# p7 |0040C675  |.  84C9          test    cl, cl1 c  m& {+ h0 G7 [
0040C677  |.  0F84 89000000 je      0040C706+ g  B+ [8 U" W9 t: s! u
0040C67D  |.  8B8C24 040100>mov     ecx, dword ptr [esp+104]5 C7 G+ V7 [, z2 _. f
0040C684  |.  4F            dec     edi, X2 J( |) _) f3 m' c" _' K. n
0040C685  |.  C1E1 02       shl     ecx, 2; z1 O3 S1 Y2 J% m9 _  C
0040C688  |.  89BC24 000100>mov     dword ptr [esp+100], edi
5 J2 V0 h, r- U0040C68F  |.  898C24 0C0100>mov     dword ptr [esp+10C], ecx9 u3 s# Z7 b. b3 s! h
0040C696  |>  8A0A          mov     cl, byte ptr [edx]
3 q; `* ]! \2 c3 ^0040C698  |.  80F9 20       cmp     cl, 202 d8 m6 D7 _1 s& s
0040C69B  |.  0F85 6A010000 jnz     0040C80B
  N1 G+ d/ k+ |) _- J7 n- _& \( G0040C6A1  |.  3B9C24 000100>cmp     ebx, dword ptr [esp+100]% H( W9 v5 W; P0 [0 Z  l: [4 f
0040C6A8  |.  7C 53         jl      short 0040C6FD* m2 f; @9 s. X7 \" v7 O+ @
0040C6AA  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]
2 ^( O7 n( g' Z' e0040C6B1  |.  C602 00       mov     byte ptr [edx], 0
; o- O4 q: g* |# W9 i* l) J6 s0040C6B4  |.  89C6          mov     esi, eax
! c( w3 n& ?! V- ~5 ?) b/ x: y0040C6B6  |.  8BBF 7477EF02 mov     edi, dword ptr [edi+2EF7774]
. v$ I9 E% q7 @' X. s0040C6BC  |.  31DB          xor     ebx, ebx) u% L1 d6 y" v+ Z3 V
0040C6BE  |.  57            push    edi# u  s5 o, Y6 I  }
0040C6BF  |>  8A06          /mov     al, byte ptr [esi]
8 V+ U% H( K; l/ m0040C6C1  |.  8807          |mov     byte ptr [edi], al
3 P8 E) @' s5 _7 n0040C6C3  |.  3C 00         |cmp     al, 03 l2 Q: ?$ P; g; p2 f2 u7 d
0040C6C5  |.  74 10         |je      short 0040C6D7
: w( R$ A' G. e  n- N0040C6C7  |.  8A46 01       |mov     al, byte ptr [esi+1]
6 @' \1 {8 y- j& ~" s4 t0040C6CA  |.  83C6 02       |add     esi, 2: B' K3 y# T* J) g& o8 w% q$ N! e
0040C6CD  |.  8847 01       |mov     byte ptr [edi+1], al
1 n3 c' \3 L$ j: f% ?7 D- v, }0040C6D0  |.  83C7 02       |add     edi, 20 f& K/ e- J! Z/ q; p
0040C6D3  |.  3C 00         |cmp     al, 0
7 o: }6 ]: V$ C/ o" v0040C6D5  |.^ 75 E8         \jnz     short 0040C6BF
- }* X- I- m3 x  }+ P4 d  T0040C6D7  |>  5F            pop     edi/ W; r0 P# z; ~1 ^# H* V' k5 f2 C" }
0040C6D8  |.  8D42 01       lea     eax, dword ptr [edx+1]
8 F- v' s1 g) Z' E; |( M8 m9 C0040C6DB  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]
# X' Y' a# a. U4 e1 ?! a1 K% |0040C6E2  |.  8B9424 080100>mov     edx, dword ptr [esp+108]6 Y. ^6 Z7 B1 t( x9 V# h
0040C6E9  |.  83EF 04       sub     edi, 4$ b% C6 F6 t# B
0040C6EC  |.  42            inc     edx( l# M' }& I3 i
0040C6ED  |.  89BC24 0C0100>mov     dword ptr [esp+10C], edi
/ @4 I6 X  o$ w" }0 g0040C6F4  |.  899424 080100>mov     dword ptr [esp+108], edx( G: v) E  _' X: {7 v; s
0040C6FB  |.  89C2          mov     edx, eax+ u9 F6 |) A$ l  f
0040C6FD  |>  43            inc     ebx
6 `: s5 D. S* I; k" j0 w0040C6FE  |.  8A6A 01       mov     ch, byte ptr [edx+1]
& T3 |. P+ Y+ X0040C701  |.  42            inc     edx) n/ E# s; G& `
0040C702  |.  84ED          test    ch, ch# E  x; Y- ^$ b3 T/ C6 f" c  t
0040C704  |.^ 75 90         jnz     short 0040C6965 Y  I% u1 {- w( n/ ?% O& {: |  u
0040C706  |>  83FD 10       cmp     ebp, 10! T- @1 I, @5 P
0040C709  |.  7F 05         jg      short 0040C710
9 f3 _+ V* K8 c# c' Q4 c: V% b$ W0040C70B  |.  BD 20000000   mov     ebp, 20. A& c$ d* y& U( I
0040C710  |>  8B9424 040100>mov     edx, dword ptr [esp+104]
9 X% a5 L6 T. b/ V0040C717  |.  2B9424 080100>sub     edx, dword ptr [esp+108]. @9 C- O8 }; O+ B( C
0040C71E  |.  85D2          test    edx, edx6 k# W* L% }' j3 p, s+ ?! ^. A- ^0 I
0040C720  |.  7C 23         jl      short 0040C745; r7 }2 M+ S! y1 i0 A2 v8 [! F
0040C722  |.  89C6          mov     esi, eax/ o1 H" I! f3 G  N" P
0040C724  |.  8B3C95 7477EF>mov     edi, dword ptr [edx*4+2EF7774]
, _- a$ O. G" s  Y; K0040C72B  |.  57            push    edi
! o5 l% e5 e$ f4 Z! P0040C72C  |>  8A06          /mov     al, byte ptr [esi]) `2 Z5 N* T4 X0 ?/ I! `
0040C72E  |.  8807          |mov     byte ptr [edi], al
( I1 h7 v: y! d, T7 [! X0040C730  |.  3C 00         |cmp     al, 0
4 i) h/ X0 f; h3 P7 Q* f0040C732  |.  74 10         |je      short 0040C7449 k, D0 K. E. w9 o+ h
0040C734  |.  8A46 01       |mov     al, byte ptr [esi+1]
- B) m* w0 }' K/ x8 k0040C737  |.  83C6 02       |add     esi, 2
) O5 y* u, p/ K$ y% d  b8 ?0040C73A  |.  8847 01       |mov     byte ptr [edi+1], al
; [+ q- c1 r/ Q2 ]. a0040C73D  |.  83C7 02       |add     edi, 2
3 V2 U' \" v: v! T+ x6 H+ P$ g0040C740  |.  3C 00         |cmp     al, 0
4 ?  Q- g+ @  N1 o0 \0 U0040C742  |.^ 75 E8         \jnz     short 0040C72C. Q; v: c: ]  }' N
0040C744  |>  5F            pop     edi& M6 E6 m8 S' Q1 W& `% Y9 N* G" j
0040C745  |>  E8 E6500100   call    00421830- m0 x% ^8 h: {4 L1 d6 N
0040C74A  |.  A3 8877EF02   mov     dword ptr [2EF7788], eax
0 u0 l0 B; Q6 ?) H0040C74F  |.  8B8424 040100>mov     eax, dword ptr [esp+104]3 w( _5 f" [+ y/ }# x
0040C756  |.  40            inc     eax: P' D" F; V% Z. m
0040C757  |.  A3 8477EF02   mov     dword ptr [2EF7784], eax3 \* |$ V; P9 F
0040C75C  |.  C705 8C77EF02>mov     dword ptr [2EF778C], 1) k3 _7 G3 W) B
0040C766  |.  B8 64000000   mov     eax, 64& e2 n/ o* v3 Z% R3 z
0040C76B  |.  89C2          mov     edx, eax  N! ^" i) h8 Y$ \' V
0040C76D  |.  8B0D E880EF02 mov     ecx, dword ptr [2EF80E8]: E; s- P5 H  t
0040C773  |.  C1FA 1F       sar     edx, 1F
7 ~5 Z+ D2 V* D. J  p/ a0 L6 E8 c0040C776  |.  F7F9          idiv    ecx
) j6 Z$ v& Z6 W4 t4 }. P) d0040C778  |.  89C3          mov     ebx, eax+ ^. F- I5 }. v/ o
0040C77A  |.  89EA          mov     edx, ebp! y/ t& q  t& a5 R6 a$ N' Y
0040C77C  |.  89E8          mov     eax, ebp' J; O# @! O/ h7 n5 m/ R
0040C77E  |.  C1FA 1F       sar     edx, 1F; t, w) F9 m! P, f# z
0040C781  |.  C1E2 04       shl     edx, 4* q& k7 X8 i3 B
0040C784  |.  1BC2          sbb     eax, edx: k6 i& `7 c5 B/ x! Q
0040C786  |.  C1F8 04       sar     eax, 4/ v  W3 s, Z  Y
0040C789  |.  01C3          add     ebx, eax5 d  n& M7 b% N: i" Z8 M, [
0040C78B  |.  891D 9077EF02 mov     dword ptr [2EF7790], ebx
3 H7 }) s  U/ v% X0040C791  |.  81C4 10010000 add     esp, 1100 O9 C8 s8 l8 x1 x% R& y
0040C797  |.  5D            pop     ebp
- e3 W, }/ K' w! K$ Q6 J& `0040C798  |.  5F            pop     edi
. N$ R/ \0 V5 X- z$ n2 y0040C799  |.  5E            pop     esi
  |9 p, P  K+ v6 A+ W- p1 ^0040C79A  |.  5A            pop     edx1 ]: w/ I3 u3 d
0040C79B  |.  59            pop     ecx
/ R- m  H" }; W0 c0040C79C  |.  5B            pop     ebx
5 m0 h  N5 n7 L! N9 q0040C79D  |.  C3            retn' M1 H% n0 M' x) Y5 H
0040C79E  |>  81FD 8C000000 cmp     ebp, 8C: h% Q0 z# T+ t! W, H/ \
0040C7A4  |.  7C 28         jl      short 0040C7CE/ I7 o* B: r7 ^5 `" f1 B1 q7 ^
0040C7A6  |.  81FD D2000000 cmp     ebp, 0D2
; c6 `  }0 [6 F. a5 A0040C7AC  |.  7F 20         jg      short 0040C7CE1 u& T7 F! @6 d( L3 Q* c
0040C7AE  |.  B9 03000000   mov     ecx, 33 s. z4 A3 m+ s0 j. R2 v3 c
0040C7B3  |.  89EA          mov     edx, ebp" m7 e8 ~2 ~! h$ W) o3 {+ L. L/ t6 ?
0040C7B5  |.  89E8          mov     eax, ebp
) X$ P2 _: Q" @5 f  \( L3 |8 v' P' C0040C7B7  |.  C1FA 1F       sar     edx, 1F
; U6 `2 p) `+ _0040C7BA  |.  F7F9          idiv    ecx
4 u6 G9 n" t( T5 h3 {( e0040C7BC  |.  C78424 040100>mov     dword ptr [esp+104], 2! U6 }& x" O/ i# l
0040C7C7  |.  89C7          mov     edi, eax
. e6 Z7 N4 b/ b: P2 K" W0040C7C9  |.^ E9 8BFEFFFF   jmp     0040C659/ W7 ^; V4 b0 E' V
0040C7CE  |>  83FD 46       cmp     ebp, 46
; d/ F$ W5 ]2 E! p4 H  d0040C7D1  |.  7C 25         jl      short 0040C7F8
7 V- J( S0 `& p1 G# r0040C7D3  |.  81FD 8C000000 cmp     ebp, 8C
& a6 B) V' Q: x9 H4 t% w) s0040C7D9  |.  7F 1D         jg      short 0040C7F8
# J7 O8 z4 _! e( L" }0 K0 Z* D0040C7DB  |.  89EA          mov     edx, ebp
0 C# ~7 E% ?$ Q' x. i0 t+ s0040C7DD  |.  89E8          mov     eax, ebp
5 a# D4 R. }+ \4 {0 t0040C7DF  |.  C1FA 1F       sar     edx, 1F& |* L4 j- l8 q+ f; |' K
0040C7E2  |.  2BC2          sub     eax, edx
' a4 A6 |; {2 c; f0040C7E4  |.  D1F8          sar     eax, 1
% ~+ ^- ~/ N: R) @0040C7E6  |.  C78424 040100>mov     dword ptr [esp+104], 1
4 M% M. A' t7 @3 C1 m  _0040C7F1  |.  89C7          mov     edi, eax
, k; a6 G6 A% T/ b0040C7F3  |.^ E9 61FEFFFF   jmp     0040C659
8 i. m" L- F" S9 K' |; L% w0040C7F8  |>  31D2          xor     edx, edx
+ y6 E5 n. f3 ?- ^3 g0040C7FA  |.  BF 46000000   mov     edi, 46* n$ Z- o8 M! h8 T- D5 D4 ^
0040C7FF  |.  899424 040100>mov     dword ptr [esp+104], edx$ \0 `) A- r& r8 v0 V
0040C806  |.^ E9 4EFEFFFF   jmp     0040C659
; q# ^4 i. g) ?: Y% u2 Y4 c0040C80B  |>  80F9 7C       cmp     cl, 7C
, b" k* h  N3 y& e: @8 y4 F0040C80E  |.^ 0F85 E9FEFFFF jnz     0040C6FD+ C; t% o: ?) H1 g# {3 Z
0040C814  |.  C602 20       mov     byte ptr [edx], 207 d& U/ i8 }/ n# G) D0 v
0040C817  \.^ E9 E1FEFFFF   jmp     0040C6FD2 y% Z9 x' x+ Y$ B

$ t5 c% p7 L( L+ q2 i在scratches.sc和scream.sc里面有lua的脚本,保存有字体文件名。
" `' R% ]0 [0 b估计要汉化就要在上面的代码段下功夫了,以后继续研究。; a9 Y. ~0 R% ], A, ~2 [

3 n9 G+ Z! a: D: [8 j; X6 b3 y2 H3 m7 ]找到2个俄文的补丁,也许对以后研究有用。% R7 I( c# h: d! v' i- a- O8 t
http://www.megaupload.com/?d=EZH6X672
2 m/ ]5 y, D8 w  V" 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日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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