5.可否详细分析单机版npc设置文件?请举例。
答:修改相关
POES修改人物文件注解
P0.POS=孟星魂
P1.POS=冷燕
P2.POS=铁胡子
P3.POS=夜猫子
P4.POS=破空
P5.POS=冯浩
P6.POS=孙剑
P7.POS=萧安
P8.POS=子舆
P9.POS=王强
P10.POS=无名
P11.POS=叶翔
P12.POS=小何
P13.POS=凤凰
P14.POS=石群
P15.POS=屠城
P16.POS=范旋
P17.POS=高寄萍
P18.POS=孙玉伯
P19.POS=律香川
贴图AI修改注解
SN01=锺乳洞
SN02=秦皇陵
SN03=一线天
SN04=炽雪城
SN05=皇天城
SN06=四方阵
SN07=死之阵
SN08=毒牙阵
SN09=决死阵
SN10=炼铁狱
SN11=五爪峰
SN12=烽火雷
SN13=金华城
SN14=炎硫岛
SN15=飞鹏堡
SN16=五雷塔
SN17=伏虎山
SN18=圆满楼
SN19=洛阳城
SN20=卧龙窟
SN21=圣诞夜
SN22=威震八方
AI制作道具补全
中庸
飞镖=1 飞轮=2 火枪=3 双刺=4 匕首=5 轻剑=6
长枪=7 大刀=8 大锤=9 乾坤刀=47 指虎=51 忍刀=55
高攻
飞镖=10 飞轮=11 火枪=12 双刺=13 匕首=14 轻剑=15
长枪=16 大刀=17 大锤=18 乾坤刀=48 指虎=52 忍刀=
56
高防
飞镖=19 飞轮=20 火枪=21 双刺=22 匕首=23 轻剑=24
长枪=25 大刀=26 大锤=27 乾坤刀=49 指虎=53 忍刀=
57
高敏
飞镖=28 飞轮=29 火枪=30 双刺=31 匕首=32 轻剑=33
长枪=34 大刀=35 大锤=36 乾坤刀=50 指虎=54 忍刀=
58
圣诞
雪球(飞镖)=37 飞碟(飞轮)=38 拉炮(火枪)=39
星星(双刺)=40 拐杖糖(匕首)=41仙女棒(轻剑)=42
雪地铲子(长枪)=43 特大抓痒器(大刀)=44
大棒棒糖(大锤)=45 铃铛(飞镖)=46
地图修改和武器修改
W1_0至W1_4匕首
W11_0至W11_4=忍刀
W3_0至W3_5=飞标
W9_0r至W9_3r=乾坤刀
W10_0r至W10_3r=指虎
W8_0r至W8_4r=双刺
W1_0至W1_4=剑
W2_0至W2_4=火枪
W7_0至W7_4=枪
W6_0至W6_4=飞轮
W5_3至W5_4=刀
W4_0至W4_4=锤
在流星蝴蝶剑安装目录下有一个名为level的文件夹,其中后缀为.pst的文件都是文本档,snXX_.pst是关卡人物控制档,编辑关卡人物控制比较繁琐一般人不建议尝试,而其中npcXX_XX.pst文件就是人物文档了,前两个X代表关卡 01=钟乳洞 03=一线天 04=炽雪城 05=皇天城 09=决死阵 10=炼铁狱 13=金华城 14=炎硫岛 15=飞鹏堡
这回打开的是snXX_.pst文件
// 一线天
int Rule = 1;(玩家阵营)0无/1星/2蝶
int RoundTime = 15; (游戏时间)
int PlayerSpawn = 5;(出生点)
int PlayerSpawnDir = 90;(面对角度)
int PlayerWeapon = 52; (玩家1号武器)
int PlayerWeapon2 = 48;(玩家2号武器)
int PlayerHP = 3000; (玩家HP,是实际HP的10倍)
int trg0 = 0; (载入6个AI)
int trg1 = 0;
int trg2 = 0;
int trg3 = 0;
int trg4 = 0;
int trg5 = 0;
OnStart()
{
AddNPC("*"); (载入AI人物文件,*是文件名舍去了.pak)
AddNPC("*");
AddNPC("*");
AddNPC("*");
AddNPC("*");
}
张望\\
int g_selfAddr;
int g_self;
OnInit(int this)
{
g_selfAddr = this;
}
OnStart()
{
g_self = GetSelf(g_selfAddr);
ChangeBehavior(g_self, "wait");
}
巡逻\\
int g_selfAddr;
int g_self;
OnInit(int this)
{
g_selfAddr = this;
}
OnStart()
{
g_self = GetSelf(g_selfAddr);
ChangeBehavior(g_self, "patrol", 5, 15, 16, 20, 89, 91, 11, 10, 8, 116, 115, 7, 6);
}
(2,15,16,*,*,*,.....代表地图位置坐标)
等待\\
int g_selfAddr;
int g_self;
OnInit(int this)
{
g_selfAddr = this;
}
OnStart()
{
g_self = GetSelf(g_selfAddr);
ChangeBehavior(g_self, "idle");
}
跟随玩家\\
int g_selfAddr;
int g_self;
OnInit(int this)
{
g_selfAddr = this;
}
OnStart()
{
g_self = GetSelf(g_selfAddr);
ChangeBehavior(g_self, "follow", "player");
}
乱跑\\
int g_selfAddr;
int g_self;
OnInit(int this)
{
g_selfAddr = this;
}
OnStart()
{
g_self = GetSelf(g_selfAddr);
ChangeBehavior(g_self, "run");
}
跟随老大\\
int g_selfAddr;
int g_self;
OnInit(int this)
{
g_selfAddr = this;
}
OnStart()
{
g_self = GetSelf(g_selfAddr);
ChangeBehavior(g_self, "follow", "vip");
}
杀死某个角色//
int g_selfAddr;
int g_self;
OnInit(int this)
{
g_selfAddr = this;
}
OnStart()
{
g_self = GetSelf(g_selfAddr);
ChangeBehavior(g_self, "kill", "player");
}
巡逻,找到玩家后跟随玩家\\
int g_selfAddr;
int g_self;
OnInit(int this)
{
g_selfAddr = this;
}
OnStart()
{
g_self = GetSelf(g_selfAddr);
//ChangeBehavior(g_self, "patrol", 129, 73, 133, 134, 71, 79, 78, 77, 74, 69);
ChangeBehavior(g_self, "follow", "player");
}
语句
Perform(c, "faceto", player);(c=<第一个NPC>面冲玩家)
Perform(c, "use", 4);(c=<第一个NPC>套4号物品)7=隐5=敏3=防19=攻18=14=12=毒13=慢20=生命上限(林芝)29=圣诞围脖30=圣诞手套31=圣诞跑鞋32=圣诞礼帽33=手记27=雪人
1.加30HP(一般肉包)
2.50HP灵芝(华佗)
3.防御模(铜皮)
4.攻击模1(嗜战)
5.猫足
6.声响(不知道有什么用处)
7.隐身衣(风水)
8.气元
9.光芒效果(不知道有什么用处)
10.中毒(减移)
11.中毒(减血)
12.中毒(减血)
13.中毒(减移)
14.中毒(减血)
15.加500HP
16.加50HP(大肉包)
17.加10HP(小肉包)
18.中毒(减血)
19.攻击模2(强攻,不知道学名叫什么)
20.699HP灵芝
下面给出单机编程中的"Use"值.
Perform(c, "say", "********");(c=<第一个NPC>说*********)
int c;
int c2;
int c3;
int c4;
int c5;
int now = GetGameTime();(角色代码和动作含义)
招式套装
在流星安装目录下有一个名为Meteor.res的文件,修改它可以进行招式套装,加速修改武器攻击力/防御力/敏捷度,还可以突破关卡限制.
我讲一下招式套装.
需要工具:UltraEdit/南极星
先开南极星(不然看不到注解),之后用UltraEdit打开它,找到招式属性.如下:
把招式名称后NoneName后的11个字符由01改成12(如图注解),再把01后的第4个字符改成套装代码即可(大部分是64,也就是无效果).
套装代码:
22=套高攻 29=套高敏 28=套高防 20=帽子 21=手机 1D=围脖 1E=手套 1F=鞋子 14=上限999HP
13=超攻 19=炼化敏 24=隐身 08=气鼎 09=光芒效果 25=掉5%气 26=掉40%气 27=热力贴 1C=气糖 1B=蛋糕
11=加HP+10 12=减25%气 0E=毒自己 16=毒包子 10=HP加50 09=+东西不知是什么 23=挂掉 0F=加500HP 17=炼化攻
18=炼化防 0D=给自己加缓毒 1A=有东西 0A=给自己缓毒 0B=给自己血毒 0C=给自己大血毒 0E=给自己大血毒
1A=炼化圣诞
要想吸对手气就要把第11位改成10,之后的第4个字符改成15.
要想让对手中血毒就要把第11位改成10,之后的第4个字符改成0C.
要想让对手中缓毒就要把第11位改成10,之后的第4个字符改成0D.
|