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

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

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

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

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

惊恐鬼屋Scratches初步汉化分析

看了一下惊恐鬼屋Scratches这个游戏。  Q3 ]' V# C. w
包文件有2个,scratches.res和scream.res,
5 ~- K5 m. N$ {& c! }% b包文件的格式如下,可以用Game Extractor来解开。8 I3 A9 D$ H/ ~% S+ h2 ~
http://wiki.xentax.com/index.php/Scratches_RES
1 e. o6 ^: r" X从scratches.res里面解出一个font-michael.tga文件,就是在游戏利用的字体。4 m0 C, c/ r7 |" `: M( Y4 y- ~
scream.res里面也有一个字体文件,但是游戏好像没有用到。4 n( K2 `* M1 ?7 U. T" G6 ]
# P$ d6 U+ e6 T, g, G  J
用OD调试后,发现这是一个使用opengl API的游戏。" J  P3 C2 x, K0 o5 m; r
在某句字幕上下了内存断点,断下来之后找到了和显示有关的代码段。
! f& b' Z+ p4 j" S  G, W' @% W$ M. f
0040C5D0  /$  53            push    ebx& ~+ {4 s* c; s( z
0040C5D1  |.  51            push    ecx
% n1 i- |- K: E/ ?0040C5D2  |.  52            push    edx2 e: ~5 p% N4 v
0040C5D3  |.  56            push    esi
7 y/ D6 ]& T& E1 p/ y- A4 m# `4 a0040C5D4  |.  57            push    edi
2 g% }9 L2 i0 \3 C6 i) o- s4 h0040C5D5  |.  55            push    ebp
( K' L$ {: L, j0040C5D6  |.  81EC 10010000 sub     esp, 110
0 D6 X7 _3 S/ V. a& X0 f" u& A0040C5DC  |.  89C6          mov     esi, eax
" Q/ e- f, d4 C/ c# V# Z  f0040C5DE  |.  89C7          mov     edi, eax% f0 M8 S. \1 W0 T
0040C5E0  |.  29C9          sub     ecx, ecx# @/ J8 ~& c3 r- u
0040C5E2  |.  49            dec     ecx
( ~7 q% q9 S7 k; t" |5 \& C9 {. e: ~0040C5E3  |.  31C0          xor     eax, eax
5 j5 M5 I3 ^1 F3 M, x5 \3 k0040C5E5  |.  F2:AE         repne   scas byte ptr es:[edi]
2 h" W; c" L4 \- G6 ]1 ?/ L+ j, ?0040C5E7  |.  F7D1          not     ecx. `: Z, \2 c4 D
0040C5E9  |.  49            dec     ecx) `/ J3 ^( |: l! D
0040C5EA  |.  31DB          xor     ebx, ebx
, }5 Q! s/ L) @2 c' p0040C5EC  |.  31ED          xor     ebp, ebp* ^" b2 V3 ]+ e7 t! j( I
0040C5EE  |.  81F9 00010000 cmp     ecx, 100
2 N* Y: c+ g) i- D+ k0040C5F4  |.  72 0D         jb      short 0040C603
7 S3 ?+ u9 t& n) j( p, e0 c0040C5F6  |.  81C4 10010000 add     esp, 110- x, ?/ [7 Z  T. `) k' z2 O
0040C5FC  |.  5D            pop     ebp' Y* J# |. c( _) E; Y
0040C5FD  |.  5F            pop     edi/ l$ n& |, F7 s& L' R7 d* O
0040C5FE  |.  5E            pop     esi) `% M: K  R$ P7 R" r9 S! `
0040C5FF  |.  5A            pop     edx
7 {- Y! q( k( f% N$ F2 r0040C600  |.  59            pop     ecx
& h* K2 E$ M: ~% l$ S! @& Z0040C601  |.  5B            pop     ebx+ N" [/ v' D8 i: y2 t
0040C602  |.  C3            retn
7 n9 J8 ^5 X, u  L* z2 l0040C603  |>  89E7          mov     edi, esp& {0 o" C) K7 a
0040C605  |.  57            push    edi; m! T% C" H$ N* v9 A
0040C606  |>  8A06          /mov     al, byte ptr [esi]
* N" V- V4 ^) W+ r2 M0040C608  |.  8807          |mov     byte ptr [edi], al
! y' I- J5 _. U( o- o0040C60A  |.  3C 00         |cmp     al, 0* h+ G5 l! h6 I- }. N; @
0040C60C  |.  74 10         |je      short 0040C61E( |5 W4 ?; n$ d! o4 \# N" r
0040C60E  |.  8A46 01       |mov     al, byte ptr [esi+1]
3 N; x3 O" B, z- L' ]8 h* O  P0040C611  |.  83C6 02       |add     esi, 29 N" P! e! M/ |" }
0040C614  |.  8847 01       |mov     byte ptr [edi+1], al
3 Q+ B6 V1 T, K" z0040C617  |.  83C7 02       |add     edi, 2
: O. B, x9 F! D1 \$ V& t0040C61A  |.  3C 00         |cmp     al, 0
4 ~1 N$ W: k2 y) T" Q, r5 U; Y0040C61C  |.^ 75 E8         \jnz     short 0040C606+ }! q/ W' s: i6 {2 }0 S
0040C61E  |>  5F            pop     edi
" R5 G5 }; q) E: P0040C61F  |.  8A1424        mov     dl, byte ptr [esp]" t6 z+ y8 s2 O2 J8 f
0040C622  |.  89E0          mov     eax, esp! h) j: k2 k9 A
0040C624  |.  84D2          test    dl, dl
" i1 K  A4 t! |0 p! r0040C626  |.  74 09         je      short 0040C631
  h8 K6 C1 m7 Z; v" b: z0040C628  |>  8A70 01       /mov     dh, byte ptr [eax+1]0 r7 V3 z( j, A4 A
0040C62B  |.  40            |inc     eax+ ~3 S( C/ S" i. P6 ^
0040C62C  |.  45            |inc     ebp5 b1 U9 L1 y, V" \+ S: G/ F
0040C62D  |.  84F6          |test    dh, dh$ ]  Z$ m) T, z  b8 U
0040C62F  |.^ 75 F7         \jnz     short 0040C628( |" E# a( O( U. O* k1 A
0040C631  |>  81FD D2000000 cmp     ebp, 0D2. q; L% j  }7 U% x( X
0040C637  |.  0F8E 61010000 jle     0040C79E
5 z% t& L; ~' z/ ?9 T% b0 i0040C63D  |.  89EA          mov     edx, ebp
: R- X3 W2 S4 c; l9 C0040C63F  |.  89E8          mov     eax, ebp* c8 Y1 n' l, f6 \: [# b
0040C641  |.  C1FA 1F       sar     edx, 1F
9 C/ C; X4 u: K0 a4 X# v% d0040C644  |.  C1E2 02       shl     edx, 2! V6 K, t0 B3 u' d) \: f
0040C647  |.  1BC2          sbb     eax, edx: m7 f( b; |% B/ [% K  L
0040C649  |.  C1F8 02       sar     eax, 29 A. `9 |. Z+ G; _1 G
0040C64C  |.  89C7          mov     edi, eax
8 @8 b4 t. l# ^0040C64E  |.  C78424 040100>mov     dword ptr [esp+104], 31 t  O/ y  y' Y
0040C659  |>  89E0          mov     eax, esp5 `% [: g' f1 B, H! `6 l" S+ d
0040C65B  |.  31D2          xor     edx, edx+ ^0 P' v  {. }; p
0040C65D  |.  8A0C24        mov     cl, byte ptr [esp]
6 j: \. `0 V& c* t3 v6 N0040C660  |.  8915 8477EF02 mov     dword ptr [2EF7784], edx. w8 p& }3 D0 m1 |$ x1 t8 j7 B
0040C666  |.  8915 8C77EF02 mov     dword ptr [2EF778C], edx
# L* Z1 Z5 `: H5 W! d0040C66C  |.  899424 080100>mov     dword ptr [esp+108], edx5 b9 j8 N( B! C( E( m1 i
0040C673  |.  89E2          mov     edx, esp
# o* i: a4 G* }+ [( s- M0040C675  |.  84C9          test    cl, cl
, p7 j, a1 V. G0 ~1 Z& _6 @0040C677  |.  0F84 89000000 je      0040C706
$ V7 G# ~8 n/ H2 ?0 j0040C67D  |.  8B8C24 040100>mov     ecx, dword ptr [esp+104]& r. ^6 E1 m) k6 n
0040C684  |.  4F            dec     edi
, [. |( z/ n8 v% H4 D0040C685  |.  C1E1 02       shl     ecx, 28 K" D3 a  J- B0 D9 c5 N9 P
0040C688  |.  89BC24 000100>mov     dword ptr [esp+100], edi% }* ]/ I' K: J, _3 P4 p
0040C68F  |.  898C24 0C0100>mov     dword ptr [esp+10C], ecx
- O7 n3 B8 b- r' Y) w0040C696  |>  8A0A          mov     cl, byte ptr [edx]
  e: h8 e3 }1 j9 p( Y0040C698  |.  80F9 20       cmp     cl, 20
$ d5 }7 h! w0 Y0040C69B  |.  0F85 6A010000 jnz     0040C80B7 d) ~$ f& X2 p4 Y+ ~6 ]6 `
0040C6A1  |.  3B9C24 000100>cmp     ebx, dword ptr [esp+100]
" d- C7 A0 h) ~6 b5 }0040C6A8  |.  7C 53         jl      short 0040C6FD
" o; r3 B" w. X6 m/ C0040C6AA  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]
  |/ R, ^/ H8 F9 c) F5 m$ Q* H0 o$ m0040C6B1  |.  C602 00       mov     byte ptr [edx], 08 Q0 [1 N# X& R% U( j$ W. N
0040C6B4  |.  89C6          mov     esi, eax; z) l6 d' a6 N: r7 a
0040C6B6  |.  8BBF 7477EF02 mov     edi, dword ptr [edi+2EF7774]
% `6 Y4 J- G2 _2 F) ]+ b0040C6BC  |.  31DB          xor     ebx, ebx
* F2 H5 b6 ~& V+ ^9 f1 l5 p% Q0040C6BE  |.  57            push    edi; |6 D/ k! P* h# @% |! B3 L
0040C6BF  |>  8A06          /mov     al, byte ptr [esi]
, c1 G4 |* G# e$ M, |  V0040C6C1  |.  8807          |mov     byte ptr [edi], al
* [* F, z# u" w0040C6C3  |.  3C 00         |cmp     al, 0
5 u2 ^3 n5 q$ P: a+ G- g5 i0040C6C5  |.  74 10         |je      short 0040C6D7
( Q1 M+ b0 o& B/ Z7 K# D# K3 u$ s0040C6C7  |.  8A46 01       |mov     al, byte ptr [esi+1]3 P/ q, i* Z9 z$ X, \
0040C6CA  |.  83C6 02       |add     esi, 2
9 B9 B) N$ Z9 {& U9 j0040C6CD  |.  8847 01       |mov     byte ptr [edi+1], al( L- a: V" e3 f! A
0040C6D0  |.  83C7 02       |add     edi, 21 @" l& e- Z9 a2 b% G
0040C6D3  |.  3C 00         |cmp     al, 0' `8 W% P8 m9 R- ^) H
0040C6D5  |.^ 75 E8         \jnz     short 0040C6BF
1 S/ |% E& Z( \" A1 m+ I6 b/ p+ j0040C6D7  |>  5F            pop     edi
. s, I$ B$ ~1 d* {" h7 Q' f0040C6D8  |.  8D42 01       lea     eax, dword ptr [edx+1]6 ^" N0 E  i2 I% C+ X6 n
0040C6DB  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]( R5 A# b1 H6 W; g
0040C6E2  |.  8B9424 080100>mov     edx, dword ptr [esp+108]
. s: F2 H0 U5 Z* c0040C6E9  |.  83EF 04       sub     edi, 4% r, G' [# _1 r, ]7 u5 H/ @
0040C6EC  |.  42            inc     edx8 W$ M8 t) D6 X9 h+ i! T9 Y, j, a  }
0040C6ED  |.  89BC24 0C0100>mov     dword ptr [esp+10C], edi
9 T0 J9 }: e! }. ^, ^0 a% d0040C6F4  |.  899424 080100>mov     dword ptr [esp+108], edx0 P& i' y( W' m
0040C6FB  |.  89C2          mov     edx, eax+ e3 i0 t" \' `2 W
0040C6FD  |>  43            inc     ebx
# s5 \. a! j& R9 ]- S0040C6FE  |.  8A6A 01       mov     ch, byte ptr [edx+1]& }# z. F$ h: l
0040C701  |.  42            inc     edx7 M3 B- Y+ [% N
0040C702  |.  84ED          test    ch, ch, n7 D7 H) ?1 H2 j5 J" u3 @
0040C704  |.^ 75 90         jnz     short 0040C696) B: f1 c( I1 c( m4 z) w6 G
0040C706  |>  83FD 10       cmp     ebp, 10
6 I3 c+ ]$ j& f- H4 e0040C709  |.  7F 05         jg      short 0040C710
1 T" _. p0 P0 G$ B5 z' B/ I1 m  o0040C70B  |.  BD 20000000   mov     ebp, 20. S" r% c1 B- k2 K7 X
0040C710  |>  8B9424 040100>mov     edx, dword ptr [esp+104]
% D( V  s, v% T& T: Q0040C717  |.  2B9424 080100>sub     edx, dword ptr [esp+108]  a: r! f5 S+ }$ B9 G. {8 b
0040C71E  |.  85D2          test    edx, edx
; F5 K" b  p+ O1 N/ C& n' Q0040C720  |.  7C 23         jl      short 0040C745
' ]/ O3 L+ E0 l9 B  K3 P3 U. w0040C722  |.  89C6          mov     esi, eax
6 C* B* ~) l5 v; V" _0 V0 T0040C724  |.  8B3C95 7477EF>mov     edi, dword ptr [edx*4+2EF7774]/ p3 f+ j6 J9 S3 o
0040C72B  |.  57            push    edi
* G6 @) H0 ^9 \$ y+ i3 `% L' h4 Z0040C72C  |>  8A06          /mov     al, byte ptr [esi]: o" n3 h: l/ R, Z( \3 y" r" E% R
0040C72E  |.  8807          |mov     byte ptr [edi], al
# v2 f! k# C4 V: e: X( ~' }0040C730  |.  3C 00         |cmp     al, 0
7 T4 x4 d: N) }3 u, O6 o6 ?0040C732  |.  74 10         |je      short 0040C744. w( {: E6 m( X* O, J
0040C734  |.  8A46 01       |mov     al, byte ptr [esi+1]1 v9 R( C1 W+ V- z; p- M, n! W/ g. S! W
0040C737  |.  83C6 02       |add     esi, 2) p# a; z$ r- F1 V# T
0040C73A  |.  8847 01       |mov     byte ptr [edi+1], al
# R" N! \3 @: Z$ r8 e% s% D0040C73D  |.  83C7 02       |add     edi, 2
2 M7 c2 u% |6 K3 ]0040C740  |.  3C 00         |cmp     al, 0# ^' }' Z! |, U/ ]6 l" @8 i6 Z
0040C742  |.^ 75 E8         \jnz     short 0040C72C# Y+ K! J& v" T% w
0040C744  |>  5F            pop     edi+ B/ J9 M# \, L- Y; c$ S
0040C745  |>  E8 E6500100   call    00421830
( v. _: {" y/ s: n) G0 d2 J0040C74A  |.  A3 8877EF02   mov     dword ptr [2EF7788], eax8 j* o' g7 k' K- y
0040C74F  |.  8B8424 040100>mov     eax, dword ptr [esp+104]2 S; i/ Z6 y, U! f3 [; e
0040C756  |.  40            inc     eax6 e( ]9 c+ L/ T" b. h8 E+ N
0040C757  |.  A3 8477EF02   mov     dword ptr [2EF7784], eax/ J/ W3 [5 p! Z+ t5 w9 c+ b
0040C75C  |.  C705 8C77EF02>mov     dword ptr [2EF778C], 1
) {  I; O" x! W# K/ C+ J3 ~! g, ~# {0040C766  |.  B8 64000000   mov     eax, 64. G9 r+ }9 d$ A2 F5 O7 y! ?  g
0040C76B  |.  89C2          mov     edx, eax7 J4 E/ \/ H# t( m; W! a% P5 B
0040C76D  |.  8B0D E880EF02 mov     ecx, dword ptr [2EF80E8]/ ^0 ^* W* N; j  H0 o3 a5 f
0040C773  |.  C1FA 1F       sar     edx, 1F
6 c% @4 o, T" P, x' R7 v0 m* x0040C776  |.  F7F9          idiv    ecx
0 D  w% v- k' Z, _# i9 t0040C778  |.  89C3          mov     ebx, eax
: `& |* Z4 D' [; f3 N# q4 d! f) p0040C77A  |.  89EA          mov     edx, ebp8 p/ m, G6 X5 ~/ n0 I
0040C77C  |.  89E8          mov     eax, ebp
) b6 A1 g! t$ l; O/ b: c0040C77E  |.  C1FA 1F       sar     edx, 1F
9 x# Q+ P1 C% c0 E! Z0040C781  |.  C1E2 04       shl     edx, 48 t; Q9 U  R$ {% k. B: i6 c* @# l9 S
0040C784  |.  1BC2          sbb     eax, edx
$ T% ?9 B1 \3 q' O# O8 [0040C786  |.  C1F8 04       sar     eax, 41 _1 _. L$ M( \8 d- X
0040C789  |.  01C3          add     ebx, eax
* B: L' N2 l8 Y9 D" L9 B2 U0040C78B  |.  891D 9077EF02 mov     dword ptr [2EF7790], ebx
# Z5 n- Y3 o4 W4 R0040C791  |.  81C4 10010000 add     esp, 110
" Z6 i, _4 l1 e8 k0040C797  |.  5D            pop     ebp8 G( o: D* G* k# O
0040C798  |.  5F            pop     edi
  ?5 r# e( ?' T) I' c0040C799  |.  5E            pop     esi
5 }5 v$ V9 _: S& M6 g' O; e0040C79A  |.  5A            pop     edx& @4 l0 u: I0 G8 B9 H, v( j* L
0040C79B  |.  59            pop     ecx
% {8 ]: P6 |, Q; t% K9 m4 ~0040C79C  |.  5B            pop     ebx8 W- \( G) S4 s9 s2 I# g! H% D
0040C79D  |.  C3            retn1 f6 D/ m. C; W6 d' @* w/ M
0040C79E  |>  81FD 8C000000 cmp     ebp, 8C! o% a- q& `) e7 j
0040C7A4  |.  7C 28         jl      short 0040C7CE) g' N( {! d6 X4 P- c4 k  G' Z$ s, I
0040C7A6  |.  81FD D2000000 cmp     ebp, 0D2# D+ j: k! A' I1 E7 e4 X
0040C7AC  |.  7F 20         jg      short 0040C7CE6 O* S! K5 B  b, a$ g* t
0040C7AE  |.  B9 03000000   mov     ecx, 35 i! k# ?8 p8 s% f6 u
0040C7B3  |.  89EA          mov     edx, ebp
9 Z, k( F( \. M" G0 m0 x( ]0040C7B5  |.  89E8          mov     eax, ebp2 P* a/ j' z7 `: ^3 y: J" k
0040C7B7  |.  C1FA 1F       sar     edx, 1F9 w- k$ w# [0 K
0040C7BA  |.  F7F9          idiv    ecx1 c5 e/ P1 c5 J; c
0040C7BC  |.  C78424 040100>mov     dword ptr [esp+104], 2
% @# d0 Z+ }; L4 p+ F3 h  _0040C7C7  |.  89C7          mov     edi, eax! a: u2 m7 B2 i, R% v
0040C7C9  |.^ E9 8BFEFFFF   jmp     0040C659
4 d3 o+ a2 e+ P9 C+ g: J0040C7CE  |>  83FD 46       cmp     ebp, 46/ _. l' s) |5 p+ }9 o4 p
0040C7D1  |.  7C 25         jl      short 0040C7F80 }* K1 U/ R" C0 Z' u& _: N* F
0040C7D3  |.  81FD 8C000000 cmp     ebp, 8C
7 ~: F; _; y0 H  D& o0040C7D9  |.  7F 1D         jg      short 0040C7F8
# ~& x( T7 T/ `  n0040C7DB  |.  89EA          mov     edx, ebp* b2 `% B( X" _2 m' Y' _
0040C7DD  |.  89E8          mov     eax, ebp
0 S$ j, Z7 {# q" P) K0040C7DF  |.  C1FA 1F       sar     edx, 1F
9 z& o+ A, K6 J" f, G4 {0040C7E2  |.  2BC2          sub     eax, edx: T6 N' L* G. I4 u
0040C7E4  |.  D1F8          sar     eax, 1
+ E+ q+ T9 W, h: H: W* {0040C7E6  |.  C78424 040100>mov     dword ptr [esp+104], 1  p& b' P. c' H# G  l9 H
0040C7F1  |.  89C7          mov     edi, eax
) ^" H, [# d. f0040C7F3  |.^ E9 61FEFFFF   jmp     0040C659
$ q1 o5 B1 {# D; ~% K# q; s0040C7F8  |>  31D2          xor     edx, edx
/ O+ {* q/ M8 P! b- |0040C7FA  |.  BF 46000000   mov     edi, 46  y- o; T- {$ v& S/ \4 Q
0040C7FF  |.  899424 040100>mov     dword ptr [esp+104], edx2 Y4 N- K- K: O
0040C806  |.^ E9 4EFEFFFF   jmp     0040C6598 W( S/ G9 ~4 O# a, ^7 z1 Y3 C
0040C80B  |>  80F9 7C       cmp     cl, 7C. }- e# ]' p9 D1 G5 T: N
0040C80E  |.^ 0F85 E9FEFFFF jnz     0040C6FD/ e" G$ O# |5 c# u5 t3 V
0040C814  |.  C602 20       mov     byte ptr [edx], 204 Q. h' F2 y3 J$ a
0040C817  \.^ E9 E1FEFFFF   jmp     0040C6FD# j2 f! W) G/ y+ x) p
) f1 c* p& c5 p% J5 V$ m" a$ R8 e
在scratches.sc和scream.sc里面有lua的脚本,保存有字体文件名。4 x3 x" ]0 u* r! J3 q, Z3 \  E6 {6 x2 \
估计要汉化就要在上面的代码段下功夫了,以后继续研究。! y0 [# A5 r" Y/ m6 Y- j, {- T
8 K7 D5 R! X4 }( t/ q$ Q- B# g: v
找到2个俄文的补丁,也许对以后研究有用。) L8 J( v6 j, X; R- b. O
http://www.megaupload.com/?d=EZH6X672
3 i, [: ]& @& C5 Ehttp://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日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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