一、人物死亡上电视脚本核心原理
传奇人物死亡上电视,本质是通过全局触发脚本监听角色死亡事件,满足判定条件后,触发全服文字公告(即上电视效果)。脚本依托服务端全局触发文件运行,无需单独搭建NPC,角色倒地瞬间自动执行指令,支持自定义公告内容、播报范围、触发条件,适配Hero、GOM、GEE三大主流引擎。
脚本核心逻辑:监听角色死亡状态→判定死亡类型(正常PK死亡、怪物击杀死亡)→读取角色名称、击杀者名称、死亡地图信息→推送全服公告,实现死亡消息全服可见的上电视效果。
二、人物死亡上电视完整脚本代码
;全局触发监听人物死亡事件
[@PlayDie]
#IF
#ACT
;读取死亡角色、击杀者、地图信息
MOVS1"$USERNAME"
MOVS2"$KILLERNAME"
MOVS3"$MAPNAME"
;判断击杀者类型(玩家/怪物)
#IF
EQUALS2""
#ACT
;被怪物击杀的上电视公告
SendCenterMsg2510【全服通告】玩家<$STR(S1)>在<$STR(S3)>被怪物击倒,不幸身亡!5
SendMsg0【全服通告】玩家<$STR(S1)>在<$STR(S3)>被怪物击倒,不幸身亡!
BREAK
#ELSEACT
;被玩家击杀的上电视公告
SendCenterMsg2530【全服通告】玩家<$STR(S2)>在<$STR(S3)>将<$STR(S1)>击倒,威名远扬!5
SendMsg0【全服通告】玩家<$STR(S2)>在<$STR(S3)>将<$STR(S1)>击倒,威名远扬!
BREAK
三、脚本存放路径与加载方式
3.1对应引擎存放文件
-Hero引擎:放入服务端MirServer\Mir200\Envir\QFunction-0.txt文件,直接粘贴至文件末尾即可
-GOM/GEE引擎:放入服务端MirServer\Mir200\Envir\QuestDiary\QuestFunc.txt文件,新建[@PlayDie]触发段粘贴代码
3.2脚本生效步骤
1.打开对应触发文件,将完整脚本粘贴至末尾,保留原有代码不删除、不修改
2.保存文件,关闭文本编辑器,避免文件占用导致加载失败
3.打开M2Server引擎控制器,点击顶部【加载】选项,选择【重载触发脚本】
4.等待脚本重载完成,无需重启整个服务端,进入游戏测试即可
四、脚本自定义修改教程
4.1修改公告文字内容
找到脚本内SendCenterMsg和SendMsg后的双引号内容,替换为自定义公告文字,保留<$STR(S1)>(死亡角色)、<$STR(S2)>(击杀者)、<$STR(S3)>(死亡地图)变量,示例:
替换为:【江湖通告】大侠<$STR(S1)>在<$STR(S3)>不敌<$STR(S2)>,倒地惜败!
4.2调整公告颜色与播报时长
修改SendCenterMsg后的数字参数,第一个数字为公告颜色代码(251蓝色、253黄色、252绿色、255红色),末尾数字为公告停留时长(单位秒),默认5秒可按需调整,数值越大停留越久。
4.3限制触发条件(可选)
可添加条件过滤,仅满足要求的角色死亡才上电视,示例:添加CHECKLEVELEX>50(仅50级以上角色死亡触发),代码如下:
[@PlayDie]
#IF
CHECKLEVELEX>50
#ACT
MOVS1"$USERNAME"
MOVS2"$KILLERNAME"
MOVS3"$MAPNAME"
;后续公告代码不变
4.4关闭怪物击杀播报(可选)
删除脚本内“被怪物击杀的上电视公告”整段代码,仅保留玩家PK死亡播报,实现只有玩家互杀才上电视的效果。
五、脚本常见问题排查
-死亡不上电视、无公告:检查存放路径是否正确,触发文件是否选错;确认重载触发脚本操作执行到位;查看脚本语法,标点、换行无错误,变量符号未缺失
-公告显示乱码:用记事本打开触发文件,点击【另存为】,编码选择ANSI,重新保存加载
-变量显示异常(显示$USERNAME):核对变量写法,必须使用<$STR(S1)>格式,不要直接写$USERNAME
-重复播报公告:检查文件内是否重复粘贴脚本,删除多余重复代码,仅保留一组[@PlayDie]触发段
-引擎不兼容报错:Hero引擎脚本不可直接用于GOM/GEE引擎,按对应引擎文件路径放置,不要混用文件
六、进阶功能扩展
6.1添加死亡公告音效
在公告指令前添加PlaySound1指令,数字对应音效编号,角色死亡上电视时同步播放提示音,增强播报效果。
6.2行会公告同步播报
添加GuildNoticeMsg2510【行会通告】本行会玩家<$STR(S1)>不幸阵亡!指令,实现全服公告+行会公告双播报。
6.3屏蔽GM账号死亡播报
添加CHECKISADMIN判定,GM账号死亡不触发公告,避免测试账号干扰正常播报,代码示例:
#IF
CHECKISADMIN
#ACT
BREAK
#ELSEACT
;执行原有死亡公告代码
七、脚本使用注意事项
修改触发文件前务必备份原始文件,防止改错导致其他触发功能失效;脚本变量不可随意修改,否则无法读取角色、地图信息;公告文字不宜过长,避免超出屏幕显示范围;测试时用普通账号角色死亡验证,不要用GM账号测试,确保普通玩家可正常触发上电视效果。
传奇人物死亡上电视,本质是通过全局触发脚本监听角色死亡事件,满足判定条件后,触发全服文字公告(即上电视效果)。脚本依托服务端全局触发文件运行,无需单独搭建NPC,角色倒地瞬间自动执行指令,支持自定义公告内容、播报范围、触发条件,适配Hero、GOM、GEE三大主流引擎。
脚本核心逻辑:监听角色死亡状态→判定死亡类型(正常PK死亡、怪物击杀死亡)→读取角色名称、击杀者名称、死亡地图信息→推送全服公告,实现死亡消息全服可见的上电视效果。
二、人物死亡上电视完整脚本代码
;全局触发监听人物死亡事件
[@PlayDie]
#IF
#ACT
;读取死亡角色、击杀者、地图信息
MOVS1"$USERNAME"
MOVS2"$KILLERNAME"
MOVS3"$MAPNAME"
;判断击杀者类型(玩家/怪物)
#IF
EQUALS2""
#ACT
;被怪物击杀的上电视公告
SendCenterMsg2510【全服通告】玩家<$STR(S1)>在<$STR(S3)>被怪物击倒,不幸身亡!5
SendMsg0【全服通告】玩家<$STR(S1)>在<$STR(S3)>被怪物击倒,不幸身亡!
BREAK
#ELSEACT
;被玩家击杀的上电视公告
SendCenterMsg2530【全服通告】玩家<$STR(S2)>在<$STR(S3)>将<$STR(S1)>击倒,威名远扬!5
SendMsg0【全服通告】玩家<$STR(S2)>在<$STR(S3)>将<$STR(S1)>击倒,威名远扬!
BREAK
三、脚本存放路径与加载方式
3.1对应引擎存放文件
-Hero引擎:放入服务端MirServer\Mir200\Envir\QFunction-0.txt文件,直接粘贴至文件末尾即可
-GOM/GEE引擎:放入服务端MirServer\Mir200\Envir\QuestDiary\QuestFunc.txt文件,新建[@PlayDie]触发段粘贴代码
3.2脚本生效步骤
1.打开对应触发文件,将完整脚本粘贴至末尾,保留原有代码不删除、不修改
2.保存文件,关闭文本编辑器,避免文件占用导致加载失败
3.打开M2Server引擎控制器,点击顶部【加载】选项,选择【重载触发脚本】
4.等待脚本重载完成,无需重启整个服务端,进入游戏测试即可
四、脚本自定义修改教程
4.1修改公告文字内容
找到脚本内SendCenterMsg和SendMsg后的双引号内容,替换为自定义公告文字,保留<$STR(S1)>(死亡角色)、<$STR(S2)>(击杀者)、<$STR(S3)>(死亡地图)变量,示例:
替换为:【江湖通告】大侠<$STR(S1)>在<$STR(S3)>不敌<$STR(S2)>,倒地惜败!
4.2调整公告颜色与播报时长
修改SendCenterMsg后的数字参数,第一个数字为公告颜色代码(251蓝色、253黄色、252绿色、255红色),末尾数字为公告停留时长(单位秒),默认5秒可按需调整,数值越大停留越久。
4.3限制触发条件(可选)
可添加条件过滤,仅满足要求的角色死亡才上电视,示例:添加CHECKLEVELEX>50(仅50级以上角色死亡触发),代码如下:
[@PlayDie]
#IF
CHECKLEVELEX>50
#ACT
MOVS1"$USERNAME"
MOVS2"$KILLERNAME"
MOVS3"$MAPNAME"
;后续公告代码不变
4.4关闭怪物击杀播报(可选)
删除脚本内“被怪物击杀的上电视公告”整段代码,仅保留玩家PK死亡播报,实现只有玩家互杀才上电视的效果。
五、脚本常见问题排查
-死亡不上电视、无公告:检查存放路径是否正确,触发文件是否选错;确认重载触发脚本操作执行到位;查看脚本语法,标点、换行无错误,变量符号未缺失
-公告显示乱码:用记事本打开触发文件,点击【另存为】,编码选择ANSI,重新保存加载
-变量显示异常(显示$USERNAME):核对变量写法,必须使用<$STR(S1)>格式,不要直接写$USERNAME
-重复播报公告:检查文件内是否重复粘贴脚本,删除多余重复代码,仅保留一组[@PlayDie]触发段
-引擎不兼容报错:Hero引擎脚本不可直接用于GOM/GEE引擎,按对应引擎文件路径放置,不要混用文件
六、进阶功能扩展
6.1添加死亡公告音效
在公告指令前添加PlaySound1指令,数字对应音效编号,角色死亡上电视时同步播放提示音,增强播报效果。
6.2行会公告同步播报
添加GuildNoticeMsg2510【行会通告】本行会玩家<$STR(S1)>不幸阵亡!指令,实现全服公告+行会公告双播报。
6.3屏蔽GM账号死亡播报
添加CHECKISADMIN判定,GM账号死亡不触发公告,避免测试账号干扰正常播报,代码示例:
#IF
CHECKISADMIN
#ACT
BREAK
#ELSEACT
;执行原有死亡公告代码
七、脚本使用注意事项
修改触发文件前务必备份原始文件,防止改错导致其他触发功能失效;脚本变量不可随意修改,否则无法读取角色、地图信息;公告文字不宜过长,避免超出屏幕显示范围;测试时用普通账号角色死亡验证,不要用GM账号测试,确保普通玩家可正常触发上电视效果。

