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

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

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

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

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

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

以下这个本论坛的下载贴中,由于有个字符串在中文系统中不能正常显示,导致游戏不能正常 运行。
" S5 W: v& F7 M5 R; }8 D! L) Q修道院:导演剪辑版(The Abbey: Director's cut)# L5 [  P6 u/ g4 \" h4 S0 j
https://www.chinaavg.com/forum.php?mod=viewthread&tid=147967
. {4 g& V1 }' D% i) O, s
# Q/ V! S; Z6 u具体信息可以参考Messages.log。修改正确后的字符串为Tomas。, i  ]1 k' V$ M7 a% K5 B. m  F
修改处! N* o) n9 z1 v1 I- Y
《1》以下文件的内容9 A, z* |2 C7 @. U# b1 F$ w
\The Abbey Directors Cut\English\Data\Game\Game.xmb
* p% q" }3 [- C+ s+ K; n5 B《2》所有游戏的文件和目录名,只要含有那个字符串的都要修改为Tomas
! K! x4 c+ G6 E4 W# |    比如\English\Data\Models\Tomas
% e/ M$ h: W7 |" {3 a! \) z  y  `8 X6 Q. G( Q$ b  y
用ida pro 进行简单分析后,确定游戏是directx9的游戏,
# c& S, ^( U9 o' {
  1. .text:004F8D3B                 push    20h             ; SDKVersion
    ' U% _$ i3 h# w" z4 h
  2. .text:004F8D3D                 mov     esi, ecx0 I$ b4 |1 U, q! _4 T; a% }' _0 [
  3. .text:004F8D3F                 call    Direct3DCreate9
复制代码
5 j/ B: r: r/ }; J5 S3 R

6 k! f% v" ^$ D5 G) E0 w0 I4 _
1 N, ~* R, t6 m2 h. X$ h播放动画的时候,好像用了direct draw
# k1 V- i. R6 P* P$ b9 ?
  1. .text:004F4200 ; int __thiscall CVideo::Create(CVideo *__hidden this)
    3 D' K: A! ^# b  D/ R: P7 }1 b
  2. .text:004F4200                 public ?Create@CVideo@@QAEHXZ3 Z( f5 L/ T8 X8 ~7 j3 d' `
  3. .text:004F4200 ?Create@CVideo@@QAEHXZ proc near        ; CODE XREF: CSystem::Create(HINSTANCE__ *,int,char *,char *,CWorld *,char const *)+380↑p
    , p/ i0 R' A$ B; u$ i, \- F
  4. .text:004F4200                                         ; DATA XREF: .rdata:off_5C6668↓o, l! W3 l8 n; K0 Z7 u
  5. .text:004F4200                 push    esi% |3 v/ x% X; H0 N8 ~
  6. .text:004F4201                 push    edi
    : K' J5 I, e7 ]: t' }  e; J
  7. .text:004F4202                 mov     esi, ecx( }" @( M7 d# a
  8. .text:004F4204                 push    0               ; pUnkOuter; p' j- b# Z. C4 P1 T
  9. .text:004F4206                 lea     edi, [esi+54h]/ G3 k7 y+ h6 }, O3 j$ J& f
  10. .text:004F4209                 push    edi             ; lplpDD
    3 c: q( o) N8 i( o' X: l
  11. .text:004F420A                 push    0               ; lpGUID: }0 t* h2 m' B, W: J
  12. .text:004F420C                 mov     byte ptr [esi+79h], 06 m) X# L8 _5 \1 A! {; D- G
  13. .text:004F4210                 call    DirectDrawCreate
复制代码
  f  x* T% T( A, r" W

0 ]1 ]' d5 W/ A! p. k. ]  `
8 k: E4 k7 f! T$ ?" B" A5 M) Y7 l本游戏可以窗口化,比较容易调试。2 P/ Y( m( \' M7 |4 W- I
找一句画面有的字符串the son of ,找到显示函数。
8 z1 ^; g- |# F( |3 N" @& {以后我们用自己的函数替换它即可。
' r+ t+ e6 Z9 w  `; p9 y- y" Y0 Y0 j0 @- z% L) S
对话字幕断点处4 v( c2 d3 D4 w
004B5AF3  |> /8A08          /mov     cl, byte ptr [eax]9 Z7 ?! ~, S2 k6 D: p

1 }" Q/ t; D: V; ^  `( B1 l3 x3 ?6 F7 {# c3 F, l' n- h' _
char __thiscall CFadingText::Set+ G! X/ K2 H9 }5 n7 I- O9 O/ y7 K
(CFadingText *this, char *a2, int a3, int a4, bool a5, bool a6)
+ i& R5 o$ d8 N6 ]& `+ C1 L9 U; G; H- W
查了以下调用它的地方,有10多个,看来这个游戏所有地方的字幕应该都是调用这个显示函数了,- w( z2 U' j5 U# l) Q

% _$ B$ N! ]' F& `. y0 m以下是一部分( W6 H# O0 h( c# k4 W
  1. CGLCLayer::Render+97,
    9 L( i# O( A' N
  2. CGameInterface::ShowSentence+2C,
    . c1 Z# U4 O3 e4 j& L4 x, S4 h
  3. CGameInterface::CloseDiary+1A, & _: p: @4 s, f. H0 ^- g+ y5 _9 s
  4. CGameInterface::SetDiaryText+6A,
    1 W% K* J7 \2 w. j- x/ Q
  5. CGameInterface::OpenMainMenu+17, 3 s. i" Z- i! `
  6. CGameInterface::AddMenu+67,
    3 X; {+ m9 C3 M9 G
  7. CGameInterface::OnMenuPressed+0AB, M)$ B) _1 `1 L* O
  8. TheAbbey.CFadingText::Set
复制代码
% W% @; j; S8 A* ]& G" w, t# i) S

6 R3 u5 n7 Z: X. m6 t
. I! \- r! G" z9 V5 Q1 t
7 A/ Z7 p4 f9 L6 ^4 V% \% C+ U; d+ D- R( b4 Q+ h5 a, ~" g& ^- Q
分享到:  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日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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