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

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

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

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

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

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

以下这个本论坛的下载贴中,由于有个字符串在中文系统中不能正常显示,导致游戏不能正常 运行。6 H$ _. s+ N) A9 s
修道院:导演剪辑版(The Abbey: Director's cut)
4 x9 X' g9 |6 P1 j% N  Ihttps://www.chinaavg.com/forum.php?mod=viewthread&tid=147967
' w3 E) T/ n6 p+ T+ i7 d5 ?* t8 p: b- Z
具体信息可以参考Messages.log。修改正确后的字符串为Tomas。
7 ?8 @6 T( J' `2 k' ?/ b; L修改处* x, C; x4 p% l( }0 u/ |4 z/ s
《1》以下文件的内容
. v; W! i. ]7 G# }\The Abbey Directors Cut\English\Data\Game\Game.xmb
, j$ ~7 Q7 o1 F' x《2》所有游戏的文件和目录名,只要含有那个字符串的都要修改为Tomas" `/ X1 E4 I& l+ |  i; g
    比如\English\Data\Models\Tomas
+ Z5 z# ~% d/ {3 j6 \: @! U6 ~( {( ?. _( v) A/ q, v
用ida pro 进行简单分析后,确定游戏是directx9的游戏,
* t3 e" ]! A' ?5 @
  1. .text:004F8D3B                 push    20h             ; SDKVersion
    / b. z- E, M3 E* n. @) T
  2. .text:004F8D3D                 mov     esi, ecx
    - c: ^  D( o) e4 E+ p: @
  3. .text:004F8D3F                 call    Direct3DCreate9
复制代码

7 {9 q5 p7 h* `5 v! |; P5 \
3 s. {! U6 `! Q  r' ~1 d, _2 @% W/ X# e" H% n
播放动画的时候,好像用了direct draw
! ?0 C! \$ R* e6 l3 g3 s
  1. .text:004F4200 ; int __thiscall CVideo::Create(CVideo *__hidden this)
    6 @# ~! i( L; P. b1 v2 H
  2. .text:004F4200                 public ?Create@CVideo@@QAEHXZ+ j: n3 A! }% n  N( P
  3. .text:004F4200 ?Create@CVideo@@QAEHXZ proc near        ; CODE XREF: CSystem::Create(HINSTANCE__ *,int,char *,char *,CWorld *,char const *)+380↑p2 l6 u: f' x6 C" u$ ~" }! L$ A
  4. .text:004F4200                                         ; DATA XREF: .rdata:off_5C6668↓o
    3 Q3 E5 G4 o2 {4 y) ?! P2 S  r1 E
  5. .text:004F4200                 push    esi
    ! U$ z) z& d4 {" T
  6. .text:004F4201                 push    edi
    " e6 f+ |) g5 i$ ^
  7. .text:004F4202                 mov     esi, ecx' |0 p8 B, R, ~' u1 B+ F
  8. .text:004F4204                 push    0               ; pUnkOuter* s; M% {% K; A# ]1 y3 d' p' e( B
  9. .text:004F4206                 lea     edi, [esi+54h]
    4 z. _1 F# l8 D( _* M1 Y
  10. .text:004F4209                 push    edi             ; lplpDD
    7 u  a% b  o5 x9 ?6 r* w! F
  11. .text:004F420A                 push    0               ; lpGUID2 Y; O4 V: ^- u7 l" z: z; b9 u9 X
  12. .text:004F420C                 mov     byte ptr [esi+79h], 0
    ; V( `9 f6 A0 Z/ I/ U* {( q4 }
  13. .text:004F4210                 call    DirectDrawCreate
复制代码

* R% i. C* t/ D  b. k1 h, R+ {$ |: u& n! U( i6 a
  h' s" b8 Z2 p0 |0 H2 ~# U9 t
本游戏可以窗口化,比较容易调试。
2 V# c, F; `0 N! b找一句画面有的字符串the son of ,找到显示函数。
5 y6 Z' v8 b# v$ C! a以后我们用自己的函数替换它即可。- _( g% Y1 u7 U9 R% T

, `5 s+ p$ D) H) n8 A9 I对话字幕断点处
" ~4 D9 d, W  H+ ^8 i6 o7 \004B5AF3  |> /8A08          /mov     cl, byte ptr [eax]9 p3 `6 p, V& U+ v

0 M1 H  P  y" k. q2 i% n
' A  x  G" Y6 {" Achar __thiscall CFadingText::Set3 b3 j# Y/ o, W- _
(CFadingText *this, char *a2, int a3, int a4, bool a5, bool a6)/ V1 G9 q+ |' d# p

$ p7 p' u& |: s' Q) H2 w) W查了以下调用它的地方,有10多个,看来这个游戏所有地方的字幕应该都是调用这个显示函数了,$ S3 g$ H2 [# O+ f, S

" ?6 U& P8 v- q1 o1 g以下是一部分
4 p! [1 m. _3 j
  1. CGLCLayer::Render+97,
    5 e, D! O" V( [$ e& s5 {
  2. CGameInterface::ShowSentence+2C, ) D3 H! z. Y$ E* V5 v' n
  3. CGameInterface::CloseDiary+1A, 3 K" Y8 A/ {9 Z
  4. CGameInterface::SetDiaryText+6A,
    : }. ~  |% F+ R. J  l0 ?6 W
  5. CGameInterface::OpenMainMenu+17,
    : m  V. J  o! X& w
  6. CGameInterface::AddMenu+67, ) j' [/ b+ l! [* U3 q
  7. CGameInterface::OnMenuPressed+0AB, M)
    0 u' g9 z8 p$ G: @0 }
  8. TheAbbey.CFadingText::Set
复制代码

  U' ?1 d" P4 c' {
+ T" O2 d; i, M% U0 H7 K5 j2 k; |
  ?1 r6 z3 G+ A7 @5 i* U, q% `8 ?9 i& z) Q1 R6 q$ l" w8 r/ g

7 v8 y0 I1 s. n: t8 x0 {, P! @9 G# M
分享到:  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日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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