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

建议 【Directx9游戏汉化 #1】 修道院:导演剪辑版(The Abbey: Director's cut) 字幕...

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

[建议] 【Directx9游戏汉化 #1】 修道院:导演剪辑版(The Abbey: Director's cut) 字幕...

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

【Directx9游戏汉化 #1】 修道院:导演剪辑版(The Abbey: Director's cut) 字幕...

以下这个本论坛的下载贴中,由于有个字符串在中文系统中不能正常显示,导致游戏不能正常 运行。" C6 u6 I. i9 v# z( [. ~4 [. o
修道院:导演剪辑版(The Abbey: Director's cut)
! W; P' N: V7 n: ehttps://www.chinaavg.com/forum.php?mod=viewthread&tid=147967
3 I4 W% }% \: M# u; s2 ^! d+ Z5 a/ [7 c, c; y4 |$ J
具体信息可以参考Messages.log。修改正确后的字符串为Tomas。/ T/ X& M, P& C" g
修改处; ]; m; n1 G, D* e- U, T5 {
《1》以下文件的内容
1 X1 h+ l( l& q\The Abbey Directors Cut\English\Data\Game\Game.xmb
4 g) g3 a; c8 \$ ]* _《2》所有游戏的文件和目录名,只要含有那个字符串的都要修改为Tomas  j: Z' Y9 f# T- _1 S9 v& j
    比如\English\Data\Models\Tomas$ p: v2 O1 ~3 a6 v: J1 H

  ^" T; j, f1 @9 A0 u用ida pro 进行简单分析后,确定游戏是directx9的游戏,0 b' X9 V/ C; r# q* Z+ ~( s
  1. .text:004F8D3B                 push    20h             ; SDKVersion
    4 }( P" Z  ?. i) Y, _3 K
  2. .text:004F8D3D                 mov     esi, ecx# I$ @8 t& T2 m
  3. .text:004F8D3F                 call    Direct3DCreate9
复制代码

2 Q! i! _6 T1 v* A4 |' L
. H+ k+ A0 N7 I  u4 F+ b8 u6 M) E
& Q! y: D" a! x" b  s播放动画的时候,好像用了direct draw
/ M* I4 g! B8 z8 K- f& [0 Z8 j' o! g
  1. .text:004F4200 ; int __thiscall CVideo::Create(CVideo *__hidden this)
    6 I5 Y' p2 U( z8 n: z3 [
  2. .text:004F4200                 public ?Create@CVideo@@QAEHXZ
    / x2 {5 \0 v: X0 o7 c3 f# Q" G
  3. .text:004F4200 ?Create@CVideo@@QAEHXZ proc near        ; CODE XREF: CSystem::Create(HINSTANCE__ *,int,char *,char *,CWorld *,char const *)+380↑p
    6 D' W) D0 W( ^# f3 }: M6 _
  4. .text:004F4200                                         ; DATA XREF: .rdata:off_5C6668↓o
    * F: \9 N. F& ]) G3 W7 S/ j
  5. .text:004F4200                 push    esi/ B5 E  _; r& m1 T
  6. .text:004F4201                 push    edi  Y" I' p( l: a* S) F+ P& a# C
  7. .text:004F4202                 mov     esi, ecx
    3 A& c& \. I- F) f% s' }- s$ k  f
  8. .text:004F4204                 push    0               ; pUnkOuter
    $ Q% O3 ], s, @; k
  9. .text:004F4206                 lea     edi, [esi+54h]) V/ A% S% g7 `
  10. .text:004F4209                 push    edi             ; lplpDD
    0 I6 `* v) J" \* P7 e% i& o9 A
  11. .text:004F420A                 push    0               ; lpGUID
    , E- N9 t8 l$ W6 ~. W; }
  12. .text:004F420C                 mov     byte ptr [esi+79h], 0, V1 ?7 e! ]0 [% o4 }2 {
  13. .text:004F4210                 call    DirectDrawCreate
复制代码

: q3 f, E: ^& f2 V2 O5 I; k& M% g! f7 N# t

( d5 v* {- g& w: K3 Y8 `本游戏可以窗口化,比较容易调试。
5 I  O1 X$ t8 L% I9 ]/ D$ ^找一句画面有的字符串the son of ,找到显示函数。. r) f; L8 _& U& `3 i  m
以后我们用自己的函数替换它即可。% ]+ s+ C/ w! D/ T3 Z1 ~
. [+ y: Q3 ]! y; y
对话字幕断点处2 f' `: S" [7 J( i. R
004B5AF3  |> /8A08          /mov     cl, byte ptr [eax], S+ G- V5 E& f# V5 N5 w( k

7 E- j% ?  t3 X, t! K# t/ l  m. B. n  {
char __thiscall CFadingText::Set# m, k4 D1 c8 t+ i1 V6 p2 r7 R  c& Y# l
(CFadingText *this, char *a2, int a3, int a4, bool a5, bool a6)7 Z) ]( g. J8 f
8 J$ W1 |* v, k2 ?  ^9 I
查了以下调用它的地方,有10多个,看来这个游戏所有地方的字幕应该都是调用这个显示函数了,) u% ?; a  x% e1 `* ~
" d6 F* e2 S7 z# f) l2 f% ?7 J/ k
以下是一部分
, F2 J1 ^' r3 F
  1. CGLCLayer::Render+97, 9 P3 p# X1 d0 p# i" D( K6 L
  2. CGameInterface::ShowSentence+2C, 4 o4 o, K  y' Q/ p* W) w' K
  3. CGameInterface::CloseDiary+1A, + K5 N9 v3 A. x
  4. CGameInterface::SetDiaryText+6A,
    0 x3 B2 b' [8 F& N+ i) P
  5. CGameInterface::OpenMainMenu+17,
    9 D- n# I: F: `) |1 v' p0 g" p
  6. CGameInterface::AddMenu+67,
    7 W, w+ [0 {. S) G' e5 b& h& m8 j! w
  7. CGameInterface::OnMenuPressed+0AB, M)
    8 F  r* h1 X4 E8 W) Q( V4 r
  8. TheAbbey.CFadingText::Set
复制代码
+ ^3 M; Q7 }0 v' a- x! }
; E, Q7 [9 @6 c" t. A/ p6 G

5 L! s+ O4 q( n, i/ {& r9 y/ j

4 z) V* t8 l* k9 I
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

冒险解谜游戏中文网 ChinaAVG

官方微博官方微信号小黑屋 微信玩家群  

(C) ChinaAVG 2004 - 2019 All Right Reserved. Powered by Discuz! X3.2
辽ICP备11008827号 | 桂公网安备 45010702000051号

冒险,与你同在。 冒险解谜游戏中文网ChinaAVG诞生于2004年9月9日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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