《流星蝴蝶剑》修改法详解
- 时间:2026-07-31 09:38:35
- 作者:阿雷
- 来源:NG游戏网
游戏中的二十多个地方名称分别是:钟乳洞(01)、秦始皇兵马俑坑遗址(02)、一线天(03)、织雪城(04)、皇天古城址(05)、四方阵列(06)、死亡之地(07)毒牙大营(或称“毒牙营地”)(注,“毒牙大营”的说法更符合原文的意思)、决死战区(或者叫决战战场),暂时无法辨认出具体位置的是第十一处和第二十处分别位于五爪峰以及烽火雷上边,在金华城里有座圆通寺,在洛阳市内有一座圆满楼,在洛邑城中有一个卧龙窟
2. PC端编辑人员可以在游戏中找到Level文件夹,在其中使用记事本来修改NPC*.pst等文件即可进行编辑工作(还可以新建),一般情况下星号前边会有一个数字表示出现的位置而星号后面的则是顺序编号。但是我们自己使用的记事本能随意起名字。打开之后要填写的内容如下:。// 注释 名字字符串Name=""
模型号为:孟星魂、冷燕、铁胡子、夜猫子、和尚、蒙古人、孙剑、萧安、子舆……王强、无名、叶翔、小何、凤凰、石群、屠城、范旋、高寄萍......孙玉伯和律香川是int(Model=1
武裝一無標 二飛輪 三火統 四雙刺 五匕首 六劍 七槍 八刀 九鎚 int Weapon=6
武器二无则为零,int Weapon2=7
队列:0不区分队伍、1流星、2蝴蝶 Int Team=1
视距为100~2000米之间的时候,View=500
反映的是从0到100之间的一个值,这个值是整数类型,并且Think=100
攻击概率为(1轻、2中、3重),攻击力和防御力各是多少
≤ 100 intAttack1=30;intAttack2=20;intAttack3=30
防御率在0到100之间随机产生一个整数Guard=10
逃跑的概率为0到100之间的一个整数Dodge=20
跳跃的概率为0到100之间的一个整数Jump=20
四处张望着的时候是第几秒到第一百零一秒之间的时间
快速奔跑从0到100的速度为Burst=10
准心为0到100之间的整数Aim=80
拿宝物的概率是0到100之间的一个随机数,GetItem=30
出生地点为Spawn=1
初始的生命值为HP=1000
int g_selfAddr;int g_self;OnInit(int this){g_selfAddr=this;}//在g_selfAddr前使用Tab键创建一个空格。}
OnStart(){ g_self = GetSelf(g_selfAddr);} 抓住自己角色的手柄并将其作为参数传给该行为函数 int ChangeBehavior(句柄、动作、辅助); 对于此行为函数的游戏设计师给出的是如下定义:ChangeBehavior(句柄、动作、辅助)。把g_self当作句柄来使用,在等待的时候不要移动位置//"idle"/跑步/巡逻等没有目标的行为//// 在地图文件中去掉"_”,然后添加几个标记点,并且每个标记点都附有一个编号(比如 1、2、3 等),两点之间的分隔符为逗号。“follow”的意思是跟随着某只小精灵一起走动,“followed by”则表示被一只小精灵所牵引着前进。现在的写作对象是人了。}
执行OnUpdate(){inta=0}
写了上述内容之后就可以进行存储了,在这里要注意一下存储的方式以及文件的名字和类型的设置问题:前面的部分应该命名为“PST”,后面的则选择为“Save As”中的哪种格式
3. 地图文件编辑位于Level目录中,在此可以找到以sn打头的pst文件就是地图文件,请勿修改sn01.pst之类的文档因为它们是用来定位目标(即巡逻)的。把类似的 sn01_*.pst 文件改成 Patrol 的格式的话,在我研究清楚之后我会告诉你怎么做。地图文件只能够对某个特定的文件进行操作,并且要用记事本来打开它。// 场景名称(我已经全都打开了并在文章顶部列出了一份表格供你查看)
规则如下:盟主要求的是第一、拦截盗贼第二、防守城市第三、刺杀敌人第四、决一胜负第五就是死亡
回合的时间为(分钟)int RoundTime=20
玩家出生的位置为PlayerSpawn=0
玩加出生的方向为0到360度之间的一个整数值PlayerSpawnDir=90
玩加武器二中PlayerWeapon2为0
玩加的生命值为int PlayerHP=1000;该数值在游戏中会被自动除以十,在非剧情版中是无效的
改变行为(人物编号、动作、帮助);与修改角色文件类似,在添加的时候要加上int 1) wait 望着 2) idle 等待 3) run 跑来跑去 4) follow 跟随 5) patrol 巡逻 6) attackTarget 攻击某人 在辅助里填写上对应的人物编号 7) kill 杀死一个人物在辅助中用的是该人的名字 int AddNPC("人物名称"); 添加一个新的人工智能 NPC 角色 文件 名 称 移除 NPC 角色 文件 名 称 使得这个 NPC 角色退出游戏 其他的一些函数后面再讲吧,现在还没有完全弄清楚
设置游戏开始函数OnStart(){AddNPC(“文件名不要带扩展名”)//本地图中需要多少个NPC就添加多少次 }
执行OnUpdate(){inta=0;}
第四点要注意的地方是命令前必须加上 int ,结尾处需要使用 ; 号,并且所有的标点都采用半角形式来表示(即在编程中对初学者进行指导时所使用的),请务必留意这一点。地图上的情节可以不用写出来。角色设置之初的动作一旦被设定下来,在地图编辑里不做修改的情况下会一直被执行直到战斗完毕。就这样吧!