一、准备工作:工具和材料
1.服务端文件
•需要已架设好的传奇服务端(如`MirServer`文件夹),确保能正常运行。
•关键文件位置:
◦数据库文件(通常为`DBServer`文件夹内的`.sql`或`.mdb`文件)。
◦脚本文件(如`Script`文件夹内的`.txt`或`.xml`文件,存放NPC配置)。
2.必备工具
•文本编辑器:Notepad++、SublimeText(用于修改脚本)。
•数据库工具:Navicat、HeidiSQL(修改数据库物品价格)。
•游戏客户端:用于测试修改后的效果。
3.定位药店NPC数据
•药店老板的出售物品通常存储在`Script`文件夹的`NPC`脚本中(例如`ShopNPC.txt`)。
•如果服务端使用数据库,则需查找数据库中的`Shop`表。
---
二、修改药店老板的出售物品
方法1:直接修改脚本文件(适合新手)
1.找到NPC脚本
•打开`Script/ShopNPC.txt`,搜索关键词`药店老板`或`ShopNPC`。
•示例代码片段:
```text
[101]//NPCID=101(药店老板)
NPCName=药店老板
Script=Shop
```
•找到对应的`Shop`脚本(如`[Shop101]`)。
2.修改出售物品列表
•在`Shop101`中,每一行代表一个可出售物品,格式如下:
```text
10001101000#物品ID=10001,数量=10,价格=100,绑定=0
```
•参数说明:
◦第1列:物品ID(需与客户端`Data`文件夹中的物品数据匹配)。
◦第2列:堆叠数量(如药水可堆叠10个)。
◦第3列:售价(游戏币)。
◦第4列:是否绑定(0=不绑定,1=绑定)。
•示例修改:
将原价100的太阳水改为50:
```text
1000210500#原价100→现价50
```
3.保存并重启服务端
•保存`Shop101`文件后,重启游戏服务端,进游戏检查药店物品是否更新。
---
方法2:通过数据库修改(适合有数据库基础)
1.连接数据库
•使用Navicat打开服务端数据库(如`HeroDB`),找到`Shop`表。
2.定位药店数据
•查询`Shop`表中`ShopName`为“药店老板”的记录,找到对应的`ShopID`(如`101`)。
3.修改物品价格
•在`ShopItems`表中,找到`ShopID=101`的条目,修改`Price`字段(例如将`100`改为`50`)。
4.导出并重启服务端
•保存修改后,重启数据库和服务端,测试效果。
---
三、进阶技巧:添加新物品到药店
1.获取物品ID
•从客户端`Data`文件夹中找到`ItemInfo.txt`,查看新增物品的ID(例如`10003`是“超级药水”)。
2.插入新条目
•在`Shop101`脚本中添加一行:
```text
1000352000#超级药水,每个200游戏币,可堆叠5个
```
3.同步客户端数据
•如果客户端没有该物品,需将服务端的`ItemInfo.txt`复制到客户端对应目录。
---
四、常见问题与解决方法
1.修改后物品不显示
•原因:物品ID与客户端不匹配。
•解决:检查客户端`ItemInfo.txt`中的ID是否与服务端一致。
2.价格修改无效
•原因:可能修改了错误的`Shop`表或脚本文件。
•解决:用记事本打开脚本文件,确认修改的是`Shop101`对应的内容。
3.游戏崩溃或卡死
•原因:脚本格式错误(如缺少逗号或字段过多)。
•解决:用文本对比工具(如WinMerge)检查脚本语法。
---
五、注意事项
1.合法性:仅限个人学习或私人服务器使用,禁止商用或传播未授权服务端。
2.备份数据:修改前务必备份`ShopNPC.txt`和数据库文件。
3.平衡性:大幅降价可能导致游戏经济崩溃,建议逐步调整。
---
通过以上步骤,你可以轻松修改药店老板的出售物品和价格。如果想进一步调整其他NPC(如武器店、首饰店),方法完全相同,只需找到对应的`ShopXXX`脚本即可!
1.服务端文件
•需要已架设好的传奇服务端(如`MirServer`文件夹),确保能正常运行。
•关键文件位置:
◦数据库文件(通常为`DBServer`文件夹内的`.sql`或`.mdb`文件)。
◦脚本文件(如`Script`文件夹内的`.txt`或`.xml`文件,存放NPC配置)。
2.必备工具
•文本编辑器:Notepad++、SublimeText(用于修改脚本)。
•数据库工具:Navicat、HeidiSQL(修改数据库物品价格)。
•游戏客户端:用于测试修改后的效果。
3.定位药店NPC数据
•药店老板的出售物品通常存储在`Script`文件夹的`NPC`脚本中(例如`ShopNPC.txt`)。
•如果服务端使用数据库,则需查找数据库中的`Shop`表。
---
二、修改药店老板的出售物品
方法1:直接修改脚本文件(适合新手)
1.找到NPC脚本
•打开`Script/ShopNPC.txt`,搜索关键词`药店老板`或`ShopNPC`。
•示例代码片段:
```text
[101]//NPCID=101(药店老板)
NPCName=药店老板
Script=Shop
```
•找到对应的`Shop`脚本(如`[Shop101]`)。
2.修改出售物品列表
•在`Shop101`中,每一行代表一个可出售物品,格式如下:
```text
10001101000#物品ID=10001,数量=10,价格=100,绑定=0
```
•参数说明:
◦第1列:物品ID(需与客户端`Data`文件夹中的物品数据匹配)。
◦第2列:堆叠数量(如药水可堆叠10个)。
◦第3列:售价(游戏币)。
◦第4列:是否绑定(0=不绑定,1=绑定)。
•示例修改:
将原价100的太阳水改为50:
```text
1000210500#原价100→现价50
```
3.保存并重启服务端
•保存`Shop101`文件后,重启游戏服务端,进游戏检查药店物品是否更新。
---
方法2:通过数据库修改(适合有数据库基础)
1.连接数据库
•使用Navicat打开服务端数据库(如`HeroDB`),找到`Shop`表。
2.定位药店数据
•查询`Shop`表中`ShopName`为“药店老板”的记录,找到对应的`ShopID`(如`101`)。
3.修改物品价格
•在`ShopItems`表中,找到`ShopID=101`的条目,修改`Price`字段(例如将`100`改为`50`)。
4.导出并重启服务端
•保存修改后,重启数据库和服务端,测试效果。
---
三、进阶技巧:添加新物品到药店
1.获取物品ID
•从客户端`Data`文件夹中找到`ItemInfo.txt`,查看新增物品的ID(例如`10003`是“超级药水”)。
2.插入新条目
•在`Shop101`脚本中添加一行:
```text
1000352000#超级药水,每个200游戏币,可堆叠5个
```
3.同步客户端数据
•如果客户端没有该物品,需将服务端的`ItemInfo.txt`复制到客户端对应目录。
---
四、常见问题与解决方法
1.修改后物品不显示
•原因:物品ID与客户端不匹配。
•解决:检查客户端`ItemInfo.txt`中的ID是否与服务端一致。
2.价格修改无效
•原因:可能修改了错误的`Shop`表或脚本文件。
•解决:用记事本打开脚本文件,确认修改的是`Shop101`对应的内容。
3.游戏崩溃或卡死
•原因:脚本格式错误(如缺少逗号或字段过多)。
•解决:用文本对比工具(如WinMerge)检查脚本语法。
---
五、注意事项
1.合法性:仅限个人学习或私人服务器使用,禁止商用或传播未授权服务端。
2.备份数据:修改前务必备份`ShopNPC.txt`和数据库文件。
3.平衡性:大幅降价可能导致游戏经济崩溃,建议逐步调整。
---
通过以上步骤,你可以轻松修改药店老板的出售物品和价格。如果想进一步调整其他NPC(如武器店、首饰店),方法完全相同,只需找到对应的`ShopXXX`脚本即可!

