2026-06-11 09:20来源:三彩搜服网
添加自定义称号应按客户端素材、物品数据库、脚本发放、上线测试四步完成,不能只修改角色名或聊天显示。称号通常作为特殊物品写入数据库,`stdmode`设为`51`,再通过`confertitle`命令授予角色;如果只改脚本而没有对应物品,玩家可能获得称号记录,却无法正常显示图标、文字或属性。

先准备称号图片并确定显示位置,带图标的称号需要把素材放进客户端使用的称号图库,常见配置会读取`ui1.wzl`,数据库中的`looks`填写该称号素材的起始索引。每个称号的图片资源必须连续,服务器端和客户端也要使用同一份补丁;否则会出现称号空白、图标错位、显示成其他称号等问题。进入m2的称号素材读取设置,确认图库路径和读取状态,再记录本次称号所使用的起始编号,后面填写数据库时不要重复占用。
再在物品数据库新增一条称号数据,名称直接写成玩家最终看到的文字,`stdmode=51`,`shape`使用当前最大编号加一,并保持从`1`开始连续递增;称号变更触发标签中的编号也对应这个`shape`。`reserved=0`通常表示图片和文字同时显示,`reserved=1`则只显示图片;`duramax=0`为永久使用,填写大于零的数值时按小时计算有效时间。颜色字段必须按当前引擎的定义填写,部分blue配置使用`source 0—5`,而部分gom数据表使用`color 0—255`,不能直接套用其他版本的字段范围。
称号发放应放在npc领取、任务奖励或活动结算脚本中,并先检查玩家是否已经拥有该称号。基础写法可以使用`checktitle 自定义称号 < 1`判断不存在,再执行`confertitle 自定义称号`;取消称号时先判断存在,再执行`deprivetitle 自定义称号`,需要清空全部称号时才使用`deprivetitle all`。例如新手称号可设置为完成注册后领取,中期称号设置为等级达到50级或完成指定任务,后期称号则绑定首领击杀、行会排名等条件,避免玩家重复领取或无条件获得高价值属性。
完成配置后应分别测试获得、激活、切换、取消和重新登录五种状态,并检查属性是否即时刷新。只想展示荣誉时不要给攻击、魔法、道术和生命值;用于成长奖励时可按阶段增加5—10点基础属性,稀有称号再设置更高数值,但要确认`multipletitleproperties=1`是否开启,因为该设置会影响多个称号的属性是否同时生效。若称号需要人物上线或切换时触发公告,可在`qfunction`中使用`[@titlechanged_xx]`,其中`xx`就是数据库里的`shape`;若只想显示一段名字文本,则应使用旧的`setranklevelname`系统,不要把它和称号物品系统混用。