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

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

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

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

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

惊恐鬼屋Scratches初步汉化分析

看了一下惊恐鬼屋Scratches这个游戏。8 ]* b* ~# ^" w5 N$ t$ p3 I/ [
包文件有2个,scratches.res和scream.res,
/ \) E; f, i& L, @$ n+ \包文件的格式如下,可以用Game Extractor来解开。
( B) R* `9 [" mhttp://wiki.xentax.com/index.php/Scratches_RES% @, }/ N6 g# b: W8 B2 f! J4 D9 Y
从scratches.res里面解出一个font-michael.tga文件,就是在游戏利用的字体。
( V* E! Q0 x! ]( yscream.res里面也有一个字体文件,但是游戏好像没有用到。9 O! F4 B. G. T* `2 s

* `% |' O  v+ }$ H( E% b' T用OD调试后,发现这是一个使用opengl API的游戏。7 {3 I( @' Q/ U( z
在某句字幕上下了内存断点,断下来之后找到了和显示有关的代码段。
0 m! U- X$ H! P" C
+ H! X! d2 K( q& ?: k0040C5D0  /$  53            push    ebx3 I1 \2 v; g8 z
0040C5D1  |.  51            push    ecx
2 t1 R3 g0 O0 |1 G0040C5D2  |.  52            push    edx
! a# v! t& H+ ~& F. s7 i3 Q0040C5D3  |.  56            push    esi1 n- z7 g! \* _6 b
0040C5D4  |.  57            push    edi
8 J, k1 ~% B+ c0040C5D5  |.  55            push    ebp3 o! V2 n' z* g; d" G* J2 Z
0040C5D6  |.  81EC 10010000 sub     esp, 110
, o. Q; p& v3 G5 R, t0040C5DC  |.  89C6          mov     esi, eax3 d) k- m5 n9 w
0040C5DE  |.  89C7          mov     edi, eax3 F- G2 M  T# Y4 F9 f
0040C5E0  |.  29C9          sub     ecx, ecx
: C, T& }5 ~# u9 d/ \& O0040C5E2  |.  49            dec     ecx
" q% S- S# W/ I: v, j9 G0040C5E3  |.  31C0          xor     eax, eax: M* @" V# u: M% E2 r- g: A8 L
0040C5E5  |.  F2:AE         repne   scas byte ptr es:[edi]' U+ S3 y2 k2 o  S
0040C5E7  |.  F7D1          not     ecx3 a2 o1 r* {6 f! p1 e6 c5 O+ S
0040C5E9  |.  49            dec     ecx, }- E( k- X. s" n" n7 B
0040C5EA  |.  31DB          xor     ebx, ebx! I( n; i2 {) y$ B
0040C5EC  |.  31ED          xor     ebp, ebp
2 `2 {; M, h  s% d8 e0040C5EE  |.  81F9 00010000 cmp     ecx, 100
3 v8 D  U/ g* G: x: f( G3 S* ^+ _0040C5F4  |.  72 0D         jb      short 0040C603
$ a, u  ?- o0 M0040C5F6  |.  81C4 10010000 add     esp, 110
: m. w) L( U$ p0040C5FC  |.  5D            pop     ebp: _& s5 _, |' k2 V! r7 ~. k
0040C5FD  |.  5F            pop     edi+ m, J$ {" {2 u- m- _
0040C5FE  |.  5E            pop     esi
4 p: }% f# T* z' N, u; _0040C5FF  |.  5A            pop     edx$ J" v6 \) u2 q! l( `
0040C600  |.  59            pop     ecx# \# H$ Z$ M; y' u, a) H
0040C601  |.  5B            pop     ebx
  j3 Y3 f) p  Q8 v& O3 I0040C602  |.  C3            retn
, _6 ^) o) A2 M& }/ e+ ?4 t" F% ^0040C603  |>  89E7          mov     edi, esp
$ V% b2 g( W2 F" R5 d4 A0040C605  |.  57            push    edi
9 |( @0 b* K/ P0040C606  |>  8A06          /mov     al, byte ptr [esi], P0 E$ t, J6 V' N
0040C608  |.  8807          |mov     byte ptr [edi], al, r0 @- F+ U! s8 t6 f! K
0040C60A  |.  3C 00         |cmp     al, 0
- n' @( w5 ^- R  s0040C60C  |.  74 10         |je      short 0040C61E
7 P! r8 a* f# e4 O; u: ^0040C60E  |.  8A46 01       |mov     al, byte ptr [esi+1]
. n8 y( r, d5 ^6 @5 ^0040C611  |.  83C6 02       |add     esi, 2
- D1 E, ^- `. `& w0 W  {0040C614  |.  8847 01       |mov     byte ptr [edi+1], al6 W; F- G2 p$ f0 v. K  T
0040C617  |.  83C7 02       |add     edi, 2
5 J( [! j+ {% Y9 o* O0040C61A  |.  3C 00         |cmp     al, 08 a3 F, q% S5 O
0040C61C  |.^ 75 E8         \jnz     short 0040C606
5 F9 U1 E0 G$ y0040C61E  |>  5F            pop     edi# S. g. D. K$ Q# u; F" O& Q- n0 T
0040C61F  |.  8A1424        mov     dl, byte ptr [esp]0 T( B4 G2 r6 F% n) y
0040C622  |.  89E0          mov     eax, esp1 h) k7 k) `6 j' j$ ~
0040C624  |.  84D2          test    dl, dl& J, K; ~8 X5 D
0040C626  |.  74 09         je      short 0040C631
- t+ V& r1 q! ~" N0040C628  |>  8A70 01       /mov     dh, byte ptr [eax+1]8 n/ X3 ?4 a1 W5 [5 {0 O
0040C62B  |.  40            |inc     eax( u/ g! _3 C! ~/ G- ?8 B+ C: P' d
0040C62C  |.  45            |inc     ebp5 X8 P% g0 X  [' u1 [' h% I
0040C62D  |.  84F6          |test    dh, dh/ [. L7 W! C! p+ u& p
0040C62F  |.^ 75 F7         \jnz     short 0040C628" t- j( f6 B- |+ Y6 R% p! ]
0040C631  |>  81FD D2000000 cmp     ebp, 0D2% {/ P# ^6 a- `! x5 Z
0040C637  |.  0F8E 61010000 jle     0040C79E
+ k; q! H+ c  T# I+ r0040C63D  |.  89EA          mov     edx, ebp
! b* o9 Y# G9 O' u& J3 H6 g0040C63F  |.  89E8          mov     eax, ebp
2 b: b2 e( W- T$ X% v0040C641  |.  C1FA 1F       sar     edx, 1F
/ [. g: N2 ^, l$ x% `6 s0040C644  |.  C1E2 02       shl     edx, 2
, ^& r8 v2 Y0 O6 N# _) F0040C647  |.  1BC2          sbb     eax, edx: Y7 R) U5 w6 r& J- Y
0040C649  |.  C1F8 02       sar     eax, 20 R, D! {9 D4 |% r+ @
0040C64C  |.  89C7          mov     edi, eax# @8 o6 v/ }  G* G! B! H/ }8 q2 U
0040C64E  |.  C78424 040100>mov     dword ptr [esp+104], 3# v: M4 P/ q/ _  u7 }
0040C659  |>  89E0          mov     eax, esp+ \: }! A8 o) o' G. E2 O! B4 T8 J
0040C65B  |.  31D2          xor     edx, edx
, v9 a9 i4 G! U' k; E# }# q0040C65D  |.  8A0C24        mov     cl, byte ptr [esp]
/ C! P1 `4 P6 b( u8 E0040C660  |.  8915 8477EF02 mov     dword ptr [2EF7784], edx, A8 K* p. N( `% O4 x' K
0040C666  |.  8915 8C77EF02 mov     dword ptr [2EF778C], edx: ?9 i( a6 t/ m; N- ^& R9 f3 g
0040C66C  |.  899424 080100>mov     dword ptr [esp+108], edx! j' G  X1 \$ T% {+ j5 I) T; \/ C
0040C673  |.  89E2          mov     edx, esp! i, B: o  {% j% s
0040C675  |.  84C9          test    cl, cl; k) O4 ]! x" D1 h  H6 U
0040C677  |.  0F84 89000000 je      0040C706
/ E. u- _7 r, z$ E0040C67D  |.  8B8C24 040100>mov     ecx, dword ptr [esp+104]1 L1 _2 T; i; Y! d' @% K
0040C684  |.  4F            dec     edi
* [$ A% @& H% E7 S, c0040C685  |.  C1E1 02       shl     ecx, 2
0 K* p. t0 m: h4 G! @1 d0040C688  |.  89BC24 000100>mov     dword ptr [esp+100], edi# I( e' J9 o) A4 E( A
0040C68F  |.  898C24 0C0100>mov     dword ptr [esp+10C], ecx
8 W6 T2 e# Z' r* j  i0040C696  |>  8A0A          mov     cl, byte ptr [edx]
5 r* T1 `7 ]. l( J! i0040C698  |.  80F9 20       cmp     cl, 20
- ?, L/ g! w& j* c0040C69B  |.  0F85 6A010000 jnz     0040C80B' }# E4 j$ k9 e. H
0040C6A1  |.  3B9C24 000100>cmp     ebx, dword ptr [esp+100]
! T. S! I- [2 b0040C6A8  |.  7C 53         jl      short 0040C6FD
1 \* ~0 k6 q- Q- X0040C6AA  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]
$ k3 j3 a: [  n" `/ O  ]: j! i0040C6B1  |.  C602 00       mov     byte ptr [edx], 0
, M  p7 o' R, l! p  c. }7 b0040C6B4  |.  89C6          mov     esi, eax$ f6 j( w$ X2 O6 Z0 k  e
0040C6B6  |.  8BBF 7477EF02 mov     edi, dword ptr [edi+2EF7774]
) t9 M  ^# |6 {# P5 p0040C6BC  |.  31DB          xor     ebx, ebx
) x1 a, q: _8 G+ I( N9 m/ z5 ~! K0040C6BE  |.  57            push    edi& _9 i8 Q0 U0 k
0040C6BF  |>  8A06          /mov     al, byte ptr [esi]9 Z; b+ t4 q, ~" {
0040C6C1  |.  8807          |mov     byte ptr [edi], al
. O, Z" w% p2 \4 C  I, K+ b8 o/ ~  E0040C6C3  |.  3C 00         |cmp     al, 01 f4 J0 K) X5 t& |9 e  e2 n
0040C6C5  |.  74 10         |je      short 0040C6D7' I% D) ^$ e7 x' A5 L# t
0040C6C7  |.  8A46 01       |mov     al, byte ptr [esi+1]5 f  I. V, h- _  t0 l
0040C6CA  |.  83C6 02       |add     esi, 24 D' q& t$ b6 b0 O4 w, m* p
0040C6CD  |.  8847 01       |mov     byte ptr [edi+1], al0 X$ i3 M. E  T2 ^7 p- U1 C
0040C6D0  |.  83C7 02       |add     edi, 2# W; T, v% a' X: \1 Y) S( H
0040C6D3  |.  3C 00         |cmp     al, 04 n3 h9 w( B: o9 T4 _1 n. I: m2 p
0040C6D5  |.^ 75 E8         \jnz     short 0040C6BF
( u. k5 @6 {5 g; E/ H5 p( m0040C6D7  |>  5F            pop     edi
5 X) P' P+ `6 M  M0 N, P0040C6D8  |.  8D42 01       lea     eax, dword ptr [edx+1]
$ J, e8 ~$ {# @; y0040C6DB  |.  8BBC24 0C0100>mov     edi, dword ptr [esp+10C]$ [7 c$ Z& f+ V- T+ D
0040C6E2  |.  8B9424 080100>mov     edx, dword ptr [esp+108]
- t, s/ _  s, G7 s$ |9 k! `: l0040C6E9  |.  83EF 04       sub     edi, 46 U) v2 a+ Q' Y6 E6 g+ o2 f0 D9 U
0040C6EC  |.  42            inc     edx9 v$ H/ @' i: {4 W+ f
0040C6ED  |.  89BC24 0C0100>mov     dword ptr [esp+10C], edi
$ W* N( @  ]' j- r$ Z0040C6F4  |.  899424 080100>mov     dword ptr [esp+108], edx
, V  }) h% W$ T* k# c+ D0040C6FB  |.  89C2          mov     edx, eax
) V1 D5 g, X; [7 t  t! ]- P  c3 A0040C6FD  |>  43            inc     ebx7 g4 J; d' z7 n/ \2 F& K
0040C6FE  |.  8A6A 01       mov     ch, byte ptr [edx+1]) T* B: m+ K3 U- |0 |
0040C701  |.  42            inc     edx9 k5 R# n: l4 g: ]+ G
0040C702  |.  84ED          test    ch, ch
8 ~* X1 D$ J! V( Q7 j; r: n0040C704  |.^ 75 90         jnz     short 0040C696
2 x! F( j  a; d2 t0040C706  |>  83FD 10       cmp     ebp, 10' R$ T  t, R1 b1 d8 V3 b7 c
0040C709  |.  7F 05         jg      short 0040C710
2 L6 _. z" e. s  ^0040C70B  |.  BD 20000000   mov     ebp, 20
2 S% J) i5 M0 G) a$ h! _# A0040C710  |>  8B9424 040100>mov     edx, dword ptr [esp+104]
! E4 Z2 w% U: v0040C717  |.  2B9424 080100>sub     edx, dword ptr [esp+108]
' F: P$ s. ^8 p8 Q) s3 R0040C71E  |.  85D2          test    edx, edx
# x( w2 ]) P5 Q" ]& F0040C720  |.  7C 23         jl      short 0040C745! Y) D5 G. ~. z# e  H
0040C722  |.  89C6          mov     esi, eax  M( Z6 v5 N5 H
0040C724  |.  8B3C95 7477EF>mov     edi, dword ptr [edx*4+2EF7774]
8 f* @) u! M' D: T% Q0040C72B  |.  57            push    edi
0 |+ v! Z% x& c: O0040C72C  |>  8A06          /mov     al, byte ptr [esi]" V! \- O" n# @  D4 Z
0040C72E  |.  8807          |mov     byte ptr [edi], al- G' u! r5 S# Z
0040C730  |.  3C 00         |cmp     al, 0
5 V4 Z6 q8 y6 j: i$ a0 [0040C732  |.  74 10         |je      short 0040C744
- l: w  ], e3 ^9 p2 X0040C734  |.  8A46 01       |mov     al, byte ptr [esi+1]1 K) o& E' }7 o* t( W. @
0040C737  |.  83C6 02       |add     esi, 2
+ J, Y9 Z. Z; q% G! P7 J& U5 ~$ t( v0040C73A  |.  8847 01       |mov     byte ptr [edi+1], al
. f0 M7 \; m. n' ~8 C# `) @0040C73D  |.  83C7 02       |add     edi, 2  j* S& V, g# C
0040C740  |.  3C 00         |cmp     al, 0, v# _' ^) ]; N; R
0040C742  |.^ 75 E8         \jnz     short 0040C72C
# P9 m2 [& [  v; ~3 @1 M1 n0040C744  |>  5F            pop     edi, E% b/ I( E$ H1 g5 i3 ^6 D
0040C745  |>  E8 E6500100   call    004218304 ]/ `6 W; k: U: }% N( ^, n
0040C74A  |.  A3 8877EF02   mov     dword ptr [2EF7788], eax! C$ T3 `' a8 \: ]/ c
0040C74F  |.  8B8424 040100>mov     eax, dword ptr [esp+104]/ i/ y# B1 J, z, u9 R) k3 M* n, J
0040C756  |.  40            inc     eax
% b( k7 E6 f+ C' `  r8 B1 L0040C757  |.  A3 8477EF02   mov     dword ptr [2EF7784], eax
/ t4 i5 n: X( L' R* S0040C75C  |.  C705 8C77EF02>mov     dword ptr [2EF778C], 1
3 m( [( U: B6 H' C0 [( y0040C766  |.  B8 64000000   mov     eax, 64
4 Q0 X$ s# K+ I) C6 h0040C76B  |.  89C2          mov     edx, eax7 Y/ W8 q: ]' x0 r" J+ Z# ]: O
0040C76D  |.  8B0D E880EF02 mov     ecx, dword ptr [2EF80E8]
9 Q. [; k- c2 e% H3 |: R! l0040C773  |.  C1FA 1F       sar     edx, 1F1 E, {' X8 V5 q. @# z) b, R
0040C776  |.  F7F9          idiv    ecx
& ?! {1 |4 I+ F- x3 U; {2 ]( j0040C778  |.  89C3          mov     ebx, eax( q; U; \( L* e; ]( @! n  j' i
0040C77A  |.  89EA          mov     edx, ebp' `: l+ s% {" Q# g- s3 U& `( H
0040C77C  |.  89E8          mov     eax, ebp1 I0 d, Q" k2 c0 x5 c7 H" k5 Y
0040C77E  |.  C1FA 1F       sar     edx, 1F
9 ?/ G! F' ]  a9 ?0040C781  |.  C1E2 04       shl     edx, 4* z, t% ?. y/ Y/ R4 w/ c* @: R
0040C784  |.  1BC2          sbb     eax, edx# p6 F7 A# E2 O/ i4 P9 K! X
0040C786  |.  C1F8 04       sar     eax, 4
% U' L0 M2 S' L% z6 \0040C789  |.  01C3          add     ebx, eax) C) k- a0 w6 |" k) ^6 F; u
0040C78B  |.  891D 9077EF02 mov     dword ptr [2EF7790], ebx' x4 E$ F& A! l
0040C791  |.  81C4 10010000 add     esp, 110  c5 b, y$ ?0 K) P/ A
0040C797  |.  5D            pop     ebp. M) H) S6 i5 }4 k# Z
0040C798  |.  5F            pop     edi
: J! b% m! }7 H( |" n$ Y% g0040C799  |.  5E            pop     esi
/ M: Z$ K3 K- s  `0040C79A  |.  5A            pop     edx
6 H$ W2 N/ D% s) E! g5 z3 Z) A( f0040C79B  |.  59            pop     ecx
3 m! A# k6 Z7 r) J. J7 E0040C79C  |.  5B            pop     ebx9 b4 Y- l, D7 f2 l
0040C79D  |.  C3            retn# |7 f; T/ ~* L) i; ]
0040C79E  |>  81FD 8C000000 cmp     ebp, 8C% P/ g8 w( z% n; M
0040C7A4  |.  7C 28         jl      short 0040C7CE
4 z, D# Q- z3 f3 K' v0040C7A6  |.  81FD D2000000 cmp     ebp, 0D2) h7 l: z4 t2 i0 Y, i
0040C7AC  |.  7F 20         jg      short 0040C7CE
6 Y/ Q( M7 R* O7 \) a0040C7AE  |.  B9 03000000   mov     ecx, 3/ [2 f6 O: t* U  \
0040C7B3  |.  89EA          mov     edx, ebp( R/ F& p" k, D6 B5 e7 K
0040C7B5  |.  89E8          mov     eax, ebp
1 Z2 R- _2 X, i0040C7B7  |.  C1FA 1F       sar     edx, 1F6 \' f  j- Z! \
0040C7BA  |.  F7F9          idiv    ecx
9 w" f7 v7 ^. _4 r0 d7 C0040C7BC  |.  C78424 040100>mov     dword ptr [esp+104], 2
# ]9 R* z1 ~& R) s: \1 y; ?2 q. y0 k0040C7C7  |.  89C7          mov     edi, eax% q( m, T- w( j
0040C7C9  |.^ E9 8BFEFFFF   jmp     0040C659. t& m8 X- |- l4 {% R* _: d0 ?
0040C7CE  |>  83FD 46       cmp     ebp, 46! w' j1 |& ?6 w& x0 P2 T
0040C7D1  |.  7C 25         jl      short 0040C7F8
) Q6 i$ ~) q9 F+ F2 }1 g0040C7D3  |.  81FD 8C000000 cmp     ebp, 8C( |! p, `" s; U5 S7 _* M- N
0040C7D9  |.  7F 1D         jg      short 0040C7F8
0 I0 N! B: k8 U7 b3 A# a! f0040C7DB  |.  89EA          mov     edx, ebp
/ Y3 W6 i  |. {  ^1 P8 i0040C7DD  |.  89E8          mov     eax, ebp1 l  J9 @% c# R  s. X% d9 y' X. ]8 a. F( P
0040C7DF  |.  C1FA 1F       sar     edx, 1F
1 N8 `" e$ T$ y0040C7E2  |.  2BC2          sub     eax, edx
2 ]2 ]" S. Z  N& [+ p: q0 N0040C7E4  |.  D1F8          sar     eax, 15 [5 D( u, O/ k; R
0040C7E6  |.  C78424 040100>mov     dword ptr [esp+104], 1& m9 t! A( |# T6 X- P" R
0040C7F1  |.  89C7          mov     edi, eax& J/ p5 N! z/ k! Q+ Z/ x' m
0040C7F3  |.^ E9 61FEFFFF   jmp     0040C659
+ ]1 T1 i; Y! Q6 A0040C7F8  |>  31D2          xor     edx, edx
+ @) S* ~  c: ~/ c/ F0040C7FA  |.  BF 46000000   mov     edi, 46- M! m! u# c4 D3 v
0040C7FF  |.  899424 040100>mov     dword ptr [esp+104], edx
9 M% q, S7 b+ Q' Q6 ?# G0040C806  |.^ E9 4EFEFFFF   jmp     0040C6595 K3 K# X# }! j* b
0040C80B  |>  80F9 7C       cmp     cl, 7C
2 B& p0 |* n" e* u% C0040C80E  |.^ 0F85 E9FEFFFF jnz     0040C6FD+ F$ U$ I) Q4 N: u5 G7 z4 `
0040C814  |.  C602 20       mov     byte ptr [edx], 20  ?5 ~+ `2 p' ]. v6 n4 u
0040C817  \.^ E9 E1FEFFFF   jmp     0040C6FD0 v/ f/ S6 K" o( G- _3 h% a6 w, d
0 L* m6 i$ y3 h
在scratches.sc和scream.sc里面有lua的脚本,保存有字体文件名。
7 q- Z* f( |& [* e估计要汉化就要在上面的代码段下功夫了,以后继续研究。
, w6 d6 z2 w* N7 W/ |  D2 w8 |* u% Y+ U6 N7 n1 F2 {
找到2个俄文的补丁,也许对以后研究有用。  [' [& W* w* Q2 O) U
http://www.megaupload.com/?d=EZH6X672
& d! p: V9 p: B% u# {8 |9 ]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日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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