收版本
网络安全
传奇开区版本定制开区加Q:1116114 点击赞助此处文字位(#2) 点击赞助此处文字位(#3) 点击赞助此处文字位(#4) 泰=山=服=务=器=打=死=退=款
点击赞助此处文字位(#6) 点击赞助此处文字位(#7) 古怪加速器 免费20小时兑换码 5188 古怪加速器 每天16小时免费码 5288 点击赞助此处文字位(#109)
 .齐天大圣 . 单职业迷失 迷失元素◆爆率高◆一切靠打◆长期耐玩 ‖   一个福利怪直接起飞   ‖ 领先市场全新给力版本
╲ 热血战神 ╱ 单职业神器 新版耐玩,光柱满屏,终极必爆,经典品牌 新年、、爆爆爆爆爆爆爆不完 领先市场全新给力版本
★成神之路★ 单职业专属 吊打所有专属●内容丰富●装备无限爆 超高爆率メ散人称霸メ等级好升メ 领先市场全新给力版本
部分体验推荐
版本名称 版本类型 版本介绍 版本说明 游戏网站
【洛神赋】 【单职业神器】 无限刀神器,刀刀光柱,激情无限,刀刀到肉 领先市场全新给力版本 进入游戏
【玛法专属】 【单职业沉默】 不﹌一﹌样﹌的﹌沉﹌默 领先市场全新给力版本 进入游戏
【九五风云】 【单职业火龙】 一切靠打★剑甲全爆★只为激情 领先市场全新给力版本 进入游戏
【最强火龙】 【三职业复古】 货币可打★轻松顶级★三职业激情四射 领先市场全新给力版本 进入游戏
【正版神器】 【单职业神器】 复古神器,散人天堂,专揍老板,屌丝逆袭 领先市场全新给力版本 进入游戏
【英雄专属】 【单职业专属】 终极靠打,专属BUFF,光柱满屏、嗜血神技 领先市场全新给力版本 进入游戏
【轩辕复古】 【复古三职业】 ★★★特色复古小极品三职业★★★ 领先市场全新给力版本 进入游戏
【一刀超变】 【超变单职业】 装备加等级,无限刀,超高切割等你来体验 领先市场全新给力版本 进入游戏
【血饮狂刀】 【攻速单职业】 攻速切割神器﹏装备自带铭文系统 领先市场全新给力版本 进入游戏
查看: 202|回复: 0

传奇版本中脚本详解,一篇知晓传奇脚本逻辑

[复制链接]

4847

主题

-5

回帖

22万

积分

管理员

积分
228590
QQ
发表于 2025-4-21 11:28:00 | 显示全部楼层 |阅读模式
技能献祭,Get 新技能:传奇技能——脚本语言逻辑
跟航家学技能,用干货带你飞,现学现用,底部有配套学习资源
传奇这款游戏的脚本,是航家已知的,最简单的脚本语言,它直接写在以.txt为后缀的文本中。
本篇目录:
一、几个关键脚本及路径(位置)
二、脚本语言写法格式
三、常用变量
四、具体实例
准备工具:GOM引擎帮助文档.chm,在提供学习资源的[常用工具]中有。用以查解脚本命令。
一、几个关键脚本及路径(位置)
讲脚本语言之前,先来认识下主要有哪些常用到的脚本文本,以及如何找到它们。
对版本的修改重塑,基本在这个文件夹下:Mir200,也就是前面章节讲到的M2,见下图
下图注明的几个关键内容,带Log的是平常操作的日志记录,Gate是各种网关。因免费提供的基础版本,是与本系列教程章节内容是配套的,所以当你下载好服务端,看到的MirServer下也是这些文件,一个不多一个不少。如果用的别的版本,关键内容不变。
1.jpg
网站:用于展示装备
DBServer,合区时主要合这里面的东西;
Mud2,初次安装DBE2000数据库时,创建的HeroDB,保存的路径,就是这个文件夹的DB
Mir200,简称M2,经常操作的几个脚本内容:
路径(位置):D:\MirServer\Mir200\Envir ,在Envir文件夹下,见下图选中的几个主要文件夹
2.jpg
MapQuest_Def,任务型脚本,指的是:QManage.txt,这个脚本文本;用于执行角色登录数据(如:获得的称号,属性点,回收勾选记录以及私人变量等)、活动任务、计时任务、地图加、减价等任务。
Market_Def,NPC脚本文本默认存放路径(前面章节有讲);触发类脚本,指的是:QFunction-0.txt,这个脚本文本,它也是功能脚本,因它触发类较多,为方便区分叫它触发类脚本。
如,改变发型颜色,转职变性,会员福利,个人商店创建,过滤信息等,均属功能型;而达到指定等级自动穿戴装备,是否在安全区判定,人物死亡增加PK值,双击烟花效果,打开大红包等都属触发类。
QuestDiary,功能脚本默认存放处,意思是:当没有指定完整关联路径时,程序会自动寻找此文件夹下的脚本文本,没有则提示不存在。
如,【#CALL [\游戏功能\实物回收.txt] @实物回收】,程序会自动寻找,功能文件夹:QuestDiary下的【游戏功能\实物回收.txt】文本;如果将【游戏功能】文件夹,剪切到:Market_Def,文件夹下,就会提示找不到。
Robot_def,此文件夹下,有两个脚本文本:AutoRunRobot.txt,RobotManage.txt
AutoRunRobot.txt,机器人自动执行控制脚本;
脚本格式:#AutoRun NPC 时间单位 值 执行内容
时间单位有:HOUR(小时),RUNONDAY(每天执行),MIN(分钟),SEC(秒)
示例:
#AutoRun NPC HOUR 4 @清空天下第一;意为:每4小时清空天下第一
#AutoRun NPC RUNONDAY 7:00 @早上提示;意为:每天早上七点,执行提示内容
#AutoRun NPC MIN 2 @秒修装备;意为:每2分钟,修理一次装备
#AutoRun NPC SEC 1 @光环效果;意为:安全区框定区域的光环效果,每秒执行一次
RobotManage.txt,机器人任务内容脚本;
它与AutoRunRobot,协作使用,AutoRunRobot,负责控制执行时间,RobotManage,负责执行内容的书写和存放。@秒修装备,就是写在RobotManage.txt,脚本文本中的。
完成执行过程,还需要一个动作,写在任务类脚本文本:Qmanage.txt,中;
故,[@秒修装备],机器人自动执行的完整过程,举一例,如下:
第一步,AutoRunRobot.txt,文本中写:
#AutoRun NPC MIN 2 @秒修装备
第二步,RobotManage.txt,文本中写:
[@秒修装备]
#If
#Act
GMEXECUTE 开始提问 @秒修装备1
第三步,Qmanage.txt,文本中写:
[@秒修装备1]
#IF
#ACT
ACTREPAIRALL
解析:第一步,机器人每2分钟,执行一次秒修装备;第二步,执行内容:执行GM脚本命令;第三步,执行任务,修理装备。至此,秒修装备完成一次自动执行。因第一步,控制时间为2分钟一次,所以每2分钟会重复一次这个过程。
解释两个命令:GMEXECUTE,意为,执行GM脚本命令;ACTREPAIRALL,意为,修理装备。可以通过工具,GOM引擎帮助文档.chm,来查看命令功能和格式。接触到脚本语言会经常用到这个帮助文档。其中,GMEXECUTE,命令为帮助文档中未公开的一个命令。
二、脚本语言写法格式
这里只简单介绍下,脚本语言的基本写法格式,也是脚本段的主体内容,后续的实例内容中,将根据项目需要实现的功能,在实际解决问题的过程中深入学习这门脚本语言。
基本格式:
#IF
;检测段,检测条件,定义变量
#ACT
;执行段,检测条件为真,执行此段内容
#ELSEACT
;否则段,检测条件为假,则执行此段内容
BREAK
解析:所有脚本功能的实现,都是通过此基本格式来实现,当检测条件#IF为空时,可以不写条件#IF,直接写执行内容#ACT,BREAK,意为一个完整脚本段的结束。
注:检测段的内容不能写在执行段和否则段,同样的执行段的内容也不能写在检测段,否则一定会出错。某些脚本段的错误会导致小退再登陆黑屏,进不了游戏,所以每写完一个脚本,注意重新加载,运行一次,看M2,是否出现错误提示。
三、常用变量
在GOMX引擎帮助文档.chm,中输入:程序变量,查找查看详细说明。
P0-P99 (私人变量,数字型) 关闭对话框重置为0。
D0-D99 (私人变量,数字型) 下线不保存.摇筛子变量.
M0-M99 (私人变量,数字型) 下线不保存.切换地图清空.
N0-N99 (私人变量,数字型) 下线不保存.小退归0.
S0-S99 (私人变量,字符型) 下线不保存.小退归0.
I0-I99 (全局变量,数字型) 下线不保存.小退归0.
G0-G499 (全局变量,数字型) 可保存。(存放在Mir200/GlobalVal.ini文件里面)
A0-A499 (全局变量,字符型) 可保存。(存放在Mir200/GlobalVal.ini文件里面)
U0-U49 (私人变量,数字型) 可保存。(存放在人物数据库Mir.db里面)
T0-T49 (私人变量,字符型) 可保存。(存放在人物数据库Mir.db里面)
注意: 自定义变量名称不要以P、D、M、N、S、I、G、A开头
变量应用场景:如,冲级奖励只能领一取,领取会员后不能再次领取,开狂爆头顶图标与死亡图标的消失,首爆奖励只能触发一次,升官爵,称号等等。
四、具体实例
下面以免费领取至尊会员,为例,来具体化功能脚本的应用。
先来观查下,它在游戏中显示的样子:
3.jpg
再来看下上图显示内容的脚本段:
4.jpg
解析:[@main]表示,主体内容;"\"表示换行,两个表示换两行;"<>",是成对出现的,用以实现脚本功能,对于纯文字,也可以不用"<>",直接写文字;"/AUTOCOLOR=253",用以定义文字显示的颜色。
<领取至尊/@至尊>,此为功能段脚本,用以实现某功能,取决于“[@至尊]”脚本段内容。它不用定义颜色,默认显示黄色。
<领取至尊/@至尊>,意为,点击“领取至尊”,执行脚本段“@至尊”,会在此文本中,寻找用中括号“[@至尊]”框起来的脚本段。如图
7.jpg
解析:[@至尊],为点击“领取会员”,执行的内容;equal u22 4,意为:定义私人变量:u22=4,也可以理解为:当u22=4,时...。equal,等于。拓展:large,大于;small,小于。
MESSAGEBOX,是跳出对话框,提示信息,脚本命令;当领取过会员,再次点击,如下图
5.jpg
与之相似的有:SENDMSG,聊天框内发送,提示信息,脚本命令。可以通过GOM引擎帮助文档,查看具体功能和应用。
gender man,检测角色性别,男;gender woman,检测角色性别,女。
MOV U22 4,给变量赋值,意为:将值4赋给U22,相当于U22=4;这里注意与#IF段区别,#IF段是条件检测,#ACT段是执行赋值。
GIVE 天精岩五转 3,给物品“天精岩五转”,3个;GIVE,给。
[@至尊]功能段脚本内容,是作为程序内部执行的内容,是不显示给玩家看的。以上实例便是,免费领取至尊会员的显示内容、显示内容的脚本段,以及脚本执行内容的完整展示。
当然,看似简单的脚本语言,事实上并非这么简单,它的难点在于功能脚本命令数量,常用变量以及自定义变量的应用。但这并不妨碍我们从它的脚本基本执行格式中理解它的执行逻辑,抓住主体,修枝剪叶,记几个主体脚本命令,其他熟悉下即可。

温馨提示:

如需运营或商用本站资源,请在下载源码后联系版权方进行授权,本站不参与任何运营游戏相关活动,仅供从业者交流技术使用.对于因后续运营游戏产生的版权纠纷,与本站无关。


郑重声明:本站所有资源仅供用户本地电脑学习源代码的内含设计思想和原理,禁止任何其他用途!→ 详情点击查看
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ在线咨询
咨询客服
87599992
QQ群交流
834337883
快速回复 返回顶部 返回列表