当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

传奇人物上线提示脚本添加教程含转生次数显示配置

热度:
一、核心原理:上线提示脚本的触发逻辑与核心需求

1.上线提示脚本是什么?

传奇人物上线提示脚本是玩家登录游戏时自动触发的功能代码,核心作用是通过系统公告形式,将玩家的关键信息(如角色名、转生次数、等级等)广播给全服或指定范围玩家,增强游戏社交互动性与玩家存在感。比如“【全服公告】玩家‘屠龙战神’(转生5次)荣耀上线,战力超群!”这类提示,背后都是该脚本在运作。

2.核心需求拆解:转生次数显示的关键

用户核心需求“让XX转生几次显示在系统提示上”,需解决两个核心问题:①脚本如何精准捕捉玩家“上线”这一动作;②如何从游戏数据中提取玩家的“转生次数”并关联角色名,最终通过系统提示输出。这两个问题分别对应“触发机制”和“数据调用”,也是脚本制作的重点。

3.脚本适配引擎说明

上线提示脚本依赖引擎的“玩家登录触发”接口,主流HERO、GOM、BLUE引擎均支持该功能,但转生次数变量存在差异。本文以新手常用的HERO引擎为基础,同步标注GOM引擎适配方法,覆盖多数使用场景。

二、前期准备:工具、参数与核心命令

1.必备工具与环境

-文本编辑器:记事本++(优先)或系统记事本,确保支持ANSI编码,避免中文乱码。

-服务端文件:本地单机服务端(用于测试),需能正常启动并登录角色。

-转生变量查询工具:若不清楚转生变量名,可通过引擎“变量查看器”(HERO引擎控制端-功能-变量查询)获取,或查阅服务端“转生系统配置文件”。

2.核心参数与命令清单

脚本制作需用到“触发命令”“数据调用命令”“提示命令”三类核心命令,结合转生次数需求整理如下:

命令类型

命令语法(HERO)

GOM适配语法

功能说明

上线触发

[@Login]

同HERO

玩家登录游戏时自动触发脚本

获取转生次数

<$HUMAN(Reincarnation)>

<$REINCARNATION>

调用玩家当前转生次数,变量名需与服务端一致

获取角色名

<$USERNAME>

同HERO

调用当前登录玩家的角色名

全服提示

BROADCAST提示内容

SENDMSG9提示内容

向全服玩家发送红色系统公告(9为红色代码)

范围提示

SENDMSG6提示内容

同HERO

向玩家自身或当前地图发送绿色提示(6为绿色代码)

条件判断

#IFEQUAL<$HUMAN(Reincarnation)>0

#IFEQUAL<$REINCARNATION>0

判断玩家是否未转生,用于差异化提示


关键提示:转生变量名是核心,若上述变量不生效,打开服务端“Mir200\Envir\QuestDiary\转生系统”文件夹,查看“Reincarnation.txt”中的变量定义,如“SETHUMANReincarnation1”,则变量名为Reincarnation。


三、完整脚本制作:从基础版到进阶版(含转生显示)

1.基础版:全服显示“角色名+转生次数”上线提示

适用于所有玩家上线均触发全服公告,清晰展示转生信息,制作步骤如下:

步骤1:确定脚本存放路径

上线提示脚本属于“全局触发脚本”,需放在服务端指定路径,不同引擎路径一致:

服务端根目录→Mir200→Envir→QuestDiary→新建“LoginNotice”文件夹(用于存放登录相关脚本)。

步骤2:编写基础版脚本代码

新建文本文件,命名为“PlayerLogin.txt”,编码设为ANSI,输入以下代码(HERO引擎):

;传奇人物上线提示脚本(基础版-全服显示转生次数)
;脚本存放路径:Mir200\Envir\QuestDiary\LoginNotice\PlayerLogin.txt
[@Login];玩家上线触发标识
#ACT
;调用角色名和转生次数变量,生成全服提示
;先判断是否转生,避免显示“转生0次”
#IF
;条件:转生次数=0(未转生)
EQUAL<$HUMAN(Reincarnation)>0
#ACT
;全服广播未转生玩家上线信息
BROADCAST【全服公告】新手玩家<$USERNAME>(未转生)正式上线,欢迎加入传奇世界!
SENDMSG6你已成功登录,当前转生状态:未转生,可通过土城转生NPC提升战力。
#ELSE
#ACT
;全服广播已转生玩家上线信息,显示具体转次数
BROADCAST【全服公告】强者归来!玩家<$USERNAME>(转生<$HUMAN(Reincarnation)>次)荣耀上线,速来组队!
SENDMSG6登录成功!当前转生状态:转生<$HUMAN(Reincarnation)>次,已解锁专属特权。
#ENDIF

步骤3:GOM引擎适配修改

若使用GOM引擎,只需修改“转生变量”和“全服提示命令”,适配后代码如下:

;GOM引擎-上线提示脚本(基础版)
[@Login]
#ACT
#IF
EQUAL<$REINCARNATION>0
#ACT
;GOM全服提示用SENDMSG9
SENDMSG9【全服公告】新手玩家<$USERNAME>(未转生)正式上线,欢迎加入传奇世界!
SENDMSG6登录成功,当前转生:未转生。
#ELSE
#ACT
SENDMSG9【全服公告】强者归来!玩家<$USERNAME>(转生<$REINCARNATION>次)荣耀上线!
SENDMSG6登录成功,当前转生:转生<$REINCARNATION>次。
#ENDIF

2.进阶版:分转生等级差异化提示(高转生特殊标识)

针对高转生玩家设置特殊公告(如“神级玩家”标识),提升高战力玩家体验,脚本代码如下(HERO引擎):

;进阶版-分转生等级上线提示脚本
[@Login]
#ACT
VARDEFINEReborn<$HUMAN(Reincarnation)>;定义转生变量,简化后续代码
;10次以上转生(神级玩家)
#IF
GREATERReborn10
#ACT
BROADCAST【神级降临】🎉神级玩家<$USERNAME>(转生<$Reborn>次)驾临!全服玩家速来膜拜!
SENDMSG6你已登录,作为转生<$Reborn>次的神级强者,可前往天庭地图挑战专属BOSS。
;5-10次转生(精英玩家)
#ELSEIF
GREATERReborn4
#ACT
BROADCAST【精英归来】✨精英玩家<$USERNAME>(转生<$Reborn>次)上线!组队升级效率翻倍!
SENDMSG6登录成功,转生<$Reborn>次已解锁精英副本,每日可挑战3次。
;1-4次转生(进阶玩家)
#ELSEIF
GREATERReborn0
#ACT
BROADCAST【进阶强者】💪玩家<$USERNAME>(转生<$Reborn>次)上线,正在向更高战力冲刺!
SENDMSG6当前转生<$Reborn>次,建议优先提升装备等级,搭配转生属性。
;未转生(新手玩家)
#ELSE
#ACT
BROADCAST【新手报到】👋新伙伴<$USERNAME>(未转生)加入传奇,老玩家可前往新手村带飞!
SENDMSG6新手福利:与新手引导员对话可领取转生启动礼包,快速提升转生等级。
#ENDIF

3.高级版:添加上线奖励与转生挂钩(增强实用性)

将上线提示与奖励结合,转生次数越高奖励越丰厚,脚本代码如下(含物品发放逻辑):

;高级版-上线提示+转生奖励脚本
[@Login]
#ACT
VARDEFINEReborn<$HUMAN(Reincarnation)>
;高转生奖励(10次以上)
#IF
GREATERReborn10
#ACT
BROADCAST【神级福利】神级玩家<$USERNAME>(转生<$Reborn>次)上线,获赠神级礼包!
GIVE50011;5001为神级礼包ID
GAMEGOLD+100;赠送100元宝
SENDMSG6登录奖励:神级礼包x1+元宝x100,已放入背包。
;中转生奖励(5-10次)
#ELSEIF
GREATERReborn4
#ACT
BROADCAST【精英福利】精英玩家<$USERNAME>(转生<$Reborn>次)上线,获赠精英礼包!
GIVE50021;5002为精英礼包ID
GAMEGOLD+50
SENDMSG6登录奖励:精英礼包x1+元宝x50。
;低转生奖励(1-4次)
#ELSEIF
GREATERReborn0
#ACT
BROADCAST【进阶福利】玩家<$USERNAME>(转生<$Reborn>次)上线,获赠进阶礼包!
GIVE50031;5003为进阶礼包ID
GAMEGOLD+20
SENDMSG6登录奖励:进阶礼包x1+元宝x20。
;新手奖励(未转生)
#ELSE
#ACT
BROADCAST【新手福利】新玩家<$USERNAME>上线,获赠新手大礼包!
GIVE50041;5004为新手礼包ID
GIVE10021;1002为新手武器铁剑ID
SENDMSG6新手奖励:新手大礼包x1+铁剑x1,助力快速成长。
#ENDIF

四、脚本配置与生效:3步完成部署

1.步骤1:脚本文件部署

将编写好的“PlayerLogin.txt”文件,放入对应路径:

-HERO/GOM引擎通用路径:Mir200\Envir\QuestDiary\LoginNotice(LoginNotice文件夹需手动新建,名称可自定义)。

-若服务端已有“Login.txt”全局登录脚本,可直接将代码复制到该文件的[@Login]标识下,无需新建文件夹。

2.步骤2:配置脚本触发(关键步骤)

需在服务端“全局脚本配置文件”中注册该脚本,确保上线时能触发,操作如下:

1.打开服务端“Mir200\Envir\QuestDiary\!QuestDiary.txt”文件(该文件是所有脚本的入口配置)。

2.在文件末尾添加一行配置,指向脚本路径:#CALLLoginNotice\PlayerLogin.txt(若脚本放在根目录则直接写脚本文件名)。

3.保存文件,确保配置格式正确(#CALL后空格+路径+文件名)。

3.步骤3:刷新脚本与测试

1.刷新脚本:启动服务端,在引擎控制端点击“刷新脚本”或“重新加载QuestDiary”,部分引擎需重启服务端才能生效。

2.多角色测试:
登录未转生角色,查看是否显示“新手玩家”公告及对应提示。

3.登录转生3次的角色,确认公告中“转生3次”是否正确显示。

4.登录转生11次的角色,验证高转生特殊标识和奖励是否正常发放。

5.问题排查:若不触发,检查!QuestDiary.txt中的#CALL路径是否正确;若转生次数显示错误,核对转生变量名与服务端是否一致。

五、常见问题与解决方案(避坑指南)

1.脚本不触发:3个核心排查点

-问题1:登录游戏无任何提示原因:①!QuestDiary.txt中未配置#CALL路径;②脚本文件编码不是ANSI;③触发标识写错(如写成@login小写)。

解决:重新配置#CALL路径,确保格式为“#CALL文件夹名\文件名.txt”;用记事本++将编码改为ANSI;触发标识统一用大写[@Login]。

-问题2:仅自身有提示,全服不显示原因:引擎命令用错,如GOM引擎误用BROADCAST命令,HERO引擎误用SENDMSG9命令。

解决:HERO全服提示用BROADCAST,GOM全服提示用SENDMSG9,按引擎替换对应命令。

2.转生次数显示异常:2个关键修复方法

-问题1:转生次数显示为“0”或空白原因:①转生变量名与服务端不匹配;②玩家数据未正确存储转生信息。

解决:①打开服务端转生配置文件(如Reincarnation.txt),查找“SETHUMAN变量名数值”中的变量名,替换脚本中的变量;②登录游戏完成一次转生操作,确保转生数据已保存。

-问题2:所有玩家都显示“未转生”原因:条件判断逻辑错误,如将“EQUAL<$HUMAN(Reincarnation)>0”写成“GREATER<$HUMAN(Reincarnation)>0”。

解决:检查#IF条件中的比较符号,未转生判断用“EQUAL0”,已转生用“GREATER0”,避免逻辑倒置。

3.奖励发放失败:权限与ID排查

若高级版脚本中奖励未到账,排查两点:①物品ID是否正确(从Item.txt中查询礼包ID);②服务端是否限制了登录奖励权限,在引擎控制端“功能设置”中确认“允许登录脚本发放物品”已勾选。

六、脚本拓展:添加更多个性化信息

1.增加等级、职业显示

在公告中补充玩家等级和职业,增强信息完整性,核心代码如下:

;显示等级、职业、转生信息
BROADCAST【全服公告】玩家<$USERNAME>(<$JOB>等级<$LEVEL>转生<$HUMAN(Reincarnation)>次)上线!
;变量说明:<$JOB>获取职业(战士/法师/道士),<$LEVEL>获取当前等级

2.特定时间段上线特殊提示

设置每日19:00-22:00上线的玩家显示“晚间福利”提示,核心代码:

[@Login]
#ACT
VARDEFINEHour<$HOUR>;获取当前小时(24小时制)
#IF
ANDGREATERHour18LESSHour22;19:00-21:59
#ACT
BROADCAST【晚间福利】<$USERNAME>(转生<$HUMAN(Reincarnation)>次)晚间上线,可参与全服BOSS活动!
SENDMSG6晚间专属:前往土城活动NPC领取双倍经验符。
#ELSE
#ACT
;其他时间段正常提示
BROADCAST【上线公告】<$USERNAME>(转生<$HUMAN(Reincarnation)>次)已上线。
#ENDIF

3.屏蔽低等级玩家全服提示(减少骚扰)

设置等级低于30级的玩家仅自身提示,不触发全服公告,核心代码:

[@Login]
#IF
GREATER<$LEVEL>30;等级高于30级才触发全服提示
#ACT
BROADCAST【强者上线】<$USERNAME>(等级<$LEVEL>转生<$HUMAN(Reincarnation)>次)登场!
#ELSE
#ACT
SENDMSG6登录成功,等级提升至30级可触发全服上线公告。
#ENDIF

传奇人物上线提示脚本的核心是“触发标识+数据调用+提示命令”的组合,转生次数显示的关键则是精准匹配服务端的转生变量名。制作时先通过服务端文件确认变量,再按引擎选择对应命令,最后通过多角色测试验证效果。若你不清楚自身服务端的转生变量名或遇到特殊引擎适配问题,可补充说明服务端版本和引擎类型,我会提供更精准的解决方案。
[顶部]