传奇单机双倍经验药物设置教程及庄园地图代码

来源: 作者: 点击:
本文针对单机架设传奇的双倍经验药物设置需求,详细讲解药物添加、脚本编写与放置路径,同时提供盛大庄园小地图代码,全程适配主流引擎,操作简单易上手。

一、双倍经验药物核心设置(死亡/下线不消失)

1. 药物基础信息配置

首先配置药物基础属性,确保药物可正常在游戏内显示、拾取和使用。打开服务端根目录,路径为“Mirserver\Mir200\Mud2\DB”,找到物品数据库文件“Item.DB”(部分引擎为“Item.txt”),用记事本或专用数据库编辑器打开。

在文件末尾添加新药物信息,格式参考现有药物,核心参数设置如下:物品名称设为“双倍经验丹”,物品类型设为“药物”,使用等级设为1级,重量设为1,持久设为1,售价可自定义(单机建议设为0或100金币),外观ID可选用空闲编号(如10001,避免与现有物品冲突)。保存文件并关闭,完成药物基础配置。

2. 双倍经验脚本编写(持续30分钟,死亡下线不消失)

脚本核心逻辑是给角色添加双倍经验状态,通过记录时间戳实现持续计时,同时跳过死亡、下线清除状态的机制。以HERO、GOM等主流引擎为例,脚本分为使用触发脚本和状态计时脚本两部分。

第一部分:使用触发脚本。打开服务端“Mirserver\Mir200\Envir\QuestDiary”文件夹,新建文本文档命名为“DoubleExpDrug.txt”,写入以下脚本:

[@UseItem]#IFCheckItem 双倍经验丹 1#ACTTakeItem 双倍经验丹 1SetVar HUMAN DoubleExpTime %time%+1800 ;设置持续时间30分钟(1800秒)SendMsg 6 恭喜你获得30分钟双倍经验状态,死亡下线不消失!#ELSESendMsg 6 你没有双倍经验丹!

第二部分:经验倍率触发脚本。打开同目录下的“Login.txt”(登录触发脚本)和“AutoRun.txt”(循环触发脚本),补充以下内容,确保上线后自动恢复状态、打怪时触发倍率:

【Login.txt添加】#IFCheckVar HUMAN DoubleExpTime > %time%#ACTSetExpRate 2 ;设置经验倍率为2倍SendMsg 6 双倍经验状态剩余时间:%Var(HUMAN DoubleExpTime)-%time% 秒#ELSEClearVar HUMAN DoubleExpTime

【AutoRun.txt添加】#IFCheckVar HUMAN DoubleExpTime <= %time%#ACTSetExpRate 1 ;状态结束恢复正常经验倍率ClearVar HUMAN DoubleExpTimeSendMsg 6 双倍经验状态已结束!

脚本说明:通过角色变量记录状态结束时间,登录时校验变量是否有效,有效则恢复双倍倍率;循环脚本实时检测时间,超时自动关闭状态,死亡和下线不会清除变量,故状态不消失。

3. 脚本关联与放置路径

将编写好的“DoubleExpDrug.txt”脚本放入“QuestDiary”文件夹,同时需关联物品使用触发事件。打开“Mirserver\Mir200\Envir\Market_Def\QFunction-0.txt”,在文件末尾添加:#ActMapFunc 0 1 0 @UseItem 双倍经验丹,实现点击使用药物时触发对应脚本。

所有脚本放置完成后,检查文件后缀是否为“.txt”,确保无拼写错误(引擎对脚本语法敏感,标点符号需为英文半角)。若为其他引擎,路径可能略有差异,核心逻辑一致,可参考引擎自带脚本格式调整。

二、设置生效与测试流程

1. 保存所有配置文件,重启传奇服务端和客户端,确保修改生效。2. 进入游戏后,通过GM命令“@give 双倍经验丹 1”获取药物,使用后查看系统提示是否正常。3. 测试打怪经验是否翻倍,死亡或下线重新登录后,检查状态是否保留、经验倍率是否持续。4. 若状态不生效,排查脚本语法错误、变量名称是否统一,或引擎是否支持自定义变量计时功能。

三、盛大庄园小地图代码及使用方法

盛大传奇庄园小地图核心代码的常规值为“3001”,部分复古版本可能为“3002”,该代码对应地图文件中的庄园场景配置。

使用方法:1. 若需添加庄园传送点,打开“Mirserver\Mir200\Envir\MapInfo.txt”,添加“3001 庄园 0 0”(依次为地图代码、地图名称、出生X坐标、出生Y坐标)。2. 若需通过NPC传送至庄园,在NPC脚本中添加“#ACTMapMove 3001 100 100”(100 100为庄园内具体坐标,可自行调整)。3. 若地图代码无效,打开“Mirserver\Mir200\Map”文件夹,查看地图文件名称,对应MapInfo.txt中的代码即可,庄园地图文件通常命名为“3001.map”。

四、常见问题排查

1. 双倍经验状态不生效

检查脚本变量名称是否一致(如“DoubleExpTime”需全程统一),引擎是否支持“SetExpRate”命令,部分引擎需替换为“ChangeExpRate”。同时确认服务端已重启,脚本文件放置路径正确,无遗漏关联QFunction脚本。

2. 死亡或下线后状态消失

核心原因是变量未存储在角色数据库中,需确保脚本使用“Human”前缀变量(如“HUMAN DoubleExpTime”),此类变量会随角色数据保存,而非临时变量。部分引擎需在“Envir\Config.txt”中开启“角色变量持久化”功能。

3. 庄园地图无法传送

确认地图代码与MapInfo.txt配置一致,地图文件“3001.map”存在于Map文件夹中,且无损坏。传送坐标需在地图有效范围内,避免超出地图边界导致传送失败。

五、补充说明

单机架设时,建议提前备份服务端“DB”“Envir”文件夹,避免配置错误导致数据丢失。双倍经验持续时间可通过修改脚本中“1800”(秒)调整,如改为3600即为1小时。不同引擎脚本语法存在细微差异,可参考对应引擎的官方脚本手册调整命令格式,确保功能正常实现。