--本辅助由魔物团队制作 --二改司马 --禁止盗用源码和功能 --作者是魔物大牛 --二改死马 a = gg.prompt({"魔物ks科技内部欢迎您,本辅助由魔物团队制作=你输入正确卡密 :😘😘😘"},{'请输入卡密:'}, {'text'}) if a == nil then os.exit() end if a[1] =='魔物-EFZKKHG' then gg.alert("密码正确")gg.toast("到期时间为:999999年")--提示 else gg.alert("密码错误") os.exit() end gg.alert("公告:不稳定的功能最好别开,否则有时候会闪退") gg.alert("感谢名单:BUTML,金苹果") --卡密验证 loadYunLuaGroup("5C3C4E3813681C4C204C35346F1B4C2F7EFF612D2B22176FF346535E1C0B1E493339036EE15318") function init() stab = _ENV["分页"] ttitle = _ENV["标题"] xfcpic = _ENV["悬浮窗图标"] end function XGBase(Address,AFV) local address=0 for index,offset in ipairs(Address)do if index==1 then address=offset else address=gg.getValues({{address=address+offset,flags=4}})[1].value end end local Value,Freeze={},{} for index,value in ipairs(AFV)do local VALUE={address=address+value[3],flags=value[2],value=value[1],freeze=true} if value[4]then Freeze[#Freeze+1]=VALUE else Value[#Value+1]=VALUE end end gg.setValues(Value) gg.addListItems(Freeze) end lde={} lde.gre,lde.sbr,lde.srg,lde.crs=gg.getResults,gg.searchNumber,gg.setRanges,gg.clearResults function bv(a,b) if not b then b=","end if not tostring(a):find(b)then return{a}end local tab={}local i=0 while true do j=string.find(a,b,i+1) if not j then table.insert(tab,a:sub(i+1,#a)) break end table.insert(tab,a:sub(i+1,j-1)) i=j end return tab end function so(a,b,c) gg.setVisible(false) local csn=gg.getRanges() lde.srg(a[3]) lde.crs() lde.sbr(a[2],a[4]) local js=gg.getResultCount() local count=lde.gre(js) lde.crs() if #count~=0 then local lode,lope,lobe={},{},{} for p=1,#b do lode[p]={} for i=1,#count do lode[p][i]={} lode[p][i].address=count[i].address+b[p][2] if not b[p][3] then b[p][3]=a[4] end lode[p][i].flags=b[p][3] end lode[p]=gg.getValues(lode[p]) db=bv(b[p][1],"~") if not db[2] then db[2]=db[1] end for i=1,#lode[p] do if tonumber(lode[p][i].value)>=tonumber(db[1]) and tonumber(lode[p][i].value)<=tonumber(db[2]) then lope[#lope+1]={} lope[#lope]=count[i] end end if #lope==0 then lde.srg(csn) if p>11 then p=11 end return a[1].."开启失败" end count=lope lope={} end for i=1,#c do for n=1,#count do lope[#lope+1]={} lope[#lope].address=count[n].address+c[i][2] if not c[i][3] then c[i][3]=a[4] end lope[#lope].flags=c[i][3] if c[i][1] then lope[#lope].value=c[i][1] else lope[#lope].value=gg.getValues(lope)[#lope].value end if c[i][4] then lobe[#lobe+1]={} lobe[#lobe]=lope[#lope] table.remove(lope,#lope) end if c[i][4]==1 then lobe[#lobe].freeze=true else if c[i][4]==2 then lobe[#lobe].freeze=false end end if c[i][5] then lobe[#lobe].name=c[i][5] end end end gg.setValues(lope) gg.addListItems(lobe) lde.srg(csn) return a[1].."开启成功" else lde.srg(csn) return a[1].."开启失败" end end function gg.FMatrix(value) local GT=gg.getListItems() local t={} for i,v in pairs(GT) do if v.value==value then table.insert(t,v) end end gg.removeListItems(t) end function hqmz(a) local b='' for i=1,50 do local c=gg.getValues({{address=a+(i-1)*1,flags=1}})[1].value if c==0 then break end b=b..string.char(c<0 and 256+c or c) end if b=="" then b="昵称获取失败" end return b end function xe(name,offset,i) local re=gg.getRangesList(name) if re[i or 1] then local addr=re[i or 1].start+offset[1] for i=2,#offset do addr=gg.getValues({{address=addr,flags=32}}) addr=addr[1].value+offset[i] end return addr end end function utf(add) local v={} for i=0,100 do v[#v+1]={address=add+i,flags=1} end v=gg.getValues(v) local t={} for i,v in pairs(v) do if v.value==0 then break end t[#t+1]=v.value & 0xff end return string.char(table.unpack(t)) end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() -- local _Q = tonumber(0x167ba0fe) local t = {} local _t local _S = nil if ti_bit then _t = 32 else _t = 4 end for i in pairs(S_list) do local _N = S_list[i].internalName:gsub('^.*/', '') if N_So[1] == _N and N_So[2] == S_list[i].state then _S = S_list[i] break end end if _S then t[#t + 1] = {} t[#t].address = _S.start + Offset[1] t[#t].flags = _t if #Offset ~= 1 then for i = 2, #Offset do local S = gg.getValues(t) t = {} for _ in pairs(S) do if not ti.x64 then S[_].value = S[_].value & 0xFFFFFFFF end t[#t + 1] = {} t[#t].address = S[_].value + Offset[i] t[#t].flags = _t end end end _S = t[#t].address -- print(string.char(231,190,164,58).._Q) end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function xgxc(szpy, qmxg) for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) xgsl = xgsl + 1 end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "\n开启失败") else gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "\n开启失败") else sl = gg.getResults(999999) sz = gg.getResultCount() xgsl = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do pdsz = true for v = 4, #(qmnb) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] szpy = gg.getValues(pysz) pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value szpd = split(pdpd, ";") tzszpd = szpd[1] pyszpd = szpd[2] if tzszpd == pyszpd then pdjg = true pdsz = true else pdjg = false pdsz = false end end end if pdjg == true then szpy = sl[i].address xgxc(szpy, qmxg) xgjg = true end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "\n开启成功\n注入" .. xgsl .. "\n条数据") else gg.toast(qmnb[2]["name"] .. "\n开启失败") end end end end --配置 local loadingBox = getLoadingBox("魔物MiNi辅助\n内置模块自检") loadingBox['显示']() gg.sleep(1000) loadingBox['关闭']() gg.alert("减少闪退方法:\n打开辅助后打开防闪退,退出游戏之后进行一次初始化") gg.copyText("魔物-EFZKKHG") string.toMusic('魔物MiNi辅助卡密已自动复制至剪贴板') --云模块勿动 --[免费UI] 代号E03 作者长安Q1903351873(定制200起 带详细需求来 其他事不管 不包使用教程) --此UI仅支持ELGG使用 --ELGG官方Q群778101805 --支持的控件有: --文字: --CAtext([string 文字] , [颜色RGB十六进制](可省略) , [string 大小sp](可省略) , [bool 写true居中false或留空不居中](可省略)) --第二第三第四参数可省略 详情看下方例子 --颜色可以是string '#ffffffff' 也可以是十六进制 0xffffffff 注意格式不要混 --按钮: --CAbutton([string 文字] , [function 功能] , [string 颜色RGB十六进制](可省略)) --颜色可以是string '#ffffffff' 也可以是十六进制 0xffffffff 注意格式不要混 --注意只传入一个function不要与switch搞混 --switch开关: --CAswitch([string 文字] , [function 功能开] , [function 功能关] , [string 描述](可省略)) --第四参数描述可省略 详情看下方例子 --注意需传入两个function不要与button搞混 --checkbox小开关列表 --CAcheck([table]) --比较复杂这里不说了 看下边例子 按需复制粘贴 只需要搞懂基础语法就能用 不要问我 --折叠box --CAbox({[名称],[控件],[控件],[控件],[控件],...}) --具体看下方例子,使用时要注意括号及逗号的语法,不要来问我。 --这里写你的验证、前置功能函数,下边UI配置区写按钮调用 function a() --例子,下方UI调用 gg.alert(6) end _ENV["悬浮窗图标"] = "/sdcard/长安/图片/hl.png" --写图片文件直链 _ENV["标题"] = 'ELGG - UI' _ENV["分页"] = { --导航栏分页名字和图标,添加表即可加页数,需要与功能配置页面数量对应 '通用', '其他', '特殊', '功能', '设置', --'设置',--这样添加新页面 } init() --传递变量勿动 uistart({ --每一个功能页面需要有上边分页名字对应,多出来的不显示,少了需要补充 { --1 CAtext('通用功能-公告-使用前请先选择进程-请在登录界面打开防闪退-不然会闪退-感谢名单:BUTML-金苹果-跑路龙-', '#005BFF', '14sp'), CAbox({ '音乐功能', CAtext('制裁音乐', '#ffffff', '12sp', true), CAbutton( '你看到的我', function() gg.playMusic('http://music.163.com/song/media/outer/url?id=1377530437.mp3')gg.toast("正在播放-----------") end), CAbutton( '烧酒歌', function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1891311397&uct2.mp3")gg.toast("正在播放-----------") end), CAbutton( '心做', function() gg.playMusic("http://music.163.com/song/media/outer/url?id=2005190306&uct2.mp3")gg.toast("正在播放-----------") end), CAbutton( '精卫', function() gg.playMusic("http://music.163.com/song/media/outer/url?id=1951069525&uct2.mp3")gg.toast("正在播放-----------")-- end), }), CAtext('登录界面区域', '#ffffff', '12sp', true), CAbutton( '选择进程', function() a() --调用了前置函数例子function a string.toMusic('请选择迷你世界进程')--语音 gg.setProcessX() end), CAbutton( '防闪', function() gg.alert('防闪') gg.clearResults() gg.setRanges(8) gg.searchNumber("6580591;2019914849", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("6580591", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) a=gg.getResults(1) gg.setValues({{address=a[1].address-104,flags=64,value=0}}) string.toMusic('TP防闪注入成功')gg.toast("注入成功")--提示 end, 0xff0062ff), --第三参数颜色 CAbutton( '初始化数据', function() gg.alert('初始化数据开启成功') if FX2 == nil then mm = gg.prompt({[1]="输入1初始化"}, {[1]=""}, {[1]="txet"}) if mm[1] == "1" then gg.toast("初始化成功") else print(mm[1],"已关闭") os.exit() end end gg.alert("💛初始化成功💛")gg.toast("成功初始化")--提示 gg.toast("已清除所有数据")--提示 end, 0xff0062ff), --第三参数颜色 CAbutton( '迷你全防', function() gg.alert('防检测') gg.toast(so({"迷你防闪退",1853321060,8,4},{{1953390894,4}},{{0,-0x3C,4},{0,-0x38,4}})) string.toMusic('迷你防闪注入成功')gg.toast("注入成功")--提示 end, 0xff0062ff), --第三参数颜色 CAtext('其他'), CAcheck({ { "第一格无限物品", function() gg.sleep(900) gg.toast("请保持第一格没有物品") gg.toast(so({"物品复刻",945804460,4,4},{{1000,-4,4},{-1,4,4}},{{945804564,0,4,1}})) gg.toast("开启成功")--提示 end, function() end }, { "无限连跳", function() string.toMusic("人物连跳开启成功") function readWrite(Search,Get,Type,Range,Name) gg.clearResults() gg.setRanges(Range) gg.setVisible(false) if Search[1][1]~=false then gg.searchAddress(Search[1][1],0xFFFFFFFF,Search[1][4] or Type,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) end gg.searchNumber(Search[1][2],Search[1][4] or Type,false,gg.SIGN_EQUAL,Search[1][5] or 1,Search[1][6] or -1) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][3] if (count > 0) then for i,v in ipairs(result) do v.isUseful=true end for k=2,#Search do local tmp={} local offset=Search[k][2] - base local num=Search[k][1] for i,v in ipairs(result) do tmp[#tmp+1]={} tmp[#tmp].address=v.address+offset tmp[#tmp].flags=Search[k][3] or Type end tmp=gg.getValues(tmp) for i,v in ipairs(tmp) do if v.flags==16 or v.flags==64 then values=tostring(v.value):sub(1,6) num=tostring(num):sub(1,6) else values=v.value end if tostring(values)~=tostring(num) then result[i].isUseful=false end end end for i,v in ipairs(result) do if (v.isUseful) then data[#data+1]=v.address end end if (#data > 0) then local t,t_={},{} local base=Search[1][3] for i=1,#data do for k,w in ipairs(Get) do offset=w[2] - base if w[1]==false then t_[#t_+1]={} t_[#t_].address=data[i]+offset t_[#t_].flags=Type th_=(th_) and th_+1 or 1 else t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=w[3] or Type t[#t].value=w[1] tg_=(tg_) and tg_+1 or 1 if (w[4]==true) then local item={} item[#item+1]=t[#t] item[#item].freeze=w[4] gg.addListItems(item) end end end end tg=(tg_) and "\n已修改"..tg_.."条数据" or "" th=(th_) and "\n已获取"..th_.."条数据" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast("\n"..Name.."搜索成功!\n偏移到"..#data.."条数据"..tg..th) tg_,th_=nil,nil else gg.toast("\n"..Name.."开启失败",false) return false end else gg.toast(Name.."开启失败") return false end end local A = gg.prompt({"当前高度\n输入7"},{[1]=''},{[1]="number"}) BXNB = A[1]..'00' readWrite({{false,220,48,4,nil,nil},{BXNB,60,4}},{{1,0,4,true}},4,4,"无限跳跃") print(BXNB) gg.alert(45) end, function() end }, { "虚空三件套", function() string.toMusic('开启成功')gg.toast("开启成功")--提示 gg.clearResults() gg.setRanges(gg.REGION_C_ALLOC) gg.searchNumber("11002", gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber("11002", gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0,-1) gg.getResults(100) gg.editAll("140",gg.TYPE_DWORD) gg.toast("召唤虚空幻影第1步开启成功") gg.clearResults() gg.setRanges(gg.REGION_C_ALLOC) gg.searchNumber("11001", gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber("11001", gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0,-1) gg.getResults(100) gg.editAll("141",gg.TYPE_DWORD) gg.toast("召唤虚空幻影第2步开启成功") gg.clearResults() gg.setRanges(gg.REGION_C_ALLOC) gg.searchNumber("11003", gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber("11003", gg.TYPE_DWORD,false,gg.SIGN_EQUAL,0,-1) gg.getResults(100) gg.editAll("142",gg.TYPE_DWORD) gg.toast("召唤虚空幻影第3步开启成功") end, function() end }, { "全格无限物品", function() gg.searchNumber("945804461", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.processResume() revert = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) gg.editAll("945804200", gg.TYPE_DWORD) revert = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) local t = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) for i, v in ipairs(t) do if v.flags == gg.TYPE_DWORD then v.value = "945804388" v.freeze = true end end gg.addListItems(t) t = nil gg.toast("全格无限物品开启成功") end, function() end }, }), CAtext('功能区域'), CAswitch( "五格坐骑", function() string.toMusic('五格坐骑正在开启') local a = gg.prompt({"请输入第一格坐骑[默认帝皇战龙]","请输入第二格坐骑[默认帝皇战车]","请输入第三格坐骑[默认虚空龙祖]","请输入第四格坐骑[默认无限电音]","请输入第五格坐骑[默认虎虎生威]"},{[1]='4562',[2]='4561',[3]='4533',[4]='4548',[5]='4566'},{[1]="number",[2]="number",[3]="number",[4]="number",[5]="number"}) count=30.0+(154.0*1)-154.0 so({"坐骑",132.0,4,16},{{180.0,4,16},{count,36,16}},{{257,96,4,1},{a[1],304,4,1}}) count=30.0+(154.0*2)-154.0 so({"坐骑",132.0,4,16},{{180.0,4,16},{count,36,16}},{{257,96,4,1},{a[2],304,4,1}}) count=30.0+(154.0*3)-154.0 so({"坐骑",132.0,4,16},{{180.0,4,16},{count,36,16}},{{257,96,4,1},{a[3],304,4,1}}) count=30.0+(154.0*4)-154.0 so({"坐骑",132.0,4,16},{{180.0,4,16},{count,36,16}},{{257,96,4,1},{a[4],304,4,1}}) count=30.0+(154.0*5)-154.0 so({"坐骑",132.0,4,16},{{180.0,4,16},{count,36,16}},{{257,96,4,1},{a[5],304,4,1}}) string.toMusic('五格坐骑开启成功')gg.toast("开启成功")--提示 gg.alert(90) end, function() end, '房间坐骑通用'), CAswitch( "自定义无限物品", function() xggs = gg.prompt({"复刻格数[开]\n[1;8]"},{[1]=""},{[1]="number"}) gg.toast(so({"物品复刻","945804461~945804524",4,4},{{xggs[1]+999,-4,4}},{{945804388,0,4,1}})) gg.toast("数据开启成功") end, function() end), CAswitch( "修改宠物", function() xgcw = gg.prompt({"宠物代码:\n远古叮叮-3511 房主闪退-3512 10001-小泡沫\n10002-泡泡团子 10003-四泡团 10004-小孩子\n10005-的叶团子 10006-豪华团 10007-小石子\n10008-岩石团 10009-巨岩团 10010-小火量\n10011-暖暖团 10012-报火团 10013-小HT\n10014-跳跳蛙 10015-忍忍娃 10016-小免机\n10017-免叫 10018-玉免机 10019-迷你注\n10020-旺旺 10021-旺旺警长 10022-小龙蛋\n10023-黑龙重 10024-黑龙糕 10025-小菲鹏\n10026-球糟鹏 10027-全羽鹅网 10028-小灵球\n10029-幽酬球 10030-重灵王球 10031-小黑猫\n10032-焦炭猫 10033-黑飘远 10034-小球节\n10035-球球豹 10036-球豹王子 10037-小擦报\n10038-奏乐猴 10039-梵音猴 10040-小孔雀\n10041-雏孔雀 10042-丰羽孔雀 3515-虚幻影速\n3516-虚幻影猛 3511-远古叮叮 3513-房主闪退\n3109-爆爆蛋 10001-恢复\n\n输入现在宠物代码","输入修改宠物代码"},{[1]=''},{[2]=''},{[1]="number"},{[2]="number"}) gg.toast(so({"修改宠物",xgcw[1],4,4},{{1,4,4}},{{xgcw[2],8,4,1}})) gg.toast("宠物["..xgcw[1].."]已修改为["..xgcw[2].."]") string.toMusic('修改宠物开启成功')gg.toast("开启成功")--提示 gg.alert(60) end, function() end, '此功能不稳定'), }, { --2 CAtext('其他功能区域'), CAcheck({ { "喷漆改物", function() string.toMusic('开启成功')gg.toast("开启成功")--提示 string.toMusic('输入要修改的物品代码') XY = gg.prompt({"输入要改的物品代码\n输入12239恢复"},{[1]=10500},{[1]="number"})[1] gg.toast(so({"喷漆改物",12240,4,4},{{200,-0x1B0,4},{2,0x8,4}},{{XY,-0x280,4,1}})) end, function() end }, { "水泥改1124", function() gg.searchNumber("667", gg.TYPE_DOUBLE, false, gg.SIGN_EQUAL, 0, -1, 0) gg.processResume() revert = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) gg.editAll("1124", gg.TYPE_DOUBLE) gg.processResume() gg.toast("已搜索667-1124**数据") gg.toast("开启成功") end, function() end }, { "添加物品", function() string.toMusic('开启成功')gg.toast("开启成功")--提示 wp = gg.prompt({"物品代码","物品数量[1;200]","添加格数[1;8]"}, {[1]="",[2]="",[3]=""},{[1]="number",[2]="number",[3]="number"}) gg.toast(so({"获取代码",(wp[1]),4,4},{{200,-432,4},{0,0x4,4},{0,0x8,4},{200,208,4}},{{nil,0,4,2}})) for i,v in ipairs(gg.getListItems())do if v.value==wp[1] then WPDM={[1]=(v.address),[2]=(gg.getValues({{address=v.address+0x5C,flags=4}})),} end end if WPDM[2] then gg.toast(so({"添加物品","(945804460~945804499)",4,4},{{(wp[3]+999),-4,4}},{{(945804460~wp[2]),0,4},{WPDM[1],116,4},{(WPDM[2][1].value),120,4}}))end end, function() end }, { "修改创造", function() string.toMusic('开启成功')gg.toast("开启成功")--提示 a = gg.prompt({"请输入房主迷你号:"}, { [1] = 1249733234 }, { [1] = "number" })[1] qmnb = { {memory = 4}, {name = "玩法生存改创造"}, { value = a, type = 4 }, { lv = 5, offset = -4, type = 4 } } qmxg = { { value = 4, offset = -4, type = 4 } } xqmnb(qmnb) end, function() end }, { "飞行按钮", function() gg.toast(so({"飞行按钮",1634488352,4,4},{{1767984505,0xB4,4},{-1046478848,0xC8,4}},{{257,0x104,4,1}})) gg.toast("飞行按钮开启成功") end, function() end }, { "视角广角", function() gg.searchNumber("75F;0.15F;0.1F::", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.processResume() gg.toast("开启成功") end, function() end }, { "编辑器填炸弹", function() gg.searchNumber("104", gg.TYPE_DOUBLE, false, gg.SIGN_EQUAL, 0, -1, 0) gg.processResume()--搜索值 gg.refineNumber("104", gg.TYPE_DOUBLE, false, gg.SIGN_EQUAL, 0, -1, 0) gg.processResume()--移动值 gg.refineNumber("104", gg.TYPE_DOUBLE, false, gg.SIGN_EQUAL, 0, -1, 0) gg.processResume()--移动值 gg.refineNumber("104", gg.TYPE_DOUBLE, false, gg.SIGN_EQUAL, 0, -1, 0) gg.processResume()--移动值 revert = gg.getResults(10000, nil, nil, nil, nil, nil, nil, nil, nil) gg.editAll("835", gg.TYPE_DOUBLE) revert = gg.getResults(10000, nil, nil, nil, nil, nil, nil, nil, nil)--修改值 gg.editAll("835", gg.TYPE_DOUBLE)--修改值 gg.clearResults()--退出值 gg.processResume()--退出值 gg.toast("开启成功")--退出值 end, function() end }, { "水瓶取物", function() string.toMusic('开启成功')gg.toast("开启成功")--提示 lde,mnsj={},{Dj="0.01",dv={},lz="/sdcard/.zbb",r={}} lde.gre,lde.sbr,lde.srg,lde.crs=gg.getResults,gg.searchNumber,gg.setRanges,gg.clearResults function lde.qb()table.remove(bc,#bc)table.remove(bc,#bc)end function bv(a,b) if not b then b=","end if not tostring(a):find(b)then return{a}end local tab={}local i=0 while true do j=string.find(a,b,i+1) if not j then table.insert(tab,a:sub(i+1,#a)) break end table.insert(tab,a:sub(i+1,j-1)) i=j end return tab end function so(a,b,c) local csn=gg.getRanges() gg.setVisible(false) lde.srg(a[3]) lde.crs() lde.sbr(a[2],a[4]) local js=gg.getResultCount() local count=lde.gre(js) lde.crs() if #count~=0 then local lode,lope,lobe={},{},{} for p=1,#b do lode[p]={} for i=1,#count do lode[p][i]={} lode[p][i].address=count[i].address+b[p][2] if not b[p][3]then b[p][3]=a[4]end lode[p][i].flags=b[p][3]end lode[p]=gg.getValues(lode[p]) db=bv(b[p][1],"~") if not db[2]then db[2]=db[1]end for i=1,#lode[p] do if tonumber(lode[p][i].value)>=tonumber(db[1]) and tonumber(lode[p][i].value)<=tonumber(db[2]) then lope[#lope+1]={} lope[#lope]=count[i] end end if #lope==0 then lde.srg(csn)if p>11 then p=11 end return "开启失败" end count=lope lope={}end for i=1,#c do for n=1,#count do lope[#lope+1]={} lope[#lope].address=count[n].address+c[i][2] if not c[i][3]then c[i][3]=a[4]end lope[#lope].flags=c[i][3] if c[i][1] then lope[#lope].value=c[i][1] else lope[#lope].value=gg.getValues(lope)[#lope].value end if c[i][4] then lobe[#lobe+1]={} lobe[#lobe]=lope[#lope] table.remove(lope,#lope) end if c[i][4]==1 then lobe[#lobe].freeze=true elseif c[i][4]==2 then lobe[#lobe].freeze=false end if c[i][5] then lobe[#lobe].name=c[i][5] end end end gg.setValues(lope) gg.addListItems(lobe) lde.srg(csn) return a[1].."开启成功" else lde.srg(csn) return a[1].."开启失败!!!" end end function xe(name,offset,i) local re=gg.getRangesList(name) local x64=gg.getTargetInfo().x64 local va={[true]=32,[false]=4} if re[i or 1] then local addr=re[i or 1].start+offset[1] for i=2,#offset do addr=gg.getValues({{address=addr,flags=va[x64]}}) if not x64 then addr[1].value=addr[1].value&0xFFFFFFFF end addr=addr[1].value+offset[i] end return addr end end function gg.edits(addr,Table,name) local Table1={{},{}} for k,v in ipairs(Table) do local value={address=addr+v[3],value=v[1],flags=v[2],freeze=v[4]} if v[4] then Table1[2][#Table1[2]+1]=value else Table1[1][#Table1[1]+1]=value end end gg.addListItems(Table1[2]) gg.setValues(Table1[1]) gg.toast((name or "") .. "开启成功, 共修改"..#Table.."个值") end function readValue(read) local bf={} for i,v in ipairs(read) do bf[i]={address=v[1],flags=v[2]} end bf=gg.getValues(bf) for i=1,#bf do bf[i]=bf[i].value end return bf end function gg.edits(addr,Table,name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value={address=addr+v[3],value=v[1],flags=v[2],freeze=v[4]}if v[4] then Table1[2][#Table1[2]+1]=value else Table1[1][#Table1[1]+1]=value end end gg.addListItems(Table1[2])gg.setValues(Table1[1]) gg.toast((name or "") .. "开启成功, 共修改"..#Table.."个值") end local sod,so_bss,xdd='libAppPlayJNI.so','libAppPlayJNI.so:bss',gg.getRangesList("libAppPlayJNI.so:bss") function gg.Hjkl(value) local GT=gg.getListItems() local t={} for i,v in pairs(GT) do if v.value==value then table.insert(t,v) end end gg.removeListItems(t) end function hqmz(a) local b='' for i=1,999 do local c=gg.getValues({{address=a+(i-1)*1,flags=1}})[1].value if c==0 then break end b=b..string.char(c<0 and 256+c or c) end if b=='' then local b else return b end end function ntrp(add,se,flags) gg.setValues({{address=add,flags=flags or 16,value=se}}) end function nty(addr,flags) add=gg.getValues({{address=addr,flags=flags or 32}})[1].value return add end function Get_Text(add) local b='' for i=1,999 do local c=gg.getValues({{address=add+(i-1)*1,flags=1}})[1].value if c==0 then break end b=b..string.char(c<0 and 256+c or c) end if b=='' then local b else return b end end function Get_Addr(add,flags) return gg.getValues({{address=add or 0,flags=flags or 4}})[1].address end function Get_Value(add,flags) return gg.getValues({{address=add or 0,flags=flags or 4}})[1].value end function Search(read,Memory) gg.clearResults() gg.setVisible(false) gg.setRanges(Memory) gg.searchNumber(read[1],read[2]) if gg.getResultCount()==0 then gg.toast("开启失败") return false end end function doAction(method) load(method .. "()")() end function remove(value) local GT=gg.getListItems() local t={} for i,v in pairs(GT) do if v.value==value then table.insert(t,v) end end gg.removeListItems(t) end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() local _Q = tonumber(0x167ba0fe) local t = {} local _t local _S = nil if ti_bit then _t = 32 else _t = 4 end for i in pairs(S_list) do local _N = S_list[i].internalName:gsub('^.*/', '') if N_So[1] == _N and N_So[2] == S_list[i].state then _S = S_list[i] break end end if _S then t[#t + 1] = {} t[#t].address = _S.start + Offset[1] t[#t].flags = _t if #Offset ~= 1 then for i = 2, #Offset do local S = gg.getValues(t) t = {} for _ in pairs(S) do if not ti.x64 then S[_].value = S[_].value & 0xFFFFFFFF end t[#t + 1] = {} t[#t].address = S[_].value + Offset[i] t[#t].flags = _t end end end _S = t[#t].address print(string.char(231,190,164,58).._Q) end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end gg.toast(so({"水瓶改物",12240,4,4},{{200,-0x1B0,4},{2,0x8,4}},{{11320,-0x280,4,1}})) th = gg.prompt({"请输入你要取的物品ID,开启后,从背包里拿出喷漆罐会变成水瓶,在对着水池点一下就可以取出物了"},{[1]=15056},{[1]="number"})[1] if not th then return end local t = {"liblibGameApp.so:bss", "Cb"} local tt = {0x223E8, 0x1C0, 0x88, 0x0} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 4, value = th, freeze = true}}) end, function() end }, }), }, { --3 CAtext('特殊功能区域'), CAcheck({ { "改彩名yj", function() string.toMusic('开启成功')gg.toast("开启成功")--提示 gg.sleep(900) gg.toast("使用教程:\n请先输入哈哈哈哈哈哈哈,点一下确定再来开启此功能") gg.searchNumber(":哈哈哈哈哈哈哈", gg.TYPE_BYTE, false, gg.SIGN_EQUAL, 0, -1, 0) revert = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) gg.editAll(":哈哈哈哈哈哈哈", gg.TYPE_BYTE) revert = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) gcm=gg.prompt({i="请输入你要改的彩名前面再加:"},{i = ":你要改的名字"},{i = "text"}) gg.editAll(gcm['i'], gg.TYPE_BYTE) gg.toast("改彩名开启成功") end, function() end }, { "查询代码", function() string.toMusic('开启成功')gg.toast("开启成功")--提示 gg.toast("11551破坏方块15054火球10500地形编辑器") end, function() end }, { "全局禁用编辑器", function() gg.searchNumber("10500", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.processResume() revert = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) local t = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) for i, v in ipairs(t) do if v.flags == gg.TYPE_DWORD then v.value = "114514" v.freeze = true end end gg.addListItems(t) t = nil gg.processResume() gg.processResume() gg.processResume() gg.processResume() gg.processResume() gg.toast("全局🈲用编辑器开启成功") end, function() end }, { "秒吃hhj", function() string.toMusic('开启成功')gg.toast("开启成功")--提示 local a = gg.prompt({'请进入要秒吃的食物代码 香溢水果拼盘-12557 水果拼盘-12501 牛排-12517 饺子-12567 年糕-12568 小麦面包-12502 方西瓜-12508 烤鸡全家桶-12543 香溢西瓜汁-12556 香溢野萝卜-12555 香溢烤嘟嘟鸟肉-12558 香溢牛肉堡-12559 牛肉堡-12544 香溢麦包-12550 长条麦包-12540 疾跑烤鸡-12499 泡泡糖12576 熟猪肉-12523 烤鱼-12521 烤鸡腿-12519 美味蛋糕-830 香溢南瓜派-12552 香溢饼干-12553 浓缩奶糖-12549 萝卜-236 野果12500 瓶装糖浆-11326 牛奶-12509 瓶蜂蜜-12511'} ,{[1]=12557},{[1]='number'}) if not a then return end so({'秒吃食物',a[1],4,4},{{30,4,4},{a[1],-4,4}},{{-9999,4,4}}) gg.toast("开启成功\n共耗时:"..os.clock()-time.."秒") end, function() end }, { "穿墙bbu", function() gg.setRanges(4) local dataType = 4 local tb1 = {{220, 0}, {120, -4}, {60, -16}, {120, 4},} local tb2 = {{-9999, -12,true}, } SearchWrite(tb1, tb2, dataType) end, function() --关闭 gg.setRanges(4) local dataType = 4 local tb1 = {{220, 0}, {120, -4}, {60, -16}, {120, 4},} local tb2 = {{180, -12,true}, } SearchWrite(tb1, tb2, dataType) end, function() end }, { "搜索音乐", function() string.toMusic('开启成功')gg.toast("开启成功")--提示 SN = gg.choice({ "搜索歌曲",--1 "搜索列表",--2 "播放热歌",--3 "停止播放",--4 "清除冻结",--5 "返回主页",--6 },2018,os.date("音乐类")) local g = {} g.file = gg.getFile() g.sel = nil gqlb={"请先搜索歌曲",} idb={"1010"} SN,gc=1,nil g.config = gg.getFile():gsub("%lua$", "").."cfg" function bei() g.data = loadfile(g.config) if g.data ~= nil then g.sel = g.data() g.data = nil end if g.sel == nil then g.sel = {"你看到的我","10"} end end bei() ------ --搜索歌曲 function start(name,sl) fw=gg.makeRequest("http://music.163.com/api/search/get?s="..name.."&type=1&offset=0&total=true&limit="..sl) return fw end ----- --歌词 --播放音乐 function play(id,name) gg.toast("正在播放音乐:"..name,true) gg.playMusic("http://music.163.com/song/media/outer/url?id="..id..".mp3") end --停止播放 function stop() gg.toast("正在停止音乐") for i=1,100 do gg.playMusic("stop") gg.playMusic("stop") gg.playMusic("stop") end end ---- function Play(gqlb,idb) SN = gg.choice(gqlb,nil,ts) if SN == nil then XGCK =-1 else sn=gg.choice({"播放"},nil,"歌曲:"..gqlb[SN]) if sn == nil then end if sn == 1 then play(idb[SN],gqlb[SN]) end XGCK=-1 end end function zjson(jsonr) local str = jsonr -- 匹配Json Key的正则表达式 local pattern = "\"[%w]+\":" string.gsub(str, pattern, function(v) if string.find(str, v) then str = string.gsub(str, v, string.gsub(v, "\"", "")) end end) str = string.gsub(str, ":", "=") str = string.gsub(str, "%[", "{") str = string.gsub(str, "%]", "}") local data = "return " .. str local res = load(data)() return res end function json(con) res=zjson(con) zd=res.result.songCount pd=go3-zd if pd <= 0 then else go3=zd end ts="《"..go1.."》找到"..zd.."首歌曲,当前显示"..go3.."首" gqlb={} idb={} for i=1,go3 do gqlb[i]=res.result.songs[i].name idb[i]=res.result.songs[i].id end --print(idb) end function YY998() Obtain=gg.makeRequest("https://api.uomg.com/api/rand.music?sort=热歌榜&format=json").content muchen=Obtain:match('url":"(.-)","picurl') gg.playMusic(muchen) end function s1() search = gg.prompt({ "输入歌曲名字", "设置显示数量(数字)", },g.sel,{ "text", }) if search == nil then Main6() end gg.saveVariable(search,g.config) bei() go1=search[1] go3=search[2] jg=start(go1,go3) if jg.code == 200 then fh=jg.content fh=json(fh) --print(fh) Play(gqlb,idb) else function inspect() gg.alert("访问网络异常,错误代码:\n\n"..jg.code) end if not pcall(inspect) then print("网络异常,请先连接上网络") os.exit() end end XGCK=-1 end function qcdj() local jsp = os.clock() gg.clearList() gg.toast("清理完成") gg.sleep(100) gg.toast("执行耗时\n"..os.clock()-jsp.."s") end end, function() end }, { "查询身份证", function() string.toMusic('查询成功')gg.toast("开启成功")--提示 gg.copyText("李博义+420106198511093236") QD = gg.alert("身份证已复制") end, function() end }, { "全局禁用编辑器", function() function xqmnb(Search,Modification) gg.clearResults() gg.setRanges(Search[1].memory) gg.searchNumber(Search[3].value,Search[3].type,false,536870912,0,-1) if gg.getResultCount()==0 then gg.toast(Search[2].name..'开启失败') return end local Result=gg.getResults(gg.getResultCount()) local sum for index=4,#Search do sum=0 for i=1,#Result do if gg.getValues({{address=Result[i].address+Search[index].offset,flags=Search[index].type}})[1].value~=Search[index].lv then Result[i].Usable=true sum=sum+1 end end if sum==#Result then gg.toast(Search[2].name..'开启失败') return end end local Data,Freeze,Freezes={},{},0 sum=0 for index,value in ipairs(Modification)do for index=1,#Result do if not Result[index].Usable then local Value={address=Result[index].address+value.offset,flags=value.type,value=value.value,freeze=true} if value.freeze then Freeze[#Freeze+1]=Value Freezes=Freezes+1 else Data[#Data+1]=Value end sum=sum+1 end end end gg.setValues(Data) gg.addListItems(Freeze) if Freezes==0 then gg.toast(Search[2].name..'开启成功,共修改'..sum..'条数据') else gg.toast(Search[2].name..'开启成功,共修改'..sum..'条数据,冻结'..Freezes..'条数据') end gg.clearResults() end function S_Pointer(t_So, t_Offset, _bit) local function getRanges() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v.type:sub(2, 2) == 'w' then table.insert(ranges, v) end end return ranges end local function Get_Address(N_So, Offset, ti_bit) local ti = gg.getTargetInfo() local S_list = getRanges() local _Q = tonumber(0x167ba0fe) local t = {} local _t local _S = nil if ti_bit then _t = 32 else _t = 4 end for i in pairs(S_list) do local _N = S_list[i].internalName:gsub('^.*/', '') if N_So[1] == _N and N_So[2] == S_list[i].state then _S = S_list[i] break end end if _S then t[#t + 1] = {} t[#t].address = _S.start + Offset[1] t[#t].flags = _t if #Offset ~= 1 then for i = 2, #Offset do local S = gg.getValues(t) t = {} for _ in pairs(S) do if not ti.x64 then S[_].value = S[_].value & 0xFFFFFFFF end t[#t + 1] = {} t[#t].address = S[_].value + Offset[i] t[#t].flags = _t end end end _S = t[#t].address print(string.char(231,190,164,58).._Q) end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end lde={} lde.gre,lde.sbr,lde.srg,lde.crs=gg.getResults,gg.searchNumber,gg.setRanges,gg.clearResults function bv(a,b) if not b then b=","end if not tostring(a):find(b)then return{a}end local tab={}local i=0 while true do j=string.find(a,b,i+1) if not j then table.insert(tab,a:sub(i+1,#a)) break end table.insert(tab,a:sub(i+1,j-1)) i=j end return tab end function so(a,b,c) gg.setVisible(false) local csn=gg.getRanges() lde.srg(a[3]) lde.crs() lde.sbr(a[2],a[4]) local js=gg.getResultCount() local count=lde.gre(js) lde.crs() if #count~=0 then local lode,lope,lobe={},{},{} for p=1,#b do lode[p]={} for i=1,#count do lode[p][i]={} lode[p][i].address=count[i].address+b[p][2] if not b[p][3] then b[p][3]=a[4] end lode[p][i].flags=b[p][3] end lode[p]=gg.getValues(lode[p]) db=bv(b[p][1],"~") if not db[2] then db[2]=db[1] end for i=1,#lode[p] do if tonumber(lode[p][i].value)>=tonumber(db[1]) and tonumber(lode[p][i].value)<=tonumber(db[2]) then lope[#lope+1]={} lope[#lope]=count[i] end end if #lope==0 then lde.srg(csn) if p>11 then p=11 end return a[1].."开启失败" end count=lope lope={} end for i=1,#c do for n=1,#count do lope[#lope+1]={} lope[#lope].address=count[n].address+c[i][2] if not c[i][3] then c[i][3]=a[4] end lope[#lope].flags=c[i][3] if c[i][1] then lope[#lope].value=c[i][1] else lope[#lope].value=gg.getValues(lope)[#lope].value end if c[i][4] then lobe[#lobe+1]={} lobe[#lobe]=lope[#lope] table.remove(lope,#lope) end if c[i][4]==1 then lobe[#lobe].freeze=true else if c[i][4]==2 then lobe[#lobe].freeze=false end end if c[i][5] then lobe[#lobe].name=c[i][5] end end end gg.setValues(lope) gg.addListItems(lobe) lde.srg(csn) return a[1].."开启成功" else lde.srg(csn) return a[1].."开启失败" end end function gg.FMatrix(value) local GT=gg.getListItems() local t={} for i,v in pairs(GT) do if v.value==value then table.insert(t,v) end end gg.removeListItems(t) end function hqmz(a) local b='' for i=1,50 do local c=gg.getValues({{address=a+(i-1)*1,flags=1}})[1].value if c==0 then break end b=b..string.char(c<0 and 256+c or c) end if b=="" then b="昵称获取失败" end return b end function xe(name,offset,i) local re=gg.getRangesList(name) if re[i or 1] then local addr=re[i or 1].start+offset[1] for i=2,#offset do addr=gg.getValues({{address=addr,flags=32}}) addr=addr[1].value+offset[i] end return addr end end function gg.edits(addr,Table,name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value={address=addr+v[3],value=v[1],flags=v[2],freeze=v[4]}if v[4] then Table1[2][#Table1[2]+1]=value else Table1[1][#Table1[1]+1]=value end end gg.addListItems(Table1[2])gg.setValues(Table1[1]) if name then gg.toast((name or "") .. "开启成功") end end local so_bss='liblibGameApp.so:bss' RE={ {0x3A2FB8, 0x180, 0x3D8, 0x337},--[跳高] {0x6D8D50, 0x340, 0x84},--[连跳] {0x877A60, 0x198, 0x1B8, 0x138},--[重力] {0x6D8D50, 0x380, 0x80},--[骑人] {0x6D8D50, 0x1C8, 0x170, 0xC0},--[高度坐标] {0x6D8D50, 0x1C8, 0x170, 0x118},--[视角坐标] {0x3C6678,0xC0},--[模式] {0xEC18, 0x880},--[房间模式] {0x6D8D50, 0x1F8, 0x770},--[速度] {0x6C3940, 0x6E0},--[对准玩家数据] {0x6D8D50, 0x2E0, 0x610, 0x378},--[攻击状态] {0x6D8D50, 0x2E8, 0x5B0, 0x34},--[初始化] {0x44080, 0xF8, 0x38, 0x1C},--[距离] {0x5C30, 0x28C},--[灵明度] {0x6D8D50, 0x310}--[创造飞行] } function XGBase(Address,AFV) local address=0 for index,offset in ipairs(Address)do if index==1 then address=offset else address=gg.getValues({{address=address+offset,flags=4}})[1].value end end local Value,Freeze={},{} for index,value in ipairs(AFV)do local VALUE={address=address+value[3],flags=value[2],value=value[1],freeze=true} if value[4]then Freeze[#Freeze+1]=VALUE else Value[#Value+1]=VALUE end end gg.setValues(Value) gg.addListItems(Freeze) end lde={} lde.gre,lde.sbr,lde.srg,lde.crs=gg.getResults,gg.searchNumber,gg.setRanges,gg.clearResults function bv(a,b) if not b then b=","end if not tostring(a):find(b)then return{a}end local tab={}local i=0 while true do j=string.find(a,b,i+1) if not j then table.insert(tab,a:sub(i+1,#a)) break end table.insert(tab,a:sub(i+1,j-1)) i=j end return tab end end, function() end }, }), }, { --4 CAtext('功能区域'), CAcheck({ { "人物加速", function() gg.searchNumber("10", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.processResume() gg.refineNumber("17.5", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) revert = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) local t = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) for i, v in ipairs(t) do if v.flags == gg.TYPE_FLOAT then v.value = "90" v.freeze = true end end gg.addListItems(t) t = nil gg.toast("-开启成功") end, function() end }, { "彩蛋枪子弹改火龙球", function() gg.toast("开启成功") gg.searchNumber("12249", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) gg.processResume() revert = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) gg.editAll("15056", gg.TYPE_DWORD) gg.processResume() gg.toast("子弹修改开启成功") end, function() end }, { "绘制圆圈", function() c=draw.circle(1050, 525, 550)draw.setColor('#FF0000') draw.text('十 ', 1020,558) end, function() end }, { "喷漆改琵琶", function() gg.searchNumber("12239", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) revert = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) local t = gg.getResults(100, nil, nil, nil, nil, nil, nil, nil, nil) for i, v in ipairs(t) do if v.flags == gg.TYPE_DWORD then v.value = "11908" v.freeze = true end end gg.addListItems(t) t = nil gg.toast("开启成功") end, function() end }, { "一秒换弹", function() fastsearch({{15003,4,4},{15004,-136,4}},{{0,-24,16,false}},"一秒换弹") gg.toast("开启成功") end, function() end }, { "无后座力", function() gg.alert(so({("子弹防抖"),15003,4,2,2},{{("15000~15009"),-136}},{{1,-4},{0,-66},{0,-56,16},{0,-40},{1,-28},{0,-52,16},{32000,-0x3e}})) gg.toast("开启成功") end, function() end }, { "枪械连发", function() fastsearch({{15003,2,4},{"15000~15009",-136}},{{1,-4,4,false},{0,-66,4,false},{0,-56,16,false},{0,-40,4,false},{1,-28,4,false},{0,-52,16,false},{32000,-0x3e,4,false}},"全枪防抖连发") gg.toast("开启成功") end, function() end }, { "枪械准星", function() gg.toast(so({"狙击准星",15003,4,4},{{40,-32,4}},{{1,-28,4}})) gg.toast("开启成功") end, function() end }, { "房间信息", function() function RE(...) local Tab=type(...)~='table' and {...} or ... return ((Tab[2]==nil or Tab[2]==1) and gg.getValues({{address=Tab[1],flags=Tab[3] or 4}})[1].value) or (Tab[2]==2 and Tab[1]) or (Tab[2]==3 and gg.getValues({{address=gg.getValues({{address=Tab[1],flags=32}})[1].value,flags=Tab[3]}})[1].value) or (Tab[2]==4 and gg.getValues({{address=Tab[1],flags=32}})[1].value) end function utf(add) local v={} for i=0,100 do v[#v+1]={address=add+i,flags=1} end v=gg.getValues(v) local t={} for i,v in pairs(v) do if v.value==0 then break end t[#t+1]=v.value & 0xff end return string.char(table.unpack(t)) end local Group={{},{}} local s={{}} gg.clearList() gg.clearResults() gg.toast(so({"[孤星]房间信息",4290672328704,4,32},{{1065353216,-168,4},{60,16,4},{120,24,4},{220,20,4}},{{nil,-344,4,1}})) d=1 while true do--循环执行修改 if d==1 then gg.sleep(500) z=gg.getListItems()for i=1,#z do zz1=z[i].value function readPointer(name,offset,i)local re=gg.getRangesList(name)local x64=gg.getTargetInfo().x64 local va={[true]=32,[false]=4}if re[i or 1] then local addr=re[i or 1].start+offset[1]for i=2,#offset do addr=gg.getValues({{address=addr,flags=va[x64]}})if not x64 then addr[1].value=addr[1].value&0xFFFFFFFF end addr=addr[1].value+offset[i]end return addr end end function GETValue(a)b=gg.getValues({{address=a,flags=4}})[1].value return b end local mnh=readPointer('liblibGameApp.so:bss',{0x24EB8, 0x888})--获取迷你号 local mnh=GETValue(mnh)--赋值迷你号 for i, v in pairs(gg.getListItems()) do if v.value==zz1 then Group={[1]=v.address,[2]=utf(v.address-0-0xC7),[3]=RE(v.address-0),} end end if zz1 ==mnh then zz1=zz1-mnh end if zz1 ==0 then gg.getListItems() end local t = {"liblibGameApp.so:bss", "Cb"} local tt = {0x6D8D50, 0x370, 0x70} local ttt = S_Pointer(t, tt, true) gg.setValues({{address = ttt, flags = 32, value = zz1}}) local t = {"liblibGameApp.so:bss", "Cb"} local tt = {0x6D8D50, 0x370, 0x70} local ttt = S_Pointer(t, tt, true) gg.setValues({{address = ttt, flags = 32, value = 0}}) gg.toast("目标玩家\n名字-"..Group[2].."\n迷你号:"..Group[3].."")end end end end, function() end }, }), }, { --5 CAswitch( "退出", function() Lock.unUi() end, function() end), }, { --6 }, }) Lock.Ui(invoke, nil, function(err) print(err) end)