当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

新手传奇GM必看GT版本回城卷购买配置教程包含数据库NPC商铺全步骤

热度:
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]
回城卷105
回城卷包105
随机传送卷105
地牢逃脱卷205
行会回城卷205

上面三组数字含义是物品名称、可购买数量、卖完刷新时间。回城卷105表示单次可买10个、卖完5分钟刷新一轮。老HERO、部分GT分支用另一种@buy行格式:

回城卷物品ID售价单次最大购买量
@Main

例如回城卷在物品库ID是1015、想卖20游戏币、一次最多买10个,就写:

回城卷10152010@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到目标安全区。若只配了物品库没配触发,玩家买了双击没反应。基础回城写固定地图和坐标,比如MAPMOVE3330330传盟重;多绑定城镇按职业或主城分条件写。

图标资源:物品库Shape或图片ID要指向回城卷补丁,没图标会显示空图,但不影响购买,只影响观感。

五、回城卷包与自动补买

散人练级服建议同时上架回城卷和回城卷包。卷包在物品库单独建一个名称,比如回城卷包,使用一次性给背包补10张或20张。NPC[Goods]里回城卷写单次10、卷包写单次5;商铺里卷包售价按单卷总价乘数量再略打折。自动补买可用机器人脚本在安全区定期丢卷替代,但不算购买功能,只做保底:

Mir200\Envir\Robot_def\AutoRunRobot.txt写每分钟或每5分钟触发,RobotManage.txt对应标签用ThrowItem333033010回城卷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顶满验证售罄提示,三步都过再对玩家开放。
[顶部]