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

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

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

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

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

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

以下这个本论坛的下载贴中,由于有个字符串在中文系统中不能正常显示,导致游戏不能正常 运行。
' W1 r0 u* G% t0 X: z5 M" }- ?修道院:导演剪辑版(The Abbey: Director's cut)
7 E! E# i& F' U- ?3 B5 z! Whttps://www.chinaavg.com/forum.php?mod=viewthread&tid=147967
) K0 e! W4 @$ u! f; X+ }' E- _6 o' |+ @
具体信息可以参考Messages.log。修改正确后的字符串为Tomas。- `) [; V  a9 _. f
修改处
- v( b  k$ g0 w/ T《1》以下文件的内容2 B6 {5 @0 V) k- S7 |. w
\The Abbey Directors Cut\English\Data\Game\Game.xmb
  Q# ^7 c9 U) I, T《2》所有游戏的文件和目录名,只要含有那个字符串的都要修改为Tomas% i- V  j/ N# E+ r8 d- ?0 @
    比如\English\Data\Models\Tomas3 n$ A5 V5 G) @; T+ r
0 k+ {2 @3 a) [' L! l9 T9 v% y  f
用ida pro 进行简单分析后,确定游戏是directx9的游戏,
! _0 }/ e& L+ Q% _7 o
  1. .text:004F8D3B                 push    20h             ; SDKVersion! }" t& O' c) q1 |1 p3 j; A
  2. .text:004F8D3D                 mov     esi, ecx
    ) B) L" |0 [2 H6 W, h* ~5 c2 f
  3. .text:004F8D3F                 call    Direct3DCreate9
复制代码

  Q' i- E( Y$ ?/ D% R5 m9 {4 W  }" K6 z* ]4 Y& {, a! A

/ q$ y& X( {) W. }* E% ^3 S# d5 x播放动画的时候,好像用了direct draw
0 [% r' Q4 `$ P$ r
  1. .text:004F4200 ; int __thiscall CVideo::Create(CVideo *__hidden this)" B5 r! M+ u( j, r
  2. .text:004F4200                 public ?Create@CVideo@@QAEHXZ
    4 t# [0 B: J5 C- A4 l
  3. .text:004F4200 ?Create@CVideo@@QAEHXZ proc near        ; CODE XREF: CSystem::Create(HINSTANCE__ *,int,char *,char *,CWorld *,char const *)+380↑p
    2 U. `5 e8 u1 I7 _0 H0 k( P( d; M
  4. .text:004F4200                                         ; DATA XREF: .rdata:off_5C6668↓o
    , b+ A4 P, y4 z% R/ j
  5. .text:004F4200                 push    esi
    " T; o) _$ ]+ ]3 p7 X# R' P
  6. .text:004F4201                 push    edi% N& p0 L" u' }( \
  7. .text:004F4202                 mov     esi, ecx2 G- H+ ^7 Q" u6 e8 L* x, L. x2 D
  8. .text:004F4204                 push    0               ; pUnkOuter2 H2 g: L# @/ I9 }
  9. .text:004F4206                 lea     edi, [esi+54h]/ h* a/ x( f* \; g
  10. .text:004F4209                 push    edi             ; lplpDD! g+ u* O( _9 _! c
  11. .text:004F420A                 push    0               ; lpGUID% f, t4 B) [- n2 @) O, W& X
  12. .text:004F420C                 mov     byte ptr [esi+79h], 0) c2 T7 e, W7 Z4 [% ~
  13. .text:004F4210                 call    DirectDrawCreate
复制代码
$ J' K$ U; S' l3 @) U: W" U) X

  {  y" ~; @5 Q  g8 H8 v( ^/ x
0 \! t$ F2 z7 Z本游戏可以窗口化,比较容易调试。  N7 `3 V; E# w. O/ [: v' O
找一句画面有的字符串the son of ,找到显示函数。
& D: ?/ X3 \1 i/ R  L5 P+ I, q以后我们用自己的函数替换它即可。: x6 j* |, B3 M" k

7 `3 Q# x  R* G8 m5 a# Q3 t对话字幕断点处0 t# c0 j& G0 z9 \! m
004B5AF3  |> /8A08          /mov     cl, byte ptr [eax]  u6 D! \4 h6 M9 W8 k3 z: O. c9 M
8 ?9 l& W+ q: \& r& T/ ^# ?
) {  t! Q  z$ g4 T
char __thiscall CFadingText::Set
6 R* W/ n6 n: b. B, u(CFadingText *this, char *a2, int a3, int a4, bool a5, bool a6)2 {. t; Y7 v; C! _. i" Y# e

: f8 L$ d( O! M! p1 F! {查了以下调用它的地方,有10多个,看来这个游戏所有地方的字幕应该都是调用这个显示函数了,9 {* \+ L, v+ ]) R6 z" S

: I; k2 [( x1 \0 z以下是一部分
. x6 a2 z9 N9 C; T
  1. CGLCLayer::Render+97,   D% x/ t- {* q( [! {$ l+ V4 F
  2. CGameInterface::ShowSentence+2C, 8 O& w) S/ n) j4 u1 ~
  3. CGameInterface::CloseDiary+1A,
    - O8 Q2 `% z, C& \* E
  4. CGameInterface::SetDiaryText+6A, : z! a2 {+ U* y
  5. CGameInterface::OpenMainMenu+17,
    ! i+ [5 w- q& x% T" s# c% ~2 u
  6. CGameInterface::AddMenu+67,
    ( C" D9 M3 K7 n9 b
  7. CGameInterface::OnMenuPressed+0AB, M)
    , ^3 R7 D2 m1 ^2 N
  8. TheAbbey.CFadingText::Set
复制代码

" q; ~4 A1 ~, {) c* W# c8 h( ?9 [7 e" S
& u3 R) m' w, `# ?7 p
. E3 a+ c2 C5 x! I2 p* d& |+ y0 O5 j
! v2 `$ y, U3 O. n6 y. E8 E  b3 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好1 很差劲很差劲
回复

使用道具 举报

沙发
发表于 2025-4-14 09:33 | 只看该作者
学习学习一下
回复 支持 反对

使用道具 举报

高级模式
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日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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