开启辅助访问
 找回密码
 立即注册
查看: 2869|回复: 3
收起左侧

[传奇漏洞教程] 整理了一些传奇找传奇私服漏洞的思路和解释,老鸟可以无视了

[复制链接]
admin 发表于 2016-5-30 17:48:29 | 显示全部楼层 |阅读模式
一些基础的思路.老鸟就无视吧.

有这方面爱好的可以一起研究研究。
但是要方法的就别找我了。


先是一些关键命令。
GAMEGOLD +   增加元宝

CHANGEPERMISSION  权限等级

POWERRATE  攻击倍数

SetShopItemPriceRate  商城折扣

GMEXECUTE  脚本里用GM命令

AdminList.txt  GM名单   一般用AddTextList  或者 addnamelist  之类的写入。

give  NPC给予物品

SENDMSGWINDOWS  SENDCENTERMSG  MESSAGEBOX  可以调用QF。

还有很多,希望大家补充。

然后就用一些现在出现比较多的来说吧。反推。
前段时间的。很多版本都是这套思路,NPC和经验有点不同而已。
国王里面里有这一段.Q448也有,那个是进地图触发的,可以查看MapInfo.txt文件。
[@gulldwarexp]                                         脚本跳转,往上搜索,看是怎么样下来的。这个应该是基本,就不解释了。
#if                                                                首先检测
check [189] 1                                              [189]为1
CHECK [177] 1                                           [177]为1
checkexp = 32357                                     经验等于32357
check [122] 1                                             [122]为1
check [331] 1                                             [331]为1
check [88] 1                                               [88]为1
#act                                                           就会执行
AddTextListEx <$STR(S12)> <$STR(S21)> 1       在s12内写入s21
#say
根据这段内容,就需要先拿到这5个人物标识,然后经验为32357就可以写入自定义内容.
我们就一个个标识来看,搜索[189],看会需要什么要求可以给予标识.我们会搜到如下内容。
[@StdModeFunc28]                                           数据库28的物品,双击
#IF                                                                     检测
CHECKEXP = 48659                                          经验等于48659
#ACT                                                                 执行
CloseBigDialogBox                                            
Break
#SAY
对不起,你没有那么多元宝!\
                        
<返回[url=]/@1314521[/url]>                                         返回选项跳转到@1314521段
[@1314521]
#IF
CheckLevelEx > 1
#ACT
CloseBigDialogBox
Movr M97 1 888                                             给予M97为1-888的随机数
DelayCall 3000 @caonima                             延迟3秒跳转到@caonima段
Break
#say
<赶紧升级吧!!……/SCOLOR=254>\
[@caonima]
#IF
EQUAL M97 215                                            如果M97等于215
#ACT                                                            
Mov M97 0
SET [88] 1                                                     这里给[88]
#say
恭喜,增加1000W经验!你当前的经验是<$EXP>

#IF
Large M97 50                                                  如果M97大于50
#ACT
Mov M91 0
Goto @GGCJLYB                                           转跳到@GGCJLYB    跳转下去的可以拿[189]
Break

#IF
CheckLevelEx > 1                                           如果等级大于1
#ACT
Mov M97 0
Goto @GGCJLJY                                          跳转到@GGCJLJY    这里跳转下去是经验清0
Break
[@GGCJLYB]
#IF
#ACT
set [189] 1                                                     拿[189]
#say
恭喜你成功加入会员!
[@GGCJLJY]
#IF
#ACT
CHANGEEXP = 0
#say
这位朋友,你已经加入了会员!

通过上面那段,就可以知道,双击28的物品触发,但是数据库又没有这个东西,那怎么办?就肯定是调用QF了.
慢慢搜索调用QF的命令吧.或者直接搜索<$STR(N  吧。作者目前也只会让你调用数字段的QF。因为N变量只能定义数字。

#ELSEACT
MESSAGEBOX 英雄,这条通道需要500元宝 ! @<$STR(N2)>
break

这不记得是哪个版本的了,反正大概是这样的形式吧。弹出提示框,点击取消触发QF @<$STR(N2)>段。
那现在就有新的问题了,去哪里定义N2的内容。
搜索@@InPutInteger2>吧。不出意外,没有。
那就搜索@@InPutString,慢慢看。很多NPC里会出现这个内容。那就要配合<$STR(S  来看了。
如果是@@InPutString1   看有没有<$STR(S1 的地方,也就是显示你定义的S1的地方。其实呢,这个熟悉以后哪些是有问题的能感觉到,我也不好怎么解释。只能这样告诉你找了。
然后现在我找到一段<Img:76:1:2:9/@@InPutString5>  这个就肯定是有问题的,ITEMS里编号76的图片,点击可以输入S5变量。(论坛里有发过这个改补丁的教程,但是我没权限搜索,希望哪位能给个链接,谢了。)
补丁弄好后,找到对应NPC,点击图片,输入内容,这里是定义S5,但是我的目的是N2,所以我这里就输入<777323/@@InPutInteger2>。
然后再找显示S5变量的NPC,点击777323,输入我们需要的内容。1314521
然后到触发N2变量的NPC,点击取消,就会触发QF的@1314521段,但是因为M97变量是随机给,所以基本只能拿到[189],但是脚本里有个3秒延迟的转跳,那就肯定是在这3秒里给你时间去让M97变量等于215了。搜索M97吧。
[@攻城区]
#if
#act
mapmove 3 678 334
mov M97 215
break
这个端,传送,到攻城区域给变量M97为215。所以,触发出N2以后,马上传送。可以看对话框的内容,来确定是否拿到人物标识。
好.189和88已经拿到了.搜索其他的.
其他的都是需要对应的经验去某个地图,或者点NPC来拿,就不解释了.
最后的写入,AddTextListEx <$STR(S12)> <$STR(S21)> 1          S12和S21定义的方法和N2一样.
在S12里写入S21内容.
所以S12就是文本的路径,S21是我们需要写入的内容.这个S21只能一行一行的写,因为后面有个1,是写入到文本的第一行,所以写入的时候脚本需要反过来写,就是从最后一行往前面写.可以单击测试,先直接在文本内写,游戏里看能不能正常触发,先把脚本写对.当然,有的喜欢图方便,直接加GM名单,这个不太推荐,太明显,还是低调点好.
现在脚本已经写进去了,但是点NPC还是没用?当然了,还需要重读NPC才会生效的,GM名单也一样.
段里看重读NPC命令吧.Command.ini看,或者直接M2里看都一样.
然后我在QF里看到了.
[@LeaveGroup]
#IF
checkexp = 14837
#ACT
Gmexecute ReloadNpc
Gmexecute Reload
messagebox 当前地图人数已经满员!请稍后再试,谢谢!
@LeaveGroup  退组,好吧,经验卡到14837,退组,重读NPC和GM名单.需要站到你写入脚本NPC的附近去才有用.
[@member]    也有这样的,或者其他形式的,

然后是这个后面一点的版本,有点小改动.
QF里的数字段变为了负数,就是前面加了个-号,
定义N变量的时候是输入不了-号的.
那怎么办?作者用到了运算.
+ - 法,不晓得有乘除法没有,呵呵,我就看了2个,用了加减法.
还有用了CreateNPC的,刷出一个NPC,方便你写脚本进去.
GMEXECUTE <$STR(S22)>   想要干嘛,.自己定义吧.
好像是洛亚吧.数据库179的物品,双击触发.但是要卡攻击,然后转跳.
#IF
Large M90 889
#ACT
Mov M90 0
Goto @-139191051
Break
里面有这段,M90大于889才跳转到需要段,但是前面也是只随机给1-888.所以.作者给大家开玩笑了.呵呵.做2次N变量的调用吧.就算你卡好攻击也跳不到那里的.


然后还有另外一朋友写的.
搜索AddTextList出来了.
[@coolvs2002]
#if
#act
AddTextListEx <$STA(S89)> <$STA(S98)> 1
MESSAGEBOX 任务你还没完成,快去!只等你一天!
烟雾弹啊.哈哈.STAs89 而且还没有NPC.
既然放了烟雾弹,那就肯定有戏的吧.继续找.
#IF
checktextlist .\market_def\2002.txt <$USERNAME>                    检测里面是否有你名字
#ACT
SENDMSGWINDOWS 1 <$STR(S66)>                                         调用QF段
sendmsg 5 〖提示〗5·2┋W·P·E.C00LVS2oo2.寜少.竭力亲情奉献!
#ELSEACT
PlayEffect 70 78 800 5                                                             否者给你看图片闪啊闪
close
break
还一个
#if
checktextlist .\market_def\coolvs.txt <$USERNAME>             也是检测里面是否有你名字
#act
SETRANKLEVELNAME %s\●━━━━●\┃判刑五百年┃\●━━━━●
SENDCENTERMSG 180 251 <$STR(S51)> 0 30 <$STR(S66)>
嗯,地方找到了.那就想办法把你名字加到里面去吧.
#if
CHECKOFGUILD 寕哥威武              检测行会名
#act
ADDGUILDLIST <$RANKNAME>.txt           行会名写入称号,txt
SENDMSG 5 提示:从来就是这么C00L\come--\酷VS贰零零贰.txt
break
close
很不错的思路.


桃子宝宝 发表于 2016-6-21 16:32:50 | 显示全部楼层
表示没看懂
回复 支持 反对

使用道具 举报

p343738522 发表于 2016-6-21 23:01:20 | 显示全部楼层
好几年前的漏洞了····
回复 支持 反对

使用道具 举报

hx16800 发表于 2016-11-1 11:06:01 | 显示全部楼层
楼主有没刺影传奇的BUG?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|传奇爱好者|传奇版本|手机版|传奇一条龙|九五论坛

GMT+8, 2018-4-27 06:47 , Processed in 0.123303 second(s), 24 queries , Gzip On.

快速回复 返回顶部 返回列表