冒险解谜游戏中文网 ChinaAVG

标题: 【SDL游戏汉化 #1】 断剑1导演剪辑版Broken Sword Director‘s 字幕显示函数 [打印本页]

作者: shane007    时间: 2023-8-23 13:20
标题: 【SDL游戏汉化 #1】 断剑1导演剪辑版Broken Sword Director‘s 字幕显示函数
本帖最后由 shane007 于 2023-8-23 13:25 编辑 / b1 W: U+ F& b

3 h! X7 i' p4 Z' Q9 z% b, v( K1 eSDL是4大图形API之一,其他几个是directx,directdraw,opengl
2 |+ y# ]! Y3 h2 t0 I
% l4 ^1 ]( p9 I) Z断剑1导演剪辑版Broken Sword Director‘s,这游戏存在解包脚本。) V. {# e3 i. s7 S' O3 b/ F2 e8 F1 {2 a" A
打包工具以前让深绿做过一个,但是还有问题,等稍后再做,这个问题不大。
. ~: w3 T- b/ J. A! y9 G4 e# d7 u游戏界面是图片,图片的替换估计需要用打包工具来配合完成。& \* t- q3 {( R: M% M, A
但是也有另外一个思路,就是修改exe,修改exe内部图片的路径,此方法是否可行,再行验证。- K3 O) o  J2 w0 ]

' o0 c. h+ x: J/ A5 V最关键的对话函数之一,在内存中找一句经常出现的对话,下内存访问断点后断下。
2 B8 Z; [" Q1 L9 E& T% ]结合ida pro的F5生成C代码功能,找到以下对话显示函数,以及工具栏的显示函数。/ ]! q( s! d+ _3 O  X6 b
(这游戏本身支持窗口化,因此用OllyICE.exe调试比较方便)# Q% x4 d/ v/ `( A
为了方便观看,用excel做成层级调用关系图。( G! H2 q$ g  U2 ?+ b% [9 i6 g# l
下一步,就是写个程序,用内存补丁的方式,用自己的显示函数替换掉游戏的显示函数即可。
8 H2 s- N$ r" e" s(需要熟悉一下SDL画字符的过程,研究下如何在中获取类似CreateDevice的对象)
5 ^/ C# ?2 j  S- q8 I$ m" `( v' p: u# B% X/ j7 ]& y" [
  1. 对话字幕断点处
    & x$ W- w- I! ]4 g
  2.   T) k! Q( D# p6 h
  3. 00443854   .  8954C3 20     mov     dword ptr [ebx+eax*8+20], edx    ; |/ q" r) D( x7 c2 [# W- j% \

  4. 3 ?' N5 j  @2 {5 ]
  5. 对话字幕显示函数* |+ {6 q+ n+ q- P+ j
  6. 2 T" `. F+ A- I4 I; N( x9 e" |! C
  7. "char __cdecl sub_443744(int a1, int a2, int a3, char *a4, char a5, int a6, int a7)"
复制代码
[attach]46609[/attach]
" ~; a# l/ y! p$ A5 h. @: U
4 H$ e- H" e+ B* g; a
; v+ `* [% ~! o$ ][attach]46610[/attach]
1 K! g1 X3 C7 Q3 ]* F; o6 L- l5 O" Y

作者: shane007    时间: 2023-9-5 18:35
顶上来,顶上来
作者: 行842179    时间: 2023-10-29 13:44
顶上来,顶上来
作者: yahooboby    时间: 2023-11-2 09:29
问下,SDL的程序,我想用OPENGL或directdraw来显示中文,可以吗?
0 N9 x' x9 {0 A* Q3 d- g6 j4 Y还是程序用哪个就必须用哪个图形API
作者: shane007    时间: 2023-11-2 12:29
yahooboby 发表于 2023-11-2 09:29
5 R# p. H& A6 ~0 x. Z8 a6 m问下,SDL的程序,我想用OPENGL或directdraw来显示中文,可以吗?; u# w( ?( X2 @; v) w5 }
还是程序用哪个就必须用哪个图形API

) x8 m) R2 V2 Dsdl的程序,用其他图形api也是可以的。
作者: yahooboby    时间: 2023-11-3 08:11
行就好,主要是SDL不会写
作者: shane007    时间: 2023-11-3 19:06
yahooboby 发表于 2023-11-3 08:11
  n  {. ^5 |; b% [行就好,主要是SDL不会写
; n. Y; _, I- g' p6 R' l  S4 U
你想开发SDL游戏还是想学汉化?
作者: yahooboby    时间: 2023-11-5 21:20
游戏就算了,主要是练习写C/C++,想看自己学到什么程度,就拿游戏汉化做练习就知道了
作者: shane007    时间: 2023-11-5 22:47
yahooboby 发表于 2023-11-5 21:209 k" k# u2 P1 F3 |( P* \% y
游戏就算了,主要是练习写C/C++,想看自己学到什么程度,就拿游戏汉化做练习就知道了
$ o7 F. `5 ?7 H
挺好的,汉化方面有很多事情可以做的。; P; A# O6 |! N$ v8 M+ x/ C" F, k( N
如果想为本论坛汉化出力的话,可以私信我个微信聊一下。* Z* N4 W3 B' k
有不少汉化技术方面的事情可以做的。
作者: yahooboby    时间: 2023-11-7 14:15
本帖最后由 yahooboby 于 2023-11-7 14:17 编辑
+ |! T5 P  w; ^2 X# K7 C- r
shane007 发表于 2023-11-5 22:47+ U& p6 l9 A# w8 W8 t; N, e+ h
挺好的,汉化方面有很多事情可以做的。
9 n8 u; s# c% K# \* y5 t3 }如果想为本论坛汉化出力的话,可以私信我个微信聊一下。
# f% v8 b: }% i2 E有不少 ...
$ n2 u& Q# m5 m0 X
可以试试,我给你发私信它说我没权限,发不了
( {( K0 S9 V6 a0 Q1 b9 \& k
作者: shane007    时间: 2023-11-8 20:16
yahooboby 发表于 2023-11-7 14:15
4 X' ^  P2 d/ O( X5 Y, R可以试试,我给你发私信它说我没权限,发不了

  d+ L9 C' ~, O) x+ K5 `我把我的微信私信给你了,你加我一下吧,微信聊。
作者: yahooboby    时间: 2023-11-9 13:02
已加,连私信都不能回复,只能在这回
作者: worldcup12    时间: 2023-11-23 18:01
啥时候技术能实现啊
作者: shane007    时间: 2023-11-23 22:00
worldcup12 发表于 2023-11-23 18:01" X6 w3 W' V' R3 u
啥时候技术能实现啊
4 E' K. p. X! p0 C% \& v7 @  Y% ^7 d9 n
好久不见啊,世界杯, 这个正在弄,暂时还不好说。
0 A  y' ?9 ~$ Y1 h这个貌似是用SDL绘图的,原本游戏是如何绘图的暂不清楚, 正在研究中。
/ K, [' n( \; s3 G( x6 a: ]: N其他directx的游戏,应该过段时间都能逐个汉化的。
作者: worldcup12    时间: 2023-12-17 23:09
shane007 发表于 2023-11-23 22:00
! \! W' d4 Y7 s4 H4 g好久不见啊,世界杯, 这个正在弄,暂时还不好说。7 b( O8 c% b; s- d- k- A- y
这个貌似是用SDL绘图的,原本游戏是如何绘图的暂不清 ...

% `( |5 P0 ~3 g& Z2 V3 X十几年前原版的文本都已经汉化完了,没想到到现在原版的汉化成品也没发布,我打算抽空把原版的文本校对完成,这么经典的游戏,1w多行的汉化,没出成品太可惜了。不过现在确实太忙,估计校对完成得几个月的时间,别的问题不大,就是还是和2代一样的问题,字幕和对话不能完全对上,对话1和对话2对应的字幕可能都是字幕1,所以有些地方现实的文字是不正确的,不过问题不算太大,基本这样错位的字幕都是比较简短的文字,比如Yes, I do!  和Yes, you did.类似这样的,基本剧情的体验问题不大% F) x- k# F, v8 i+ G4 H- s
5 O" j/ [- F" k! U# y

作者: shane007    时间: 2023-12-22 18:05
收到,放心吧,这个游戏有机会还会弄的
作者: yahooboby    时间: 2024-3-6 14:48
worldcup12 发表于 2023-12-17 23:09
( b7 o) I8 ?3 @( |' a9 H2 z0 a+ A& e8 U十几年前原版的文本都已经汉化完了,没想到到现在原版的汉化成品也没发布,我打算抽空把原版的文本校对完 ...
" K% Z: x( j2 `. D/ A
https://www.chinaavg.com/forum.p ... d=154994&extra=




欢迎光临 冒险解谜游戏中文网 ChinaAVG (https://chinaavg.com/) Powered by Discuz! X3.2