一、本课目标
10 分钟内能独立把“一张原画”变成“游戏里看得见、站得稳的 NPC”。
二、课前必须确认
- 服务端已正常启动,M2 不报错。
- 客户端补丁文件夹可读写,登录器能正常生成。
- 已安装 GM 工具箱、VSCode(或记事本)并能打开 MERCHANT 目录。
三、一句话记住整体流程
“先做补丁包 → 再让登录器认 → 再让数据库认 → 最后让 M2 认,游戏才认。”
四、分步重点(带口诀)
| 步骤 |
口诀 |
关键动作 |
易错提醒 |
| 1. 建补丁包 |
“新建 PAK 先命名” |
GM 工具箱 → 新建 PAK → 起名字(如“自定义NPC”)→ 可选加密码 → 保存到客户端补丁文件夹。 |
没密码=别人可直接拷走你的图;重要素材务必加密码。 |
| 2. 登录器更新 |
“登录器重新生” |
关闭登录器 → 打开登录器配置器 → 重新读取补丁列表 → 生成新登录器 → 覆盖旧登录器。 |
不重新生成=客户端不认新 PAK。 |
| 3. 数据库登记 |
“M2 列表先登记” |
M2 → 查看 → 列表信息二 → 随便选一行 → 改文件名为你新建的 PAK → 保存 → 更新到客户端。 |
保存后必须点“更新到客户端”,否则后端仍为空。 |
| 4. 素材导入 |
“批量尾部插空图” |
GM 工具箱 → 打开刚才的 PAK → 批量导入 → 选“尾部添加”+“压缩”→ 插入空图保持对齐 → 确定。 |
不插空图会导致序列错位,NPC 会“闪”或“缺帧”。 |
| 5. 坐标微调 |
“88 到 97 十张图” |
记下开始图号(如 88)与总张数(10)→ 在 M2 同一界面填:起始 88,数量 10,速度 128 → 保存。 |
填错一张图,NPC 会消失或只显示一半。 |
| 6. 地图摆 NPC |
“MERCHANT 里加一行” |
VSCode 打开 ...\Envir\MERCHANT.txt → 照格式加一行:地图号 坐标X 坐标Y NPC名 外观代码 是否买卖 是否仓库 → 保存。 |
外观代码必须从 10000 开始,小于 10000 会被系统当老 NPC 拒掉。 |
| 7. 重载生效 |
“M2 重载 + 人物小退” |
M2 → 控制 → 重新加载 NPC → 游戏内小退再进。 |
只重载不小退=看不到;只小退不重载=数据旧。 |
五、验证 checklist
□ 登录器补丁列表能看到“自定义NPC.pak”
□ M2 列表信息二能看到同名条目且密码已匹配
□ 重新进游戏,NPC 名字出现在正确坐标
□ NPC 模型可见、不闪、不偏移
□ 用 GM 号可正常对话
六、常见问题 30 秒排错
- 游戏里完全看不到 NPC→ 先查 MERCHANT.txt 坐标是否被地图障碍物挡住;再查外观代码是否 ≥10000。
- NPC 一闪一闪→ 图号填错或总张数不对,回去数 GM 工具箱里的连续图号。
- 位置整体偏移→ M2 → 列表信息二 → 坐标调整 → 把第一张图设为原点,整体加减偏移量。
- 重启 M2 后素材消失
→ 忘记“更新到客户端”,重新点一次即可。
课程入口