标题: 卧龙传 修改, 修改剧本文件
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-23 19:59 资料 主页 短消息 看全部作者
卧龙传 修改

我修改的是剧本文件SINARIO.DAT,存盘文件SAVE.DAT和它的文件结构是一致的。

文件分为四个结构完全相同的部分,分别对应4个剧本或存档。
文件大小共88832字节,每个剧本占1/4,就是22208个字节。用UltraEdit打开看,到0x000056C0之前就是第一个剧本了。

每个剧本又分为以下几个部分,下面以用UltraEdit打开后的第一个剧本来描述,其中xx是我不知道意义的:
1、剧本信息,从0x00000000-0x0000007f,共0x80字节:
  xx xx xx AA BB xx CC xx QQ RR SS TT xx xx xx PP
  GG DD xx xx xx xx xx xx HH xx II II JJ JJ KK KK
  LL xx MM MM NN NN OO OO xx xx xx xx xx xx xx xx
  xx xx xx xx xx xx xx xx xx xx EE xx xx xx xx xx
  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    AA - 剧本起始日期:日;
    BB - 剧本起始日期:月;
    CC - 剧本起始日期:年;
    DD - 剧本编号:1、2、3和4;
    EE - 势力数目,如第一剧本有22个势力,第四剧本只有4个;
    FF - 剧本文件中是剧本名,汉字是BIG5码,0xA1 0x40是空格,以下同;存盘文件是文字描述从第几个剧本开始,控制的势力君主和军师的姓名
    GG - 君主对你的信赖度,剧本文件中是最大的0xFF;
    HH、LL - 分别是当月和下月的税率;剧本文件中初始值为0x12(即18)
    II、JJ、KK、MM、NN、OO - 分别对应当月和下月三个兵种的征兵数;
    PP - 玩家控制势力的编号。可以修改这里改变控制的势力,但显示的君主和军师得修改FF字段的信息;
    QQ、RR、SS、TT - 对应显示、音效、战略速度和战术速度的设置;

2、势力信息,0x00000080-0x0000067f,最多可有24个势力,实际只在第一个剧本有最多的22个势力,可自己扩充2个势力:
每个势力共64个字节,在UltraEdit下就是4行,格式如下:
  AA BB CC DD EE EE FF FF GG GG 00 00 00 00 00 00
  00 00 00 00 00 00 xx xx HH xx 00 00 00 xx 00 00
  II II II JJ 00 00 00 00 xx 00 LL 00 00 00 00
  00 00 00 00 00 00 00 00 00 00 00 00 00 00 KK xx
    AA - 势力状态,0x80表示正常,0x00表示不存在;
    BB - 君主编号,对应到武将信息的顺序号,0x00表示武将信息里的第一个,0x01对应到第二个,余类推;
    CC - 军师编号,对应到武将信息的顺序号,0x7F表示起始没有指定军师;
    DD - 首都,对应到城池信息的顺序号;
    EE、FF、GG - 分别对应起始骑兵、弓兵、步兵数目;显示的数目是这里的数目乘以10,这个游戏中的兵数目都是这样处理的,显示的数目是实际的10倍,因此所谓的10兵战术其实就是一个兵,而这个兵就是那个武将自己;曾经喜欢用武力比较高的光杆武将手动控制野战去取得胜利。
    HH - 武将数目;新游戏选择势力时看到的势力武将数,实际拥有数目由武将信息里的数据决定;
    II - 钱粮数目;
    JJ - 城池数目;
    KK - 势力编号,从0x00到0x17;
    LL - 外交官,0xFF表示没有指定;

3、外交信息,0x00000680-0x000008BF:
每个势力24字节,分别对应于所有24个势力的友好度,数值越大友好度越高,对自己是最大的0xFF;

4、城池信息,0x000008C0-0x000021BF;
每座城池32字节,可以最多有200座城池,实际只有192座。
每座城池数据格式如下:
  AA BB CC CC CC CC CC CC xx xx xx xx DD DD EE EE
  FF GG HH II xx xx xx xx xx JJ xx xx xx xx xx xx
    AA - 用途不明,取值0x00-0x0F;
    BB - 所属势力编号;编号是0x18时是空城,因最大的势力编号是0x17;
    CC - 城池名称;
    DD - 最大生产力;
    EE - 当前生产力;
    FF - 上升值;显示的上升值是这个数减去100;
    GG - 防灾值;
    HH - 最大城兵数;显示的数目是这个值乘以10;
    II - 当前城兵数;显示的数目是这个值乘以10;
    JJ - 内政官,0xFF表示没有指定;

5、0x000021C0-0x000022BF,这段数据用途不明;

6、军团信息,0x000022C0-0x000042BF;
每个军团64字节,可最多存放128只军团的信息,对应于之后的武将信息顺序,即每个武将对应一个军团信息;
每个军团的信息格式如下:
  AA BB CC DD EE EE FF xx xx xx xx xx xx xx xx xx
  xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx
  GG xx xx xx xx xx xx xx xx HH II xx xx HH II xx
  xx HH II xx xx HH II xx xx HH II xx xx HH II xx
    AA - 用途不明,应该是军团状态;
    BB - 所属势力;
    CC - 武将编号,对应到武将信息的顺序号;
    DD - 用途不明;
    EE - 总兵数;
    FF - 士气;
    GG - 目的地;
    HH - 分别对应主将、先锋、左翼、右翼、左备和右备的士兵数;
    II - 分别对应主将、先锋、左翼、右翼、左备和右备的兵种;0x01是骑兵,0x02是步兵,0x03是弓兵


7、武将信息,0x000042C0-0x000052BF
每个武将32字节,可存放128个武将的数据,前127个武将可出场,最后一个是留给自创军师的。
每个武将的数据格式如下:
  AA BB CC CC CC CC CC CC DD DD DD DD DD DD EE FF
  GG HH II JJ xx xx xx NN KK LL xx xx MM OO xx xx
    AA - 武将属性,低4位为0,bit7是1才会出场,bit6表示是君主,bit5用途不明,bit4是1则会自杀,所以只要将这个值是0x90、0xB0、0xD0、0xF0分别改为80、A0、C0、E0就不会有武将自杀了。;
    BB - 头像编号;
    CC - 姓名;
    DD - 号;一般都与姓名同,小猪填的是卧龙,庞统填的是凤雏,我曾经改过一个版本将这里改成每个人的字,像周仓这种人物就没办法了,历史上就没这个人,演义里也没给他取个字;
    EE - 隐藏的城塞战能力;
    FF - 隐藏的野战能力;
    GG - 隐藏的水战能力;
      以上3个隐藏能力低四位都是0,游戏中的武将给定的最大值是0xA0,曾经发过一个隐藏能力表(http://www.xycq.net/forum/viewthread.php?tid=33098),里面的数值只取了高4位来描述,即最大是10(即A);
    HH - 武术;
    II - 统率;
    JJ - 政治;
      以上3个能力高四位都是0,最大是0x0F,也就是15了,修改这个值超过15手动控制战斗的时候要小心,有可能你一进场士气就超低。
    NN - 武将当前状态,0x00是待命,0x01是军团长,0x02内政官,0x03外交官,0x04表示被俘;
    MM - 武将当前状态正常时是所属势力编号,0xFF表示起始无所属;被俘时是俘获方编号
    OO - 武将被俘时原属势力,存盘文件才使用;
    KK - 剧本开始多久后出场,等待的月数,起始无所属时有效;
    LL - 该武将下一个将投奔的势力;起始无所属的表示他登场后加入的势力,有所属的表示他会投奔的势力(本家被灭后只会加入这一势力,被该势力活捉后有可能投降),值为0xFF则由电脑随机决定将加入的势力,一般电脑会考虑平衡势力的武将数目,将越少得到的机会越大。我曾经自创一个武将,剧本开始后一个月登场,不设置将投奔的势力,第一剧本十次有九次是给了刘勳。
 
8、0x000052BF-0x000056BF,这段数据用途不明;


此帖先在悠游发了(http://www.yoyobbs.com/showthread.php?t=172561),想想不能漏了这边,也发一个。

[ 本帖最后由 老六 于 2006-9-29 01:59 编辑 ]


顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-24 01:35 资料 主页 短消息 看全部作者
直接在Windows下玩,速度一直是个问题。我现在是用Dosbox玩,这个问题就可以解决了。


顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-24 19:02 资料 主页 短消息 看全部作者
用DosBox玩,这个游戏里的速度调整是完全可用和有效的,而且DosBox本身模拟的CPU速率也是可调的。
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-24 19:50 资料 主页 短消息 看全部作者
直接改Dosbox.conf就是
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-25 22:03 资料 主页 短消息 看全部作者


QUOTE:
原帖由 luke19821001 于 2006-9-25 20:31 发表
用了DOSBOX后,发现速度只有普通有效了,高速模式无法加速,打仗好还,收税太慢了。

“只有普通有效了,高速模式无法加速",这话怎么理解?

我的是完全可调,5个档次的速度差别很大。
可能是我改过dosbox.conf文件,主要是改[CPU]段:
[cpu]
# core -- CPU Core used in emulation: normal,full,dynamic.
# cycles -- Amount of instructions dosbox tries to emulate each millisecond.
#           Setting this higher than your machine can handle is bad!
# cycleup   -- Amount of cycles to increase/decrease with keycombo.
# cycledown    Setting it lower than 100 will be a percentage.

core=normal
cycles=19500
cycleup=500
cycledown=20

默认安装时记得是cycles=7500,我的改成了19500,我现在的CPU芯片是2.53G的。以前1.7G的CPU芯片时记得我是设成12500在玩,也能明显感觉到各档速度之间的差别,尤其战术速度选最高速时经常错过出击的最佳时机。

”收税太慢“,指的是什么?

[ 本帖最后由 老六 于 2006-9-25 22:04 编辑 ]
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-25 22:16 资料 主页 短消息 看全部作者


QUOTE:
原帖由 luke19821001 于 2006-9-25 20:34 发表

教你,你进去后,就这样输入
假设你的游戏是放在D:\wlz文件夹下
输入: mount c d:\wlz  回车
然后你输入c:回车
然后就相当于进入d:\wlz文件甲了,直接运行play就好了

奇怪,我玩过的版本里都没有 play.com,play.exe 或 play.bat 文件。倒是有个 start.bat,但这个批处理里边会加载一个 gmouse,这个玩意儿在 windows 中加载可能会导致游戏死翘翘。我玩的时候都是直接运行 ynvshell.com。
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-26 11:22 资料 主页 短消息 看全部作者


QUOTE:
原帖由 luke19821001 于 2006-9-26 10:12 发表
再问一下LZ,看你的数据,武将下一个投奔的人是固定的?那我俘虏的人难道永远没有希望投奔我?
在玩公孙赞,一出来就一个赵云,其他的什么都没有。灭了袁绍却招不到人

武将下一个投奔的势力如果不是0xFF,也不是你控制的势力,他第一次改变所属时肯定是那一家,除非那一家势力被灭。
灭了袁绍还是有希望得到田丰和审配的,全看运气,如楼上所说,S/L吧!
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-26 23:58 资料 主页 短消息 看全部作者
兵种的分布:
  骑兵:北  > 南;
  弓兵:东西 > 中央;
  步兵:中央 > 东西。
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-27 18:56 资料 主页 短消息 看全部作者


QUOTE:
原帖由 马岱 于 2006-9-27 08:11 发表
弓兵:东西 > 中央  有误

马腾在最西侧,但招不到弓兵,应该是南>北。

以前总结的东西,已经想不起是怎么得出来的了。刚刚试验了一下马腾和孟获,确实是错了。
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-27 19:05 资料 主页 短消息 看全部作者


QUOTE:
原帖由 天下本无事 于 2006-9-27 08:51 发表

请教一下:手动攻城怎么打啊?

手动攻城手上一定要有骑兵部队,先单支单支的上去打城门,步兵和弓兵就不要上了。
主将也不要上,被伤到的话掉士气很厉害。
城门快开时布阵于中间,趁对方大部分兵力在城墙上时突进去围殴对方主将。

攻城应该算是战斗指挥比较难控制的了!
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-27 20:12 资料 主页 短消息 看全部作者
我也想过修改电脑的出兵顺序,但没完成。
曾经专门花了一段时间去反编译的游戏代码看看,想利用原有资源改写游戏,希望增加一些AI。但没看完,现在更是难以找到足够的时间了。还是请哪位有SoftIce的大虾跟进去看看这个判断在哪里!
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-27 22:01 资料 主页 短消息 看全部作者


QUOTE:
原帖由 luke19821001 于 2006-9-27 21:32 发表

为什么不用指挥?我指挥打野战比电脑打强得多。
自己指挥的话,武力是非常重要的,怎么说菜鸟和名将没有区别?到是统御好象没有什么用,不知道这属性是干什么的,难道只是参与电脑委任城塞战的计算而已?

一旦用指挥,隐藏能力就不起作用了,全靠武力和统御,再加上兵力和士气。而隐藏能力是这个游戏的一大特色,菜鸟和名将就是靠它来区别,失去就太可惜了!

统御决定该武将的带兵能力,你喜欢战斗指挥,应该会注意到低统御的武将结阵会比较慢,移动的话阵型很容易散乱,阵型一散部队的攻防都要降低。
战斗指挥很重要的一点就是要抓住对方阵型散乱的时机突击。
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-9-28 00:01 资料 主页 短消息 看全部作者
隐藏的城塞能力不仅仅是守城,也指他的攻城。

我喜欢使用全骑,无论野战还是攻城,攻击力都是最强的,而且行军速度比混编要快(你在抱怨钱粮的问题,用全骑的话,行军会节约大笔路费)。
两只大军对垒时,只要我一支部队攻陷敌城,其它满士气的军团就直接追击,不满的可以留下休息一两天再紧跟上去。由于电脑多半是混编,我的追击部队跟在他后面,速度只能和他一样,这样留下休息的部队就可以跟上大部队,如此他一进城我就始终有士气全满的部队开始攻城,对方很难得到休息的时间,经常可以把对方一支花费大把路费的大兵团全歼。

游戏中还是在遵循骑克步,步克弓,弓克骑。从战斗指挥里可以看到,弓兵对骑兵的远程伤害还是很强的。只是骑兵的速度优势和近身后的攻击力太强而因此更突出一些。
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-10-10 23:00 资料 主页 短消息 看全部作者


QUOTE:
原帖由 桠枫 于 2006-10-10 14:47 发表
问个问题,怎样才能不让敌人自杀啊。我抓的很多NB武将都自杀了,我郁闷。
我一般打第一个剧本,选刘备,然后不招兵,也不编成,直接休息,节约钱啊。然后等到吕布快灭时快速占领徐州,把吕布的城全占了。还有个 ...

我在帖子里(顶楼)的武将信息里已经写了,每个武将数据的第一个字节,只要将这个值是0x90、0xB0、0xD0、0xF0分别改为80、A0、C0、E0,该武将就不会自杀了。
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2006-10-12 20:18 资料 主页 短消息 看全部作者


QUOTE:
原帖由 马岱 于 2006-10-12 15:07 发表


老六兄帮我们做一个吧。

我正在重新做一个剧本&存档的编辑器,到时候给大家自己改吧!只是不好说进度,最近公司里的事太忙,成天被老板催得屁滚尿流
另外,我已经没有原始的剧本文件了,现在的都被我改得太多,调整了好多人物的能力值,都是些自己对三国人物的粗浅见解,不足以拿出来见人!

QUOTE:
原帖由 马岱 于 2006-10-12 16:26 发表


后面三个可能有问题,但前面几个肯定是可以的。

这里面还有随机的情况,比如诸葛亮攻吕布一般是没问题的(满兵对满兵,兵种一样),但是也会遇到偶尔拿不下的情况。

这个应该跟具体城池的情况有关,城兵多(可以理解为城防高)的话,就有可能小猪拿不下小强!
顶部
性别:男-离线 老六

Rank: 4
组别 士兵
级别 护军
功绩 5
帖子 470
编号 12392
注册 2004-7-19


发表于 2007-3-22 19:48 资料 主页 短消息 看全部作者


QUOTE:
原帖由 逍遥轩 于 2007-3-11 20:08 发表

哦,玩家操控也会?倒是从来没遇到过。
兵力少于3000,回都城的路被切断,也没受到攻击就会消失。但一般多久会消失会城呢?
因为曾经S/L读档看电脑的这招消失,且每次时间都不一样,兵力也并非都是<3000 ...

只要你的某个军团没有通路返回首都,而此时你选择回去解编,就会看到这个军团消失了。
当你的军团作战失败,而且兵力少于3000,会自动回首都补兵,此时若回首都无通路同样也会解体而消失。
顶部

正在浏览此帖的会员 - 共 2 人在线




当前时区 GMT+8, 现在时间是 2025-8-21 01:59
京ICP备2023018092号 轩辕春秋 2003-2023 www.xycq.org.cn

Powered by Discuz! 5.0.0 2001-2006 Comsenz Inc.
Processed in 0.016501 second(s), 9 queries , Gzip enabled

清除 Cookies - 联系我们 - 轩辕春秋 - Archiver - WAP