传奇鲜花脚本
‘壹’ 什么是传奇脚本呀
脚本是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。
说白了脚本就是程序,一般都是有应用程序提供的编程语言。
如果你只是玩的话知道与不知道都没啥用,你又不是自己架私服。
‘贰’ 传奇脚本使用方法
脱机外挂里面找到这个文件 DATA 进入了就双击你的传奇名字文件(比如我的传奇名叫:啊哦饿)..!把脚本放进里面就OK了!
‘叁’ 传奇任务脚本怎么写我
A: NPC领取杀怪任务100只,当杀怪达到100只的时候回来NPC处领取奖励
B:人物在某地图杀怪提示。即每杀一只怪 聊天框 就提示你目前杀怪总数为:
C:当杀怪达到100只,;聊天框提示:杀怪总数完成,请回去领取奖励
A 用到自定义变量
B 用到杀怪触发
C 一样杀怪触发
临时写的 看下面的
[@main]
#if
#say
<领取杀怪100任务/@领取> <任务完成领取奖励/@奖励>
[@领取]
#if
Check [100] 0
#act
set [100] 1
SENDMSG 6 提示:任务领取完毕,请尽快完成.
#elseact
SENDMSG 6 提示:草,领取过的还来捣乱,劳资干死你.
break
[@奖励]
#if
CHECKVAR HUMAN SGCF > 99
#act
set [100] 0
CREDITPOINT + 5
SENDMSG 6 提示:任务完成奖励声望+5.
CALCVAR HUMAN SGCF = 0
SAVEVAR HUMAN YUAN ..\QuestDiary\数据文件\变量数据.txt
#elseact
SENDMSG 6 提示:草,任务未完成,还想要奖励,滚.
break
-----------------------------------------------------------------------------
登陆脚本如下:
请在mirserver\Mir200\Envir\QuestDiary\数据文件\ ---目录下建立一个[变量数据.txt]的文本
如果没有的话就自己创建
[@login]
#if
CHECKLEVELEX > 0
#act
VAR Integer HUMAN SGCF
LOADVAR HUMAN SGCF ..\QuestDiary\数据文件\变量数据.txt
-----------------------------------------------------------------------------
杀怪触发:
mirserver\Mir200\Envir目录下MapQuest.txt文本,添加如下一行:
3 [035] 0 沃玛教主 * Q016
上面的3代表杀怪所在的地图号,沃玛教主代表杀的怪物名称,可以自己修改
Q016对应的是mirserver\Mir200\Envir\MapQuest_Def 里面的文本
意思就是这里写Q016那么MapQuest_Def目录下触发的文本名称也必须是 Q016.txt
总之最后你写什么那么MapQuest_Def目录下就必须创建一个相对应的名称txt文本
-----------------------------------------------------------------------------
mirserver\Mir200\Envir\MapQuest_Def\Q016.txt 里面的文本内容如下:
[@main]
#IF
CHECKVAR HUMAN SGCF > 99
#ACT
mapmove 3 333 333
SENDMSG 6 提示:任务完成.
#elseact
CALCVAR HUMAN SGCF + 1
SAVEVAR HUMAN YUAN ..\QuestDiary\数据文件\变量数据.txt
messagebox 您的当前杀怪数量为:<$HUMAN(SGCF)>
break
3K的,方法一样
‘肆’ 传奇脚本的编写
这个还真比较负责,这个是挂机的啊。在 145ok 那里有脚本教程。但是传奇服务端的,不是挂机的。
‘伍’ 传奇脚本求详细解释
#elseact的意思是“否则的话执行。。。。”!
前面一定会有一个#if
就是如果的意思!
MOVR
P8
18
(范围)
这句话是指变量P8将会是随机的1-18之间的1个数字!
INC
P8
321
(坐标)
这句话是指P8+321
MOVR
P7
17
(范围)
这里设定P7为1-17内的随机1个数字
INC
P7
340
(坐标)
同上这里是指P7+340
mapmove
3
<$STR(P8)>
<$STR(P7)>
这里就是地图移动的意思用数字表示就是
移动到地图3(盟重)的X坐标(322-339之间的随机1个数字):Y坐标(341-357之间的随机1个数字)
总体意思就是移动到地图盟重省的以321:340为中心点的18*17大小范围内的任意随机地点!
‘陆’ 传奇脚本怎么用的
找个脚本 复制到 脱机外挂 的 脚本设置里
关键是看你用什么外挂 每个外挂都不一样
‘柒’ 求传奇脚本编写
第一个脚本如下:
[@main]
#if
ISCASTLEGUILD
#act
goto @检查等级
break
#elsesay
你不是沙巴克成员,不能领取会员证明!
[@检查等级]
#if
checklevelex > 59
#act
goto @检查名单
break
#elsesay
你的等级还没到达60级,不能领取会员证明!
[@检查名单]
#if
CHECKNAMELIST ..\QuestDiary\领取证明\已领取名单.txt
;说明(检查\QuestDiary\领取证明\已领取名单.txt是否有名单,需要在D:\MirServer\Mir200\Envir\QuestDiary\下创建文件夹“领取证明”\里面创建“领取名单.txt”)
#act
break
#say
你已经领取过会员证明了,不能再领取了
#elseact
give 会员证明 1
addnamelist ..\QuestDiary\领取证明\已领取名单.txt
;说明(给予会员证明后,把人物名字添加到\QuestDiary\领取证明\已领取名单.txt下)
#elsesay
恭喜你领取了会员证明!
第二个脚本思路跟上面的是一样的,至于每天用机器人进行清除就用上面的脚本举例,脚本如下
AutoRunRobot.txt 文档下写 #AutoRun NPC RUNONDAY 00:00 @清理数据
RobotManage.txt 文档下写 如下:
[@清理数据]
#IF
#ACT
GMEXECUTE StartQuest @名单清理
;说明(上面的清理数据路径是在登陆脚本QManage.txt里面的)
QManage.txt登陆脚本 的脚本如下:
[@名单清理]
#if
#act
#CALL [领取证明\名单清理.txt] @清理名单
;说明(\QuestDiary\领取证明\添加一个名单清理.txt里面写一个清理脚本)
BREAK
;[领取证明\名单清理.txt] @清理名单 清理脚本如下:
[@清理名单]
{
#if
#act
CLEARNAMELIST ..\QuestDiary\领取证明\已领取名单.txt
}
注意:{ }很重要,没有的话M2会报错
网络搜索 传奇技术吧 里面有很多脚本,很适合新手
‘捌’ 传奇脚本文件
中的
check
[600]
0
和
set
[600]
1
是什么意思?
CHECK
检测
600
这个量
是否为零
SET
改变
600的变量为1
这是为了避免重复领物品或做任务
这里所说的量是一个标记
叫变量。因为有时候无法用实质性的东西来做条件所以只能放这个。在传奇脚本里这个是很重要的。
如果你是GM
那下个脚本有问题
如果可以间接执行代码
那么你的传奇就要被刷装备的
就算装备不怎么样但会刷的满地都是影响你的人气
[@giveme]
#if
这里还要检测一下
加上这句
check
[600]
0
如果不加那就可以刷装备了
#IF是检测用
非常重要。
检测这个量是不是为零
下面取完东西量设为1
设为一后如果没有再添加改变变量的语句这个量就一直为一
就只能领一次了
防止作弊。
check
金条
10
#act
take
金条
10
set
[600]
1
give
gm武器
#say
好了你走吧.
‘玖’ 《传奇》脚本该如何执行
不知道你是什么引擎,有的引擎执行这个脚本要麻烦一些,有的就非常简单。
-------------------------HERO引擎实现攻击目标触发--------------------------------
首先在地图配置文件MapInfo.txt里面添加 @Attack
比如 [3 盟重土城] HITMON(@Attack ) 这个就代表在盟重土城攻击目标时才触发,其他地图则不触发,如果想在其他地图触发,那就在相应的地图后面加上这个参数。
然后在 QFunction-0.txt 这个系统固定脚本文件中添加一段执行脚本
[@Attack]
#IF
checkitemw 开天 1 ;检测手上必须拿的是开天,才触发脚本
CHECKHITMONNAME <$STR(S0)> ;检测攻击的目标取得目标名称
#ACT
SendMsg 0 提示:<$STR(S0)>被<$USERNAME>手中的"开天"击中
break
我们可以参考砍猪的脚本,大致跟这个一样!
---------------------------D3D引擎实现攻击目标触发--------------------------------
这个引擎的就简单了多,直接在 QFunction-0.txt 这个系统固定脚本文件中添加一段执行脚本
下面这是个范例,根据你自己的需要修改都可以。
;所有触发只有攻击到怪物才会触发,有些魔法不会触发,如魔法盾
;======================魔法攻击触发==========================
[@MagicStruck]
#IF
CHECKCURRTARGETRACE
= 0
#ACT
SENDMSG 6 你被人物【<$CURRRTARGETNAME>】攻击了。使用魔法ID=<$CURRRUSEMAGICID> 255
253
BREAK
#IF
#ACT
SENDMSG 6 你被怪物【<$CURRRTARGETNAME>】攻击了。使用魔法ID=<$CURRRUSEMAGICID> 255
253
BREAK
[@MagicAttack]
#IF
CHECKCURRTARGETRACE = 0
#ACT
SENDMSG 6 你攻击了人物【<$CURRRTARGETNAME>】。使用魔法ID=<$CURRRUSEMAGICID>
255 249
BREAK
#IF
#ACT
SENDMSG 6 你攻击了怪物【<$CURRRTARGETNAME>】。使用魔法ID=<$CURRRUSEMAGICID>
255 249
BREAK
;======================物理攻击触发==========================
[@Struck]
#IF
CHECKCURRTARGETRACE
= 0
#ACT
SENDMSG 6 你被人物【<$CURRRTARGETNAME>】攻击了。使用魔法ID=<$CURRRUSEMAGICID> 255
253
BREAK
#IF
#ACT
SENDMSG 6 你被怪物【<$CURRRTARGETNAME>】攻击了。使用魔法ID=<$CURRRUSEMAGICID> 255
253
BREAK
[@Attack]
#IF
CHECKCURRTARGETRACE = 0
#ACT
SENDMSG 6 你攻击了人物【<$CURRRTARGETNAME>】。使用魔法ID=<$CURRRUSEMAGICID>
255 249
BREAK
#IF
#ACT
SENDMSG 6 你攻击了怪物【<$CURRRTARGETNAME>】。使用魔法ID=<$CURRRUSEMAGICID>
255 249
BREAK
‘拾’ 传奇脚本命令
[@gcks]
#IF
CHECKITEM 圣招令 1
#ACT
take 圣招令 1
Param1 X 放置怪物到X号地图
Param2 XXX 放置怪物到这个X坐标
Param3 YYY 放置怪物到这个y坐标
MonGen 主导者 1
SetOnTimer 1 3600 开启计时器1,每60分钟执行一次
QManage.txt文本中添加
[@OnTimer1]
#ACT
CLEARMAPMON 地图号 怪物名 清除指定地图怪物
SETOFFTIMER 1 关闭计时器1.