您现在的位置是:综合 >>正文
传奇服务端充值点修改
综合8884人已围观
简介直接改数据库的充值点,比在游戏里刷元宝靠谱得多。很多GM开服第一天就卡在充值点上——玩家充值了,后台订单显示成功,但游戏里元宝没到账。问题通常出在服务端的充值点字段没同步。我见过一个典型例子:某传奇私 ...
直接改数据库的传奇充值点,比在游戏里刷元宝靠谱得多。服务很多GM开服第一天就卡在充值点上——玩家充值了,端充后台订单显示成功,值点但游戏里元宝没到账。修改问题通常出在服务端的传奇充值点字段没同步。我见过一个典型例子:某传奇私服,服务玩家充了500块,端充充值点显示为0,值点但订单表里记录清清楚楚。修改最后查出来是传奇DBServer和LoginSrv之间的充值点传递参数写错了,改一个字段就解决。服务
充值点不是端充元宝。元宝是值点游戏内货币,充值点是修改服务端用来记录“玩家实际充值金额”的数值,通常存在角色数据库的某个表里。不同引擎位置不一样。GOM引擎一般在`DBServer`的`GameData`库,表名可能是`Account`或者`Character`,字段叫`PayPoint`、`GamePoint`或者`充值点`。GEE引擎则经常放在`HeroDB`的`Account`表,字段名`PayMent`。别信那些一键修改工具,它们改的是内存,重启就还原。
手动改的话,先停服。不停服改数据库,轻则数据回档,重则角色表锁死。用Navicat或者SQLyog连上数据库,找到对应账号。比如账号`test001`,在`Account`表里搜索,看到`PayPoint`字段值为0。直接改成5000。保存。然后启动服务端。玩家上线,充值点就变了。但注意:有些引擎的充值点会跟`GamePoint`(游戏点)联动,改错了会导致商城无法购买。最好先备份表。
更常见的需求是批量修改。比如开区活动,给所有玩家送1000充值点。别一个个改。用SQL语句:UPDATE Account SET PayPoint = PayPoint + 1000 WHERE PayPoint < 10000;。执行前先`SELECT`一下看看影响行数。我试过在GOM引擎上直接加,结果因为`PayPoint`字段是`varchar`类型,加完后变成字符串拼接,1000加1000变成10001000。所以改之前确认字段类型是`int`或`bigint`。
还有一种情况:充值点改了但游戏里不显示。那是客户端缓存。传奇服务端的充值点通常通过`LoginSrv`下发到`RunGate`,再传给客户端。如果只改数据库,不重启`LoginSrv`,玩家重新登录也没用。正确顺序:停`LoginSrv`,改数据库,启`LoginSrv`,再让玩家小退。别重启整个服务端,没必要,而且容易掉线。
有人问能不能用脚本改。可以。在`Envir`目录下找到`QuestDiary`,写一个NPC脚本,用`CHANGEPAYPOINT`命令。比如:
#ACT
CHANGEPAYPOINT + 1000
SENDMSG 6 你的充值点增加了1000。
这个命令直接操作内存,重启后失效。适合临时活动。要永久保存,还是得写数据库。我习惯用脚本做前端触发,后台再用定时任务同步到数据库。两套逻辑,互不干扰。
最后说个坑。有些版本的充值点字段和“积分”字段共用。你改了充值点,积分也跟着变。玩家拿积分去换装备,结果充值点被扣光。查表结构时看有没有`Point`、`Score`、`Integral`这些字段。有的话,先确认哪个是真正的充值点。别嫌麻烦,改错一个字段,玩家骂你三天。
Tags:
上一篇:品牌网官网
下一篇:信用卡被盗刷怎么追回
相关文章
navicat打开sql文件
综合Navicat打开SQL文件,第一反应往往是双击。但双击之后,它默认用文本编辑器打开,一堆代码摊在眼前,毫无语法高亮,更别提直接执行了。这不是打开,这只是把文件读了进来。 真正的打开,是把SQL文件拖 ...
【综合】
阅读更多主机入侵检测
综合主机入侵检测 凌晨三点,某电商平台的数据库服务器突然开始向外发送大量加密数据包。防火墙日志显示源IP是内网合法地址,流量却指向一个位于东欧的陌生IP。安全团队花了四十分钟才确认——攻击者早在两周前就通 ...
【综合】
阅读更多weblogic安装部署详解
综合weblogic安装部署详解 WebLogic 12c的安装包解压后足足有1.2GB,我第一次在客户服务器上部署时,光下载就花了四十分钟。那台机器还是内网环境,只能通过光盘拷贝进去,折腾完一下午就没 ...
【综合】
阅读更多