这个游戏本身是没有字幕的,但是我们可以想办法配上中文字幕。
4 h8 ?7 f, u+ C9 M6 ?& V在游戏的VMD下,有很多*.VMD文件,这些文件可以用HD Video Converter Factory Pro这个软件转换成MP4格式。
9 }& E% O3 Q, L+ Y
' {0 e# V% c3 q. \" H4 S' l在下边这个文件中,可以抓取游戏正在使用哪个VMD文件。
( L! N+ v( l& {) D/ L; g; F下一步,只要找到游戏正在播放的frameno,就能有办法输出字幕。
) D8 G$ [- n& d. x/ x+ M研究到此时,出了一个怪问题,游戏在打开*.VMD文件变成无法播放了,讲scummvm和游戏都进行了还原,还是老样子。
1 `( Q: q2 `! H先记录一下,后续继续解决。4 N8 O+ m. ]) ]6 Q3 U" _
7 d+ i1 O1 V7 P: \% M抓取文件名的代码* V4 \, Q- P2 u3 t% ^" v t
- reg_t kPlayVMDOpen(EngineState *s, int argc, reg_t *argv) {$ Q% Z, d: I: I) N
- const Common::String fileName = s->_segMan->getString(argv[0]);+ M0 r' m+ i$ V9 i; R
- // argv[1] is an optional cache size argument which we do not use
9 c' |' s% g4 H* T4 j2 [+ q: y - // const uint16 cacheSize = argc > 1 ? CLIP<int16>(argv[1].toSint16(), 16, 1024) : 0;
8 J0 ~0 P' I" J* Z! h4 I" z+ d - const VMDPlayer::OpenFlags flags = argc > 2 ? (VMDPlayer::OpenFlags)argv[2].toUint16() : VMDPlayer::kOpenFlagNone;
2 {+ m% r; n/ Q T- ?1 p* G; _
8 ~3 U3 z; \2 x+ Z- //by shane007 for test
: w5 o; q2 k/ O3 f% I - //debug("fileName %s", fileName.c_str());( s8 c# O% Q8 Q- I4 x
- 6 w. K1 h* g) |/ U" S9 v
- return make_reg(0, g_sci->_video32->getVMDPlayer().open(fileName, flags));
+ w F/ `8 c: R8 D- |8 j$ x. Y
6 o9 E, U8 l0 g8 s3 U, p* V- }
复制代码 2 P" Y2 G5 V3 w2 h4 P( x, o0 N
- [& k; n- Y. W: }( R ]1 B8 J- ]$ ~- h
|