|
|
【SDL游戏汉化 #1】 断剑1导演剪辑版Broken Sword Director‘s 字幕显示函数
本帖最后由 shane007 于 2023-8-23 13:25 编辑
SDL是4大图形API之一,其他几个是directx,directdraw,opengl
断剑1导演剪辑版Broken Sword Director‘s,这游戏存在解包脚本。
打包工具以前让深绿做过一个,但是还有问题,等稍后再做,这个问题不大。
游戏界面是图片,图片的替换估计需要用打包工具来配合完成。
但是也有另外一个思路,就是修改exe,修改exe内部图片的路径,此方法是否可行,再行验证。
最关键的对话函数之一,在内存中找一句经常出现的对话,下内存访问断点后断下。
结合ida pro的F5生成C代码功能,找到以下对话显示函数,以及工具栏的显示函数。
(这游戏本身支持窗口化,因此用OllyICE.exe调试比较方便)
为了方便观看,用excel做成层级调用关系图。
下一步,就是写个程序,用内存补丁的方式,用自己的显示函数替换掉游戏的显示函数即可。
(需要熟悉一下SDL画字符的过程,研究下如何在中获取类似CreateDevice的对象)
- 对话字幕断点处
- 00443854 . 8954C3 20 mov dword ptr [ebx+eax*8+20], edx ; |
- 对话字幕显示函数
- "char __cdecl sub_443744(int a1, int a2, int a3, char *a4, char a5, int a6, int a7)"
复制代码
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|