当前位置:

传奇怎么增加npc买卖东西


增加npc买卖功能的关键是同时配置脚本头部功能标识、对话按钮和商品列表,不能只在npc对话框里添加购买或出售文字。先备份原npc脚本,再打开对应地图或npc文件,在脚本开头加入当前引擎支持的交易参数,例如`(@buy @sell)`,其中`@buy`负责打开购买界面,`@sell`负责打开出售界面;在`[@main]`对话段中加入`<购买/@buy>`、`<出售/@sell>`和`<关闭/@exit>`等按钮,保存后重载脚本,再用普通角色实际点击测试。若npc完全无法点击,优先检查脚本第一行的括号、命令拼写和脚本编码,而不是反复修改商品名称。

按类别交易时,应把npc能处理的物品类型写入脚本头部,适合药店、武器店、首饰店等固定商店。常见分类参数中,`+0`、`+42`对应药剂,`+5`、`+6`、`+43`对应武器,`+19`、`+20`、`+21`对应项链,`+22`、`+23`对应戒指,`+24`、`+26`对应手镯,`+10`、`+11`、`+58`、`+81`对应衣服、腰带和靴子;如果希望一个npc同时买卖多类物品,就把需要的分类参数并列填写。价格参数也要同步设置,`%100`通常表示基础价格,`%150`表示按基础价格的1.5倍交易;初期商店建议使用`%100`,需要限制高价收购或出售时再逐步调整,避免玩家因价格异常无法测试。

需要自定义购买库存时,应在主对话脚本之后加入`[goods]`商品段,并按物品名称、数量、刷新时间、摆放位置的顺序填写。示例可写成回城卷 50 5 0,表示库存数量为50、每5分钟刷新、放在第一个格子;第二件商品的位置应改为1,依次递增。配置完成后,必须确认npc头部包含`@buy`或对应的绑定货币购买命令,否则商品列表不会正常弹出;同时检查物品名称是否与数据库中的标准名称完全一致,数量、刷新分钟数和格子位置不能留空。自定义库存适合限量药品、任务道具和特殊材料,普通分类商店则不必重复建立`[goods]`清单。

测试时应按购买、出售、库存刷新、异常回滚四步执行:先给测试角色准备至少一件目标物品和足够金币,确认购买后背包增加、金币扣除;再出售一件非绑定物品,检查金币到账和物品减少;等待设定的刷新时间,确认限量商品恢复数量;最后分别测试金币不足、背包已满、绑定物品和重复点击。最常见的错误是只加了`@sell`导致只能出售、把`[goods]`放到错误位置导致商品为空、物品名称使用了显示名而不是数据库名,以及修改后没有重载npc脚本。若分类交易和自定义库存同时存在,应先保留一种方式完成测试,确认功能正常后再叠加,便于定位冲突。对于新手服,建议先配置药店和武器店;中期可增加限量材料商人;后期再加入绑定货币或特殊商品交易,既能控制经济产出,也能减少库存失控。