当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

传奇1.80火龙休闲活动中心NPC:传送答题骰王押镖夺宝脚本

热度:
1.80火龙版本通常保留祖玛、赤月、火龙洞窟等经典地图,休闲活动中心适合放在盟重土城或安全区附近,承担地图传送、休闲小游戏、活动报名、签到领奖等功能。下面脚本按通用结构编写,物品名称、地图编号、变量编号需按实际版本替换。

一、NPC部署配置

文件路径:
Mir200EnvirMerChant.txt

休闲活动中心3336335500

脚本文件路径:
Mir200EnvirMarket_Def休闲活动中心-3.txt

文件名中的地图号必须与MerChant.txt一致。坐标可按版本实际NPC位置调整。

二、主面板脚本

[@main]
SAY
\
\
休闲活动中心\
\
<地图传送/@MapTeleport>\
<火龙夺宝/@FireTreasure>\
<休闲答题/@QuizGame>\
<幸运骰王/@DiceGame>\
<押镖任务/@EscortTask>\
<每日签到/@DailySign>\
<活动说明/@ActHelp>\
\
[@exit]

三、地图传送脚本

[@MapTeleport]
SAY
请选择前往地图:\
\
<盟重土城/@GotoTucheng>\
<蜈蚣洞/@GotoWugong>\
<猪洞七层/@GotoPig7>\
<祖玛寺庙/@GotoZuma>\
<赤月峡谷/@GotoChiyue>\
<火龙洞窟/@GotoFire1>\
<火龙地带/@GotoFire2>\
<火龙巢穴/@GotoFire3>\
\
[@GotoTucheng]
IF
ACT
MAPMOVE3330330
CLOSE

[@GotoWugong]
IF
CHECKLEVELEX>20
ACT
MAPMOVE10100100
CLOSE
ELSESAY
等级不足20级。\
[@exit]

[@GotoPig7]
IF
CHECKLEVELEX>30
ACT
MAPMOVE15100100
CLOSE
ELSESAY
等级不足30级。\
[@exit]

[@GotoZuma]
IF
CHECKLEVELEX>40
ACT
MAPMOVE20100100
CLOSE
ELSESAY
等级不足40级。\
[@exit]

[@GotoChiyue]
IF
CHECKLEVELEX>50
ACT
MAPMOVE25100100
CLOSE
ELSESAY
等级不足50级。\
[@exit]

[@GotoFire1]
IF
CHECKLEVELEX>60
CHECKITEM火龙凭证1
ACT
TAKE火龙凭证1
MAPMOVE30100100
CLOSE
ELSESAY
需要60级并携带火龙凭证。\
[@exit]

[@GotoFire2]
IF
CHECKLEVELEX>65
ACT
MAPMOVE31100100
CLOSE
ELSESAY
等级不足65级。\
[@exit]

[@GotoFire3]
IF
CHECKLEVELEX>70
ACT
MAPMOVE32100100
CLOSE
ELSESAY
等级不足70级。\
[@exit]

火龙洞窟传送可根据版本增加准入凭证或任务变量限制,避免低等级玩家误入。

四、火龙夺宝脚本

[@FireTreasure]
SAY
火龙夺宝每日开放三次:\
14:00/20:00/23:00\
\
当前状态:<@FireStatus>\
\
<报名夺宝/@FireJoin>\
<查看奖励/@FireReward>\
\
[@FireStatus]
IF
EQUAL[900]1
ACT
SENDMSG7火龙夺宝正在进行中。
ELSESAY
火龙夺宝未开启。\
[@exit]

[@FireJoin]
IF
CHECKLEVELEX>50
EQUAL[901]0
ACT
SET[901]1
SENDMSG7火龙夺宝报名成功,请等待活动开始。
CLOSE
ELSESAY
等级不足或已报名。\
[@exit]

[@FireReward]
SAY
火龙夺宝奖励:\
首杀玩家获得火龙之心×2。\
参与玩家获得火龙碎片×1。\
活动结束自动发放奖励。\
\
[@exit]

火龙夺宝通常由机器人脚本在固定时间开启,活动开始后设置全局变量[900],玩家进入活动地图参与。击杀火龙教主后通过QFunction-0.txt检测发放奖励。

五、休闲答题脚本

[@QuizGame]
SAY
休闲答题每次消耗金币1000。\
答对获得经验和元宝。\
每日最多答题10次。\
\
当前答题次数:<@QuizCount>\
\
<开始答题/@QuizStart>\
\
[@QuizCount]
IF
ACT
SENDMSG7今日已答题<STR(N902)>次。

[@QuizStart]
IF
CHECKGOLD>999
SMALLN90210
ACT
TAKE金币1000
INCN9021
MOVS900火龙之心
MOVD9001
GOTO@QuizQ1
ELSESAY
金币不足或今日答题次数已满。\
[@exit]

[@QuizQ1]
SAY
火龙教主刷新在火龙洞窟第几层?\
\
<第一层/@QuizA1>\
<第二层/@QuizA2>\
<第三层/@QuizA3>\
\
[@QuizA1]
ACT
GOTO@QuizWrong

[@QuizA2]
ACT
GOTO@QuizWrong

[@QuizA3]
IF
ACT
GOTO@QuizRight

[@QuizRight]
IF
ACT
GIVE经验50000
GIVE元宝2
SENDMSG7回答正确,获得经验5万、元宝2。
CLOSE

[@QuizWrong]
IF
ACT
SENDMSG7回答错误,请明日再来。
CLOSE

题目和答案可按版本内容扩展,也可改为随机读取题库文件。

六、幸运骰王脚本

[@DiceGame]
SAY
骰王游戏每次消耗元宝5。\
点数越大奖励越高。\
每日最多参与20次。\
\
当前参与次数:<@DiceCount>\
\
<开始摇骰/@DiceStart>\
\
[@DiceCount]
IF
ACT
SENDMSG7今日已参与<STR(N903)>次。

[@DiceStart]
IF
CHECKGAMEGOLD>4
SMALLN90320
ACT
TAKEGAMEGOLD5
INCN9031
RANDOMVARD90116
GOTO@DiceResult
ELSESAY
元宝不足或今日次数已满。\
[@exit]

[@DiceResult]
IF
LARGED9015
ACT
GIVE元宝20
GIVE火龙碎片1
SENDMSG7恭喜摇出<STR(D901)>点,获得元宝20、火龙碎片1。
CLOSE
BREAK

IF
EQUALD9015
ACT
GIVE元宝10
SENDMSG7摇出5点,获得元宝10。
CLOSE
BREAK

IF
EQUALD9014
ACT
GIVE元宝5
SENDMSG7摇出4点,获得元宝5。
CLOSE
BREAK

IF
ACT
SENDMSG7摇出<STR(D901)>点,未获得额外奖励。
CLOSE

RANDOMVAR部分命令需确认当前引擎是否支持,若不支持可改用RANDOM命令生成随机数。

七、押镖任务脚本

[@EscortTask]
SAY
每日押镖可获得经验和金币。\
每日可押镖3次。\
押镖途中可能被其他玩家拦截。\
\
当前押镖次数:<@EscortCount>\
\
<领取镖车/@GetEscort>\
<交付镖车/@DeliverEscort>\
\
[@EscortCount]
IF
ACT
SENDMSG7今日已押镖<STR(N904)>次。

[@GetEscort]
IF
SMALLN9043
EQUAL[905]0
ACT
SET[905]1
INCN9041
GIVE镖车1
SENDMSG7已领取镖车,请前往盟重安全区交付。
CLOSE
ELSESAY
今日押镖次数已满或已领取镖车。\
[@exit]

[@DeliverEscort]
IF
CHECKITEM镖车1
EQUAL[905]1
ACT
TAKE镖车1
RESET[905]0
GIVE金币200000
GIVE经验100000
SENDMSG7押镖成功,获得金币20万、经验10万。
CLOSE
ELSESAY
未携带镖车或未完成押镖。\
[@exit]

押镖拦截可通过QFunction-0.txt检测携带镖车的玩家被攻击后扣除镖车并重置变量。

八、每日签到脚本

[@DailySign]
SAY
每日签到可获得金币、经验和材料。\
连续签到奖励递增。\
\
<今日签到/@DoSign>\
<查看奖励/@SignReward>\
\
[@DoSign]
IF
CHECKDATEVAR9060
ACT
SETDATEVAR9061
INCN9071
GIVE金币100000
GIVE经验50000
GIVE火龙碎片1
SENDMSG7签到成功,获得金币10万、经验5万、火龙碎片1。
CLOSE
ELSESAY
今日已签到。\
[@exit]

[@SignReward]
SAY
连续签到奖励:\
1天:金币10万、经验5万、火龙碎片1\
3天:金币30万、经验15万、火龙碎片3\
7天:金币100万、经验50万、火龙之心1\
\
[@exit]

CHECKDATEVAR、SETDATEVAR用于按自然日重置。若版本不支持日期变量,可改用机器人脚本每日清零N907和[906]。

九、活动说明脚本

[@ActHelp]
SAY
休闲活动中心说明:\
\
地图传送按等级限制进入。\
火龙夺宝每日三次,报名后等待开启。\
休闲答题每日最多10次。\
幸运骰王每日最多20次。\
押镖任务每日最多3次。\
每日签到按连续天数递增奖励。\
所有奖励物品名称以版本数据库为准。\
\
[@exit]

十、QFunction-0.txt配合脚本

文件路径:
Mir200EnvirMapQuest_defQFunction-0.txt

[@KillMonster]
IF
EQUAL[900]1
CHECKMONMAP32
ISMASTER
ACT
SENDMSG20恭喜<USERNAME>在火龙夺宝中击杀火龙教主!
GIVE火龙之心2
RESET[900]0
RESET[901]0

[@PlayLevelUp]
IF
EQUAL[905]1
ACT
SENDMSG7押镖途中死亡,镖车丢失。
TAKE镖车1
RESET[905]0

火龙夺宝击杀检测需按实际怪物名称和地图编号调整。若版本支持HUMCOUNT、CHECKMONMAP等命令,可配合使用。

十一、机器人脚本配合

文件路径:
Mir200EnvirRobot_defRobotManage.txt

014:00@FireStart
020:00@FireStart
023:00@FireStart

文件路径:
Mir200EnvirRobot_defRobot.txt

[@FireStart]
IF
ACT
SET[900]1
SENDMSG20火龙夺宝已开启,请前往火龙巢穴参与。
INC[908]1

[@FireEnd]
IF
ACT
RESET[900]0
RESET[901]0
SENDMSG20火龙夺宝已结束。

机器人脚本需确认引擎是否支持定时触发,部分版本使用RunQuest或独立机器人配置。

十二、部署步骤

在MerChant.txt中添加休闲活动中心NPC坐标。
在Market_Def下创建休闲活动中心-3.txt脚本文件。
确认Stditem.db中存在火龙凭证、火龙碎片、火龙之心、镖车等物品。
确认地图编号与版本实际地图一致。
在QFunction-0.txt中添加击杀检测和押镖死亡检测。
在RobotManage.txt和Robot.txt中添加火龙夺宝定时脚本。
重载NPC和脚本后进入游戏测试传送、答题、骰王、押镖、签到、夺宝等功能。

十三、注意事项

物品名称必须与Stditem.db一致,否则CHECKITEM、TAKE、GIVE无法生效。

地图编号需替换为版本实际编号,火龙洞窟、火龙地带、火龙巢穴的编号各版本可能不同。

变量N902、N903、N904、N907和[900]、[901]、[905]、[906]、[908]需提前查询冲突,避免与其他系统共用。

CHECKDATEVAR、SETDATEVAR、RANDOMVAR等命令在不同引擎中可能名称不同,使用前需确认当前版本支持情况。

火龙夺宝的开启、结束、奖励发放建议由机器人脚本统一控制,避免手动触发导致状态不一致。

押镖任务若需要拦截玩法,需在QFunction-0.txt中检测攻击携带镖车玩家的行为,并扣除镖车和重置变量。
[顶部]