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

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

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

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

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

惊恐鬼屋Scratches初步汉化分析

看了一下惊恐鬼屋Scratches这个游戏。2 o1 X& Z% A8 B
包文件有2个,scratches.res和scream.res,
1 w5 }/ D6 E! {, q% E: [! \& \包文件的格式如下,可以用Game Extractor来解开。
0 I" u0 _8 N# yhttp://wiki.xentax.com/index.php/Scratches_RES
% I+ M' J3 N+ x2 Q9 F  x2 ~" y0 K- P( [8 A从scratches.res里面解出一个font-michael.tga文件,就是在游戏利用的字体。; O9 m$ {7 A# D
scream.res里面也有一个字体文件,但是游戏好像没有用到。% u+ H6 K5 N# b( Q" C

2 V) }" `6 y) H8 e用OD调试后,发现这是一个使用opengl API的游戏。  }: D1 L6 f/ n/ d/ d5 }
在某句字幕上下了内存断点,断下来之后找到了和显示有关的代码段。  d& G) L, @& b8 E. ]; A& u

- o2 d- U; @, y! ^, ^. n' m9 ~7 @0040C5D0  /$  53            push    ebx
9 E/ _; d. v; D9 \0040C5D1  |.  51            push    ecx
1 N) @- ?* ?# z+ @8 V7 A, J& N( I) V0040C5D2  |.  52            push    edx; H: g- V( j  t+ ^
0040C5D3  |.  56            push    esi
: S  p3 {, l/ b3 M7 S/ [+ s9 B0040C5D4  |.  57            push    edi
5 J9 G: p1 _$ c0 ^1 d0 g0 @. W0040C5D5  |.  55            push    ebp" f3 X3 a& K1 a# ?( [: _# @4 r
0040C5D6  |.  81EC 10010000 sub     esp, 1101 a: o3 m6 W/ d3 {8 j& [1 W$ D# F
0040C5DC  |.  89C6          mov     esi, eax% O9 f3 T  P: G  }7 f+ e# D% T' @
0040C5DE  |.  89C7          mov     edi, eax. y& t  d0 a; Y) ^1 n
0040C5E0  |.  29C9          sub     ecx, ecx' l/ d9 G7 S) E& V* p
0040C5E2  |.  49            dec     ecx$ V: d, x& X8 V& H' o" E
0040C5E3  |.  31C0          xor     eax, eax
  D( J5 b4 B& v6 m! w# I0040C5E5  |.  F2:AE         repne   scas byte ptr es:[edi]
( N0 w2 M: g) o9 w9 H0040C5E7  |.  F7D1          not     ecx# f: R9 e% P  P; J
0040C5E9  |.  49            dec     ecx7 w" ?$ B, N2 P3 ^
0040C5EA  |.  31DB          xor     ebx, ebx, E" V! V) S4 P1 c6 ~5 L
0040C5EC  |.  31ED          xor     ebp, ebp
# F9 q' ~+ u$ @+ ~0040C5EE  |.  81F9 00010000 cmp     ecx, 1000 f" A4 S  m+ x2 A" ?9 p5 W
0040C5F4  |.  72 0D         jb      short 0040C603
8 t/ X' t3 ^' @6 l0040C5F6  |.  81C4 10010000 add     esp, 1109 \4 w' N$ f/ V! a/ W0 [
0040C5FC  |.  5D            pop     ebp- Q  |! f* N8 {+ D( Q1 C
0040C5FD  |.  5F            pop     edi
8 h( d- b4 U# e0 Y$ D+ M0040C5FE  |.  5E            pop     esi
) J8 x4 M; j) ~. D8 o' n( Y0040C5FF  |.  5A            pop     edx
" q+ @) m0 R! A% a0040C600  |.  59            pop     ecx# @0 M* Z5 O$ G! S/ Z
0040C601  |.  5B            pop     ebx
; I. q6 N# C# y+ `0040C602  |.  C3            retn( A6 Y" X) d- Y' G! e0 R3 r+ t
0040C603  |>  89E7          mov     edi, esp5 z# X- L4 ]$ t- u
0040C605  |.  57            push    edi
9 W3 Y$ m* z; E; P0040C606  |>  8A06          /mov     al, byte ptr [esi]% D% i  C! T2 F, P% v) B1 b- _$ [
0040C608  |.  8807          |mov     byte ptr [edi], al6 q2 k6 [& @$ G
0040C60A  |.  3C 00         |cmp     al, 0
  B0 _( h8 Z0 C: |: x2 I- Q9 C% g0040C60C  |.  74 10         |je      short 0040C61E5 s& e( j( d) s6 i  T. o7 `
0040C60E  |.  8A46 01       |mov     al, byte ptr [esi+1]
. _9 s9 H1 D3 Q) [" U  d- u2 U2 c5 V0040C611  |.  83C6 02       |add     esi, 2
- @8 k7 H9 ?8 c# d& ^0040C614  |.  8847 01       |mov     byte ptr [edi+1], al
9 t) s( K- k' i0040C617  |.  83C7 02       |add     edi, 20 Q" z4 O3 j# |7 I
0040C61A  |.  3C 00         |cmp     al, 0
  Y; R( X2 K0 s! m7 S+ Q" h; h0040C61C  |.^ 75 E8         \jnz     short 0040C606
. j0 |" P1 `7 _. `$ L3 _4 O0040C61E  |>  5F            pop     edi4 Z2 p8 d/ Z" w4 y1 @" r1 H) Q; ]
0040C61F  |.  8A1424        mov     dl, byte ptr [esp]
5 C, W$ U" D) Q$ n0040C622  |.  89E0          mov     eax, esp
, p4 {4 E2 g6 y/ G5 n9 S0040C624  |.  84D2          test    dl, dl! r; I1 d$ X% `" e! W) r
0040C626  |.  74 09         je      short 0040C631
' H4 _" h# V+ P' u' u0 T0040C628  |>  8A70 01       /mov     dh, byte ptr [eax+1]
0 r% o: w6 f* q! J3 {; w9 C0 G. {: C0040C62B  |.  40            |inc     eax& r! ^$ J4 G# e2 {2 A# }
0040C62C  |.  45            |inc     ebp( |# ]+ L2 G% G. w
0040C62D  |.  84F6          |test    dh, dh* ?8 Z) a3 q7 Y
0040C62F  |.^ 75 F7         \jnz     short 0040C628* ]$ u1 P. t5 r$ i$ N
0040C631  |>  81FD D2000000 cmp     ebp, 0D2% j0 b/ O9 I* E( k! W
0040C637  |.  0F8E 61010000 jle     0040C79E" O' V* n' X; g, G2 e
0040C63D  |.  89EA          mov     edx, ebp3 `* T2 U  S5 L
0040C63F  |.  89E8          mov     eax, ebp  {2 Q7 b* A$ R' B
0040C641  |.  C1FA 1F       sar     edx, 1F1 N5 u$ H! d# K) I
0040C644  |.  C1E2 02       shl     edx, 2
7 T" t" H+ p9 ~( ~4 l0040C647  |.  1BC2          sbb     eax, edx
9 b( G& f7 z: R, H5 Y( R0040C649  |.  C1F8 02       sar     eax, 2
' S! l5 t" l( i2 Q8 a/ P0 O0040C64C  |.  89C7          mov     edi, eax' N9 v( ~/ K5 a( H- F
0040C64E  |.  C78424 040100>mov     dword ptr [esp+104], 3
+ C. Y3 U* s& L6 T0 T, ]3 l0040C659  |>  89E0          mov     eax, esp) E4 e$ Y/ Y# e! g7 Q6 p5 q4 ?
0040C65B  |.  31D2          xor     edx, edx9 q5 _, ^2 E, s  S1 ~
0040C65D  |.  8A0C24        mov     cl, byte ptr [esp]
! {( u3 z" X+ e- w# y, ^: g( e0040C660  |.  8915 8477EF02 mov     dword ptr [2EF7784], edx7 ~4 H1 |  R% _( v. q1 V
0040C666  |.  8915 8C77EF02 mov     dword ptr [2EF778C], edx- ?5 _; @4 d- ~6 I$ ~! P
0040C66C  |.  899424 080100>mov     dword ptr [esp+108], edx
: e0 g: t2 f  K' Z$ }7 v& {' d0040C673  |.  89E2          mov     edx, esp  P/ M  G- \. [- a) R
0040C675  |.  84C9          test    cl, cl
+ o8 f( a' N) G9 v0040C677  |.  0F84 89000000 je      0040C706
- p# C; L# T& q" H0040C67D  |.  8B8C24 040100>mov     ecx, dword ptr [esp+104]% M3 P, H" ?1 h3 H
0040C684  |.  4F            dec     edi
& [* u4 B2 s2 I0 z, I! ^' m0 V0040C685  |.  C1E1 02       shl     ecx, 2
# n+ ^  O( a1 J. s4 B0040C688  |.  89BC24 000100>mov     dword ptr [esp+100], edi0 H; x& d, n7 k/ |
0040C68F  |.  898C24 0C0100>mov     dword ptr [esp+10C], ecx
6 g% P4 m' Z3 t+ b3 B1 e0040C696  |>  8A0A          mov     cl, byte ptr [edx]
. ^5 W4 c  o; r, Q0040C698  |.  80F9 20       cmp     cl, 20
( F# s0 c" j- |8 ?/ U0040C69B  |.  0F85 6A010000 jnz     0040C80B
0 d1 o4 H% z3 |. E0040C6A1  |.  3B9C24 000100>cmp     ebx, dword ptr [esp+100]
$ g8 U' n1 z: I2 ~4 u0040C6A8  |.  7C 53         jl      short 0040C6FD
8 j. o- F+ W5 J' B, m# C3 L0040C6AA  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]9 Y3 c% [5 d# q. l5 P0 ]0 o- }1 k! `7 t
0040C6B1  |.  C602 00       mov     byte ptr [edx], 0
6 t; }! q; k: Q" ^5 v0040C6B4  |.  89C6          mov     esi, eax& v. C- o  E6 C. q6 k& h/ A: Q
0040C6B6  |.  8BBF 7477EF02 mov     edi, dword ptr [edi+2EF7774]
0 t! E& {# c9 v4 z1 \7 n. `0040C6BC  |.  31DB          xor     ebx, ebx
) q$ W- \% A8 H, }* i$ ]& }0040C6BE  |.  57            push    edi2 R2 I; k% k8 h2 Z/ }
0040C6BF  |>  8A06          /mov     al, byte ptr [esi]+ ^7 Y. n- ~' ^' n* q5 n6 v5 m% t4 S
0040C6C1  |.  8807          |mov     byte ptr [edi], al
$ q- `  w% b6 {/ e+ ?; U0040C6C3  |.  3C 00         |cmp     al, 09 c3 W* h' J) _7 |& U' r3 o0 L
0040C6C5  |.  74 10         |je      short 0040C6D7
8 o, F8 ^4 O- l% L7 N0040C6C7  |.  8A46 01       |mov     al, byte ptr [esi+1]
0 n0 Z% O* o( Y6 A3 \: I0040C6CA  |.  83C6 02       |add     esi, 2
* F3 t) e5 w! `( n7 F! o0040C6CD  |.  8847 01       |mov     byte ptr [edi+1], al( e- {8 m, G. G1 o
0040C6D0  |.  83C7 02       |add     edi, 2
, y3 X' j% w; T/ _  }& F0040C6D3  |.  3C 00         |cmp     al, 07 B. p& ^  b0 K8 K+ N
0040C6D5  |.^ 75 E8         \jnz     short 0040C6BF1 b$ K5 P7 n$ [  N3 ]) i& h8 M0 ?6 M
0040C6D7  |>  5F            pop     edi
/ Q- w) i( j3 K5 e9 e$ W0040C6D8  |.  8D42 01       lea     eax, dword ptr [edx+1]
# t! o% U; L) g0040C6DB  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]2 W# B. n1 q1 A3 T$ j5 [
0040C6E2  |.  8B9424 080100>mov     edx, dword ptr [esp+108]% i8 q; V% h0 B+ P
0040C6E9  |.  83EF 04       sub     edi, 47 k- d  f/ k- {& p
0040C6EC  |.  42            inc     edx7 U0 {  J7 {9 Q- {9 k6 r
0040C6ED  |.  89BC24 0C0100>mov     dword ptr [esp+10C], edi
& x9 m0 @& }9 r+ X1 w' l( v0040C6F4  |.  899424 080100>mov     dword ptr [esp+108], edx+ Z  j9 S- s6 f8 N
0040C6FB  |.  89C2          mov     edx, eax
2 {1 \! ?2 \. d3 J( [+ ?6 t0 a0040C6FD  |>  43            inc     ebx
# T1 [$ F( [9 Z1 o0 P: ~* j$ U* d0040C6FE  |.  8A6A 01       mov     ch, byte ptr [edx+1]
  ?' Y7 a2 B3 h+ y, D0040C701  |.  42            inc     edx
( K; m* a5 f+ c, b0040C702  |.  84ED          test    ch, ch0 H+ e6 s9 R4 w2 ]# m5 M/ [% Y' f
0040C704  |.^ 75 90         jnz     short 0040C696
! n+ r. n* ^2 b! m  {, F0040C706  |>  83FD 10       cmp     ebp, 10- k' ]4 L. y& q0 t7 O- c
0040C709  |.  7F 05         jg      short 0040C710) }9 }1 v0 b1 L4 O4 w
0040C70B  |.  BD 20000000   mov     ebp, 20+ v* K( K7 ^% Y' y3 p$ s1 ?$ d. X  D
0040C710  |>  8B9424 040100>mov     edx, dword ptr [esp+104]! f' w: p7 `3 s7 R* k) o
0040C717  |.  2B9424 080100>sub     edx, dword ptr [esp+108]
; U5 y' O; i& P0040C71E  |.  85D2          test    edx, edx
! Y9 a9 ~" E5 V2 m; E2 e4 H7 E0040C720  |.  7C 23         jl      short 0040C745
3 f: O5 j9 ^4 a2 M" |0040C722  |.  89C6          mov     esi, eax
2 X' R) O! }: a( H0040C724  |.  8B3C95 7477EF>mov     edi, dword ptr [edx*4+2EF7774]
$ g. F4 m9 @" A0040C72B  |.  57            push    edi
% H. v  k1 c9 V6 @. |0040C72C  |>  8A06          /mov     al, byte ptr [esi]1 y7 V% F: X* n& v- ?( I
0040C72E  |.  8807          |mov     byte ptr [edi], al. E$ B2 Q$ o" s
0040C730  |.  3C 00         |cmp     al, 0
+ z. |6 ]8 d0 J- j0040C732  |.  74 10         |je      short 0040C7441 n: l" w4 c2 W5 N- g& Y  O
0040C734  |.  8A46 01       |mov     al, byte ptr [esi+1]
9 `/ n; {0 {0 Z4 T' d1 R5 t# J0040C737  |.  83C6 02       |add     esi, 2
% b8 k9 ?/ U- s* D" e# @0040C73A  |.  8847 01       |mov     byte ptr [edi+1], al
4 j& ~& ^4 [$ A+ ^( S+ j0040C73D  |.  83C7 02       |add     edi, 2# K6 C( S5 ]7 Y" H& K9 W8 B
0040C740  |.  3C 00         |cmp     al, 0% [# l6 Z+ G( i
0040C742  |.^ 75 E8         \jnz     short 0040C72C, f- d2 |2 d: C: I8 n" |
0040C744  |>  5F            pop     edi
6 }( {, S; j; s; T0040C745  |>  E8 E6500100   call    004218301 B/ {, V* g4 V# p' w+ W
0040C74A  |.  A3 8877EF02   mov     dword ptr [2EF7788], eax
" S6 E4 t0 H: T" V- S" [0040C74F  |.  8B8424 040100>mov     eax, dword ptr [esp+104]
/ b2 C- M6 R; Q. h0 [0040C756  |.  40            inc     eax
) h5 R& k2 L6 {$ h1 z! W0040C757  |.  A3 8477EF02   mov     dword ptr [2EF7784], eax
4 K0 I% _7 k  P. v0040C75C  |.  C705 8C77EF02>mov     dword ptr [2EF778C], 1
+ S2 Y2 E6 b) u6 [  y$ u+ ?( o; S0040C766  |.  B8 64000000   mov     eax, 64; R* i  Q2 T- s' d2 m( O
0040C76B  |.  89C2          mov     edx, eax1 t4 \; P+ U# E1 p; n, j" R" c
0040C76D  |.  8B0D E880EF02 mov     ecx, dword ptr [2EF80E8]
6 u% }: `' s' K0040C773  |.  C1FA 1F       sar     edx, 1F9 S' a. O7 j) y, ^; o9 {$ R+ `( g
0040C776  |.  F7F9          idiv    ecx
5 b* b" D$ [& S& z8 x+ ~4 M0040C778  |.  89C3          mov     ebx, eax
: t2 A. t& E; E/ A( c* X+ U$ T0 E0040C77A  |.  89EA          mov     edx, ebp
, S0 }9 l& S: D& g/ u: |0040C77C  |.  89E8          mov     eax, ebp+ G9 E9 f5 q& t! {0 A  T
0040C77E  |.  C1FA 1F       sar     edx, 1F' ~# U  J( S, P5 C: ~
0040C781  |.  C1E2 04       shl     edx, 4! T$ ^- C  n6 m+ k# I
0040C784  |.  1BC2          sbb     eax, edx
4 g4 `' n5 z- w/ _- q5 ?  ~! v1 d2 [0040C786  |.  C1F8 04       sar     eax, 4
! S" \0 _! k) l$ }9 B8 b  x+ j# v7 n! K0040C789  |.  01C3          add     ebx, eax
$ }9 O/ ~- l0 N5 A1 t: A0040C78B  |.  891D 9077EF02 mov     dword ptr [2EF7790], ebx
9 A) x4 \* n7 a; z* G! u) ~0040C791  |.  81C4 10010000 add     esp, 1107 p; c# v; f8 [- g6 x$ a
0040C797  |.  5D            pop     ebp
0 T) ~, S* [" t5 V: k) X5 m6 q0040C798  |.  5F            pop     edi" l) ^& [; e* j( u
0040C799  |.  5E            pop     esi
5 V. f0 m* D1 N% Y, R" g- R0040C79A  |.  5A            pop     edx, q* }6 @3 D% @; d: Z/ P
0040C79B  |.  59            pop     ecx$ Y; W$ F' g) A9 U# L5 E" A
0040C79C  |.  5B            pop     ebx; f0 A" |9 g: I$ H: E5 B" v
0040C79D  |.  C3            retn/ L! W0 z; t. R" \
0040C79E  |>  81FD 8C000000 cmp     ebp, 8C* i2 b$ w2 Z" }+ D0 F% @6 ?
0040C7A4  |.  7C 28         jl      short 0040C7CE
3 r4 ]* R4 L* b( }3 D9 G0040C7A6  |.  81FD D2000000 cmp     ebp, 0D2
7 ]- u5 v0 y) X+ v* j0040C7AC  |.  7F 20         jg      short 0040C7CE
$ M. ^+ Y! g4 {6 k6 b$ m1 U9 @0040C7AE  |.  B9 03000000   mov     ecx, 3
0 `9 S9 O4 |  B1 X0040C7B3  |.  89EA          mov     edx, ebp4 o0 h' a" U8 ^' |8 z
0040C7B5  |.  89E8          mov     eax, ebp. s8 [, o5 `+ E' M) Z$ l
0040C7B7  |.  C1FA 1F       sar     edx, 1F8 p  c* U7 L+ b, z! X' S  s8 H$ a
0040C7BA  |.  F7F9          idiv    ecx
& _; j2 |! d/ l! x+ ?0040C7BC  |.  C78424 040100>mov     dword ptr [esp+104], 2
# W# a+ y8 i9 l. a: [: }0040C7C7  |.  89C7          mov     edi, eax" u* S2 u" w5 t" \* u9 p
0040C7C9  |.^ E9 8BFEFFFF   jmp     0040C659
+ P& ?7 f8 u+ b' v3 F% q* H* ~% V0040C7CE  |>  83FD 46       cmp     ebp, 46" N* @7 v$ j8 s; D* ?2 y3 |
0040C7D1  |.  7C 25         jl      short 0040C7F8
. _3 [9 {; z8 L3 l, A  ?9 y: K6 P0040C7D3  |.  81FD 8C000000 cmp     ebp, 8C! v4 D" w) T% l/ o; f5 _% c5 Z+ R
0040C7D9  |.  7F 1D         jg      short 0040C7F8
+ p- I! s8 m  W0040C7DB  |.  89EA          mov     edx, ebp
1 z1 S" D& y4 i6 z+ P5 ^% a3 D0040C7DD  |.  89E8          mov     eax, ebp
5 E. G% C, F. e* n+ H6 k0040C7DF  |.  C1FA 1F       sar     edx, 1F
" @2 L9 l; M+ ?3 a' n! s- Q0040C7E2  |.  2BC2          sub     eax, edx
2 h3 G/ Z7 Z9 U9 n, L4 y  l0040C7E4  |.  D1F8          sar     eax, 1% S, T' Y% x8 X+ ?
0040C7E6  |.  C78424 040100>mov     dword ptr [esp+104], 1, H0 E. V3 N# [7 F" D) l% F
0040C7F1  |.  89C7          mov     edi, eax
2 V+ s9 j: e! a  p  ~0040C7F3  |.^ E9 61FEFFFF   jmp     0040C659
! K8 G9 ~0 _8 n5 H* u0040C7F8  |>  31D2          xor     edx, edx
* _* s) `0 Q4 O& s# A0040C7FA  |.  BF 46000000   mov     edi, 46) W) @/ `( F  s/ E
0040C7FF  |.  899424 040100>mov     dword ptr [esp+104], edx0 {' r$ y% {6 R
0040C806  |.^ E9 4EFEFFFF   jmp     0040C659
' E) b4 _/ W. k1 M( a0040C80B  |>  80F9 7C       cmp     cl, 7C0 ]# d1 G1 G) D* i* s
0040C80E  |.^ 0F85 E9FEFFFF jnz     0040C6FD
$ `$ ?- h2 p% |8 m+ }/ A0040C814  |.  C602 20       mov     byte ptr [edx], 20
/ u* n1 Y# `, d5 a' G6 q0040C817  \.^ E9 E1FEFFFF   jmp     0040C6FD
2 w# b8 ^) s9 ^; p  @. K& k) G
5 B& j: Y; i) p# k在scratches.sc和scream.sc里面有lua的脚本,保存有字体文件名。. b" {$ k0 M( H
估计要汉化就要在上面的代码段下功夫了,以后继续研究。# W, j; ~# J3 x) j' V/ o
5 M# T7 W( Q7 s: w
找到2个俄文的补丁,也许对以后研究有用。  a! L0 v' F# w- l8 g% w; g) ]
http://www.megaupload.com/?d=EZH6X672& x* C3 S( S& e$ u  ^7 t1 R
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日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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