在传奇游戏里,通常只有主动攻击他人的玩家才会变红名,但有些特殊武器能实现反向效果 —— 用它攻击别人时,被砍的人会立刻变红名。这种特殊机制需要通过修改服务端脚本来实现。下面就详细说明如何配置这样的红名武器脚本,让武器拥有 "将对手标记为红名" 的特殊能力。
先搞懂红名机制和脚本触发原理
传奇里的红名本质是 "PK 值" 累积的视觉表现,正常情况下:主动攻击白名玩家会增加自己的 PK 值,当 PK 值达到一定数值(通常是 30 点),名字就会变成红色。而我们要实现的特殊效果,是让被攻击的玩家增加 PK 值,这需要突破默认规则,通过脚本强制给目标添加 PK 值。
实现这个效果的核心是两个关键点:
攻击触发:当玩家用指定武器攻击他人时,脚本需要检测到这个动作。传奇服务端中,QFunction-0.txt 是处理这类功能的主要脚本文件,其中的@Attack标记专门用于捕捉物理攻击事件(包括用武器平砍、烈火等技能)。
强制红名:通过脚本命令给被攻击者增加 PK 值。常用的命令是INC PKPOINT(增加 PK 点),当目标的 PK 值超过服务器设定的红名阈值,就会立刻显示为红名状态。
一步步配置红名武器脚本
第一步:找到并备份脚本文件
首先进入服务端目录,依次打开D:\mirserver\Mir200\Envir\,找到QFunction-0.txt文件(如果没有可以新建)。这个文件负责处理游戏中的各种功能触发,包括武器攻击效果,修改前最好复制一份备份,防止出错后无法恢复。
第二步:添加武器识别和攻击触发代码
在 QFunction-0.txt 中添加以下基础结构,用于识别指定武器的攻击动作:
[@Attack]
#IF
CheckItemW 红名之刃 // 检查攻击者是否佩戴了名为"红名之刃"的武器
CheckTargetIsPlayer // 确保被攻击的目标是玩家(不是NPC)
#ACT
// 这里后续添加让目标变红名的命令
代码说明:
[@Attack]:表示当发生物理攻击时触发这段脚本。
CheckItemW:用于检测攻击者当前佩戴的武器名称(需要替换成你的武器实际名称)。
CheckTargetIsPlayer:过滤掉攻击 NPC 的情况,避免误触发。
第三步:添加强制红名的核心命令
在#ACT下方添加给目标增加 PK 值的命令,完整代码如下:
[@Attack]
#IF
CheckItemW 红名之刃
CheckTargetIsPlayer
#ACT
INC PKPOINT 30 0 // 给被攻击者增加30点PK值(第二个参数0代表目标)
SendMsg 6 你被特殊武器攻击,PK值增加,已变为红名! // 提示被攻击者
SendMsg 6 你的武器触发了特殊效果,目标已被标记为红名! // 提示攻击者
关键命令解析:
INC PKPOINT 30 0:30是增加的 PK 值(根据服务器红名阈值调整,通常 30 点刚好变红名),0代表作用对象是被攻击者(如果写 1 则作用于自己)。
SendMsg 6:向玩家发送橙色提示信息,让双方明确知道效果已触发(6 是颜色代码)。
第四步:测试并调整参数
保存脚本后重启服务端,用测试账号进行以下验证:
佩戴 "红名之刃" 攻击白名玩家,观察对方名字是否变红。
若目标没变红,可能是服务器红名阈值较高,可将30调整为更高数值(如 50)。
测试攻击 NPC 是否会触发(正常情况下不应触发,因为有CheckTargetIsPlayer判断)。
如果需要让红名效果持续一段时间后自动消失,可以搭配定时清除 PK 值的脚本(例如用MOV PKPOINT 0命令),但这属于进阶功能,新手可先实现基础效果。
不同服务端引擎的适配注意事项
传奇服务端有 Hero、GOM、GEE 等多种引擎,部分命令可能需要微调:
GOM/GEE 引擎:上述代码可直接使用,CheckTargetIsPlayer是内置命令。
Hero 引擎:判断目标是否为玩家可能需要用CHECKCURRTARGETRACE 2(2 代表玩家种族)。
命令差异:如果INC PKPOINT无效,可尝试HUMANMAKEPK $TARGET 300(部分引擎用此命令直接将目标设为红名 300 秒)。
如果脚本不生效,可查看服务端日志文件(通常在Log\ScriptError.log),里面会记录命令错误原因,比如武器名称拼写错误、命令格式不对等。
总结:让脚本生效的关键要点
配置红名武器脚本的核心逻辑是 "识别武器→检测攻击→强制加 PK 值",记住这三个关键点:
武器名称必须与CheckItemW后的名称完全一致(包括大小写)。
必须限制目标为玩家,否则攻击 NPC 也会触发效果。
PK 值的数值需要匹配服务器的红名规则(可在 M2 服务器设置中查看红名阈值)。
通过这种方式,就能让普通武器变成 "红名之刃",实现 "砍谁谁变红名" 的特殊效果。如果想增加更多特性(比如概率触发、同时降低自身 PK 值),可以在现有脚本基础上添加条件判断或额外命令,逐步扩展功能。
如何在传奇服务端中配置红名武器脚本,让被攻击的玩家变成红名
来源:
作者:
点击:

