简单传奇脚本教程(怎么写传奇脚本)
传奇脚本?怎么制作
多人都或多或少的接触过传奇服务器端脚本文件,也很想自己制作一点脚本来试试,但又不敢乱碰生怕改坏一点东西造成不能运行服务器端,其实“脚本语言“(我们暂且称他为一种语言)和C语言等等程序语言比起来那真是不值得一提。看完我给大家写的这篇文章后,你就自己偷着做吧...
可以说传奇服务器端所有的重点都集中在\mir200\envir\中,这里面记载着所有服务器要在游戏中表现的东西。在游戏中的npc信息也在其中,npcs.txt文件和merchant.txt文件中记载着npc的名称、出现的地图、坐标、范围和形象代码。你要问两个记载的npc有什么不同?为什么不和在一起算了?我来告诉你,npcs.txt中记载的npc是对话型npc,在进入游戏后,不能够使用@reloadnpc刷新信息的npc。而merchant.txt是交易型和任务型npc,可以使用@reloadnpc刷新信息。但我也做过试验,两种npc互换后也可以使用,好像没有太大的限制。
npcs.txt对应的文件在. pc_def\文件夹中,merchant.txt对应的文件在.\market_def\文件夹中。你如果要添加npc的时候,要注意npc的文件名,例如你要创建一个超级商人的npc要他出现在比奇省330:330的坐标。首先你要在.\market_def\文件夹中创建一个文本文件命名为“超级商人-0“(这里你可以使用英文,也可以使用中文,但后面的数字必须要是这个npc出现的地图代码!),然后把你写好的脚本粘贴在里面。再打开merchant.txt文件,添加以下信息:
;调用的文件
地图
坐标x
坐标y
范围
人物代码
刷新时间
超级商人
330
330
5
相信大家可以看懂吧,这里面的空格不要紧,没有规定信息之间必须空几格。人物代码自己换吧,现在的npc有46种模样。
和脚本的规则一样,这两个文件里面以;开头的行就当作注释部分不做编译。
《传奇》脚本该如何执行?
不知道你是什么引擎,有的引擎执行这个脚本要麻烦一些,有的就非常简单。
-------------------------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
如何做好传奇挂机脚本
1.打开传奇挂机脚本编辑器(木剑相逢辅助专用),选择你玩的对应的服的种类
\
如果是内挂/3K/HGE引擎的点击坐标,LEG引擎的点击右边进入;
2.根据脚本编辑器上面的提示,一步步的按照说明填上自己需要的功能;
\
3.按照说明一步步填好后,点击生成脚本;
\
生成完毕后,点击保存;
4.打开木剑相逢辅助,点击挂机功能;
\
在脚本路径后面,点击浏览,将刚才保存的脚本上传上来,或者直接将脚本拖到这个界面;
5.执行脚本
执行脚本后,木剑相逢辅助会根据您的设置,全自动值守挂机,另外,可以配合木剑相逢专用的窗口化工具实现同时挂N个号。