2004-12-2 13:24
van
打造自己的曹操传
重发一下,略微作了一些调整
目录
Data文件结构
第一到第五讲
剧本十六进制修改示例
猎雕强化战役补丁中三项功能实现的原理
曹操传战斗剧情的一些修改方法
增加敌军或友军数量
剧本中测试条件的说明
其它(复活、头像变化、敌方武将撤退台词)
[[i] 本帖最后由 东方无翼 于 2006-8-18 14:40 编辑 [/i]]
2004-12-2 13:25
van
1、初始数据
改存档文件大家都很熟悉了,不过一般也就改改人物属性和宝物而已。借助于解压以后的data.e5文件,可以进行更多的修改。(data.e5文件放在www.freewebs.com/vbvan/data.rar)
data.e5中包含了很多文件,下面依次进行解析。
第一个Char.dat。人物初始属性,512*20h。
0h~ch:Name
dh、fh:Index之类的东西(具体见下面的说明)
12h~16h:五围(*2就是统武政智魅)
17h:HP
19h:MP
1ah:兵种编号
1bh:Lv
附加说明:
这上面的fh就是武将在大地图上对应形象的index。譬如说游戏一开始曹操是一个穿绿衣服的小人,是因为它的f字节处的值为0,也就是对应pmapobj.e5的第一张图片。
下面是一些比较有趣的图片:典韦拿的旗190,关羽的人头189,皇帝205
在游戏中,也可以通过code35来改变这个Index,譬如游戏里就是通过这个来改变夏侯瞎眼之后的形象的
不过要注意的是,像一般主要人物对应的图片里面包含了全套的动作,如发怒,挥手等。但是其他的就只有一两个动作,比如皇帝就只有走路的形象,貂蝉也没有发怒的样子(保护美女的形象 )。因此改了之后,有些动作就做不出来了(没有相应的动作时人应当会突然消失)。
10h用来指明致命一击台词的类别(这个主要适用于没有特殊台词的小兵)。比如说曹彰对应的类别就是1,那他就会从“喝……!”“唔喔喔……!”“杀啊啊……!”中随机选一句。具体对应关系可以参考友盟piccolo的大作《评 曹操传致命一击台词 (中日文完全版) 》
11h用来指明武将归属的,data.e5文件里初始都是ff,也就是不属于曹操军(包括曹操也是ff,他是在第一个剧本里面通过code3b加入的),改动这个(改成0就变成我方了)可能可以改变我方的初始武将
dh开始的两个字节是武将的脸谱Index。曹操是0,夏侯是1……游戏内部根据情况还会调整。实际使用的脸谱,最普通的就是曹操的脸谱Index是0~7,而其他武将的脸谱Index要+7(因为曹操本身有8张脸谱)。
第二个是Item.dat。宝物,104*19h
0h~:Name
11h:宝物类型
12h:特殊效果的类型(没有则为ff)
13h:价格/100(ff表示非卖品)
14h:Icon
15h:基本效果值
16h:特殊效果值
17h:升级加的效果值
18h:是否是特殊宝物
第三个是跟开战前仓库有关的
第四个是Troop.dat。部队属性,53*1bh
0h:Speed
1h:攻击范围
2h~8h:每升一级加的属性值(2、3、4分别对应B、A、S)
9~1bh:可以装备的宝物类型(1表示可以,0表示不可以)
第五个是Terrain.dat。地形属性,27*3ch
0h~1dh:某个兵种对应的各种地形效果(例如a表示100%,b表示110%)
1eh~3bh:某个兵种对应的各种地形消耗移动力(ff表示不能移动)
第六个是Magic.dat。魔法属性,73*46h
0h~ah:Name
bh:魔法类型
ch:对敌为0,对己为1
dh:hitarea(攻击范围)
eh:effarea(效果范围)
fh:消耗的MP
10h:Icon
11~45h:不同兵种习得此项魔法所需的最小Lv(0表示不能学会)
2、图像资源。
酝酿中。。。不过估计还是需要用外部程序先将图片转换到指定的256色调色板位图。
3、剧本文件
详见后面的帖子
2004-12-2 13:28
van
第一讲.修改敌人的出场设定
我想这个应该是许多人希望的,特别是喜欢自虐的朋友,可能希望敌人变态一点。下面的应当能满足你的要求
首先需要修改的文件是s_XX.eex。先查找“440045002600”(十六进制,一般出现在文件的第0x20~0x30字节之间),找到后在“0x45”处向后移18个字节,这个就是出场时敌人小兵的等级加成值。举个例子,比如根据计算我方的平均等级是20级(具体算法可以参考我以前的帖子),那么出场敌人小兵的等级就会在20的基础上根据这个加成值进行修正。我们一般看到的小兵都是18级,这是因为修正值是-2。具体的表达式是这样的,假设修正值为x,如果x<50,那么最后的等级要加上x,否则会减去x-50。你会看到文件里此处的修正值一般都是52,也就是减2
所以可以把它改成一个小于50的数,那么你会发现敌人的等级会高很多
在“0x45”处向后移46个字节,你应当发现前面的字节是0x46。好,这就是友军的出场数据了,具体结构如下
0200XXXX
2600XXXX
0400XXXXXXXX
0400XXXXXXXX
2b00XXXX
3e00XXXX
4500XXXX
0700XXXX
0200XXXX
0400XXXXXXXX
0400XXXXXXXX
一共有20个
接下来就是敌人的,结构如下
0200XXXX
2600XXXX
2600XXXX
0400XXXXXXXX
0400XXXXXXXX
2b00XXXX
3e00XXXX
4500XXXX
0700XXXX
0200XXXX
0400XXXXXXXX
0400XXXXXXXX
一共有80个。
换句话说,战场上至多有20个友军,80个敌军以及15个我方人员
其中0200后面跟的就是出场武将的编号,比如你把它后面的XXXX改成0300,那出场的就是关羽了。
第一个0400后面跟的是武将在地图上的横坐标,第二个0400是纵坐标
2b00后面是朝向,3e00后面是武将等级相对于小兵的加成
要想新增出场人物的话,找第一个0200后面跟ffff的,将ffff(表示没有武将)改成你要的武将编号,设定地图上的位置,并将3e00后面改成你要的等级加成即可
2004-12-2 13:29
van
第二讲.我军出场设定
我军出场的人物因为是由玩家选择的,所以剧本里的信息和前面的敌军出场设定的格式有所不同。
简单的方法,先搜索字符串“HEX我军设定”,在字符串后找到“0x4b”,就是我军的设定了。格式如下:
0400XXXXXXXX
0400XXXXXXXX
0400XXXXXXXX
2b00XXXX
2600XXXX
第一个0400后面跟的是武将的标号,比如你在出场武将选择里第一个选择的武将他的编号就是0。
后面两个0400后面跟的是武将在地图上的坐标
2b00后是武将的朝向
第三讲.敌人的特殊装备
一般,有名字的敌方武将会有一些区别于小兵的装备,主要是辅助系和特殊宝物。这也是剧本里面指定的。先搜索字符串“个人装备设定”,在字符串后找到“0x48”,格式如下:
0200XXXX
3b00XXXX
4900XXXX
3c00XXXX
4900XXXX
3d00XXXX
0200是武将编号。3b、3c、3d后面分别是攻防辅的装备对应的Index
2004-12-2 13:29
van
第四讲.战役的全局控制变量
战役的全局变量是由一开始的4500控制的。从上一贴的例子可以看到4400后面就是4500,它的结构如下:
2600XXXX
2600XXXX
0400XXXXXXXX
3e00XXXX
3200XXXX
0200XXXX
3200XXXX
0200XXXX
4700XXXX
2200XXXX
(前面已经提到,3e00是控制小兵等级加成的)
0400后面就是限制的回合数
第一个0200后面是胜利条件中“击退XX”中敌方武将的index
第二个0200后面是失败条件中“XX撤退”中我方武将的index
第五讲、我方武将不死
许多人对郭嘉、典韦死掉感到很惋惜。当然直接改存档文件可以让他们复活,不过也可以直接改剧本,这就是下面要介绍的3b00的功能
直接搜索"3b000200"(在r_XX.eex中搜)就会找到如下的数据
3b00
0200XXXX
0e00XXXX
3e00XXXX
其中第一个0200后面就是武将的Index,而0e00就是控制武将登场或死亡的,0表示登场,FF表示死亡。3e00和以前的含义一样,代表等级加成。
比如,典韦之死是s_11.eex里面的,在其中搜一下"3b00020010000e00ff00",并把最后的ff00改成0000就可以了。
郭嘉是s_25.eex,夏侯渊是s_36.eex,庞德是s_39.eex
当然,只是把3e00后面改成0000的话,过场动画还是会说那个武将死掉了,所以要想完美的解决这个问题,就要对剧情动动手脚了,这也是后面几讲的内容
总结一下,曹操传的剧本文件是通过Code来控制各项功能的(也可以把它看成是函数的代号),Code之后就是具体的参数,每个参数都由类型和具体的值组成。
比如说控制升级的3b00代码也可以写成:
3b00 (CharJoin()
0200XXXX(int CharIndex)
0e00XXXX(bool Option)
3e00XXXX(int LvAddOn))
而类型都是固定的,譬如说0200代表CharIndex,3e00代表LvAddon等等
2004-12-2 13:30
van
Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F
00000000 45 45 58 00 01 02 00 00 00 00 16 00 00 00 EE 1B EEX...........&icirc;.
00000010 00 00 31 38 00 00 01 00 D4 1B 02 00 05 00 00 00 ..18....&Ocirc;.......
00000020 00 CB 1B 44 00 45 00 26 00 00 00 26 00 00 00 04 .&Euml;.D.E.&...&....
00000030 00 14 00 00 00 3E 00 34 00 32 00 00 00 02 00 FF .....>.4.2.....&yuml;
00000040 FF 32 00 01 00 02 00 00 00 47 00 00 00 22 00 01 &yuml;2.......G..."..
00000050 00 46 00 02 00 03 00 26 00 FF FF 04 00 12 00 00 .F.....&.&yuml;&yuml;.....
00000060 00 04 00 0D 00 00 00 2B 00 03 00 3E 00 06 00 45 .......+...>...E
00000070 00 FF FF 07 00 01 00 02 00 FF FF 04 00 00 00 00 .&yuml;&yuml;......&yuml;&yuml;.....
00000080 00 04 00 00 00 00 00 02 00 63 00 26 00 FF FF 04 .........c.&.&yuml;&yuml;.
00000090 00 09 00 00 00 04 00 09 00 00 00 2B 00 03 00 3E ...........+...>
000000A0 00 04 00 45 00 FF FF 07 00 02 00 02 00 FF FF 04 ...E.&yuml;&yuml;......&yuml;&yuml;.
可能有些朋友对十六进制编辑不太熟悉,这里举个例子(汜水关,s_01.eex)。首先先要装一个十六进制编辑器,譬如winhex或者Ultraedit。打开s_XX.eex文件就会看到类似于上面的东西。(最左边的一排就是pos)。
先看pos=0xA的地方,也就是第一行,第A列处的值,它就是剧本数据开始的偏移量。这里是0x16,所以先移动到pos=0x16(winhex里面也可以使用position->go offset)。一般剧本一开始都是0100xxxx02000500000000xxxx,这些字节是控制用的,可以跳过。接着就是战场设定的数据了。对上面的例子,可以看到控制字节之后是4400(pos=0x23)。从这里开始搜索hex value“4600”就会跳到pos=0x51了,于是就可以修改后面的友军出场设定了。
譬如第一个人就是关羽,对应的数据是
02 00 03 00 26 00 FF FF 04 00 12 00 00 00 04 00 0D 00 00 00 2B 00 03 00 3E 00 06 00 45 00 FF FF 07 00 01 00
2004-12-2 13:30
van
介绍猎雕强化战役补丁中三项功能的实现的原理
1、战利品:特指战斗结束后得到的物品。代码是59
0400XXXXXXXX
1700XXXX
4900XXXX
1700XXXX
4900XXXX
1700XXXX
4900XXXX
2600XXXX
17后面就是宝物的代号,一场战斗至多可以给三件宝物。要多的话,可以通过3d来实现
1700XXXX
4900XXXX
2600XXXX
0200XXXX
2、战力削弱
许多人对如何让第二关孙坚军一开始不扣血很感兴趣,其实这是通过4d来实现的
4100XXXX
0200XXXX
0400XXXXXXXX
0400XXXXXXXX
0400XXXXXXXX
0400XXXXXXXX
0400XXXXXXXX
0300XXXX
2f00XXXX
1800XXXX
3000XXXX
0400XXXXXXXX
0400XXXXXXXX
其中最后两个4后面就分别代表了扣的hp和mp。而前面的4则划定了一个矩形,这个削弱操作会对矩形中所有的人进行
3、许子将不消失
这是由31控制的
2c00XXXX
0200XXXX
0400XXXXXXXX
0400XXXXXXXX
0400XXXXXXXX
0400XXXXXXXX
0300XXXX
2后面是消失的武将代码(需将2c后设为0),至于那些4,和4d中的是类似的,用来进行批量的武将消失(此时需将2c后面设为1,2后面设为ffff)
猎雕的版本里实际上是把武将代码改成了另外一个人,从而达到了偷天换日的目的
许子将的等级可比小兵要高30级哦
2004-12-2 13:32
van
曹操传战斗剧情的一些修改方法
战斗剧本存放在s_XX.eex中,它由三部分组成。
第一部分就是初始出场设定以及一开始的固定剧情。这个前面大概的介绍过了
第二部分就是各种事件。
第三部分是一些收尾的工作。
那么我们就来看看第二部分。这一部分的偏移存放在第e字节(比如说第一个剧本s_00.eex里,第二部分的偏移就是0x1dfe)。找到第二部分开始的地方以后,首先看到的是一个整数,说明这个剧本里面有多少个事件,之后我们就能看到许多个以0200050000开头的事件了。
事件的一般结构如下:
XXXX(事件的长度)
02000500
XX...XX(硬性测试条件)
0500XX...XX(事件测试条件)
{
XX(事件的代码)
0b00
0400XXXXXXXX
2700XXXX(对变量XXXXXXXX赋值XXXX)
}
当然,事件里面还能再嵌套0500操作符
所谓硬性测试条件是根据战场上的情况,当满足条件时会触发事件。而所谓事件测试条件,则是根据其他事件发生与否,来确定本事件是否发生
因为曹操传内部对事件的处理比较特殊,所以最好不要直接修改代码,但是可以对代码的参数进行修改
比较常见的硬性测试条件有以下一些,后面会有介绍
25:武将进入指定地点测试
26:武将进入指定区域测试
2e:武将相邻测试
36:武将撤退测试
41:战场人数测试
3f:回合测试
42:战斗胜利测试
43:战斗失败测试
2004-12-2 13:32
van
增加敌军或友军数量
需要分别设置0200(Index),2b00(朝向),pos,0700(一般设为01即可)后的值
至于要增加我军的出场武将数,则需要修改r_xx.eex
控制的代码是0600
2e00XXXX
0400XXXXXXXX
3800XXXX
3800XXXX
3800XXXX
3800XXXX
3800XXXX
3900XXXX
3900XXXX
3900XXXX
3900XXXX
3900XXXX
其中4后面就是出场的最大人数,38后面就是必须出场的武将(一般有两个0600,改2e00后面跟01的那个)
顺便提醒一下,我方至多出场15人,这是物理限制,无法突破
2004-12-2 13:33
van
这里对几个测试条件进行说明
25:武将进入指定地点测试
0200XXXX
0400XXXXXXXX
0400XXXXXXXX
这个很容易,4后面就是地点的坐标。至于2后面除了跟武将的Index之外,还可以跟通配符,比如401代表我方和友军的任何一个部队
26:武将进入指定区域测试
0200XXXX
0400XXXXXXXX
0400XXXXXXXX
0400XXXXXXXX
0400XXXXXXXX
和上面类似
2e:武将相邻测试
0200XXXX
0200XXXX
2600XXXX
武将相邻之后可以触发对话或者单挑。单挑本身并不是由单一的代码控制的,而是由一系列的6X的代码来实现的
36:武将撤退测试
0200XXXX
2300XXXX
0400XXXXXXXX
2400XXXX
实际是通过测试hp是否等于0来判断的。
41:战场人数测试
0300XXXX
0400XXXXXXXX
2400XXXX
3f00XXXX
0400XXXXXXXX
0400XXXXXXXX
0400XXXXXXXX
0400XXXXXXXX
3指明要统计的人物的属性。比如说0代表我军,1代表友军等等。4就是要求人数。24的含义见下面。3f=0时表示统计整个战场,否则统计由4指定区域内的武将数
3f:回合测试
0400XXXXXXXX
2400XXXX
24=0、1、2分别表示大于等于、小于、等于。4后面是回合数
42:战斗胜利测试
43:战斗失败测试
没有参数
这里介绍控制剧情分支最重要的Code--5
Code5类似于if语句,根据全局变量来决定跳转。其格式如下
0500
3500XXXX
...
3500XXXX
...
35后面跟的是变量个数,...就是具体变量的代号
比如说虎牢关之战后,如果孙坚撤退了,游戏中会设置全局变量2bd
之后在剧本R_02.eex中,就用如下的代码来判断
0500
35000100
bd02
35000000
其中第一个35后面的变量要求值为1,第二个35后面的变量要求值为0。和在一起取and
举个例子
0500
35000200
bd02
0100
35000100
0200
这个表达式在变量2bd、1为1,且变量2为0的时候才成立。
因此,可以通过这个来改变剧情的跳转。当然如果要改剧情,这些还是不够的
2004-12-2 13:34
van
复活是通过剧本里面的55控制的,与兵种本身没有关系。本来一个事件发生以后,系统会设置某个随机变量为1,这样的事件只会执行一次。而木人复活这一事件会定期将变量重置为0,所以可以无限次复活
头像的变化是在程序里面设置的,不过还是可以通过剧本来修改
因为头像的变化是通过一个全局变量控制的,而剧本里面是用Code20设置这个全局变量的
4a00
XXXX
至于地图上的形象你应该已经找到了,是通过Code35控制的
0200
XXXX
1300
XXXX
本来敌方武将撤退的时候也是没有台词的,你看到的那些都是因为剧本里面特别设置了一个事件才有的。而我方武将的台词放在imsg.e5的中间,并不方便增加
至于让曹操不出场,你可以把Code6的后五个参数(39)的第一个改为0,那些是控制哪些人不上场的
下面是置顶帖里面的
控制的代码是0600
2e00XXXX
0400XXXXXXXX
3800XXXX
3800XXXX
3800XXXX
3800XXXX
3800XXXX
3900XXXX
3900XXXX
3900XXXX
3900XXXX
3900XXXX
其中4后面就是出场的最大人数,38后面就是必须出场的武将(一般有两个0600,改2e00后面跟01的那个)
2004-12-8 15:37
爱喝绿茶
讲得很详细啊,不知道我的疑问可不可以解决一下:战役地图如何编辑?
2004-12-15 12:28
夜游魂
如果能编辑地图不是爽坏坏啦~~~~~~~~~``
2004-12-15 13:11
Phoenix
地图目前无法编辑。如果能编辑的话,就可以产生很多马超传、孙权传、刘备传了!
2004-12-16 11:36
金圭子
看见猎雕两个字进来看看^_^
2004-12-17 13:21
金圭子
[quote]原帖由[i]坏蛋之典型者[/i]于2004-12-15, 13:11:10发表
地图目前无法编辑。如果能编辑的话,就可以产生很多马超传、孙权传、刘备传了! [/quote]
对了,“战役地图”是不是就是每关的大地图??
这个东西现在都可以分解出来了,也就是说数据结构都已经出来了,为什么不能编辑呢?
2004-12-17 13:53
van
这个东西现在都可以分解出来了,也就是说数据结构都已经出来了,为什么不能编辑呢?
谁分解出来了?
2004-12-20 14:27
金圭子
我不知道“战役地图”是什么东西?
你的“三国志系列图像文件格式浅析”里面不也有三国志曹操传的地图格式解析么?:
[url=http://www.xycq.net/forum/index.php?showtopic=34607]http://www.xycq.net/forum/index.php?showtopic=34607[/url]
另外我记得以前是轩辕还是那儿有人做了一个解光荣各种图片的一个程序,对三国志1~9、英杰三传还有轩辕剑的图片解图的。我用这个做过曹操传人物移动、攻击的gif小图(有人要的话我弄上来)
2004-12-20 17:21
van
那个看图的程序是我做的
至于地图的格式,早就有了,那是03年浮生宛如寄研究出来的。有人做就可以编辑啦,不过光改那个是没有用的
2004-12-20 18:31
幽人独往来
[quote]原帖由[i]金圭子[/i]于2004-12-20, 14:27:05发表
我不知道“战役地图”是什么东西?
你的“三国志系列图像文件格式浅析”里面不也有三国志曹操传的地图格式解析么?:
[url=http://www.xycq.net/forum/index.php?showtopic=34607]http://www.xycq.net/forum/index.php?showtopic=34607[/url]
另外我记得以前是轩辕还是那儿有人做了一个解光荣各种图片的一个程序,对三国志1~9、英杰三传还有轩辕剑的图片解图的。我用这个做过曹操传人物移动、攻击的gif小图(有人要的话我弄上来) [/quote]
是什么?弄来看看吧,偶有兴趣~~~
2004-12-20 23:57
奉孝
[quote]原帖由[i]金圭子[/i]于2004-12-20, 14:27:05发表
我不知道“战役地图”是什么东西?
你的“三国志系列图像文件格式浅析”里面不也有三国志曹操传的地图格式解析么?:
[url=http://www.xycq.net/forum/index.php?showtopic=34607]http://www.xycq.net/forum/index.php?showtopic=34607[/url]
另外我记得以前是轩辕还是那儿有人做了一个解光荣各种图片的一个程序,对三国志1~9、英杰三传还有轩辕剑的图片解图的。我用这个做过曹操传人物移动、攻击的gif小图(有人要的话我弄上来) [/quote]
我想要~
可以弄上來嗎??
萬分感謝~
2004-12-21 01:32
幽人独往来
[quote]原帖由[i]奉孝[/i]于2004-12-20, 23:57:03发表
[quote]原帖由[i]金圭子[/i]于2004-12-20, 14:27:05发表
我不知道“战役地图”是什么东西?
你的“三国志系列图像文件格式浅析”里面不也有三国志曹操传的地图格式解析么?:
[url=http://www.xycq.net/forum/index.php?showtopic=34607]http://www.xycq.net/forum/index.php?showtopic=34607[/url]
另外我记得以前是轩辕还是那儿有人做了一个解光荣各种图片的一个程序,对三国志1~9、英杰三传还有轩辕剑的图片解图的。我用这个做过曹操传人物移动、攻击的gif小图(有人要的话我弄上来) [/quote]
我想要~
可以弄上來嗎??
萬分感謝~ [/quote]
我找到了,不过要VB支持
2004-12-21 11:07
金圭子
[quote]原帖由[i]幽人独往来[/i]于2004-12-21, 1:32:43发表
[quote]原帖由[i]奉孝[/i]于2004-12-20, 23:57:03发表
[quote]原帖由[i]金圭子[/i]于2004-12-20, 14:27:05发表
我不知道“战役地图”是什么东西?
你的“三国志系列图像文件格式浅析”里面不也有三国志曹操传的地图格式解析么?:
[url=http://www.xycq.net/forum/index.php?showtopic=34607]http://www.xycq.net/forum/index.php?showtopic=34607[/url]
另外我记得以前是轩辕还是那儿有人做了一个解光荣各种图片的一个程序,对三国志1~9、英杰三传还有轩辕剑的图片解图的。我用这个做过曹操传人物移动、攻击的gif小图(有人要的话我弄上来) [/quote]
我想要~
可以弄上來嗎??
萬分感謝~ [/quote]
我找到了,不过要VB支持 [/quote]
他是vc写的,好像就是von吧?我当时没来轩辕,是某人给我的(好像是chouba)。
一共是两个程序,一个我们家装了vb就可以用了,另一个可以看轩辕剑的我在公司的xp可以用,家里面的就不行
2004-12-21 11:09
金圭子
[quote]原帖由[i]van[/i]于2004-12-20, 17:21:23发表
那个看图的程序是我做的
至于地图的格式,早就有了,那是03年浮生宛如寄研究出来的。有人做就可以编辑啦,不过光改那个是没有用的 [/quote]
是不是说这个只有图片??
那还需要什么呢??
2005-1-9 17:40
魏延不死
我在ultraedit10.20c里发现在文章说明里的很多位置都找不到,或者在那个位置的数据不对,这是为什么呢?
2005-1-9 21:01
魏延不死
例如下图中,被选中的两组数字按前后顺序是武力与统率,但位址与文章中说的不一样好像?
2005-1-9 21:31
Phoenix
你的是不是解压后的DATE
2005-1-9 22:20
ssbye
[quote]原帖由[i]Phoenix[/i]于2005-01-09, 21:31:28发表
你的是不是解压后的DATE [/quote]
这个是解开的data文件,回魏延不死,改游戏不要教条,van的地址是一个范围,还需要你自己去实践,如果要更详细的地址解释去看我的帖子
[url=http://www.xycq.net/forum/index.php?showtopic=18760]http://www.xycq.net/forum/index.php?showtopic=18760[/url]
小康修改部分。
对这个帖子我的理解是“师父领进门,修行在个人”。van已经给了那么多的有用的信息,剩下的就是自己的实践了,修改不是速成的,是要慢慢培养的啊 。
2005-1-9 22:56
van
第一个Char.dat。人物初始属性,512*20h。
0h~ch:Name
dh、fh:Index之类的东西(具体见下面的说明)
12h~16h:五围(*2就是统武政智魅)
17h:HP
19h:MP
1ah:兵种编号
1bh:Lv
那个只是相对地址,比如曹操的名字是18C,那么五围就从18C+12=19e开始。
其实自己看看就很容易发现了
2005-1-10 12:49
魏延不死
多谢SSBYE与VAN太守两位.
这样的话我就可以找到了,只是人物属性的index部分有点晕.
例如,我觉得:
曹操的形象部分为 00 00 00 00
夏候惇的为 00 01 00 01
张辽的为: 00 02 00 02
关羽的为: 00 06 00 06
不知是不是这样子的?我想确认一下,另外前面的06和后面的06的作用好像是不同的吧?
2005-1-10 13:37
hubuchou
这个不是战场上的战斗形象,而是控制脸谱和更衣形象(在军营里你会看到大家开会时几个人站在那里),像夏侯惇拔矢啖睛之后,脸就会变成蒙住一只眼睛的样子。一般不建议改这个。
战斗形象在ekd5.exe里面,60D9H处开始。详情见SSBYE的那篇文章。
2005-1-10 13:49
金圭子
哪篇???
是在这个论坛的么?
2005-1-10 17:22
ssbye
[quote]原帖由[i]金圭子[/i]于2005-01-10, 13:49:36发表
哪篇???
是在这个论坛的么? [/quote]
就是上面回帖的那个链接[url=http://www.xycq.net/forum/index.php?showtopic=18760][color=blue]我对曹操传修改的实用汇总[/color][/url]。
2005-1-11 21:05
hubuchou
研究了一下战力减弱的问题,
4D 00
41 00 XX XX 00由ID决定武将;01由出场顺序决定武将;02区域内所有武将
02 00 XX XX 41后为00时为武将ID;否则为FF
04 00 XX XX XX XX 我方武将出场顺序
04 00 XX XX XX XX 坐标
04 00 XX XX XX XX
04 00 XX XX XX XX
04 00 XX XX XX XX
03 00 XX XX 00我军;01友军;02以上敌军
2f 00 XX XX 00攻01防02精03爆04士05移
18 00 XX XX 00下降02增加
30 00 XX XX 状态
04 00 XX XX XX XX 减少HP
04 00 XX XX XX XX 减少MP
30后面的状态如下:
00、01代表正常
02、03是麻痹
04、05是禁咒
06、07是麻痹加禁咒
08、09是混乱
0a、0b是麻痹加混乱
0c、0d是禁咒加混乱
0e、0f是混乱加麻痹加禁咒
10、11是中毒
12、13是麻痹加中毒
14、15是禁咒加中毒
16、17是麻痹加禁咒加中毒
18、19是混乱加中毒
1a、1b是麻痹加混乱加中毒
1c、1d是禁咒加混乱加中毒
1e、1f是禁咒加麻痹加混乱加中毒
(状态是从SSBYE的小康修改里找来的,随便试了两个都是符合的)
2005-1-12 14:32
hubuchou
[quote]原帖由[i]van[/i]于2004-12-02, 13:32:07发表
那么我们就来看看第二部分。这一部分的偏移存放在第e字节(比如说第一个剧本s_00.eex里,第二部分的偏移就是0x1dfe)。找到第二部分开始的地方以后,首先看到的是一个整数,说明这个剧本里面有多少个事件,之后我们就能看到许多个以0200050000开头的事件了。[/quote]
以前没注意到这句话,现在终于发现了问题所在,解决了个人装备设定的问题,现在可以给更多的人增加特殊装备了。
以汜水关为例,首先找到“个人装备设定”处,在这几个字后面有个6A(26*n+2,表示给n个人设定特殊装备),把它改成84,然后插入26字节,格式如下:
48 00
02 00 XX XX 武将ID
3B 00 XX XX 特殊武器代码
49 00 XX XX 等级
3C 00 XX XX 特殊防具代码
49 00 XX XX 等级
3D 00 XX XX 特殊辅具代码
然后到eH处把pos更新一下,也加上1AH,汜水关原为EE 1B,改成08 1C,就OK了。
特殊武器代码(3B):
17雌雄双剑 18青釭剑 19倚天剑 1a古锭刀
1b青龙刀 1c蛇矛 1d方天画戟
1e吕布之弓 1f李广之弓
20流星锤 21双鞭
22金火罐炮
23芭蕉扇 24五火神焰扇 25白羽扇
26七星剑 27圣者宝剑
特殊防具代码(3C):
08镜铠 09黄金铠 0a连环铠 0b白银铠 0c龙鳞铠
0d飞龙道袍 0e鹤氅 0f漆黑道服 10凤凰羽衣
特殊辅具代码(3D):
02皮盾 03铜盾 04白银盾 05风神盾
06皮制马铠 07铜制马铠
08风车轮
09爪黄飞电 0a绝影 0b赤兔 0c的卢
0d皮盔 0e铜盔 0f铁盔
10方巾 11纶巾 12诸葛巾
13布手套 14皮手套
15没羽箭
16孙子兵法 17孟德新书 18青囊书 19太平青领道
1a太平要术 1b遁甲天书 1c六韬 1d三略
1e豆袋 1f玉玺
20青龙宝玉 21朱雀宝玉 22玄武宝玉 23白虎宝玉
装备等级如果为FF FF,则由该武将的等级决定。
要想设定更多的人当然也可以了,每多设定一个人,文件长度增加26字节。
2005-1-12 15:38
幽人独往来
以汜水关为例,首先找到“个人装备设定”处,在这几个字后面有个A6
是不是应该是6A啊?
还有“然后到eH处把pos更新一下,也加上1AH,汜水关原为EE 1B,改成08 1C”这一句不太懂。麻烦解释一下行么?站内也行,多谢。
2005-1-12 16:00
hubuchou
啊,是6A,哈哈。汜水关eH处这个EE 1B表示在1BEEH处开始是该剧本的事件设置,由于在此前插入了26字节,所以要把这个地方改成1BEE+1A=1C08H,表示现在从1C08H处开始事件设置。
2005-1-12 16:12
幽人独往来
懂了,多谢多谢。
2005-1-13 23:06
幽人独往来
hubuchou兄,我又有问题请教了呵呵。
那个战力衰弱处理具体应该怎么添加?
2005-1-14 20:05
夜游魂
这个不错~但我问一下,如果我想在没有战力减弱的战役里增加战力减弱设置要怎么加?! 直接加到文件尾再改一下POS可以吗
2005-1-14 20:59
hubuchou
如果剧本中本来没有战力减弱的话,我就没办法了,除非再深入研究一下事件设置,剧本的第二部分有一个字节储存事件个数,把事件个数加一,再按照VAN在八楼所说的设置,自己增加一个事件,设置事件长度、条件等等,比较麻烦~~
2006-6-25 16:25
awei4life
好复杂的 做剧本很复杂啊 我用太守的剧本编辑器也做好长时间
2006-7-5 03:29
雪man
回复 #8 van 的帖子
请问单挑的动画怎样制作?
2006-7-5 18:33
van
你可以研究一下原版曹操传单挑部分的代码
2006-8-24 21:16
金圭子
[quote]原帖由 [i]曹操的小卒[/i] 于 2006-8-24 15:38 发表
不能编地图正遗憾 [/quote]
能编啊,这个是刚刚开始研究曹操传时候的成果了,过了几年,现在自然能编了。
起码我的程序就能编
2007-7-28 17:15
12703921
为什么单挑编程好了.战斗里却显示不出来..然后就出错,关闭了
2007-8-3 21:26
北岭怪侠
原来这么麻烦啊。我以为用剧本修改器就行了
2009-6-8 14:21
云中鬼眼
好帖:^%
2009-6-12 19:38
幽兰鬼剑
很详细的说`````:^%:^%:^%````
2010-1-22 01:27
xju136
:hz1018:
2010-5-19 02:13
田建享
看到头晕 佩服楼主
能弄这么多 :hz1024:
2010-8-5 08:13
窗边的小豆豆
怎么我编辑的曹操传人物说话都乱码
2011-6-25 14:45
红泪飞霜
:hz1009:
2011-7-12 16:43
曹?刘!孙………
我要曹操传制作器,帮我
~~~~(>_<)~~~~ ~~~~(>_<)~~~~
2012-11-6 14:56
zhaoqwer
看得眼晕 新手伤不起啊
2014-9-30 15:49
1781956155
呵呵,谁能手把手教我制作MOD啊
2015-1-14 18:58
yyqjxj
感谢楼主分享!!!
2015-7-18 22:51
2528734513
看着就闹听啊!
2024-9-30 02:56
okokwori
这个东西有点看不懂
页:
[1]
Powered by Discuz! Archiver 5.0.0
© 2001-2006 Comsenz Inc.