三国单机OL版自定义NPC对话功能
自定义NPC对话功能:举例,一个简单的对话,功能复杂的自己参加已有功能实现:NPC对话涉及的文件:
GAMERESOURCE.txt:记录NPC在游戏中的特定名字 -对应 修改器中的 NPC名字的数值30001~40000之间,按顺序来添加
NPC_NAME.txt:NPC对话内容
NPC_TALK.h:NPC脚本号 -对应 修改器中的 NPC对话定义 的数值
NPC_TALK.txt:NPC脚本
这里拿一个已经有的简单NPC作例子:露天市场的套装仙人
我们先用工具解读露天市场这个BIN文件,找到套装仙人这个NPC-可用罗列NPC快速找到
这里我们得到:
NPC名字的值是:30402 NPC对话定义的值是:7544
1.再打开:GAMERESOURCE.txt ,找到"item = 30402," ,我们就会发现“,”后面就是 “套装仙人”,也即游戏里的显示名
2.打开:NPC_TALK.H这个文件:我们查找"007544"",不够6位的用0补足,得到以下内容:
#define def_010244 007544
3.打开:NPC_TALK.txt:
A.查找"code = def_010244" 得到
code = def_010244
next_id = def_012830 '这里next_id 就是说转到 def_012830
B.再查找:code = def_012830 找到:
code = def_012830
msg = 55620
option_id = def_012831,def_012832
option_text = 55621,55622
C.当我们找到code后面直接 跟的是 msg时,就可以了
4.打开:NPC_NAME.txt ,查找55620 得到:
item = 55620,朋友,我看你骨骼精奇,浑身散发着仙气,是百年难得一见的不世之才,维护三国的和平就靠你了,我这里有几箱秘境宝盒,原价五千万两,现在我只收你几个杂物,你看如何?
这不就是套装仙人的开场白么?
废话了这么多,这里我举例制作一个简单的对话NPC:草泥马
1.打开:GAMERESOURCE.txt:增加一行:这里是30653为NPC名字数值,后面的是繁体的字,草泥马
item = 30653,猟皑
2.打开:NPC_TALK.H:增加一行:这里我用了比较大的数值,为了避免跟官方的已有数值冲突:这里def_025000对应NPC_TALK.txt里的脚本。20000对应的是NPC对话定义的数值
#define def_025000 020000
3.打开:NPC_TALK.txt:增加以下脚本:
//脚本开始
code = def_025000 //对应的脚本号
msg = 60000 //对应的对话号,与npc_name.txt中的相对应
end=1 //一个脚本结束的标记,如果下面还有的话,就不用,这里我们只是简单的说一句就结束。
4.打开:NPC_NAME.txt :增加对话信息 60000 item = 60000,这里标准的格式,后面的为对话内容,自己定义,这里我随便弄了几句。
item = 60000,ウ皑痷ǎ碍猟皑甧緄
脚本的定义完成了,下面就要修改BIN文件让这个新增的NPC生效:
解读所在的地图,这里我加在露天里:
这里面我们是增加一个,所以点击:增加新怪位,在开头就多一个怪位,选取该怪位,修改对应的怪名、X、Y坐标 ,NPC名字就是刚才的30653,NPC对话定义是:20000
再点击修改。
然后用RPG将以上几个文件替换:GAMERESOURCE.txt 、NPC_TALK.txt、NPC_TALK.H、NPC_NAME.txt
然后在客户端建立一个data文件夹,再把:NPC_TALK.txt、NPC_TALK.H、NPC_NAME.txt放进去,进露天就会有一个草泥马新NPC了。
页:
[1]