传奇自建服务器头顶黄钻红黄蓝标识脚本编写方法

来源: 作者: 点击:
在传奇自建服务器中,玩家头顶显示黄钻、红钻、蓝钻等标识,需通过NPC脚本配合角色变量或称号系统实现。该功能不依赖客户端修改,仅在服务端配置即可生效。以下以Mir2引擎(如1117、1280等常见版本)为例说明具体写法。

一、确认引擎支持的称号或变量显示方式
多数传奇引擎支持通过“QFunction-0.txt”中的[@PlayStart]或[@LoginSuccess]触发头顶显示。显示内容可为固定文字,也可根据角色属性动态判断。黄钻、红钻、蓝钻通常代表不同VIP等级或充值状态,需先定义判断依据(如变量HUMAN VIP_LEVEL)。

二、设置角色变量作为标识依据
假设通过充值或命令给予玩家变量:
VIP_LEVEL=1 → 蓝钻
VIP_LEVEL=2 → 黄钻
VIP_LEVEL=3 → 红钻

可通过GM命令或充值接口设置该变量,例如:

@SetHumanVar VIP_LEVEL 2


三、编写QFunction脚本实现头顶显示
在QFunction-0.txt文件中添加以下代码:


[@LoginSuccess]
IF
EQUAL HUMAN VIP_LEVEL 3
ACT
SENDMSG 7 " [红钻]"
BREAK

IF
EQUAL HUMAN VIP_LEVEL 2
ACT
SENDMSG 7 " [黄钻]"
BREAK

IF
EQUAL HUMAN VIP_LEVEL 1
ACT
SENDMSG 7 " [蓝钻]"
BREAK


说明:
SENDMSG 7 表示向当前地图所有玩家广播头顶消息
COLOR参数使用RGB值:红(255,0,0)、黄(255,255,0)、蓝(0,0,255)
自动替换为玩家角色名
每次登录或变量变更后需重新触发此脚本

四、实现动态更新(非仅登录时显示)
若需在玩家升级VIP后立即刷新头顶标识,可在设置变量处追加调用:


[@SetVipLevel]
ACT
SET HUMAN VIP_LEVEL
CALL [RefreshVipTitle]

[RefreshVipTitle]
IF
EQUAL HUMAN VIP_LEVEL 3
ACT
SENDMSG 7 " [红钻]"
...(其余同上)


五、注意事项
部分引擎需开启“允许头顶消息”选项(在!Setup.txt中确认EnableSendMsg=1)
若使用称号系统替代变量,可改用CHECKNAME或CHECKDRESS判断装备/称号
避免频繁发送SENDMSG,防止刷屏或卡顿
客户端无需任何改动,纯服务端逻辑

按上述方法配置后,玩家登录或VIP状态变更时,头顶将自动显示对应颜色的钻石标识。脚本可根据实际需求扩展更多等级或自定义文字。