找回密码
 注册传奇GM论坛会员
996 996
查看: 2536|回复: 0

各类偏僻功能讲解-第一讲

[复制链接]

14

主题

18

回帖

286

积分

不屈白银

积分
286
发表于 2015-7-16 10:12:36 | 显示全部楼层 |阅读模式
好久没写脚本了,主要是没有什么创意。今给大家讲解一下引擎的帮助文件中没有的功能。  -by 碎痕
1、NPC配置解析
脚本名称    地图名称   X坐标  Y坐标  NPC在游戏里的名称  标志(方向)  形象  是否属于沙  是否移动  移动间隔  变色模式 变色间隔(毫秒)  固定颜色

传送员/封魔        4     237   207        传送使者           0         8        0          0           0    3       2000              0

脚本名称 : 这个写的是脚本存在的目录 是在Mirserver\Mir200\Envir\Market_Def\传送员\封魔-4.txt
地图名称 : 4    这个是NPC所在的地图编号
X坐标 : 237     X坐标与Y坐标就是传奇里NPC的坐标
Y坐标 : 207     X坐标与Y坐标就是传奇里NPC的坐标
NPC在游戏里的名称 : 传送使者    NPC在游戏里该叫什么名字 你设置成什么他就叫什么
标志(方向) : 0    对应的方向(方向大家可以自己调试)
形象 : 8     NPC在游戏里的样子
是否属于沙 : 0    是否是沙城属性的NPC
是否移动 : 0     是否可以自动移动 [MPC可以设置成自己飞行的]
移动间隔 : 0     如果设置成可以移动 多久移动一次
变色模式:1=名字+身体,2=身体变色,3=名字变色.
变色间隔(毫秒)
是否固定颜色:0=不固定,1-7=固定颜色.
说明:在M2的功能设置\其他控制中打开NPC名字变色后有效.
     最后一个参数1-7固定颜色时的效果请自己测试.

2、杀怪触发
此触发需要用到MapQuest.txt的文件,在ENVIR下
具体格式:
3      [999]      0       某BOSS * 增加攻击力
地图 人物标志  标志状态   怪物名  *  触发脚本

意思是,在盟重地图中,如果人物[999]标志为0,杀掉某BOSS,就触发MapQuest_def文件夹下的脚本文件 增加攻击力.txt
脚本文件例:
[@main]
#if
#act
USEBONUSPOINT 1 + 1
sendmsg 7 你永久增加了1点攻击力

然后杀掉这只怪,就永久增加攻击力,也可以弄成触发爆装备.
如果按下面的脚本写,就三种装备都有机率出,但只出一件,如果想有机率三件都出,只需要把break去掉即可

例:
[@main]
#if
random 10   (代表有1/10的概率)
#act
give XXX装备 1
break

[@main]
#if
random 9   (代表有1/9的概率)
#act
give XX装备 1
break

[@main]
#if
random 1   (代表有1/1的概率)
#act
give X装备 1
break


3、GMEXECUTE功能
介绍,此功能是为了让NPC能够使用GM的命令

比如大家熟知结义脚本,里面的开始提问,就是用的这个。

GMEXECUTE 开始提问 @XXX(这里用到的就是Qmanage.txt下的@XXX脚本)
具体大家可以参照论坛中的结义脚本及纳妾脚本。
其实这两个脚本有更简单的思路,大家很少用,但这个很有用,就是messagebox命令
例:
[@互动]
#IF
checkmarry
#act
MOV S0 <$FQNAME>
S0.messagebox 【<$USERNAME>】:我要去XXX ,,你愿意去吗。\  <愿意/@愿意>  <不愿意/@不愿意>
(messagebox不光是用来弹窗,还可有选择脚本,脚本是在QFunction-0.txt 下面)
QFunction-0.txt 下面
[@愿意]
#IF
checkmarry
#ACT
MOV S0 <$FQNAME>
S0.messagebox 【<$USERNAME>】:愿意跟随你的脚步.
GMexecute 跟踪 <$FQNAME>
(这里也用到了GMexecute功能,其中跟踪就是GM命令,这里的意思就是自己直接飞到老公那里。追杀脚本也是用的这个)

[@不愿意]
#IF
checkmarry
#ACT
MOV S0 <$FQNAME>
S0.messagebox 【<$USERNAME>】:等会有其他事情要办,你先去吧.

4、TestStatus
这也是一个GM命令,大家对此命令并不熟悉,我也只是一知半解
此命令配合Gmexecute 使用
Gmexecute TestStatus 0 0

第一个参数为类型
第二个参数为时间  
类型有(不全):
0 为清空所有颜色,还原人物本身颜色
1 红色
2 蓝色
3 黄色
4 紫色
5 麻痹
8 隐身
11 盾

这里特别要为大家讲解下11这个类型,
科普:HERO引擎中,有一个BUG,就是法师套上盾,然后找玩家或者大刀,把自己杀了,如果这时候盾不破,那么下线再上线,就会一直顶着盾不会消失,除非自己上了盾或者挂自

动上盾,才会恢复正常,这时候的盾特别厉害,基本不会破。
这个脚本就比较简单,法师只要上线,系统开盾1秒,然后会自动消失,这样卡的盾就失效了
登陆脚本下面
[@login]
#IF
CHECKLEVELEX > 21
checkjob wizard
#ACT
Gmexecute TestStatus 11 1
;破卡盾脚本

5、地图按时开放
相信大家肯定玩过有些服,特别是复古的,地图都是按时间开放的,那是怎么做到的呢,例:

[3   盟重省] STALL NEEDSET_ON(100)
这个指的是,盟重需要人物标志100为打开状态才能进入
脚本:

登陆脚本

#IF
CHECK [100] 0
equal G65 1
#ACT
SET [100] 1


机器人脚本 公告用的

[@检测地图]
#IF
equal G65 0
#ACT
mov G65 1
SET [100] 1
SendMSG 1 ----------------------------------------------------
SendMSG 1 盟重地图开放,各位玩家即可进入。
SendMSG 1 盟重地图开放,各位玩家即可进入。
SendMSG 1 盟重地图开放,各位玩家即可进入。
SendMSG 1 盟重地图开放,各位玩家即可进入。
SendMSG 1 盟重地图开放,各位玩家即可进入。
SendMSG 1 --------------------------------------




上一篇:GM老手教你如何开区
下一篇:传奇私服施毒术中毒时间控制
回复

使用道具 举报

本版积分规则

2444100141|手机版|小黑屋|传奇版本

GMT+8, 2024-11-23 19:08 , Processed in 0.108056 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表