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

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

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

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

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

惊恐鬼屋Scratches初步汉化分析

看了一下惊恐鬼屋Scratches这个游戏。8 ~' M! q, q$ i; f* ]
包文件有2个,scratches.res和scream.res,
2 P8 k- d7 _& n! L6 Z; `包文件的格式如下,可以用Game Extractor来解开。
5 W# C+ Q# i& Dhttp://wiki.xentax.com/index.php/Scratches_RES
6 _5 }" }( w3 u0 }2 Q9 S从scratches.res里面解出一个font-michael.tga文件,就是在游戏利用的字体。
5 T3 k5 p& |9 B6 R) L# Rscream.res里面也有一个字体文件,但是游戏好像没有用到。
' |& K, J# \( w) K  q: h6 H. t* o) Y
% ]. K. Y9 e6 |) m# \. g+ k2 v用OD调试后,发现这是一个使用opengl API的游戏。: m7 {! W% D7 I: @
在某句字幕上下了内存断点,断下来之后找到了和显示有关的代码段。
0 c  E3 H9 P1 Z0 g& j, o
! K1 ]" C7 r. B+ c( ]0040C5D0  /$  53            push    ebx, M. T9 S& }( g: K& u; J  H
0040C5D1  |.  51            push    ecx
2 H& z$ q2 a+ `# n( O# ~) d: T0040C5D2  |.  52            push    edx& b9 x! k5 q& d$ r
0040C5D3  |.  56            push    esi- V3 ~/ h, L& G6 D6 O& d
0040C5D4  |.  57            push    edi
3 D0 x$ H3 [1 p& c. b% T; v0040C5D5  |.  55            push    ebp' E" n, L% M& A+ I
0040C5D6  |.  81EC 10010000 sub     esp, 1101 q- z; }$ U& A% z: M
0040C5DC  |.  89C6          mov     esi, eax
6 j! ~$ r& o4 ^# `0040C5DE  |.  89C7          mov     edi, eax
8 w1 O. s% e0 \" I0040C5E0  |.  29C9          sub     ecx, ecx
# T, [& T0 b3 \( Q0040C5E2  |.  49            dec     ecx
4 Y# u' F( L; r# [& ?: T0040C5E3  |.  31C0          xor     eax, eax* A: w$ I8 u7 z( k
0040C5E5  |.  F2:AE         repne   scas byte ptr es:[edi]) N2 p5 j5 ]0 c0 N2 n5 b+ e* _3 d/ c
0040C5E7  |.  F7D1          not     ecx8 J# m) X1 x( D6 k" P
0040C5E9  |.  49            dec     ecx
& G/ P; r# z# c: [# K# U0040C5EA  |.  31DB          xor     ebx, ebx
4 w! p; \: p$ E5 c7 `0040C5EC  |.  31ED          xor     ebp, ebp
/ E/ w8 L+ o7 W$ X0040C5EE  |.  81F9 00010000 cmp     ecx, 100
. r4 G4 f  D2 D+ X0040C5F4  |.  72 0D         jb      short 0040C603
+ P% z2 X/ _: h$ I0 D) N2 e0040C5F6  |.  81C4 10010000 add     esp, 110: L; @$ [1 D0 n. N% D7 ]. p
0040C5FC  |.  5D            pop     ebp
2 r; f/ ~& F  f" g0040C5FD  |.  5F            pop     edi3 p$ U8 H& L: Z1 N! M
0040C5FE  |.  5E            pop     esi1 A0 |! T. {& j* M1 |+ o! V
0040C5FF  |.  5A            pop     edx( {3 x3 B' k% i3 O4 e
0040C600  |.  59            pop     ecx1 I+ k. ~1 d1 T
0040C601  |.  5B            pop     ebx1 f1 w, e( c: q5 h+ Q/ c9 ~. _
0040C602  |.  C3            retn- V  C8 T3 ?! Y- y# W! a7 H' G( A- }
0040C603  |>  89E7          mov     edi, esp
" z9 J: P. N1 _6 t0040C605  |.  57            push    edi! h/ v* ]: T' y( F% ?2 g
0040C606  |>  8A06          /mov     al, byte ptr [esi]
; y" [# s( ?& u: A' T0 O0 C0040C608  |.  8807          |mov     byte ptr [edi], al
0 x) K3 D+ p, k9 p8 P- U; F0040C60A  |.  3C 00         |cmp     al, 0
( P) l9 r+ ?% e0 }8 c0040C60C  |.  74 10         |je      short 0040C61E
" x6 M/ L3 x; S" k2 m, ^; z0040C60E  |.  8A46 01       |mov     al, byte ptr [esi+1]
" \4 [; U; A0 i5 C0040C611  |.  83C6 02       |add     esi, 21 c! }! a+ z- I! C7 @6 E
0040C614  |.  8847 01       |mov     byte ptr [edi+1], al& L, g: ?: [+ P3 j, `  r
0040C617  |.  83C7 02       |add     edi, 2
# n0 `: N: d& A3 p( s0040C61A  |.  3C 00         |cmp     al, 03 C! a3 n6 O7 d% d- J
0040C61C  |.^ 75 E8         \jnz     short 0040C606* Y1 J+ U& k! e7 H: [  C6 Q/ N
0040C61E  |>  5F            pop     edi
) S; s& }) W1 z9 @/ Q  [$ O0040C61F  |.  8A1424        mov     dl, byte ptr [esp]
  V- |. c1 B& a& A9 _: J0040C622  |.  89E0          mov     eax, esp
! p2 a4 K" X8 x# a; g# z0040C624  |.  84D2          test    dl, dl
# C' j! |& n7 K# {" r9 P0040C626  |.  74 09         je      short 0040C631( |- b- v0 t: \
0040C628  |>  8A70 01       /mov     dh, byte ptr [eax+1]
& q, n6 h8 Y" Y: f! L( B0040C62B  |.  40            |inc     eax, C1 N4 m- [: U$ x; [
0040C62C  |.  45            |inc     ebp
- R% P" K& N$ U1 F7 F1 X0040C62D  |.  84F6          |test    dh, dh
) a0 v9 A& _  p4 j4 b8 B; y0040C62F  |.^ 75 F7         \jnz     short 0040C6288 r3 [5 t. ~$ [4 Z, ?+ ]) Y0 v
0040C631  |>  81FD D2000000 cmp     ebp, 0D2: a6 d7 R! J. x5 C) ?5 q% v) `
0040C637  |.  0F8E 61010000 jle     0040C79E9 E6 @8 S' f4 R0 v* Y: U5 a
0040C63D  |.  89EA          mov     edx, ebp
+ t/ ?' _0 {4 ~5 R8 i7 w0040C63F  |.  89E8          mov     eax, ebp/ S5 H0 @6 @6 h- z
0040C641  |.  C1FA 1F       sar     edx, 1F
0 x: e  Q, q% ~9 p& t& y& ]0040C644  |.  C1E2 02       shl     edx, 27 ^- H4 I& i( E! J# Y& X& G
0040C647  |.  1BC2          sbb     eax, edx
+ _, M9 E) Q1 E. K0040C649  |.  C1F8 02       sar     eax, 21 @) k: m/ S$ I5 [+ C
0040C64C  |.  89C7          mov     edi, eax
' m0 ?1 U3 v6 c& }8 u0040C64E  |.  C78424 040100>mov     dword ptr [esp+104], 3
7 l( y; \$ l* P3 q. ]0040C659  |>  89E0          mov     eax, esp
$ u* n  |  z8 c' t* k0040C65B  |.  31D2          xor     edx, edx3 e8 u9 f+ y2 s; P! w6 f6 O" C2 l
0040C65D  |.  8A0C24        mov     cl, byte ptr [esp]
% X6 \( D2 u4 G2 P5 G6 H0040C660  |.  8915 8477EF02 mov     dword ptr [2EF7784], edx
6 I: p$ W$ L/ v+ P0040C666  |.  8915 8C77EF02 mov     dword ptr [2EF778C], edx% r, G7 }! W; |9 w3 q5 z. E
0040C66C  |.  899424 080100>mov     dword ptr [esp+108], edx% K2 K% t: U& Y+ f! \6 V1 U( t2 A
0040C673  |.  89E2          mov     edx, esp
7 [4 Z. f0 U' w; \; u0040C675  |.  84C9          test    cl, cl
& {1 Z6 ~- E$ c$ {/ I; i" S4 n" H0040C677  |.  0F84 89000000 je      0040C706. Y) A: l( E( [
0040C67D  |.  8B8C24 040100>mov     ecx, dword ptr [esp+104]- z" A2 u& @" r& K
0040C684  |.  4F            dec     edi, t/ L) J8 q2 q% t! ?
0040C685  |.  C1E1 02       shl     ecx, 2( V4 `4 [. A: U2 _! k! }
0040C688  |.  89BC24 000100>mov     dword ptr [esp+100], edi
0 ^# L$ t! ^; L: _& f0040C68F  |.  898C24 0C0100>mov     dword ptr [esp+10C], ecx$ s( O; O: p0 Q0 T, K) ?- m
0040C696  |>  8A0A          mov     cl, byte ptr [edx]
! E8 O" L) s7 f0040C698  |.  80F9 20       cmp     cl, 20
1 x. m7 w$ s! i- y$ @! Z" j0040C69B  |.  0F85 6A010000 jnz     0040C80B7 C; g2 E8 p3 K0 a2 U
0040C6A1  |.  3B9C24 000100>cmp     ebx, dword ptr [esp+100]6 X6 l: [9 y5 p0 j
0040C6A8  |.  7C 53         jl      short 0040C6FD
! A0 S' Y/ J  o: g" m. F0040C6AA  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]
* Z* J7 ~/ \, t0 R0040C6B1  |.  C602 00       mov     byte ptr [edx], 0
# g& A& x8 M# z8 B0040C6B4  |.  89C6          mov     esi, eax, F" a6 ]8 k" K; F
0040C6B6  |.  8BBF 7477EF02 mov     edi, dword ptr [edi+2EF7774]/ I/ m+ b% v! `& z
0040C6BC  |.  31DB          xor     ebx, ebx
- k$ h1 X; g" s0040C6BE  |.  57            push    edi
! h8 Y& `+ P( C0 K' s; S% J0040C6BF  |>  8A06          /mov     al, byte ptr [esi]
% V" d& N" w9 O1 h) _& I: F  F0040C6C1  |.  8807          |mov     byte ptr [edi], al: v; {; r2 p7 X- \# O- ^
0040C6C3  |.  3C 00         |cmp     al, 0
( [/ b' o, c% Q4 ~0040C6C5  |.  74 10         |je      short 0040C6D77 G8 p* r! e$ Q
0040C6C7  |.  8A46 01       |mov     al, byte ptr [esi+1]! e2 d" F/ _" F  q# H4 `; H
0040C6CA  |.  83C6 02       |add     esi, 2! ~8 c# |8 {$ s( y3 t; _2 L6 M2 v! A
0040C6CD  |.  8847 01       |mov     byte ptr [edi+1], al
$ z7 l* b! H! Y9 k, Q0040C6D0  |.  83C7 02       |add     edi, 2
# E0 i# }. O0 V) S6 v9 o. ^6 m) k$ F0040C6D3  |.  3C 00         |cmp     al, 02 `# a3 `5 m+ Q) k6 o' O4 M
0040C6D5  |.^ 75 E8         \jnz     short 0040C6BF
/ [; S! a0 R! V0040C6D7  |>  5F            pop     edi
  w6 C4 K5 {0 \0040C6D8  |.  8D42 01       lea     eax, dword ptr [edx+1]
: {0 e+ i- [$ b* k9 s1 ~1 z0040C6DB  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]
( s0 {: y% ^0 b* c5 T0040C6E2  |.  8B9424 080100>mov     edx, dword ptr [esp+108]
# X8 B( V) k/ K* ]4 Q0040C6E9  |.  83EF 04       sub     edi, 4
6 g- ?: d) p4 U" `! l, {0040C6EC  |.  42            inc     edx
( J- {4 {( @" l+ x* W7 y0040C6ED  |.  89BC24 0C0100>mov     dword ptr [esp+10C], edi3 V% D: T; p8 h( ?5 K! I/ u
0040C6F4  |.  899424 080100>mov     dword ptr [esp+108], edx6 y1 u2 z! C5 c
0040C6FB  |.  89C2          mov     edx, eax
& \4 K7 c* I$ N0040C6FD  |>  43            inc     ebx
1 V( P- t7 T( M- Y( H5 \8 @+ p0040C6FE  |.  8A6A 01       mov     ch, byte ptr [edx+1]
! v; Y& }) k, ^0040C701  |.  42            inc     edx. H; ]2 |" w* u, ~
0040C702  |.  84ED          test    ch, ch" p- R* a: l) i4 ?# q9 E
0040C704  |.^ 75 90         jnz     short 0040C6965 a0 B/ V# p0 a6 s: L
0040C706  |>  83FD 10       cmp     ebp, 10
& |. }, l; E4 N2 z9 ^4 p; q; U/ A0040C709  |.  7F 05         jg      short 0040C710! t8 F+ M/ A! P( F/ D
0040C70B  |.  BD 20000000   mov     ebp, 20! B7 N5 e# c) q: n* L3 q
0040C710  |>  8B9424 040100>mov     edx, dword ptr [esp+104]
8 ^, G. Q9 c7 L7 w* |9 m0040C717  |.  2B9424 080100>sub     edx, dword ptr [esp+108]' ^. o4 m- \/ `0 B, Q/ {0 c* W' _
0040C71E  |.  85D2          test    edx, edx( z, j8 [7 e) B
0040C720  |.  7C 23         jl      short 0040C745/ u2 _6 t+ P5 V1 @! Z* N
0040C722  |.  89C6          mov     esi, eax
* v) d4 p+ R. F/ w- S0040C724  |.  8B3C95 7477EF>mov     edi, dword ptr [edx*4+2EF7774]0 E, ?6 G0 ]. k- _8 t/ F4 l9 @, j0 g
0040C72B  |.  57            push    edi
% b6 c( ~+ K8 M0040C72C  |>  8A06          /mov     al, byte ptr [esi]
1 w! j" u* M$ e& A5 G5 X  x4 K0040C72E  |.  8807          |mov     byte ptr [edi], al- Q5 W) S# l5 f8 j& p$ d* y# }
0040C730  |.  3C 00         |cmp     al, 07 @0 K  A: g. q- C6 ?+ v8 [9 t# a
0040C732  |.  74 10         |je      short 0040C744) j* e6 u- T: t; W/ d3 E
0040C734  |.  8A46 01       |mov     al, byte ptr [esi+1]* @* E* j! o7 k: A
0040C737  |.  83C6 02       |add     esi, 2
9 K5 m- d$ [8 I. c0040C73A  |.  8847 01       |mov     byte ptr [edi+1], al
5 C0 ~. z/ J* V7 M4 |0040C73D  |.  83C7 02       |add     edi, 2
  {" p* d# K5 f4 r0040C740  |.  3C 00         |cmp     al, 0
/ U" W4 r) f2 h$ r0040C742  |.^ 75 E8         \jnz     short 0040C72C
, L2 B* r9 S0 Y& @! l0 Q3 ~/ X* y1 q0040C744  |>  5F            pop     edi
: _1 b+ C) d: f0040C745  |>  E8 E6500100   call    00421830
, d) q, _( q1 d/ L5 T. `& Q" j4 v0040C74A  |.  A3 8877EF02   mov     dword ptr [2EF7788], eax
) J( H+ O/ d! }+ @$ \" W0040C74F  |.  8B8424 040100>mov     eax, dword ptr [esp+104]- _" O( I6 ^) L( y- Q& y: E/ t3 L' L
0040C756  |.  40            inc     eax' Y. K6 l  `6 P1 \3 u
0040C757  |.  A3 8477EF02   mov     dword ptr [2EF7784], eax( w. c+ S8 S: i9 U) |# f- _
0040C75C  |.  C705 8C77EF02>mov     dword ptr [2EF778C], 1) S3 e9 `. I" a" Y; x7 O
0040C766  |.  B8 64000000   mov     eax, 64
: C$ d+ s+ R. o8 `% P0 ~3 T0040C76B  |.  89C2          mov     edx, eax
( s7 b3 h. q4 F; ?# M/ J# d' r7 V% X0040C76D  |.  8B0D E880EF02 mov     ecx, dword ptr [2EF80E8]
0 V9 n- ^8 a, ^, w/ b3 \# Z0040C773  |.  C1FA 1F       sar     edx, 1F
4 V: w' G7 C* i' i8 V, U0040C776  |.  F7F9          idiv    ecx
0 h2 I  M) N+ W) I( u1 y. R9 t0040C778  |.  89C3          mov     ebx, eax0 _+ Y6 O' f: A8 E/ Y2 n, f1 M
0040C77A  |.  89EA          mov     edx, ebp5 t7 T. U/ d. _& ]5 y7 X
0040C77C  |.  89E8          mov     eax, ebp
& x$ E1 [( {; E6 t8 N0040C77E  |.  C1FA 1F       sar     edx, 1F
# O9 w9 n+ t6 J0040C781  |.  C1E2 04       shl     edx, 44 z6 b8 _; h. h3 G( y/ B/ [; d$ D
0040C784  |.  1BC2          sbb     eax, edx
% C! M* F5 V$ U0040C786  |.  C1F8 04       sar     eax, 4' g$ C& H" m6 r7 r; X6 `! o
0040C789  |.  01C3          add     ebx, eax$ c/ s: H8 w+ _0 z
0040C78B  |.  891D 9077EF02 mov     dword ptr [2EF7790], ebx
% f) I( U0 j4 i& F$ B2 k0040C791  |.  81C4 10010000 add     esp, 110, C) s0 J; U# P0 A
0040C797  |.  5D            pop     ebp7 ^* S. b$ h- r2 c" m' Z
0040C798  |.  5F            pop     edi- ]3 J3 f$ \  |: J! _8 M
0040C799  |.  5E            pop     esi4 A) a  x1 Y5 v# _/ d9 y
0040C79A  |.  5A            pop     edx2 a8 U' r+ ]8 X6 Y
0040C79B  |.  59            pop     ecx  T5 ^, f8 l5 R) F! W( L
0040C79C  |.  5B            pop     ebx
6 J9 y% P% E6 s4 f  I% a+ y0040C79D  |.  C3            retn
% H' t1 B. z. A$ J4 o5 c8 u0040C79E  |>  81FD 8C000000 cmp     ebp, 8C: G, V7 `" O" j" f' t. |; {
0040C7A4  |.  7C 28         jl      short 0040C7CE
6 v3 i0 t% h5 m" [% d+ L0040C7A6  |.  81FD D2000000 cmp     ebp, 0D2" N7 K, n/ S" m' w  Y4 F& }. w
0040C7AC  |.  7F 20         jg      short 0040C7CE7 o" b$ V6 ?8 s8 |
0040C7AE  |.  B9 03000000   mov     ecx, 31 d, E9 F2 J3 ?9 f* Q& B! b9 S
0040C7B3  |.  89EA          mov     edx, ebp& }* T% |  L/ d4 t
0040C7B5  |.  89E8          mov     eax, ebp
7 \* x- ?; b$ ]2 c' t0040C7B7  |.  C1FA 1F       sar     edx, 1F
* e6 A3 C2 _4 C5 d% N0040C7BA  |.  F7F9          idiv    ecx. s* j9 @) O/ H: K  k
0040C7BC  |.  C78424 040100>mov     dword ptr [esp+104], 29 x. n9 K8 p) @, w- j
0040C7C7  |.  89C7          mov     edi, eax
7 S" Q6 u# k3 e- ~. v+ b6 l! @( {# M0040C7C9  |.^ E9 8BFEFFFF   jmp     0040C659
8 K1 t8 T2 {. f* e" H0040C7CE  |>  83FD 46       cmp     ebp, 46$ D$ A" G) d4 K9 q- x6 l7 e1 K
0040C7D1  |.  7C 25         jl      short 0040C7F87 m& B8 P, Z, m7 U1 k4 l8 q. h, O) S
0040C7D3  |.  81FD 8C000000 cmp     ebp, 8C
  H& Y. n" P5 ]' [3 m0040C7D9  |.  7F 1D         jg      short 0040C7F87 S% x6 M3 p4 \% p4 m, a0 c9 g( G+ R2 c
0040C7DB  |.  89EA          mov     edx, ebp
5 K6 o* e* w1 U+ d% I& i7 J0040C7DD  |.  89E8          mov     eax, ebp& v7 W; a+ p- R
0040C7DF  |.  C1FA 1F       sar     edx, 1F7 w. R5 P$ ^% @4 \
0040C7E2  |.  2BC2          sub     eax, edx
/ D# n, k- N& v0040C7E4  |.  D1F8          sar     eax, 1
2 i& b/ r+ a2 e/ I4 F1 t" x0040C7E6  |.  C78424 040100>mov     dword ptr [esp+104], 1
1 {9 I/ ]" b0 Z; n% Y9 u* W0040C7F1  |.  89C7          mov     edi, eax
: D% ?8 d8 g& t6 Z) y9 F. v* n" p0040C7F3  |.^ E9 61FEFFFF   jmp     0040C659
3 \0 e7 t8 j! X* S0040C7F8  |>  31D2          xor     edx, edx
( y& H; d+ v. c9 u" l6 _0040C7FA  |.  BF 46000000   mov     edi, 46
% W9 t9 w, t' G9 [1 W0040C7FF  |.  899424 040100>mov     dword ptr [esp+104], edx
4 ]: F, s- ^( l( z$ J* G) d- z0040C806  |.^ E9 4EFEFFFF   jmp     0040C659- n2 |, d. [: T9 k: i& B/ a9 d
0040C80B  |>  80F9 7C       cmp     cl, 7C. V$ I' V4 o# B- c3 A
0040C80E  |.^ 0F85 E9FEFFFF jnz     0040C6FD
& P. r, ?, ~: I# x4 w0040C814  |.  C602 20       mov     byte ptr [edx], 206 I/ P% l& I) F
0040C817  \.^ E9 E1FEFFFF   jmp     0040C6FD
9 L+ ?. x6 t9 `  f! W
0 b; w' L6 r, w: o: I4 a: u在scratches.sc和scream.sc里面有lua的脚本,保存有字体文件名。# B* B2 h) J# ~; g
估计要汉化就要在上面的代码段下功夫了,以后继续研究。
( y6 \! g. ~: t# s1 W0 [
; z' _# {# Q  f0 r. y$ d找到2个俄文的补丁,也许对以后研究有用。; q+ [+ \$ {3 L; {+ M) v" B
http://www.megaupload.com/?d=EZH6X6724 B9 Z6 J& \5 r' ?& y
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日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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