先说清楚:传奇里“改宝宝名字”有两种做法。
一种是把召唤骷髅/召唤神兽绑成别的怪物,宝宝名字跟着 Monster.DB 走;
另一种是不换怪,只用脚本命令把已召唤的宝宝显示名改掉。
大部分人搜“改名脚本”要的是第二种,下面先给脚本,再给 M2 改原怪名方案。
一、脚本改宝宝显示名(不换怪物原型)
适用:骷髅还是骷髅、神兽还是神兽,只想头上名字变成“道尊守护”“玄门灵犬”这类。
触发位置一般写 QFunction-0.txt,或技能触发、命令脚本里。
不同引擎命令不一定都有,下面写法以部分 M2/教程常见命令为例,自己引擎没有就去查说明书。
1. 固定改名脚本
[@ChangeBabyName]
IF
CHECKSLAVE
ACT
SLAVENAME 道尊守护
SENDMSG 2 0 宝宝名字已改为【道尊守护】
BREAK
CHECKSLAVE 判断当前有宝宝
SLAVENAME 后面跟新名字
名字建议 2~8 个汉字
2. 输入自定义名字
[@BabyRename]
IF
CHECKSLAVE
ACT
SENDMSG 2 0 请输入新名字(1-8字)
INPUTSTR S100 8
GOTO @DoRename
BREAK
[@DoRename]
IF
STRLEN S100 > 0
ACT
SLAVENAME <$STR(S100)>
SENDMSG 2 0 宝宝已改名:<$STR(S100)>
BREAK
INPUTSTR S100 8 限制输入长度,防显示超出
<$STR(S100)> 取变量内容
3. 召唤后自动改名(配合 RECALLMOB)
RECALLMOB 格式:
RECALLMOB 怪物名 等级 叛变时间(分) 自动变色(0/1) 颜色
例子:
IF
CHECKSLAVECOUNT < 5
ACT
RECALLMOB 神兽 7 30 0 -1
SLAVENAME 七彩神兽
SENDMSG 2 0 已召唤并改名
RECALLMOB 本身不是改名命令,只负责召怪;
改名靠后面接 SLAVENAME / ChangeMonName。
部分引擎用 ChangeMonName 怪物ID 新名字,不是所有端都支持,以自己引擎说明书为准。
二、M2里直接改召唤怪名(换原型)
适用:你想让道士召出来本身就是“火焰骷髅”“变异神兽”,不是原版骷髅。
路径:
M2 → 选项 → 功能设置 → 技能魔法 → 道士技能 → 召唤骷髅 / 召唤神兽
操作:
1. 打开 Monster.DB(Mir200\Mud2\DB 或 Envir 下,看引擎)
2. 确认目标怪物已存在,比如“火焰骷髅”
3. 没有就复制一行骷髅数据,改 Name 字段,ID 换一个没占用的
4. Race 保持可召唤类型,别乱填
5. Appr(形象)留原骷髅或填对应模型,不然变空白
6. M2 技能栏“召唤怪物名”填 火焰骷髅,必须一字不差
7. 控制 → 重新加载怪物数据库 + 技能数据库
8. 重启 M2 最稳
技能 ID 参考:
召唤骷髅 38
召唤神兽 39
三、只改显示名不改原型(改 Monster.DB 名字)
最省事但有点脏:
直接把 Monster.DB 里“骷髅战士”NameCN 改成你想要的名字。
缺点:
所有地图刷的骷髅也会跟着改显示名
以后查日志、掉宝配置、脚本判名字都会受影响
部分引擎改 NameEN 会失效,只改中文显示名
步骤:
1. 关 M2、关 DBServer
2. M2AE / DBC2000 打开 Monster.DB
3. 找到骷髅或神兽行
4. NameCN 改成新名,别碰 Idx、Race、Appr、HP
5. 保存
6. 启 M2
只改名字字段,其他全不动,不然容易召不出。
四、Hero / GOM / BLUE 差异
Hero:
多走 Envir\Skill\Taoist.txt 或 M2 技能栏绑怪名
GOM/GEE:
技能栏填召唤怪物名最常用,脚本用 RECALLMOB 也行
LegendM2:
RECALLMOB 参数完整,宝宝叛变用 GetCallMob
BLUE:
部分版本吃 QFunction 触发,SLAVENAME 不一定生效,优先 M2 绑怪
不确定自己引擎就先试 M2 绑怪名,最稳。
五、脚本存放位置
QFunction-0.txt:放召唤后自动改名
机器人脚本 / 命令脚本:放 @改名 入口
技能释放触发:部分端支持在施法后接 SLAVENAME
文件编码存 ANSI,别存 UTF-8,中文会变乱码。
六、常见失效原因
改了 M2 没重载
只改 NameEN 不改 NameCN
怪物名带 @ # & 特殊符号
名字太长,头顶显示截断
Monster.DB 被 M2 占用没保存成功
SLAVENAME 命令引擎不支持
宝宝没真正召唤出来就执行改名
排查顺序:
先手动召骷髅 → 输命令触发脚本 → 看是否提示成功 → 不成功查引擎是否认 SLAVENAME → 不行就改 M2 绑怪名
七、备份哪些文件
改之前复制一份:
Mir200\Mud2\DB\Monster.DB
Mir200\Mud2\DB\Magic.DB
Mir200\Envir
QFunction-0.txt
改崩了直接替回,不用重解压服务端。
八、完整可用模板(抄这个)
QFunction-0.txt 里加:
[@SummonSkeleton]
IF
CHECKSLAVE
ACT
SLAVENAME 噬魂骷髅
SENDMSG 2 0 骷髅已更名为噬魂骷髅
配合 M2 召唤骷髅技能触发,或自己做个 NPC:
[@改名骷髅]
IF
CHECKSLAVE
ACT
SLAVENAME 道尊骨卫
SENDMSG 2 0 改名成功
BREAK
ELSEACT
SENDMSG 2 0 你还没召宝宝
BREAK
想让神兽也改,复制一段把 CHECKSLAVE 后接 SLAVENAME 换内容就行。
九、别踩的坑
别把怪物 ID 改了:会召出别的东西或召不出
别在 Monster.DB 里删原骷髅:技能绑定会空
别用表情符号名字:老引擎客户端直接方块
别指望 SLAVENAME 永久写库:一般是显示层,重召按原怪名来
别同时改 NameCN 又改 M2 绑怪:容易搞混到底哪层生效
十、最简结论
只想头上换字 → 脚本 SLAVENAME / ChangeMonName
想换整个宝宝种类 → M2 道士技能绑新怪名
懒得写脚本 → 直接改 Monster.DB 骷髅/神兽的 NameCN
单机自己玩 → 改 DB 最快
做版本给别人用 → 写 QFunction 脚本,别动原怪名
新手别一上来改 Race、Appr、Idx,只动名字字段最安全。改完重载怪物库,进游戏召一下看头顶,不顺手就回备份。

