一、先搞懂 3 个前提:设置前必须准备的信息
物品爆落红字提示本质是 “掉落事件触发系统公告”,需先确认 3 个关键信息,避免白忙活:
确认引擎类型:打开服务端文件夹,看引擎控制器文件名(带 HERO 为 HERO 引擎,带 GOM 为 GOM 引擎),两者命令不同,错用会失效;
找到核心脚本文件:
HERO 引擎:服务端 \Mir200\Envir\QuestDiary\QFunction-0.txt(全局触发脚本);
GOM 引擎:服务端 \Mir200\Envir\MapQuest_DEF\GlobalQuest.scp(全局事件脚本);
查物品 ID:打开服务端 \Mir200\Envir\Item.db(用记事本打开),找到目标物品的编号(如 “屠龙 = 15”,15 就是 ID),后续脚本要填 ID。
二、基础设置:所有物品爆落都显示红字(新手入门)
适合想让任何物品掉落都出提示的场景,分引擎直接复制脚本即可:
(一)HERO 引擎设置步骤
打开脚本文件:右键 QFunction-0.txt,用记事本打开,拉到文件末尾,粘贴以下代码:
#Event OnItemDrop //触发条件:物品掉落时
#ACT
//发送红字公告,格式:[公告]XXX(玩家名)在XXX(地图名)击败XXX(怪物名),爆出XXX(物品名)!
SENDMSG 0 <COLOR=255>[公告]<$USERNAME>在<$MAPNAME>击败<$MONSTERNAME>,爆出<$ITEMNAME>! //0代表全服可见,255是红色代码
参数说明:
<$USERNAME>:自动显示捡取玩家名字;
<$MAPNAME>:自动显示掉落地图(如 “蜈蚣洞”);
<$MONSTERNAME>:自动显示被击杀怪物(如 “沃玛教主”);
<$ITEMNAME>:自动显示掉落物品名(如 “炼狱”)。
(二)GOM 引擎设置步骤
打开脚本文件:右键 GlobalQuest.scp,用记事本打开,在 “@ItemDrop” 事件下添加代码(若无该事件,直接在文件末尾新增):
[@ItemDrop] //物品掉落触发事件
#ACT
//发送全服红字公告,\002是GOM引擎红字代码
BROADCAST \002[公告]<$PLAYNAME>在<$MAPNAME>击杀<$MONSTER>,爆出<$ITEMNAME>! //BROADCAST是公告命令
参数说明:
<\(PLAYNAME>:对应HERO引擎的<\)USERNAME>,显示玩家名;
<\(MONSTER>:对应<\)MONSTERNAME>,显示怪物名;
\002:固定红字代码,替换成 \001 是白色,\003 是绿色。
三、进阶设置:只让极品 / 指定物品显示提示(实用版)
不想普通物品刷屏?加 “物品判断条件”,只让高价值物品出红字,以 HERO 引擎为例(GOM 逻辑相同,改命令即可):
(一)按物品 ID 指定提示(比如只提示屠龙、裁决)
查准目标物品 ID:Item.db 里找到 “屠龙 = 15”“裁决之杖 = 30”,记下 15 和 30;
修改脚本代码:在 QFunction-0.txt 末尾粘贴:
#Event OnItemDrop
#if
CheckItemID <$ITEMID> 15 //判断掉落物品ID是否为15(屠龙)
|| CheckItemID <$ITEMID> 30 //||代表“或者”,增加裁决ID30
#ACT
SENDMSG 0 <COLOR=255>[恭喜]<$USERNAME>爆出终极神器:<$ITEMNAME>!
#elseact
//普通物品不提示,留空即可
(二)按物品品质过滤(比如只提示极品、特戒)
用 “物品属性判断”,自动识别高属性物品,代码如下:
#Event OnItemDrop
#if
CheckItemExtra <$ITEMID> 1 //1代表“极品”(属性超常规),2代表“特戒”,3代表“武器幸运+7”
#ACT
SENDMSG 0 <COLOR=255>[惊喜]<$USERNAME>在<$MAPNAME>爆出稀有物品:<$ITEMNAME>!
#elseact
四、M2 引擎控制器辅助设置(必做收尾步骤)
脚本改完后,需在引擎里开 “公告权限”,否则不显示:
打开 M2 控制器:双击服务端里的 “M2Server.exe”;
找到公告设置:
HERO 引擎:点 “选项→游戏参数→公告设置”,勾选 “允许脚本发送全服公告”;
GOM 引擎:点 “系统→参数设置→公告管理”,勾选 “启用脚本广播”;
保存设置:点 “确定”,无需重启引擎,立即生效。
五、实操注意事项:新手常踩的 3 个坑
脚本放错文件夹:HERO 的 QFunction-0.txt 必须在 QuestDiary 文件夹,放其他地方触发不了;
颜色代码写错:HERO 用 <COLOR=255>,GOM 用 \002,混着用会显示乱码(比如变成 “[公告] XXX 爆出 XXX” 无颜色);
公告范围设错:SENDMSG 0 是全服,想改 “当前地图可见”,把 0 改成 1(HERO),GOM 用 MAPBROADCAST 命令替换 BROADCAST。
六、不生效?3 步快速排查
查脚本格式:看 #Event、#IF、#ACT 是否大写,符号是否为英文半角(中文逗号、引号会失效);
验物品 ID:Item.db 里的 ID 是数字,别填成物品名(比如写 “屠龙” instead of 15);
看引擎日志:M2 控制器点 “日志→脚本日志”,若显示 “OnItemDrop 事件执行失败”,就是命令写错,对照引擎帮助文件改。
七、总结:不同需求的直接用脚本
全物品提示(HERO):
#Event OnItemDrop
#ACT
SENDMSG 0 <COLOR=255>[公告]<$USERNAME>在<$MAPNAME>爆出<$ITEMNAME>!
指定物品提示(GOM):
[@ItemDrop]
#if
CheckItemID <$ITEMID> 15
#ACT
BROADCAST \002[恭喜]<$PLAYNAME>爆出屠龙!
改完脚本 + 开引擎权限,再让怪物掉个对应物品,就能看到红字提示了。若用其他引擎(如 BLUE),命令类似,搜引擎帮助文件里的 “物品掉落事件”“广播命令” 即可。
传奇物品爆落红字提示怎么设?HERO/GOM 引擎详细教程
来源:
作者:
点击:

