这个游戏本身是没有字幕的,但是我们可以想办法配上中文字幕。
% X) u6 ~9 {+ H在游戏的VMD下,有很多*.VMD文件,这些文件可以用HD Video Converter Factory Pro这个软件转换成MP4格式。& p* Q% g1 i0 w1 q* [+ P
9 Q' z {, a3 d+ x7 N在下边这个文件中,可以抓取游戏正在使用哪个VMD文件。& q* p/ A; R; h6 t" F9 n3 x
下一步,只要找到游戏正在播放的frameno,就能有办法输出字幕。
) u8 b; e5 |' R& Y7 h1 i# Q研究到此时,出了一个怪问题,游戏在打开*.VMD文件变成无法播放了,讲scummvm和游戏都进行了还原,还是老样子。$ p* H2 Q7 X0 a, `
先记录一下,后续继续解决。6 _' X4 X' j1 n, X# x7 B( I
6 R- B1 _' [$ d3 _
抓取文件名的代码
% g$ _7 F. ]8 ^9 Z- y- reg_t kPlayVMDOpen(EngineState *s, int argc, reg_t *argv) {
# I: X0 S& S: C, R( W6 Z, j - const Common::String fileName = s->_segMan->getString(argv[0]);
+ {" H1 M- \5 M6 ~& \# F - // argv[1] is an optional cache size argument which we do not use2 q9 v$ h1 [. Y5 I
- // const uint16 cacheSize = argc > 1 ? CLIP<int16>(argv[1].toSint16(), 16, 1024) : 0;
8 n" ]- U+ `" { - const VMDPlayer::OpenFlags flags = argc > 2 ? (VMDPlayer::OpenFlags)argv[2].toUint16() : VMDPlayer::kOpenFlagNone;7 F ?/ _; A& f- s! Q4 a
- * i) B/ R3 N$ p+ K3 A7 L' M
- //by shane007 for test
. K7 M! _3 c" e h/ [5 F - //debug("fileName %s", fileName.c_str());$ v U& D4 N2 T
- 2 r7 q4 S2 Q' D) e, j5 `. \
- return make_reg(0, g_sci->_video32->getVMDPlayer().open(fileName, flags));# f4 E5 w, ~" [
" }0 i. l: Z/ O% \5 o4 ^- }
复制代码
1 O d6 y: n8 j! t7 y& ~% c( e3 o9 E0 I; b7 d* I( z5 u
! s2 {1 L' Z3 d
|