GT版本回城卷买不到,先查Game1数据库里的限购表,再查NPC杂货脚本和M2商铺。三类入口任意一处配错都会导致玩家点购买没反应、扣了钱不出货、或者提示已售罄。下面按数据库、NPC脚本、M2商铺、物品库、排查分别写。
一、GT版本数据库直接配回城卷购买
GT类版本若把回城卷做成数据库限购商品,进Game1数据库找TBL_ITEMLIMIT表,右键打开表返回所有行。表内四个字段按下面填:
FLD_NAME填回城卷,名称必须和游戏内商品、物品库名称一致,差一个字会导致关联不到。
FLD_MAXCOUNT填允许购买的总数量。这个字段决定全服累计能买多少张,已购数量超过它就买不到。新版本测试先填大一点,参考资料给到90000000避免很快满额,正式运营再按活动量下调。
FLD_CURRENTCOUNT填已经购买的数量。新表首次配直接写0;如果之前玩家买过,这里会有数值,想重置库存就把该字段改小或清零,但别在玩家正在购买时手动改,避免计数错乱。
FLD_PRICE填每个回城卷的价格,单位按你版本使用的游戏币或点券体系来定。比如想卖100游戏币一张就写100,想卖1点券就写1。价格改完要让前端商品刷新,部分GT分支需要重启数据服务或重新加载限购模块,具体看版本控制台有没有“重新加载物品限制”按钮。
改完这四列保存,进游戏用测试号买一张,看FLD_CURRENTCOUNT是否加1、扣费是否正确、背包是否进回城卷。若买了不扣当前量,说明前端没走TBL_ITEMLIMIT,而是走NPC脚本或M2商铺,按下面第二节处理。
二、NPC杂货铺卖回城卷脚本
大多数传奇版本把回城卷放在土城、比奇、盟重杂货NPC。NPC脚本在Mir200\Envir\Market_Def目录,文件名按你版本NPC名来。最基础的买卖型NPC头部要带交易标签:
(@buy @sell @s_repair)
[@main]
IF
SAY
欢迎购买杂货。\
回城卷\
随机卷\
[@buy]
你需要哪种物品呢?\
回城卷\
然后在脚本下方写[Goods]段,996类引擎格式示例:
[Goods]
回城卷 10 5
回城卷包 10 5
随机传送卷 10 5
地牢逃脱卷 20 5
行会回城卷 20 5
上面三组数字含义是物品名称、可购买数量、卖完刷新时间。回城卷 10 5表示单次可买10个、卖完5分钟刷新一轮。 老HERO、部分GT分支用另一种@buy行格式:
回城卷物品ID 售价 单次最大购买量
@Main
例如回城卷在物品库ID是1015、想卖20游戏币、一次最多买10个,就写:
回城卷 1015 20 10 @Main
物品ID必须从服务端物品库查,不能凭记忆写。查法用DBC2000或物品数据库编辑器打开Mir200\DB\Item.DB,搜索回城卷,复制物品编号;若你版本物品库是StdItems.DB或引擎自带物品编辑器,同样搜名称拿编号。
NPC改完保存,M2点查看、重新加载NPC脚本,或者重启M2。进游戏右击NPC看购买列表,回城卷出现、点购买扣对应游戏币、背包增加,即配置成功。
三、M2商铺上架回城卷
若GT版本用图形商铺而不是NPC对话,走M2商铺。启动M2Server后点查看、列表信息二、商铺设置。右侧所有物品里搜回城卷,没有就先确认物品库已有回城卷;选中后点增加,填分类、售价、描述,保存后重新加载商品列表。
纯文本版本可改商铺配置文件。常见文件是Mir200\Envir\ShopItemList.txt,格式:
物品编号物品名称 售价 物品描述
排序
例如:
1015回城卷 20 回城到绑定安全区
1
GEE类有些版本用ShopList.ini,字段逻辑一样,只是分隔符和段落不同。 改完M2重新加载商铺,登录游戏打开商铺看回城卷。售价填0就是免费领,但不叫购买;填大于0才会走扣币逻辑。商铺货币要看版本是游戏金币、元宝还是点券,M2商铺设置里单价列会标币种,别把元宝价填进金币商铺。
四、回城卷物品库本身检查
玩家买到了却不回城,问题常在物品库。回城卷按消耗传送类配,部分引擎StdMode写20或21,具体看你版本物品类型表;若StdMode错成普通材料,使用后不触发回城。 检查项:
物品名称:回城卷两个汉字别带空格,NPC、商铺、数据库三处名称完全一致。
物品类型:传送卷通常归消耗品/卷轴类;若做可重复使用回城石,类型按特殊物品配,并在触发脚本写冷却和次数。
触发脚本:回城卷使用后要在QFunction或物品Use触发里写MAPMOVE到目标安全区。若只配了物品库没配触发,玩家买了双击没反应。基础回城写固定地图和坐标,比如MAPMOVE 3 330 330传盟重;多绑定城镇按职业或主城分条件写。
图标资源:物品库Shape或图片ID要指向回城卷补丁,没图标会显示空图,但不影响购买,只影响观感。
五、回城卷包与自动补买
散人练级服建议同时上架回城卷和回城卷包。卷包在物品库单独建一个名称,比如回城卷包,使用一次性给背包补10张或20张。NPC[Goods]里回城卷写单次10、卷包写单次5;商铺里卷包售价按单卷总价乘数量再略打折。自动补买可用机器人脚本在安全区定期丢卷替代,但不算购买功能,只做保底:
Mir200\Envir\Robot_def\AutoRunRobot.txt写每分钟或每5分钟触发,RobotManage.txt对应标签用ThrowItem 3 330 330 10 回城卷 5|60,在安全区撒卷,60秒后可捡。 这个功能别和正式购买叠加过多,不然回城卷通胀,杂货NPC没人用。
六、买不到回城卷的排查顺序
1. 点NPC没回城卷:先确认NPC脚本[@buy]或[Goods]里有回城卷行;杂货NPC若被别的版本改成只卖药,要把回城卷行加回去。检查名称、ID、售价三处,ID错会不显示。
2. 显示了但购买报已售罄:GT数据库TBL_ITEMLIMIT看FLD_CURRENTCOUNT是否大于等于FLD_MAXCOUNT,是就把MAX调大或把CURRENT清零。 NPC[Goods]看第一组数量是否卖完,没到刷新时间就等,或把刷新时间改短。
3. 扣钱不出货:商铺和NPC都可能。NPC扣游戏币不出卷,查物品ID是否在物品库存在、名称是否完全匹配;商铺扣元宝不出卷,查ShopItemList物品编号与物品库编号一致、M2已重新加载商铺。部分版本商铺扣币走缓存,未重载商品列表会扣费不发物,重载后再买一次测试。
4. 回城卷拿到不回城:物品库StdMode、触发脚本、QFunction标签三处至少一处错。新建测试卷,双击看M2日志是否报错;无报错但仍不传,检查MAPMOVE地图号是否在该版本存在,比如自改地图把盟重改了编号,旧回城卷还写3就会传空气。
5. GM强制发卷替代:玩家投诉买不到又赶着修,用GM命令直接发。M2管理员列表确认账号权限,命令行用GIVE 回城卷 数量;不同引擎可能是@give或直接在M2物品发放里填名称数量。发完再去修限购表和NPC,不要长期用GM发代替商店。
七、价格与库存运营配置
新手GT服回城卷别定价过高,杂货NPC单张建议游戏币定价为当地图跑路成本的零头,比如新手图免费回城、中级图单张10到50游戏币、包月回城卷包走商铺元宝。数据库限购FLD_MAXCOUNT按在线人数估:百人在线一天若人均买20张,全天上架量至少数千到几万,测试期填大数,正式期再收。NPC[Goods]刷新时间回城卷设5到10分钟,避免工作室秒扫;商铺不做硬限购,但可配合每日购买次数变量,在NPC用CHECKVAR判断当天已买次数,超过就提示明日再来。
回城卷、随机卷、行会回城卷、地牢逃脱卷分开建物品,别共用一个ID。玩家经常把回城卷和随机卷搞混,NPC购买列表按回城、随机、地牢、行会分组,售价回城最低、随机中等、行会略高、地牢按脱困场景定价。改完所有入口后,用新号不充值、不GM发物品走完整购买一次,再用老号买第二次验证限购计数,最后用满库存脚本或数据库把CURRENT顶满验证售罄提示,三步都过再对玩家开放。
新手传奇GM必看GT版本回城卷购买配置教程包含数据库NPC商铺全步骤
来源:
作者:
点击:

