轩辕春秋文化论坛 » 曹操传MOD制作交流 » Mcall文件的初步研究


2010-1-23 10:33 godtype
Mcall文件的初步研究

之前看过STAR对Meff文件的增加方法,但是没有Mcall的增加方法,加上无双的制作需要,所以对Mcall系列进行了初步而简单的研究,现发表一下初步研究结果,希望有兴趣的朋友一起来研究一下。

首先改EXE,EXE方面只是研究了指令6B:法术的增加,平时使用策略的动画还需要在代码方面再改动,所以暂不研究。

004141BE  |. 83F8 6D        CMP EAX,6D
这条就是指令6B:法术的使用上限,位置是旧引擎的,估计其他引擎也一样。取值跟剧本编辑器右边的全局变量上限中的MCALL上限有关,原MCALL上限是9,所以EXE里面的值就是6D(十进制109)。改的时候两边的关系要对应好,比如我想增加3个MCALL文件,先改剧本编辑器中MCALL的上限为12,然后改EXE中上面的代码为70(十进制112),这样就可以了。

接着是MCALL文件的研究,先用UE打开一个MCALL文件,我测试用的是朱雀的图,即MCALL05。
最前面的代码是一些基本信息:
1E 1E 0C 00 64 00 00 00 2C 01 00 00 2C 01 00 00
0C 00 00 00
第一行
前面两个1E是帧数,即该MCALL文件里面的图片数;
0C 00 64 00 00 00作用未知;
两组2C 01 00 00是每一张图片的大小,即300*300;
第二行
0C是对应的音效编号,即Se_m_**,修改这个就可以更换音效了;
后面的00 00 00应该是跟随0C的。

接下来从地址10H开始是每一张图片的出现和移动轨迹,请看图,图片中的内容是排好序的,方便对照参考。
[attach]87419[/attach]
A列的地址和B列的编号就不用说了,C---I列作用未知,其中直觉告诉F—I应该是一起用的,需要继续研究,J---M列是图片出现的横坐标,N---Q列是纵坐标,其中最后面的**FFFFFF都是负数坐标,R---U列的未知,估计跟调色有关。

目前就只是研究了移动图片方面,我将一张会移动的朱雀图改成了完全不会动,附件的就是了。

接下来的一大片都是跟实际图片有关,目前还在研究中,如果想新画MCALL图的,暂时建议不要增加帧数,尽量使用帧数相同的原MCALL文件来覆盖导入,帧数的扩展还需要时间去研究,希望有兴趣的朋友一起来研究一下。

对MCALL文件的初步研究就到此为止了,以后有新进展就会随时更新。:emot40:

2010-1-23 19:21 时空侠客
有什么用的   我看不懂

2010-1-24 15:22 quill3223
[quote]原帖由 [i]时空侠客[/i] 于 2010-1-23 19:21 发表
有什么用的   我看不懂 [/quote]
呵呵,有什么作用以后玩了无双的夷陵之战就知道了。

2010-1-30 20:42 漫漫悠忧
G大,我有意突破策略动画,:hz1003:Q谈Q谈!

2010-6-8 10:31 Axie89
两组2C 01 00 00是每一张图片的大小,即300*300;

毅大.请问这个是怎么计算的?:qoo+

2010-6-12 17:33 godtype001
回复 #5 Axie89 的帖子

十进的300 = 十六进的12C

页: [1]
查看完整版本: Mcall文件的初步研究


Powered by Discuz! Archiver 5.0.0  © 2001-2006 Comsenz Inc.