传奇服务端中的封号、称号、顶戴花翎属于三套不同系统。封号通常显示在角色名字上方或旁边,用于区分身份、等级、行会、战力或活动状态;称号多为可佩戴的装备类功能,提供属性加成;顶戴花翎则是头顶动态特效,用于增强视觉辨识度。下面按GEE/GOM/996类引擎常见结构编写,物品名、WIL编号、图片序号需按实际版本替换。
一、封号系统
封号一般通过SETRANKLEVELNAME命令实现,显示为角色名字前缀或后缀。
文件路径:
Mir200EnvirMapQuest_defQManage.txt
[@Login]
IF
CHECKLEVELEX > 0
ACT
CALL [封号系统封号设置.txt] @SetRankTitle
文件路径:
Mir200EnvirQuestDiary封号系统封号设置.txt
[@SetRankTitle]
IF
CHECKLEVELEX < 40
ACT
SETRANKLEVELNAME %s【江湖新秀】
BREAK
IF
CHECKLEVELEX > 39
CHECKLEVELEX < 60
ACT
SETRANKLEVELNAME %s【武林高手】
BREAK
IF
CHECKLEVELEX > 59
ACT
SETRANKLEVELNAME %s【一代宗师】
BREAK
SETRANKLEVELNAME格式中,%s表示角色名,反斜杠后为封号内容。封号会随登录重新检测,因此适合按等级、VIP、行会、任务进度自动刷新。
二、称号系统
称号本质是特殊装备,分类通常设为70,拥有独立属性。
数据库配置
在StdItem.db或称号专用表中添加称号物品:
Name:狂暴之力
StdMode:70
Shape:20
Anicount:1
Looks:690
DuraMax:0
AC:0
MAC:0
DC:3
MC:3
SC:3
Shape用于触发佩戴事件,Looks对应称号素材图片起始位置,DuraMax为0表示永久有效。
素材设置
在M2Server中进入“选项-功能设置-其他控制”,找到“称号素材读取设置”,选择对应PAK或WIL文件。称号图片通常每组5张,分别用于外观显示、界面显示、激活显示。
称号授予脚本
[@GiveTitle]
IF
CHECKTITLE 狂暴之力
ELSESACT
CONFERTITLE 狂暴之力
SENDMSG 7 已获得称号:狂暴之力。
BREAK
SAY
你已拥有狂暴之力称号。\
[@exit]
[@RemoveTitle]
IF
CHECKTITLE 狂暴之力
ACT
DEPRIVETITLE 狂暴之力
SENDMSG 7 已移除称号:狂暴之力。
BREAK
ELSESAY
你未拥有该称号。\
[@exit]
常用命令:
CHECKTITLE 称号名:检测是否拥有称号
CONFERTITLE 称号名:授予称号
DEPRIVETITLE 称号名:移除称号
DEPRIVETITLE all:移除所有称号
CHECKFENGHAOCOUNT 比较符 数量:检测称号数量
佩戴触发顶戴花翎
文件路径:
Mir200EnvirMapQuest_defQFunction-0.txt
[@TitleChanged_20]
ACT
SETICON 0 9 707 0 -20 10 1 200 0 0
BREAK
[@Untitled_20]
ACT
SETICON 0 -1
BREAK
Shape为20的称号佩戴时触发@TitleChanged_20,脱下时触发@Untitled_20。
三、顶戴花翎系统
顶戴花翎通过SetIcon命令实现,与称号属性无直接关联,可独立使用。
命令格式:
SetIcon 位置 WIL文件序号 图片序号 X Y 播放张数 播放效果 播放速度 是否只有自己看见
位置:0-9,共10个位置,数字大的覆盖数字小的。
WIL文件序号:在M2Server“查看-列表信息二-WIL资源”中查看编号。
图片序号:对应WIL或PAK中的图片编号。
X/Y:微调偏移坐标。
播放张数:多张序列图组成动画时填写。
播放效果:0为普通图片,1为特效。
播放速度:单位毫秒,默认300。
是否只有自己看见:0为所有人可见,1为仅自己可见。
登录自动佩戴
文件路径:
Mir200EnvirMapQuest_defQManage.txt
[@Login]
IF
CHECKTITLE 狂暴之力
ACT
SETICON 0 9 707 0 -20 10 1 200 0 0
BREAK
IF
CHECKITEM 沙巴克城主令牌 1
ACT
SETICON 1 9 800 0 -35 12 1 200 0 0
BREAK
顶戴花翎下线不保存,需在登录时重新检测并佩戴。
清除顶戴花翎
[@ClearIcon]
ACT
SETICON 0 -1
SETICON 1 -1
SETICON 2 -1
SENDMSG 7 头顶特效已清除。
BREAK
将WIL文件序号设为-1即可清除对应位置的顶戴花翎。
NPC头顶花翎
在MerChant.txt中配置NPC后,创建对应配置文件。
例如NPC配置为:
盟重土城/流浪汉 3 346 334 流浪汉 0 3 0
则创建文件:
Mir200EnvirNpcIcons盟重土城流浪汉-3.txt
内容格式:
;WIL文件序号 图片序号 播放张数 X Y 播放效果 播放速度
3 1 5 0 -30
每行一个特效,最多10行。
怪物头顶花翎
文件路径:
Mir200EnvirMonIcons白野猪.txt
格式与NPC相同:
3 1 5 0 -30
文件名必须与怪物数据库中的名称完全一致。
四、综合示例:充值封号系统
[@RechargeTitle]
IF
CHECKGAMEGOLD > 99
ACT
GAMEGOLD - 100
CONFER TITLE 富甲一方
SETICON 0 9 710 0 -25 8 1 200 0 0
SENDMSG 7 已获得封号:富甲一方。
BREAK
ELSESAY
元宝不足100,无法获取该封号。\
[@exit]
[@RemoveRechargeTitle]
IF
CHECKTITLE 富甲一方
ACT
DEPRIVETITLE 富甲一方
SETICON 0 -1
SENDMSG 7 已移除封号:富甲一方。
BREAK
ELSESAY
你未拥有该封号。\
[@exit]
五、行会封号系统
[@GuildTitle]
IF
ISGUILDMASTER
ACT
SETRANKLEVELNAME %s【行会会长】
SETICON 2 9 720 0 -40 10 1 200 0 0
BREAK
IF
CHECKGUILDRANK 1
ACT
SETRANKLEVELNAME %s【行会长老】
SETICON 2 9 721 0 -40 10 1 200 0 0
BREAK
IF
ACT
SETRANKLEVELNAME %s【行会成员】
SETICON 2 -1
BREAK
行会封号建议在登录、行会变更、攻城结束后重新检测。
六、攻城封号系统
文件路径:
Mir200EnvirMapQuest_defQFunction-0.txt
[@CastleWarEnd]
IF
ISCASTLEOWNER 沙巴克
ACT
CONFER TITLE 沙巴克城主
SETICON 1 9 800 0 -35 12 1 200 0 0
SETRANKLEVELNAME %s【沙城霸主】
SENDMSG 20 恭喜<$USERNAME>成为新任沙巴克城主!
BREAK
攻城结束后通过事件触发授予城主封号和顶戴花翎,新任城主产生时需先清除前任城主的称号和特效。
七、注意事项
称号和顶戴花翎是两套独立系统。称号提供属性,顶戴花翎仅提供视觉特效,两者需分别配置。
顶戴花翎下线不保存,必须在QManage.txt的[@Login]中重新检测并佩戴。
SetIcon位置0-9,数字大的覆盖数字小的,需合理规划各封号的位置优先级。
WIL文件序号必须在M2Server“列表信息二-WIL资源”中确认,不同版本编号不同。
称号Shape编号需连续且不与已有称号冲突,否则佩戴触发事件可能错乱。
SETRANKLEVELNAME封号在部分引擎中可能被内挂“隐藏称号”选项屏蔽,需提醒玩家检查内挂设置。
NPC和怪物的顶戴花翎通过NpcIcons和MonIcons目录下的同名txt文件配置,文件名必须与NPC/怪物名称完全一致。
授予称号前建议先用CHECKTITLE检测,避免重复授予;移除称号前也需检测是否存在。
若版本支持@TitleChanged_XX和@Untitled_XX触发事件,可自动在佩戴/脱下称号时同步顶戴花翎。
传奇特色封号顶戴花翎系统:SETRANKLEVELNAME称号SetIcon头顶脚本完整配置
来源:
作者:
点击:

