游侠NETSHOW论坛

标题: 抛砖引玉了```三國群英傳VII剧情事件修改方法和说明 [打印本页]

作者: sakuyazh    时间: 2008-2-23 15:15:18     标题: 抛砖引玉了```三國群英傳VII剧情事件修改方法和说明

关于历史事件的修改,,其实很简单,但是有些地方又容易出错,所以我就随便写写了。

首先字段名的含义。 找了很多写修改的帖子都没有人说明HISTORY的,所以我按自己的理解说明一下。以桃园结义为例。


[History]
No = 18                         -----事件编号
ClassType = 20 ;武将强化        -----事件类型
Priority = 1                        -----优先级
Age = 1                                
S_Year = -1                        -----事件开始时间
S_Season = -1                        -----开始的季节
E_Year = -1                        -----结束时间
E_Season = -1                        -----结束的季节  以上4项值为-1时即代表无限制
PreHistory = 0                        -----指向事件
NedHistory01 = 0                -----所需事件
NedHistory02 = 0
NedHistory03 = 0
Pic = 0                                -----事件CG
LordA = 579,0 ;刘备                -----参与事件君主
LordALv = 0                        -----君主等级
bCustomA = 0                        
LordB = 0
LordBLv = 0
bCustomB = 0
LordC = 0
LorCLv = 0
bCustomC = 0
S_ProposeGeneral = 0                -----这一部分应该都是作为旁白一类的对话出现在剧情中的
S_ProposeString = 0
S_AnsProposeString = 0
S_DiplomaticGeneral = 0
S_DiplomaticString = 0
S_General01 = 360,0 ;张飞        -----参与事件武将 格式按照武将编码,0
S_StringA01 = 66215,1                -----这里两个STRING都是对话,格式按照STRINGID,1
S_StringD01 = 0                        -------更新一下STRINGID后面的数字代表该字段后几句话,比如12345,1代表第12345句话后面的一句
S_MinGenLv01 = 0                       -----我的理解是A和D是请求和完成,关于句子出现的顺序不同的类型也不一样,后面再说
S_MinLoyal01 = 0
S_City01 = 0                        -----参与事件人物所在城市,一般用不到
S_General02 = 579,0 ;刘备
S_StringA02 = 66216,1
S_StringD02 = 0
S_MinGenLv02 = 0
S_MinLoyal02 = 0
S_City02 = 0
S_General03 = 697,0 ;关羽
S_StringA03 = 66217,1
S_StringD03 = 0
S_MinGenLv03 = 0
S_MinLoyal03 = 0
S_City03 = 0
S_General04 = 0
S_StringA04 = 0
S_StringD04 = 0
S_MinGenLv04 = 0
S_MinLoyal04 = 0
S_City04 = 0
S_General05 = 0
S_StringA05 = 0
S_StringD05 = 0
S_MinGenLv05 = 0
S_MinLoyal05 = 0
S_City05 = 0
S_General06 = 0
S_StringA06 = 0
S_StringD06 = 0
S_MinGenLv06 = 0
S_MinLoyal06 = 0
S_City06 = 0
S_General07 = 0
S_StringA07 = 0
S_StringD07 = 0
S_MinGenLv07 = 0
S_MinLoyal07 = 0
S_City07 = 0
S_General08 = 0
S_StringA08 = 0
S_StringD08 = 0
S_MinGenLv08 = 0
S_MinLoyal08 = 0
S_City08 = 0
S_General09 = 0
S_StringA09 = 0
S_StringD09 = 0
S_MinGenLv09 = 0
S_MinLoyal09 = 0
S_City09 = 0
S_General10 = 0
S_StringA10 = 0
S_StringD10 = 0
S_MinGenLv10 = 0
S_MinLoyal10 = 0
S_City10 = 0
D_LordBStringA = 0
D_LordBStringD = 0
D_General01 = 579,0 ;刘备
D_StringA01 = 66219,1,66218,1
D_StringD01 = 0
D_MinGenLv01 = 0
D_MinLoyal01 = 0
D_City01 = 0
D_General02 = 697,0 ;关羽
D_StringA02 = 66220,1
D_StringD02 = 0
D_MinGenLv02 = 0
D_MinLoyal02 = 0
D_City02 = 0
D_General03 = 360,0 ;张飞
D_StringA03 = 66221,1
D_StringD03 = 0
D_MinGenLv03 = 0
D_MinLoyal03 = 0
D_City03 = 0
D_General04 = 0
D_StringA04 = 0
D_StringD04 = 0
D_MinGenLv04 = 0
D_MinLoyal04 = 0
D_City04 = 0
D_General05 = 0
D_StringA05 = 0
D_StringD05 = 0
D_MinGenLv05 = 0
D_MinLoyal05 = 0
D_City05 = 0
D_General06 = 0
D_StringA06 = 0
D_StringD06 = 0
D_MinGenLv06 = 0
D_MinLoyal06 = 0
D_City06 = 0
D_General07 = 0
D_StringA07 = 0
D_StringD07 = 0
D_MinGenLv07 = 0
D_MinLoyal07 = 0
D_City07 = 0
D_General08 = 0
D_StringA08 = 0
D_StringD08 = 0
D_MinGenLv08 = 0
D_MinLoyal08 = 0
D_City08 = 0
D_General09 = 0
D_StringA09 = 0
D_StringD09 = 0
D_MinGenLv09 = 0
D_MinLoyal09 = 0
D_City09 = 0
D_General10 = 0
D_StringA10 = 0
D_StringD10 = 0
D_MinGenLv10 = 0
D_MinLoyal10 = 0
D_City10 = 0
O_LordString = 0                -----第三方君主的台词
O_ShowGeneral = 0               
O_ShowString = 0                -----第三方军师的台词
N_MinRelation = 0                -----最少友好度
N_MinMoney = 0                        -----最少金钱
N_MaxMoney = 0                        -----最多金钱
N_MinGenNum = 0                        -----麾下最少武将数
N_MinCityNum = 0                -----最少城池
N_MinPeopleHeart = 0                -----最少民心
N_SpecCity01 = 0                -----发生事件的城市
N_SpecCity02 = 0
N_SpecCity03 = 0
N_SpecCity04 = 0
N_SpecCity05 = 0
N_MinThingNum = 0                -----国库最少物品数
N_OwnThing01 = 0                -----国库应有物品
N_OwnThing02 = 0
N_OwnThing03 = 0
N_OwnThing04 = 0
N_OwnThing05 = 0
Thing01 = 0                        -----以下全为事件得到物品
ThingNum01 = 0
Thing02 = 0
ThingNum02 = 0
Thing03 = 0
ThingNum03 = 0
Thing04 = 0
ThingNum04 = 0
Thing05 = 0
ThingNum05 = 0
Thing06 = 0
ThingNum06 = 0
Thing07 = 0
ThingNum07 = 0
Thing08 = 0
ThingNum08 = 0
Thing09 = 0
ThingNum09 = 0
Thing10 = 0
ThingNum10 = 0
Money = 0                        -----事件所得金钱
MoneyRatio = 0                        -----金钱系数
People = 0                        -----增加/减少城市人口
PeopleHeart = 0                        -----…………民心
ReserveSoldier = 0                -----…………士兵
Str = 1                                -----武将力量改变
Int = 1                                -----……智力……
HP = 0                                -----……生命上限改变
MP = 0                                -----……技力…………
Title01 = 0                        -----得封官职
Title02 = 0
Title03 = 0
Title04 = 0
Title05 = 0
SFMagic = 0                        -----习得军事技
BFMagic = 0                        -----习得武将技
GenSkill = 0                        -----得到特性
ArmySkill = 0                        
ArmyGroupSkill = 0
Relation = 0                        -----友好度改变
AllianceDay = 0                        -----执行时长
BlockNo = 0
BreakDays = 0
BlockIndex = 0
FreeDays = 0
bDead = 0                        -----参与事件人物是否死亡
F_Relation = 0
IsUsed = 1
Version = 1

由于不同的事件模式下对话的顺序也不同,所以也顺便说一下已经测试修改过的事件模式。

1。武将表演和武将强化

很简单就是顺序的A01,A02,A03的顺序往下排。在只有两段对话的情况下可以由A01,A02,D01,D02的顺序完成。唯一的区别是武将表演模式下D_StringA01以后的对话是无法执行的。也就是说到S_StringA10剧情就结束。
加入对话的武将和台词就可以。而在武将强化模式下,因为要显示强化数据,所以有D_StringA01 = 66219,1,66218,1这样的写法,这里66219是刘备的台词,66218是强化效果,就是上面的武力+1,智力+1的对话框,下面D开头的对话也按照上面的顺序进行。

2。婚嫁


LordA = 1684,0 ;吉良雅
LordALv = 0
bCustomA = 0
LordB = 579,0 ;刘备
LordBLv = 0
bCustomB = 0
LordC = 415,0 ;曹操
LorCLv = 0
bCustomC = 0
S_ProposeGeneral = 1685,0 ;司马葶
S_ProposeString = 66022,2
S_AnsProposeString = 66024,1
S_DiplomaticGeneral = 1685,0 ;司马葶
S_DiplomaticString = 66025,2,66032,2
S_General01 = 1684,0 ;吉良雅
S_StringA01 = 0
S_StringD01 = 66027,1,66034,2
S_MinGenLv01 = 0
S_MinLoyal01 = 0
S_City01 = 0
S_General02 = 1688,0 ;黑崎一护
S_StringA02 = 0
S_StringD02 = 0
S_MinGenLv02 = 0
S_MinLoyal02 = 0
S_City02 = 0
S_General03 = 0
S_StringA03 = 0
S_StringD03 = 0
S_MinGenLv03 = 0
S_MinLoyal03 = 0
S_City03 = 0
S_General04 = 0
S_StringA04 = 0
S_StringD04 = 0
S_MinGenLv04 = 0
S_MinLoyal04 = 0
S_City04 = 0
S_General05 = 0
S_StringA05 = 0
S_StringD05 = 0
S_MinGenLv05 = 0
S_MinLoyal05 = 0
S_City05 = 0
S_General06 = 0
S_StringA06 = 0
S_StringD06 = 0
S_MinGenLv06 = 0
S_MinLoyal06 = 0
S_City06 = 0
S_General07 = 0
S_StringA07 = 0
S_StringD07 = 0
S_MinGenLv07 = 0
S_MinLoyal07 = 0
S_City07 = 0
S_General08 = 0
S_StringA08 = 0
S_StringD08 = 0
S_MinGenLv08 = 0
S_MinLoyal08 = 0
S_City08 = 0
S_General09 = 0
S_StringA09 = 0
S_StringD09 = 0
S_MinGenLv09 = 0
S_MinLoyal09 = 0
S_City09 = 0
S_General10 = 0
S_StringA10 = 0
S_StringD10 = 0
S_MinGenLv10 = 0
S_MinLoyal10 = 0
S_City10 = 0
D_LordBStringA = 0
D_LordBStringD = 0
D_General01 = 579,0 ;刘备
D_StringA01 = 66028,1
D_StringD01 = 66029,1
D_MinGenLv01 = 0
D_MinLoyal01 = 0
D_City01 = 0
D_General02 = 579,0 ;刘备
D_StringA02 = 66030,1
D_StringD02 = 0
D_MinGenLv02 = 0
D_MinLoyal02 = 0
D_City02 = 0
D_General03 = 586,0 ;刘莹
D_StringA03 = 66031,1, 66036,2
D_StringD03 = 0
D_MinGenLv03 = 0
D_MinLoyal03 = 0
D_City03 = 0
D_General04 = 0
D_StringA04 = 0
D_StringD04 = 0
D_MinGenLv04 = 0
D_MinLoyal04 = 0
D_City04 = 0
D_General05 = 0
D_StringA05 = 0
D_StringD05 = 0
D_MinGenLv05 = 0
D_MinLoyal05 = 0
D_City05 = 0
D_General06 = 0
D_StringA06 = 0
D_StringD06 = 0
D_MinGenLv06 = 0
D_MinLoyal06 = 0
D_City06 = 0
D_General07 = 0
D_StringA07 = 0
D_StringD07 = 0
D_MinGenLv07 = 0
D_MinLoyal07 = 0
D_City07 = 0
D_General08 = 0
D_StringA08 = 0
D_StringD08 = 0
D_MinGenLv08 = 0
D_MinLoyal08 = 0
D_City08 = 0
D_General09 = 0
D_StringA09 = 0
D_StringD09 = 0
D_MinGenLv09 = 0
D_MinLoyal09 = 0
D_City09 = 0
D_General10 = 0
D_StringA10 = 0
D_StringD10 = 0
D_MinGenLv10 = 0
D_MinLoyal10 = 0
D_City10 = 0
O_LordString = 0
O_ShowGeneral = 0
O_ShowString = 66038,1

A,B君主为婚嫁双方,STRINGID逗号后面的1和2分别为成事和不成事时的对话内容,AnsProposeString为反对该事件的言辞.
S_DiplomaticString之前为出使之前的君臣对话,按顺序进行。之后直接进入D_String部分,A和D与S_String对应,为事成与失败。D_String部分对话结束之后再回到S_String部分,作为出使回朝后的君主的反应。O_String部分为其他势力得到消息时的对话。


3。势力投靠
这是目前我认为最有修改价值的剧情,兵不血刃。。。。

LordA = 831,0 ;卑弥呼
LordALv = 0
bCustomA = 0
LordB = 1684,0 ;吉良雅
LordBLv = 0
bCustomB = 0
LordC =
LorCLv = 0
bCustomC = 0
S_ProposeGeneral = 0
S_ProposeString = 0
S_AnsProposeString = 0
S_DiplomaticGeneral = 0
S_DiplomaticString = 66243,1,66242,1
S_General01 = 828,0 ;须势理姬
S_StringA01 = 66253,1
S_StringD01 = 0
S_MinGenLv01 = 0
S_MinLoyal01 = 0
S_City01 = 0
S_General02 = 0
S_StringA02 = 66248,1
S_StringD02 = 0
S_MinGenLv02 = 0
S_MinLoyal02 = 0
S_City02 = 0
S_General03 = 0
S_StringA03 = 66246,1
S_StringD03 = 0
S_MinGenLv03 = 0
S_MinLoyal03 = 0
S_City03 = 0
S_General04 = 0
S_StringA04 = 0
S_StringD04 = 66256,1,66245,1
S_MinGenLv04 = 0
S_MinLoyal04 = 0
S_City04 = 0
S_General05 = 0
S_StringA05 = 0
S_StringD05 = 0
S_MinGenLv05 = 0
S_MinLoyal05 = 0
S_City05 = 0
S_General06 = 0
S_StringA06 = 0
S_StringD06 = 0
S_MinGenLv06 = 0
S_MinLoyal06 = 0
S_City06 = 0
S_General07 = 0
S_StringA07 = 0
S_StringD07 = 0
S_MinGenLv07 = 0
S_MinLoyal07 = 0
S_City07 = 0
S_General08 = 0
S_StringA08 = 0
S_StringD08 = 0
S_MinGenLv08 = 0
S_MinLoyal08 = 0
S_City08 = 0
S_General09 = 0
S_StringA09 = 0
S_StringD09 = 0
S_MinGenLv09 = 0
S_MinLoyal09 = 0
S_City09 = 0
S_General10 = 0
S_StringA10 = 0
S_StringD10 = 0
S_MinGenLv10 = 0
S_MinLoyal10 = 0
S_City10 = 0
D_LordBStringA = 66251,1,66249,1
D_LordBStringD = 0,0,66252,1
D_General01 = 0
D_StringA01 = 66250,1
D_StringD01 = 0
D_MinGenLv01 = 0
D_MinLoyal01 = 0
D_City01 = 0
D_General02 = 0
D_StringA02 = 66247,1
D_StringD02 = 0
D_MinGenLv02 = 0
D_MinLoyal02 = 0
D_City02 = 0
D_General03 = 0
D_StringA03 = 66255,1
D_StringD03 = 0
D_MinGenLv03 = 0
D_MinLoyal03 = 0
D_City03 = 0
D_General04 = 0
D_StringA04 = 66258,1
D_StringD04 = 0
D_MinGenLv04 = 0
D_MinLoyal04 = 0
D_City04 = 0
D_General05 = 0
D_StringA05 = 0
D_StringD05 = 0
D_MinGenLv05 = 0
D_MinLoyal05 = 0
D_City05 = 0
D_General06 = 0
D_StringA06 = 0
D_StringD06 = 0
D_MinGenLv06 = 0
D_MinLoyal06 = 0
D_City06 = 0
D_General07 = 0
D_StringA07 = 0
D_StringD07 = 0
D_MinGenLv07 = 0
D_MinLoyal07 = 0
D_City07 = 0
D_General08 = 0
D_StringA08 = 0
D_StringD08 = 0
D_MinGenLv08 = 0
D_MinLoyal08 = 0
D_City08 = 0
D_General09 = 0
D_StringA09 = 0
D_StringD09 = 0
D_MinGenLv09 = 0
D_MinLoyal09 = 0
D_City09 = 0
D_General10 = 0
D_StringA10 = 0
D_StringD10 = 0
D_MinGenLv10 = 0
D_MinLoyal10 = 0
D_City10 = 0
O_LordString = 66254,1,66257,1
O_ShowGeneral = 0
O_ShowString = 66254,1,66254,1

剧情模式为A投靠B。 这里要注意的是在势力投靠模式脚本中。General所指定的武将编号只会出仕而不会参与对话,就是说对话完全在君主A,B之间进行。
对话顺序为S_DiplomaticString = 66243,1,66242,1开始(一般这种模式的代码中,后面的ID都是对话框里的句子,前面是对话内容,比如这里,后面的ID代表XXX约见XXX,以对话框显示,前面的为见面时的第一句话,依此类推)D_StringA01--》S_StringA01--》D_StringA02--》S_StringA02--》D_StringA03--》S_StringA03--》。。。。。D_StringA10--》S_StringA10--》D_LordBStringA--》D_LordBStringD,结束。这里还有一个bDead = 0代码代表投靠方君主是否死亡。
把原事件中的bDead = 改成0就可以让陶谦不死而投靠刘备。

4。更新中。。。。。


另外有一点要说明,如果想给自己新建的君主(不是新君主是通过修改PCK文件所得的君主)设定剧情的话,事件本身要是有N_MinRelation设定的话。那么在NATION.ini文件中一定也要有对应的设定。比如要跟刘备势力最少友好度50,那么NATION文件中也要有设定,哪怕是0。如果没有设定的话,进入游戏时默认会给予50的友好度,但是读取事件时会因为RELATION值为NULL而卡机导致剧情异常或无法触发。

还有就是PIC字段。因为游戏里确实是有事件CG的设定的,只是目前没有找到调用方法,希望有高手解决。事件就是要有CG才王道。 以上。

[ 本帖最后由 sakuyazh 于 2008-2-25 16:58 编辑 ]
作者: sakuyazh    时间: 2008-2-23 15:16:10


好吧` 虽然我承认不知道能有多少人耐的下心看事件的代码,不过沙发还是要自己坐  以上
作者: gaoqi143    时间: 2008-2-23 15:24:58

很好很强大~~~

这个要支持

在我的一再“关心”之下终于写出来了~~~
作者: deathly    时间: 2008-2-23 15:31:18

我已经改过 逃园结义了
把武力 智力 +1
改成了 体力技力+10
作者: shenjunjie    时间: 2008-2-23 15:33:37

夜大人........................
快给我写剧情对白去................................
作者: sakuyazh    时间: 2008-2-23 15:36:11

原帖由 shenjunjie 于 2008-2-23 15:33 发表
夜大人........................
快给我写剧情对白去................................


丞相何出此言`
作者: shenjunjie    时间: 2008-2-23 15:37:59

嘛   你不是要加入魔王军么    想几个通用剧情出来吧
作者: sakuyazh    时间: 2008-2-23 15:47:10

那得带上我大小老婆和你`
作者: 长风吹云    时间: 2008-2-23 18:37:24

谢谢搂主,我偷走了(学143斑竹,到处偷东西。。。 )!!

我在加入我的说明时一定注明,你这位原作者!
作者: gaoqi143    时间: 2008-2-23 18:40:13

原帖由 长风吹云 于 2008-2-23 18:37 发表
谢谢搂主,我偷走了(学143斑竹,到处偷东西。。。 )!!

我在加入我的说明时一定注明,你这位原作者!

我偷的比你快~~呼呼~~~
作者: 长风吹云    时间: 2008-2-23 19:49:04

是啊!!连我的沙发都偷走了 ,想起这件事就伤心,眼泪哗哗的~~~~T-T!!!!!
作者: yanqiuily    时间: 2008-2-23 20:20:39

终于有兄弟写了,我当初一进去我就不想写了,因为其实仔细看都能看懂,不过还是总结出来的好
作者: 长风吹云    时间: 2008-2-24 10:25:17

连夜攻读History,小有心得,原来用Word2003打开是有注释的配合网上公布的事件仔细看都能看懂。我以前都是用INI文件编辑.exe察看,没看到注释 懒惰害人啊!!。
不过No = 94以后的事件参数比较乱,希望搂主给与指点!!
作者: sakuyazh    时间: 2008-2-24 15:15:21

94以后的更改了数据类型 对话和人物及物品奖励全部用DATA来表示了..  个人认为是偷懒行为....

[History]
No = 99
ClassType = 36 ;初次征讨
Priority = 1
Age = 0
S_Year = 189
S_Season = -1
E_Year = 193
E_Season = -1
PreHistory = 0
NedHistory01 = 98,1
NedHistory02 = 0
NedHistory03 = 0
Pic = 0
data01 = 51    ;洛阳
data02 = 0    ;0
data03 = 0    ;0
data04 = 518,0    ;董卓,0
data05 = 66381,1    ;66381,1
data06 = 66382,1    ;66382,1
data07 = 800    ;800
data08 = 0    ;0
data09 = 433,1    ;暴君之首,1
data10 = 51,+500    ;洛阳,+500
data11 = 51,+400    ;洛阳,+400
data12 = 51,+2000    ;洛阳,+2000
data13 = -1,+50    ;-1,+50
data14 = 0    ;0
IsUsed = 1
Version = 1

就像收复洛阳的剧情,只不过把全部事件的对话,人物和影响罗列了一下而已,数据分号后面都是注释,很容易看懂,事件按照顺序进行,一步一步来就是了,,, 现在我不能确定的就是不同的DATA编号是否要对应数据类型,比如DATA01只能写地名,,,DATA04只能写人物之类的.    这种格式的数据实际上用前面的数据格式都可以转化 所以我觉得是奥汀偷懒了...
作者: kane.hu    时间: 2008-2-24 16:36:17     标题: 回复 #14 sakuyazh 的帖子

又一牛帖出炉了!
作者: 长风吹云    时间: 2008-2-24 19:00:57

[quote]原帖由 sakuyazh 于 2008-2-24 15:15 发表
94以后的更改了数据类型 对话和人物及物品奖励全部用DATA来表示了..  个人认为是偷懒行为....


同感,我只是希望搂主把自己的理解发一下,我想验证自己的分析是否正确!!
作者: sakuyazh    时间: 2008-2-24 20:09:57

就是把数据模式改简单了而已吧  不过DATA处出现的人物大概变成条件了,在某城必须有某武将才能触发剧情, 不像前面的数据模式里不管该武将在哪里都会出现在剧情中...
作者: 鹏哥    时间: 2008-2-24 20:21:40

很好很强大~~~

这个要支持

虽然我小白,看不懂
作者: gaoqi143    时间: 2008-2-25 01:57:31

恩,看来加物品的貌似很简单

考虑做一个

其他的好复杂

算了~~
作者: emu8    时间: 2009-4-24 16:12:31

看了半天也没有说改那个文件,我郁闷!

我新人连修改那个文件我都不知道.
作者: lxxgj    时间: 2009-4-27 14:17:16

原帖由 emu8 于 2009-4-24 16:12 发表
看了半天也没有说改那个文件,我郁闷!

我新人连修改那个文件我都不知道.


修改的是History.ini这个文件.......

建议到置顶下个精华宝典看看,里边有修改教程
作者: biluoxk    时间: 2009-12-24 18:23:33

谢谢楼主分享~
俺终于能和俺自定的角色结婚了!




欢迎光临 游侠NETSHOW论坛 (https://game.ali213.net/) Powered by Discuz! X2