死亡就上全服电视!传奇架设必看:死亡全屏播报脚本教学

来源: 作者: 点击:
一、功能效果演示

当玩家死亡时(被玩家击杀/被怪物击杀):
全服飘屏公告:红字播报死亡玩家、凶手、地图坐标

💥【死亡播报】玩家 <USERNAME> 在【<MAPNAME>】被 <KILLER> 残忍击杀!坐标(<X>:<$Y>)
额外效果(可选):

死亡玩家屏幕震动

凶手获得杀戮值

死亡玩家装备爆出提示

二、核心脚本(复制即用)

文件位置:D:\MirServer\Mir200\Envir\MapQuest_Def\QManage.txt
;-----------配置区(按需修改)------------
死亡播报开关(1=开启全服公告 0=关闭)

DeathNotice = 1
安全区不播报(1=跳过安全区 0=所有地图生效)

SafeMapNotice = 1
;---------------------------------------

[@OnDie] ; 玩家死亡必触发事件
IF
跳过安全区死亡(安全区地图编号自行替换)

CHECKMAPNAME < 安全区1,安全区2,土城 >
ACT

BREAK

IF

EQUAL <$DEATHTYPE> 0 ; 0=被玩家击杀
ACT

MOV S1 <$KILLER> ; 获取凶手名字
MOV A92 1 ; 记录PK死亡(用于后续计算)
GOTO @死亡播报

IF

ACT

MOV S1 魔界大军 ; 非玩家击杀(如怪物/环境)
MOV A92 0

[@死亡播报] ; 播报逻辑核心
IF

EQUAL $DeathNotice 1 ; 检查开关
ACT

SENDMSG 1 249 255 【死亡播报】玩家【%s】在【<MAPNAME>】被【<STR(S1)>】击杀!爆出装备:<$CURITEMNAME> 0:2
SENDMSG 1 249 255 追杀坐标:→ <MAPNAME>(<X>:<$Y>) ← 0:2

;----- 额外效果(可选) -----
死亡玩家屏幕震动(持续3秒)

SENDMOVEMSG 1 1 3
凶手获得杀戮值(仅玩家击杀)

IF

EQUAL A92 1
ACT

HUMANVAR <$KILLER> ADD 杀戮值 1
SENDMSG 6 <KILLER> 杀戮值+1!当前:<HUMAN(杀戮值)>

三、代码详解(新手必看)
命令 作用 参数说明

[@OnDie] 玩家死亡时自动触发的特殊标签 必须放在QManage.txt中
<$KILLER> 系统变量自动记录凶手名字 被怪物击杀时值为空
<$CURITEMNAME> 死亡时掉落的装备名字 未掉落装备则显示为空白
SENDMSG 1 全服公告(0=红字 1=蓝字) 249 255=字体色号,0:2=居中显示2秒
HUMANVAR ADD 给凶手增加自定义变量 如“杀戮值”需提前在QuestDiary定义变量

四、进阶扩展方案
给死亡玩家追加惩罚(如掉级)

在 [@OnDie] 标签下追加:
ACT
被玩家击杀掉1级

CHANGELEVEL -1
SENDMSG 6 你因战败损失了1级实力!

死亡掉落背包随机装备

ACT
随机选取1件背包装备掉落

DropUserItemFromBag 1
记录掉落的装备名字

MOV S2 <$DROPPEDITEMNAME>

五、避坑指南
问题现象 解决方法

死亡播报不触发 确认脚本放在 QManage.txt 的 [@OnDie]
安全区依然播报 检查 CHECKMAPNAME 后的安全区地图名
被杀后凶手名字显示错误 用 <$KILLER> 前确认是否被玩家击杀
掉级/掉装备功能未生效 检查命令是否写在 #ACT 且无逻辑冲突

六、最终效果图

!https://cdn.jsdelivr.net/gh/传奇脚本/图片库/死亡公告.gif
(全屏居中红字 + 掉落装备提示 + 坐标精准定位)

⚠️ 重要提醒:
<$KILLER> 仅在 被玩家击杀时有效,怪物击杀需手动指定文本(如MOV S1 "赤月恶魔")

所有自定义变量(如"杀戮值")需在 QuestDiary\变量系统\属性变量.txt 中声明

用前务必备份脚本!

立即生效技巧:
修改后重载NPC脚本 → 在游戏中输入 @重读登录脚本 或重启服务端