function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) 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 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 end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function SH(Search,Modification) gg.clearResults() gg.searchNumber(Search[1][1],Search[1][2],false,536870912,0,-1) if gg.getResultCount()==0 then gg.toast(Name..'开启失败') return end local Result=gg.getResults(gg.getResultCount()) local sum=0 for i=2,#Search do for index=1,#Result do if gg.getValues({{address=Result[index].address+Search[i][3],flags=Search[i][2]}})[1].value~=Search[i][1]then Result[index].Usable=true sum=sum+1 end end end if sum==#Result then gg.toast(Name..'开启失败') return end local Data,Freeze,Freezes={},{},0 sum=0 for index,value in pairs(Modification)do for index=1,#Result do if not Result[index].Usable then local Value={address=Result[index].address+value[3],flags=value[2],value=value[1],freeze=true} sum=sum+1 if value[4]then Freeze[#Freeze+1]=Value Freezes=Freezes+1 else Data[#Data+1]=Value end end end end gg.setValues(Data) gg.addListItems(Freeze) if Freeze==0 then gg.toast(Name..'开启成功,共修改'..sum..'条数据.') else gg.toast(Name..'开启成功,共修改'..sum..'条数据,冻结'..Freezes..'条数据.') end end function MengTing(Search, Write,Neicun,Mingcg,Shuzhiliang) gg.clearResults() gg.setRanges(Neicun) gg.setVisible(false) gg.searchNumber(Search[1][1], Search[1][3]) count = gg.getResultCount() result = gg.getResults(count) gg.clearResults() data = {} base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do tmp = {} offset = Search[k][2] - base 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] end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= 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 gg.toast(Mingcg.."搜索到"..#data.."条数据") t = {} base = Search[1][2] if Shuzhiliang == "" and Shuzhiliang > 0 and Shuzhiliang < #data then Shuzhiliang=Shuzhiliang else Shuzhiliang=#data end for i=1, Shuzhiliang do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] t[#t].value = w[1] if (w[4] == true) then item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Mingcg.."已修改"..#t.."条数据") gg.sleep(400) else gg.toast(Mingcg.."开启失败", false) return false end else gg.toast("搜索失败") return false end end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function YF(Search, Write,Neicun,Mingcg,Shuzhiliang) gg.clearResults() gg.setRanges(Neicun) gg.setVisible(false) gg.searchNumber(Search[1][1], Search[1][3]) count = gg.getResultCount() result = gg.getResults(count) gg.clearResults() data = {} base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do tmp = {} offset = Search[k][2] - base 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] end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= 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 gg.toast(Mingcg.."ғoᴜɴᴅ"..#data.."ᴀʀᴛɪᴄʟᴇ ᴅᴀᴛᴀ") t = {} base = Search[1][2] if Shuzhiliang == "" and Shuzhiliang > 0 and Shuzhiliang < #data then Shuzhiliang=Shuzhiliang else Shuzhiliang=#data end for i=1, Shuzhiliang do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] t[#t].value = w[1] if (w[4] == true) then item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Mingcg.."ᴀʟʀᴇᴀᴅʏ ᴇᴅɪᴛᴇᴅ"..#t.."ᴀʀᴛɪᴄʟᴇ ᴅᴀᴛᴀ") gg.sleep(400) else gg.toast(Mingcg.."ғᴀɪʟᴇᴅ ᴛᴏ ᴏᴘᴇɴ", false) return false end else gg.toast("sᴇᴀʀᴄʜ ғᴀɪʟᴇᴅ") return false end end function AnmolDk(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) gg.setVisible(false) gg.searchNumber(Search[1][1],Type) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][2] 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=v.flags end tmp=gg.getValues(tmp) for i,v in ipairs(tmp)do if(tostring(v.value)~=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 gg.toast("\n found"..#data.."data\n Start offset") local t={} local base=Search[1][2] for i=1,#data do for k,w in ipairs(Write)do offset=w[2]-base t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=Type t[#t].value=w[1] if(w[3]==true)then local item={} item[#item+1]=t[#t] item[#item].freeze=true gg.addListItems(item) end end end gg.setValues(t) gg.sleep(400) gg.toast("\n"..Name.."𝐃𝐄𝐕𝐈𝐋 𝐑𝐀𝐊𝐀\n 𝐃𝐄𝐕𝐈𝐋 𝐑𝐀𝐊𝐀"..#t.."data") else gg.toast("\n"..Name.."𝐃𝐄𝐕𝐈𝐋 𝐑𝐊𝐀𝐀") return false end else gg.toast("\n"..Name.."𝐃𝐄𝐕𝐈𝐋 𝐑𝐀𝐊𝐀") return false end end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function kd(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) gg.setVisible(false) gg.searchNumber(Search[1][1],Type) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][2] 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=v.flags end tmp=gg.getValues(tmp) for i,v in ipairs(tmp)do if(tostring(v.value)~=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={} local base=Search[1][2] for i=1,#data do for k,w in ipairs(Write)do offset=w[2]-base t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=Type t[#t].value=w[1] if(w[3]==true)then local item={} item[#item+1]=t[#t] item[#item].freeze=true gg.addListItems(item) end end end gg.setValues(t)else return false end else return false end end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function HaoGe(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) gg.setVisible(false) gg.searchNumber(Search[1][1],Type) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][2] 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=v.flags end tmp=gg.getValues(tmp) for i,v in ipairs(tmp)do if(tostring(v.value)~=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 gg.toast("\n🔍搜索到"..#data.."数据\n🔰开始进行偏移") local t={} local base=Search[1][2] for i=1,#data do for k,w in ipairs(Write)do offset=w[2]-base t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=Type t[#t].value=w[1] if(w[3]==true)then local item={} item[#item+1]=t[#t] item[#item].freeze=true gg.addListItems(item) end end end gg.setValues(t) gg.sleep(400) gg.toast("\n🚬"..Name.."成功\n🛠共修改"..#t.."数据") else gg.toast("\n❌"..Name.."失败") return false end else gg.toast("\n❌"..Name.."失败") return false end end local time=os.clock() function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end--@Lion_Ts 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"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true 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"] .. "") 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"] .. "") 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) end end if xgjg == true then gg.toast(qmnb[2]["name"] .. "" .. xgsl .. "") else gg.toast(qmnb[2]["name"] .. "4T DZ") end end end 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"] xgdj = qmxg[x]["paidze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, paidze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 xgjg = true end end function xkd(kd) gg.clearResults() gg.setRanges(kd[1]["memory"]) gg.searchNumber(kd[3]["value"], kd[3]["type"]) if gg.getResultCount() == 0 then else gg.refineNumber(kd[3]["value"], kd[3]["type"]) gg.refineNumber(kd[3]["value"], kd[3]["type"]) gg.refineNumber(kd[3]["value"], kd[3]["type"]) if gg.getResultCount() == 0 then 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, #(kd) do if pdsz == true then pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + kd[v]["offset"] pysz[1].flags = kd[v]["type"] szpy = gg.getValues(pysz) pdpd = kd[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) end end if xgjg == true then else end end end end function SearchWrite(Search, Write, Type) gg.clearResults() gg.setVisible(false) gg.searchNumber(Search[1][1], Type) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Search[1][2] 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 = v.flags end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= 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 = {} local base = Search[1][2] for i=1, #data do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = Type t[#t].value = w[1] if (w[3] == true) then local item = {} item[#item+1] = t[#t] item[#item].paidze = true gg.addListItems(item) end end end gg.setValues(t) gg.addListItems(t) else return false end else return false end end function MIAONEI(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) gg.setVisible(false) gg.searchNumber(Search[1][1],Type) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][2] 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=v.flags end tmp=gg.getValues(tmp) for i,v in ipairs(tmp)do if(tostring(v.value)~=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={} local base=Search[1][2] for i=1,#data do for k,w in ipairs(Write)do offset=w[2]-base t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=Type t[#t].value=w[1] if(w[3]==true)then local item={} item[#item+1]=t[#t] item[#item].freeze=true gg.addListItems(item) end end end gg.setValues(t) gg.sleep(400) gg.toast("\n"..Name.."\n修改"..#t.."数据") else gg.toast("\n"..Name.."\n") return false end else gg.toast("\n"..Name.."\n") return false end end function YULUO(Search, Write,Neicun,Mingcg,Shuzhiliang) gg.clearResults() gg.setRanges(Neicun) gg.setVisible(false) gg.searchNumber(Search[1][1], Search[1][3]) count = gg.getResultCount() result = gg.getResults(count) gg.clearResults() data = {} base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do tmp = {} offset = Search[k][2] - base 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] end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= 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 gg.toast(Mingcg.."搜索到"..#data.."条数据") t = {} base = Search[1][2] if Shuzhiliang == "" and Shuzhiliang > 0 and Shuzhiliang < #data then Shuzhiliang=Shuzhiliang else Shuzhiliang=#data end for i=1, Shuzhiliang do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] t[#t].value = w[1] if (w[4] == true) then item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Mingcg.."已修改"..#t.."条数据") gg.sleep(400) else gg.toast(Mingcg.."开启失败", false) return false end else gg.toast("搜索失败") return false end end 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 "by楼主提示修改"..tg_.."数据" or "" th=(th_) and "" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast(""..Name..tg) tg_,th_=nil,nil else gg.toast("搜索不到",false) return false end else gg.toast("搜索不到") return false end end --新偏移 function PS() end function setvalue(address,flags,value) PS("修改地址数值(地址,数值类型,要修改的值)") local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) 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 WH_31(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 PS() end function setvalue(address,flags,value) PS('修改地址数值(地址,数值类型,要修改的值)') local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) 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 PS() end function setvalue(address,flags,value) PS('修改地址数值(地址,数值类型,要修改的值)') local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) 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 function WanHe(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 "晚鹤提示修改"..tg_.."数据" or "" th=(th_) and "" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast(""..Name..tg) tg_,th_=nil,nil else gg.toast("搜索不到",false) return false end else gg.toast("搜索不到") return false end 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"] .. "") 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"] .. "") 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"] .. "共修改" .. xgsl .. "条数据") else gg.toast(qmnb[2]["name"] .. "") end end end end 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 gg.edits(addr, Table) 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]) end --动态基址配置 function BaseAddressWrite(data) local so = gg.getRangesList(data.so) if so[1] ~= nil then local t = {} for i = 1, #data do t[#t+1] = {} t[#t].address = so[1].start + data[i].offset t[#t].value = data[i].value t[#t].flags = data[i].type end gg.setValues(t) else gg.toast("❌搜索不到") end end function mnnb(Search, Write,Neicun,Mingcg,Shuzhiliang) gg.clearResults() gg.setRanges(Neicun) gg.setVisible(false) gg.searchNumber(Search[1][1], Search[1][3]) count = gg.getResultCount() result = gg.getResults(count) gg.clearResults() data = {} base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do tmp = {} offset = Search[k][2] - base 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] end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= 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 gg.toast(Mingcg.."搜索到"..#data.."条数据") t = {} base = Search[1][2] if Shuzhiliang == "" and Shuzhiliang > 0 and Shuzhiliang < #data then Shuzhiliang=Shuzhiliang else Shuzhiliang=#data end for i=1, Shuzhiliang do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] t[#t].value = w[1] if (w[4] == true) then item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Mingcg.."已修改"..#t.."条数据") gg.sleep(400) else gg.toast(Mingcg.."开启失败", false) return false end else gg.toast("搜索失败") return false end end function Fxs(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 "" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast("\n"..Name..tg) tg_,th_=nil,nil else gg.toast("搜索不到",false) return false end else gg.toast("开启失败") return false end end function HaoGe(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) gg.setVisible(false) gg.searchNumber(Search[1][1],Type) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][2] 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=v.flags end tmp=gg.getValues(tmp) for i,v in ipairs(tmp)do if(tostring(v.value)~=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 gg.toast("\n🍂搜索到"..#data.."数据\n🍂开始进行偏移") local t={} local base=Search[1][2] for i=1,#data do for k,w in ipairs(Write)do offset=w[2]-base t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=Type t[#t].value=w[1] if(w[3]==true)then local item={} item[#item+1]=t[#t] item[#item].freeze=true gg.addListItems(item) end end end gg.setValues(t) gg.sleep(400) gg.toast("\n🍂"..Name.."成功\n🍂共修改"..#t.."数据") else gg.toast("\n❌"..Name.."失败") return false end else gg.toast("\n❌"..Name.."失败") return false end end function js(address,flags,value) local jz={} jz[1]={} jz[1].address=address jz[1].flags=flags jz[1].value=value gg.setValues(jz) end function jz(py,xl,xgsz) flags=xl value=xgsz so=gg.getRangesList(''..name..'')[1].start js(so+py,xl,xgsz) end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function MIAONEI(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) gg.setVisible(false) gg.searchNumber(Search[1][1],Type) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][2] 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=v.flags end tmp=gg.getValues(tmp) for i,v in ipairs(tmp)do if(tostring(v.value)~=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={} local base=Search[1][2] for i=1,#data do for k,w in ipairs(Write)do offset=w[2]-base t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=Type t[#t].value=w[1] if(w[3]==true)then local item={} item[#item+1]=t[#t] item[#item].freeze=true gg.addListItems(item) end end end gg.setValues(t) gg.sleep(400) gg.toast("\n"..Name.."\n修改"..#t.."数据") else gg.toast("\n"..Name.."\n") return false end else gg.toast("\n"..Name.."\n") return false end end function MNBMVP(adds,value,flags,freeze,name)local data={{ ["address"]=adds,["value"]=value,["flags"]=flags,["freeze"]=freeze}} gg.setValues(data)if freeze==true then gg.addListItems(data)end if name~=nil then gg.toast('['..name..']')end end function MNB(add)t=gg.getValues({[1]={address=add,flags=4}})add=string.format("%X",t[1].value)if (#add)==16 then add=add:sub(9,16) end if (#add)==1 then add=add.."0000000" else add=string.format("%d","0x"..add)end return add end function MengTing(Search, Write,Neicun,Mingcg,Shuzhiliang) gg.clearResults() gg.setRanges(Neicun) gg.setVisible(false) gg.searchNumber(Search[1][1], Search[1][3]) count = gg.getResultCount() result = gg.getResults(count) gg.clearResults() data = {} base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do tmp = {} offset = Search[k][2] - base 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] end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= 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 gg.toast(Mingcg.."搜索到"..#data.."条数据") t = {} base = Search[1][2] if Shuzhiliang == "" and Shuzhiliang > 0 and Shuzhiliang < #data then Shuzhiliang=Shuzhiliang else Shuzhiliang=#data end for i=1, Shuzhiliang do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] t[#t].value = w[1] if (w[4] == true) then item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Mingcg.."已修改"..#t.."条数据") gg.sleep(400) else gg.toast(Mingcg.."开启失败", false) return false end else gg.toast("搜索失败") return false end end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function MIAONEI(Nc,Type,Search,Write) gg.clearResults() gg.setRanges(Nc) gg.setVisible(false) gg.searchNumber(Search[1][1],Type) local count=gg.getResultCount() local result=gg.getResults(count) gg.clearResults() local data={} local base=Search[1][2] 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=v.flags end tmp=gg.getValues(tmp) for i,v in ipairs(tmp)do if(tostring(v.value)~=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={} local base=Search[1][2] for i=1,#data do for k,w in ipairs(Write)do offset=w[2]-base t[#t+1]={} t[#t].address=data[i]+offset t[#t].flags=Type t[#t].value=w[1] if(w[3]==true)then local item={} item[#item+1]=t[#t] item[#item].freeze=true gg.addListItems(item) end end end gg.setValues(t) gg.sleep(400) gg.toast("\n"..Name.."\n修改"..#t.."数据") else gg.toast("\n"..Name.."\n") return false end else gg.toast("\n"..Name.."\n") return false end end function YULUO(Search, Write,Neicun,Mingcg,Shuzhiliang) gg.clearResults() gg.setRanges(Neicun) gg.setVisible(false) gg.searchNumber(Search[1][1], Search[1][3]) count = gg.getResultCount() result = gg.getResults(count) gg.clearResults() data = {} base = Search[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Search do tmp = {} offset = Search[k][2] - base 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] end tmp = gg.getValues(tmp) for i, v in ipairs(tmp) do if ( tostring(v.value) ~= 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 gg.toast(Mingcg.."搜索到"..#data.."条数据") t = {} base = Search[1][2] if Shuzhiliang == "" and Shuzhiliang > 0 and Shuzhiliang < #data then Shuzhiliang=Shuzhiliang else Shuzhiliang=#data end for i=1, Shuzhiliang do for k, w in ipairs(Write) do offset = w[2] - base t[#t+1] = {} t[#t].address = data[i] + offset t[#t].flags = w[3] t[#t].value = w[1] if (w[4] == true) then item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Mingcg.."已修改"..#t.."条数据") gg.sleep(400) else gg.toast(Mingcg.."开启失败", false) return false end else gg.toast("搜索失败") return false end end 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 "by楼主提示修改"..tg_.."数据" or "" th=(th_) and "" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.toast(""..Name..tg) tg_,th_=nil,nil else gg.toast("搜索不到",false) return false end else gg.toast("搜索不到") return false end end --新偏移 function PS() end function setvalue(address,flags,value) PS("修改地址数值(地址,数值类型,要修改的值)") local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) 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 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 end return _S end local _A = string.format('0x%X', Get_Address(t_So, t_Offset, _bit)) return _A end function Unfreeze() --获取保存列表 local t = gg.getListItems() for k, v in pairs(t) do t[k]["freeze"] = false end return gg.addListItems(t) end 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 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 function Format(tab, format, value, type, Function) if format == "查看" then tab[1]["flags"] = type return print(gg.getValues(tab)) elseif format == "修改" then tab[1]["flags"] = type tab[1]["value"] = value return gg.setValues(tab) elseif format == "冻结" then tab[1]["flags"] = type tab[1]["freeze"] = true tab[1]["value"] = value tab[1]["name"] = Function or "功能" return gg.addListItems(tab) elseif format == "加载" then tab[1]["flags"] = type return gg.loadResults(tab) end end function addListltems(address,flags,value,freeze) t={} t[1]={} t[1].address=address t[1].flags=flags t[1].value=value t[1].freeze=freeze gg.addListItems(t) end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end function XIAOCHEN(so, offset, format, value, type, Function)--模块设置, 偏移量, 功能参数, 修改值, 类型, 功能 getRanges = getRanges or (function() local ranges = {} local t = gg.getRangesList('^/data/*.so*$') for i, v in pairs(t) do if v["type"]:sub(2, 2) == 'w' then--判断so是否可读可写 ranges[#ranges+1] = v end end return ranges end) local rest, ranges, sostart, valtype = {}, getRanges(), nil , gg.TYPE_DWORD if gg.getTargetInfo()["x64"] then--判断应用程序是否为64位 valtype = gg.TYPE_QWORD end for i in pairs(ranges) do local _name = ranges[i]["internalName"]:gsub('^.*/', '') if so[1] == _name and so[2] == ranges[i]["state"] then sostart = ranges[i]["start"] break end end if sostart then if offset[1]then for i = 1, #offset do rest = {{flags = valtype,address = sostart + offset[i]}} rest = gg.getValues(rest) if i == #offset then break end if valtype == gg.TYPE_DWORD then sostart = rest[1].value & 0xFFFFFFFF--对值进行补位操作 else sostart = rest[1].value end end end if #rest == 1 then end return Format(rest, format, value, type, Function) end gg.toast("功能:" .. Function .. "开启失败") print("功能开启失败原因: 未找到基址头") return os.exit() end function setvalue(address,flags,value) local tt={} tt[1]={} tt[1].address=address tt[1].flags=flags tt[1].value=value gg.setValues(tt) end 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 Dec(tab,offset) local num = 0 local str = "" for k,v in pairs(tab) do str = str..v:gsub(".",function (str) num = num+1 return string.char(str:byte()-offset[k][num]) end) num = 0 end return str end load(Dec({" "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "," "},{{125,11,18},{128,12,23},{116,18,96},{150,50,62},{150,42,48},{187,31,28},{127,13,84},{109,31,20},{110,27,84},{125,20,31},{124,13,84},{125,14,27},{126,6,27},{183,18,31},{118,27,87},{119,17,29},{130,20,96},{127,31,12},{130,67,5},{104,96,37},{193,31,28},{127,14,27},{112,13,94},{134,67,31},{127,28,13},{183,37,94},{109,31,20},{110,27,94},{134,67,10},{130,20,11},{126,84,37},{193,26,20},{130,25,13},{193,35,67},{125,20,31},{124,13,84},{136,94,26},{113,27,27},{105,27,94},{134,67,26},{113,27,27},{105,27,3},{102,96,25},{124,82,13},{126,12,42},{130,20,11},{126,13,88},{127,31,12},{130,87,23},{125,96,26},{113,27,27},{105,27,67},{166,12,14},{110,27,96},{111,24,27},{117,96,25},{124,82,31},{127,28,52},{122,13,12},{154,12,27},{118,13,88},{127,31,12},{130,87,27},{117,28,96},{122,26,96},{117,31,19},{126,2,67},{117,23,20},{195,12,24},{126,18,96},{124,25,82},{111,17,31},{112,12,88},{188,37,89},{181,82,18},{130,19,27},{181,82,89},{134,89,87},{126,18,28},{195,27,18},{127,96,26},{110,18,29},{111,23,17},{117,96,51},{149,62,88},{130,28,28},{186,12,67},{124,25,82},{124,27,12},{141,31,20},{110,27,13},{187,5,37},{178,35,67},{104,31,28},{127,14,27},{112,13,67},{130,28,28},{183,26,20},{130,25,13},{166,76,3},{102,87,31},{127,28,67},{112,12,14},{122,18,25},{181,26,17},{113,19,31},{111,88,94},{190,40,94},{183,12,37},{178,35,82},{109,31,20},{110,27,87},{122,26,96},{187,93,31},{127,28,87},{166,67,79},{173,96,12},{123,27,18},{195,31,28},{127,67,31},{127,28,70},{112,11,30},{187,71,84},{178,74,87},{195,27,18},{127,96,23},{125,96,88},{192,31,28},{127,87,67},{166,79,96},{111,24,27},{117,96,31},{127,28,67},{130,28,28},{181,82,94},{179,80,80},{179,80,80},{179,94,96},{126,20,13},{126,96,31},{127,28,67},{112,12,14},{122,18,25},{181,26,17},{113,19,31},{111,88,94},{190,28,94},{183,94,80},{107,94,82},{181,31,28},{127,87,27},{117,28,96},{113,27,12},{110,14,18},{195,31,28},{127,96,27},{117,28,96},{217,118,118},{217,96,96}}))() local floatingWindowManager = require('floatingWindowManager') floatingWindowManager:init() local function interruptThread(thread) if thread then pcall(function() thread:interrupt() end) end end local function getASyncThreadCallbak(func) return function() luajava.startThread(function() return pcall(func) end) end end local task local function getSyncThreadCallbak(func) return function() if task then gg.toast('请等待其他功能执行完毕') return end luajava.startThread(function() task = true pcall(func) task = nil end) end end local function callSyncThreadCallbak(func) return getSyncThreadCallbak(func)() end local function findFunctionByName(name) local func = _ENV[name] if not isFunction(func) then gg.alert(string.format('不存在 %q 功能', name)) return nil end return getSyncThreadCallbak(func) end local function newSwitchLayout(openName, closeName) if not isString(openName) then return end local layout = { Switch, layout_width = 'match_parent', text = openName, onCheckedChange = function(CompoundButton, state) local func local cacheName = '多线程' if state then -- 设置开关文本为“关闭”的文本 if isString(closeName) then CompoundButton:setText(closeName) end -- 找“打开”的功能函数 func = findFunctionByName(openName) else -- 设置开关文本为“打开”的文本 CompoundButton:setText(openName) if isString(closeName) then -- 找“关闭”的功能函数 func = findFunctionByName(closeName) end end if isFunction(func) then -- 通过 findFunctionByName 获取的函数已经是被多线程包裹的,所以直接执行就可以了 func() end end } return layout end --多选布局 local function newCheckBoxLayout(openName, closeName) if not isString(openName) then return end local layout = { CheckBox, layout_width = 'match_parent', text = openName, onCheckedChange = function(CompoundButton, state) local func local cacheName = '多线程' if state then -- 设置开关文本为“关闭”的文本 if isString(closeName) then CompoundButton:setText(closeName) end -- 找“打开”的功能函数 func = findFunctionByName(openName) else -- 设置开关文本为“打开”的文本 CompoundButton:setText(openName) if isString(closeName) then -- 找“关闭”的功能函数 func = findFunctionByName(closeName) end end if isFunction(func) then -- 通过 findFunctionByName 获取的函数已经是被多线程包裹的,所以直接执行就可以了 func() end end } return layout end gg.setConfig("隐藏辅助", 23) gg.setConfig("运行守护", 3) gg.setConfig("冻结间隔", 0) gg.setConfig("旁路模式", 1) menu = gg.alert([[📢公告- 内置作者:千克 支持轻体轻量 TG@KING_KGA 永久免费使用]],"确定")---公告系统 draw.setSize(50) draw.setStyle('填充') draw3 = require('draw3') text1 = draw3.text('TG@KING_KGA', 15, 100) ---15行100列 后期PS是水印 local color = 0xFF0000FF ---后6位是颜色 text1.setColor(color) draw.setSize(50) draw.setStyle('填充') draw3 = require('draw3') text1 = draw3.text('千克制作', 80, 400) ---80行400列 KGA是水印 local color = 0xFFFF0000 ---后6位是颜色 text1.setColor(color) floatingWindowManager:newWindow(('千克内置'):format(floatingWindowManager.version), { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_margin = '10dp', layout_width = 'match_parent', layout_height = 'match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '5dp', { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '2dp', text = '0.24轻体', textSize = '16sp', onClick = function() string.toMusic('0.24轻体') floatingWindowManager:start('0.24轻体') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '2dp', text = '0.27轻量', textSize = '16sp', onClick = function() string.toMusic('0.27轻量') floatingWindowManager:start('0.27轻量') end }, } }) end, onDestroy = function() --gg.alert('欢迎下次使用!') end }) function A1() local t = {"libUE4.so:bss", "Cb"} local tt = {0x211600, 0xA8, 0x30} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 4000}}) gg.toast("上") end function A2() local t = {"libUE4.so:bss", "Cb"} local tt = {0x211600, 0xA8, 0x30} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x134} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0}})---上升速度-0.5到5都试试 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0}})---上升速度 gg.toast("定") end function A3() local t = {"libUE4.so:bss", "Cb"} local tt = {0x211600, 0xA8, 0x30} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -4000}}) gg.toast("下") end function A4() local t = {"libUE4.so:bss", "Cb"} local tt = {0x211600, 0xA8, 0x30} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -200}}) gg.toast("救援") end function Z1() local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x134} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -7}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -7}}) gg.toast("上升") end function Z2() local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x134} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0}}) gg.toast("定") end function Z3() local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x134} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 6}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 6}}) gg.toast("下降") end function Z4() so=gg.getRangesList('libUE4.so')[1].start py=0X26F1700 setvalue(so+py,16,-3.74440972e28) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x134} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}}) gg.toast("关定") end function Z5() local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x134} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 3}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0}}) so=gg.getRangesList('libUE4.so')[1].start py=0X26F1700 setvalue(so+py,16,0) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x134} local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x134} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0}})---上升速度-0.5到5都试试 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0}})---上升速度 gg.toast("救援") end _ENV['强定'] = function() local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x134} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 443}}) --443 so=gg.getRangesList('libUE4.so')[1].start py=0X26F1700 setvalue(so+py,16,0)gg.toast("强定") end _ENV['关强定'] = function() so=gg.getRangesList('libUE4.so')[1].start py=0X26F1700 setvalue(so+py,16,-3.74440972e28)gg.toast("关定") end ---KGA是名称 floatingWindowManager:newWindow(('0.27轻量'):format(floatingWindowManager.version), { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_margin = '10dp', layout_width = 'match_parent', layout_height = 'match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '15dp', { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '进程', textSize = '15sp', onClick = function() gg.setProcessX() end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '轻量防闪', textSize = '15sp', onClick = function() local t = {"libanogs.so", "Cd"} local tt = {0x1CAE0} local ttt = S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 4, value = 999999, freeze = true}}) local t = {"libanogs.so", "Cd"} local tt = {0x40938} local ttt = S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 4, value = 999999, freeze = true}}) local t = {"libanogs.so", "Cd"} local tt = {0x40ADC} local ttt = S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 4, value = 999999, freeze = true}}) local t = {"libanogs.so", "Cd"} local tt = {0x40B20} local ttt = S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 4, value = 999999, freeze = true}}) gg.toast("防闪") end }, { Switch, layout_width = 'match_parent', text = '飞速¹', onCheckedChange = function(CompoundButton, state) if state then local KKB=gg.getRangesList("libUE4.so:bss")[1].start local KKB=KKB+0x1EADC8 local KKB=MNB(KKB)+0x20 local KKB=MNB(KKB)+0x2CC local KKB=MNB(KKB)+0x310 local KKB=MNB(KKB)+0x180 MNBMVP(KKB+8,999999,16,true)--游速--8192改9999 MNBMVP(KKB+0x644,9999,16,true)--体速670 3000 MNBMVP(KKB+0x104,8000000000,16,true)--另速 MNBMVP(KKB+0x108,9999999999,4)--另控 XIAOCHEN({'libUE4.so:bss','Cb'},{0x1FFEAC,0x20},"冻结","999999",16,"a满帧") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1FFEAC,0x24},"冻结","999999",16,"a满帧") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x14F0},"修改","17",16,"人物速度翻倍")--15 XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x14F4},"修改","9999",16,"开火动作") XIAOCHEN({'libUE4.so:bss','Cb'},{0x62EB8,0xA8,0x24C,0x24},"修改","100000000",4,"ad开枪防拉") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x1558},"修改","70",16,"人物站浮") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x60},"修改","0.7",16,"自身速度速控") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x18,0x1C8,0x3C8},"修改","0.2",16,"自身全局速控") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x18,0x1C8,0x3D4},"修改","0.1",16,"人物全局速控") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x310,0x138},"修改","55",16,"防拉增强") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x320,0x3D8},"修改","9999",4,"人物踏空") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x310,0x1AC},"修改","10086110",16,"天空速度增强") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x310,0x134},"修改","0.85",16,"跳跃增强") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x310,0x13C},"修改","300",16,"人物跳远变快") XIAOCHEN({'libUE4.so:bss','Cb'},{0x211600,0xA8,0x30},"修改","-1800",16,"人物跳变快") so=gg.getRangesList('libUE4.so')[1].start py=0X2C3BA14 setvalue(so+py,16,10.5) so=gg.getRangesList('libUE4.so')[1].start py=0XCBCB00 setvalue(so+py,16,-3.83692277e21)--突破 so=gg.getRangesList('libUE4.so')[1].start py=0X2D107D0 setvalue(so+py,16,0)--防拉 so=gg.getRangesList('libUE4.so')[1].start py=0X2704F44 setvalue(so+py,16,-9999)--加速 0.05 so=gg.getRangesList('libUE4.so')[1].start py=0X2710C8C setvalue(so+py,16,0)---1.86389771e-20 gg.toast("飞速¹开") else local KKB=gg.getRangesList("libUE4.so:bss")[1].start local KKB=KKB+0x1EADC8 local KKB=MNB(KKB)+0x20 local KKB=MNB(KKB)+0x2CC local KKB=MNB(KKB)+0x310 local KKB=MNB(KKB)+0x180 MNBMVP(KKB+8,8192,16,true)--游速--8192改9999 MNBMVP(KKB+0x644,670,16,true)--体速670 MNBMVP(KKB+0x104,0.1,16,true)--另速 MNBMVP(KKB+0x108,8,4)--另控 XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x14F0},"修改","1",16,"人物速度翻倍") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x14F4},"修改","479.5",16,"开火动作") XIAOCHEN({'libUE4.so:bss','Cb'},{0x62EB8,0xA8,0x24C,0x24},"修改","10000",4,"ad开枪防拉") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x1558},"修改","88",16,"人物站浮") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x60},"修改","1",16,"自身速度速控") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x18,0x1C8,0x3C8},"修改","1",16,"自身全局速控") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x18,0x1C8,0x3D4},"修改","0.0005",16,"人物全局速控") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x310,0x138},"修改","35",16,"防拉增强") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x320,0x3D8},"修改","1",4,"人物踏空") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x310,0x1AC},"修改","0.0005",16,"天空速度增强") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x310,0x13C},"修改","443",16,"人物跳远变快") XIAOCHEN({'libUE4.so:bss','Cb'},{0x1EADC8,0x20,0x2CC,0x310,0x134},"修改","1",16,"跳跃增强") XIAOCHEN({'libUE4.so:bss','Cb'},{0x211600,0xA8,0x30},"修改","-980",16,"人物跳变快") so=gg.getRangesList('libUE4.so')[1].start py=0X2C3BA14 setvalue(so+py,16,10.90734863281) so=gg.getRangesList('libUE4.so')[1].start py=0X2710C8C setvalue(so+py,16,-1.86389771e-20) so=gg.getRangesList('libUE4.so')[1].start py=0X2704F44 setvalue(so+py,16,9.99999997e-7)--加速 gg.toast("飞速¹关") end end }, { Switch, layout_width = 'match_parent', text = '飞速²', onCheckedChange = function(CompoundButton, state) if state then local t = {"libUE4.so:bss", "Cb"} local tt = {0x62EB8,0xA8,0x24C,0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1000000}})--开枪防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x1558} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 75}})--浮 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x18,0x1C8,0x3C8} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.2}})--加速--射速 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x310,0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 60}})--35 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x310,0x1AC} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 99999}})--蛇皮跳跃 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x60} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.39}})--减速--空中关键速度 so=gg.getRangesList('libUE4.so')[1].start py=0XCBCB00 setvalue(so+py,16,-3.83692277e21)--突破 so=gg.getRangesList('libUE4.so')[1].start py=0X2D107D0 setvalue(so+py,16,0)--防拉 so=gg.getRangesList('libUE4.so')[1].start py=0X2684E28 setvalue(so+py,16,999)--慢动 so=gg.getRangesList('libUE4.so')[1].start py=0X2710C8C setvalue(so+py,16,0)---1.86389771e-20 so=gg.getRangesList('libUE4.so')[1].start py=0X26F9C00 setvalue(so+py,16,0)--定 so=gg.getRangesList('libUE4.so')[1].start py=0X2CB1EBC setvalue(so+py,16,0)--减速-5.5723836e27 so=gg.getRangesList('libUE4.so')[1].start py=0X2CB1EF4 setvalue(so+py,16,0)--增速-3.74440972e28 so=gg.getRangesList('libUE4.so')[1].start py=0X2C3B974 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X2C3B98C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X2704F44 setvalue(so+py,16,0.26)--加速--陆地关键速度 gg.toast("飞速²开") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x1558} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 88}})--浮 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x18,0x1C8,0x3C8} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}})--加速--射速 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x310,0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 35}})--35 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x310,0x1AC} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 8192}})--蛇皮跳跃 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x60} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}})--减速--空中关键速度 so=gg.getRangesList('libUE4.so')[1].start py=0XCBCB00 setvalue(so+py,16,-3.83692277e21)--突破 so=gg.getRangesList('libUE4.so')[1].start py=0X2D107D0 setvalue(so+py,16,-6.15262313e27)--防拉 so=gg.getRangesList('libUE4.so')[1].start py=0X2684E28 setvalue(so+py,16,0)--慢动 so=gg.getRangesList('libUE4.so')[1].start py=0X2710C8C setvalue(so+py,16,-1.86389771e-20)---1.86389771e-20 so=gg.getRangesList('libUE4.so')[1].start py=0X26F9C00 setvalue(so+py,16,-3.74440972e28)--定 so=gg.getRangesList('libUE4.so')[1].start py=0X2CB1EBC setvalue(so+py,16,-5.5723836e27)--减速-5.5723836e27 so=gg.getRangesList('libUE4.so')[1].start py=0X2CB1EF4 setvalue(so+py,16,-3.74440972e28)--增速-3.74440972e28 so=gg.getRangesList('libUE4.so')[1].start py=0X2C3B974 setvalue(so+py,16,6.16304121e-33) so=gg.getRangesList('libUE4.so')[1].start py=0X2C3B98C setvalue(so+py,16,2.64700415e-23) so=gg.getRangesList('libUE4.so')[1].start py=0X2704F44 setvalue(so+py,16,9.99999997e-7)--加速--陆地关键速度 local t = {"libUE4.so:bss", "Cb"} local tt = {0x211600, 0xA8, 0x30} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -980}})--980 gg.toast("飞速²关") end end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '轻量控制', textSize = '15sp', onClick = function() floatingWindowManager:start('轻量控制') end }, { Switch, layout_marginLeft = '0dp',--间距 text="探头路飞", textColor= "#ffffff",--文字颜色代码 gravity="center", layout_height="30dp",--长度 layout_width="110dp",--宽度 background= luajava.loadlayout { GradientDrawable, color = "#",--背景颜色代码 cornerRadius = 38--背景圆角 }, onCheckedChange = function(CompoundButton, state) local cacheName = '多线程5' if state then gg.alert('循环线程开启') local thread1 = luajava.startThread(T1) floatingWindow:setCache(cacheName, thread1) else gg.alert('循环线程关闭') local thread1 = floatingWindow:getCache(cacheName) interruptThread(thread1) end end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '轻量功能', textSize = '15sp', onClick = function() floatingWindowManager:start('轻量功能') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '轻量加速', textSize = '15sp', onClick = function() floatingWindowManager:start('轻量加速') end }, } }) end, onDestroy = function() end }) floatingWindowManager:newWindow('轻量控制', { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_width = '280dp', layout_height = '50dp', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = '280dp', layout_height = '0dp', layout_gravity="center"; orientation = 'horizontal', padding = '0dp', { Button, layout_width = '50dp', layout_margin = '0dp', text = '上¹', onClick = A1 -- 把函数名赋值给 onClick 即可 }, { Button, layout_width = '50dp', text = '定¹', onClick = A2 }, { Button, layout_width = '50dp', text = '下¹', onClick = A3 }, { Button, layout_width = '50dp', text = '救¹', onClick = A4 }, { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '5dp', newSwitchLayout("强定","关强定"), } } }) end }) function T1() ddsl = readPointer("libUE4.so:bss", { 2010568, 32, 800, 784, 332 }, 1) zbxsl = readPointer("libUE4.so:bss", { 2010568, 32, 716, 320, 336 }, 1) zbysl = readPointer("libUE4.so:bss", { 2010568, 32, 716, 320, 340 }, 1) zbzsl = readPointer("libUE4.so:bss", { 2010568, 32, 716, 320, 344 }, 1) ttlf = {} ttlf[1] = {} ttlf[1].address = readPointer("libUE4.so:bss", { 2010568, 32, 716, 780, 1620, 660, 1344, 2216, 56, 0 }, 1) ttlf[1].flags = 16 ttlf[2] = {} ttlf[2].address = readPointer("libUE4.so:bss", { 1992316, 32, 512 }, 1) ttlf[2].flags = 16 ttlf[3] = {} ttlf[3].address = readPointer("libUE4.so:bss", { 1992316, 32, 524 }, 1) ttlf[3].flags = 16 ttlf[4] = {} ttlf[4].address = readPointer("libUE4.so:bss", { 1992316, 32, 556 }, 1) ttlf[4].flags = 16 ttlf[5] = {} ttlf[5].address = zbxsl ttlf[5].flags = 16 ttlf[6] = {} ttlf[6].address = zbysl ttlf[6].flags = 16 ttlf[7] = {} ttlf[7].address = zbzsl ttlf[7].flags = 16 gg.addListItems(ttlf) jznb = gg.getValues(ttlf)[2].value jzdx = gg.getValues(ttlf)[3].value jzsx = gg.getValues(ttlf)[4].value zbx = gg.getValues(ttlf)[5].value zby = gg.getValues(ttlf)[6].value zbz = gg.getValues(ttlf)[7].value while true do tt = gg.getValues(ttlf)[1].value if tt == -1 then gg.edits(ddsl, { { 0, 4, 0, false } }) BaseAddressWrite({ so = "libUE4.so", { value = 0, offset = 40963140, type = 16 } }) if jzsx > -0.8 and jzsx < 0.3 then if jznb > -1.2 and jznb < -0.7 then gg.edits(zbxsl, { { zbx, 16, 0, true } }) gg.edits(zbysl, { { zby + 280, 16, 0, true } }) gg.edits(zbzsl, { { zbz + 10, 16, 0, true } }) elseif jznb > 0.7 and jznb < 1.2 then gg.edits(zbxsl, { { zbx, 16, 0, true } }) gg.edits(zbysl, { { zby - 280, 16, 0, true } }) gg.edits(zbzsl, { { zbz + 10, 16, 0, true } }) elseif jzdx > -1.2 and jzdx < -0.5 then gg.edits(zbxsl, { { zbx - 280, 16, 0, true } }) gg.edits(zbysl, { { zby, 16, 0, true } }) gg.edits(zbzsl, { { zbz + 10, 16, 0, true } }) elseif jzdx > 0.5 and jzdx < 1.2 then gg.edits(zbxsl, { { zbx + 280, 16, 0, true } }) gg.edits(zbysl, { { zby, 16, 0, true } }) gg.edits(zbzsl, { { zbz + 10, 16, 0, true } }) end end if jzsx > 0.5 then gg.edits(zbxsl, { { zbx, 16, 0, true } }) gg.edits(zbysl, { { zby, 16, 0, true } }) gg.edits(zbzsl, { { zbz + 300, 16, 0, true } }) end if jzsx < -0.8 then gg.edits(zbxsl, { { zbx, 16, 0, true } }) gg.edits(zbysl, { { zby, 16, 0, true } }) gg.edits(zbzsl, { { zbz - 300, 16, 0, true } }) end end if tt == 1 then gg.edits(ddsl, { { 0, 4, 0, false } }) BaseAddressWrite({ so = "libUE4.so", { value = 0, offset = 40963140, type = 16 } }) if jzsx > -0.8 and jzsx < 0.3 then if jznb > -1.2 and jznb < -0.7 then gg.edits(zbxsl, { { zbx, 16, 0, true } }) gg.edits(zbysl, { { zby + 280, 16, 0, true } }) gg.edits(zbzsl, { { zbz + 10, 16, 0, true } }) elseif jznb > 0.7 and jznb < 1.2 then gg.edits(zbxsl, { { zbx, 16, 0, true } }) gg.edits(zbysl, { { zby - 280, 16, 0, true } }) gg.edits(zbzsl, { { zbz + 10, 16, 0, true } }) elseif jzdx > -1.2 and jzdx < -0.5 then gg.edits(zbxsl, { { zbx - 280, 16, 0, true } }) gg.edits(zbysl, { { zby, 16, 0, true } }) gg.edits(zbzsl, { { zbz + 10, 16, 0, true } }) elseif jzdx > 0.5 and jzdx < 1.2 then gg.edits(zbxsl, { { zbx + 280, 16, 0, true } }) gg.edits(zbysl, { { zby, 16, 0, true } }) gg.edits(zbzsl, { { zbz + 10, 16, 0, true } }) end end if jzsx > 0.5 then gg.edits(zbxsl, { { zbx, 16, 0, true } }) gg.edits(zbysl, { { zby, 16, 0, true } }) gg.edits(zbzsl, { { zbz + 300, 16, 0, true } }) end if jzsx < -0.8 then gg.edits(zbxsl, { { zbx, 16, 0, true } }) gg.edits(zbysl, { { zby, 16, 0, true } }) gg.edits(zbzsl, { { zbz - 300, 16, 0, true } }) end end if tt == 0 then BaseAddressWrite({ so = "libUE4.so", { value = -5.14670063E27, offset = 40963140, type = 16 } }) gg.removeListItems(ttlf) jznb = gg.getValues(ttlf)[2].value jzdx = gg.getValues(ttlf)[3].value jzsx = gg.getValues(ttlf)[4].value zbx = gg.getValues(ttlf)[5].value zby = gg.getValues(ttlf)[6].value zbz = gg.getValues(ttlf)[7].value end end end _ENV['大厅一套'] = function() so=gg.getRangesList("libUE4.so")[1].start--so基址头 py=0xdb4c38 setvalue(so+py,4,0) py=0xdb51f8 setvalue(so+py,4,0) py=0x1949a58 setvalue(so+py,4,0) py=0x208c8d0 setvalue(so+py,4,0) py=0x2648b80 setvalue(so+py,4,0) py=0x26c4cac setvalue(so+py,4,0) py=0x26c7b90 setvalue(so+py,4,1130758144) py=0x2742334 setvalue(so+py,4,0) py=0x2742354 setvalue(so+py,4,0) so=gg.getRangesList('libUE4.so')[1].start py=0x11726B8 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x11726CC setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X2A954C4 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XDB51F8 setvalue(so+py,16,130)--据点 so=gg.getRangesList('libUE4.so')[1].start py=0x1269148 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x126914C setvalue(so+py,16,0)--小据点 so=gg.getRangesList('libUE4.so')[1].start py=0x2797dc8 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start setvalue(so + '0x21857b4', 16, 'h 00 00 00 00') so=gg.getRangesList('libUE4.so')[1].start setvalue(so + '0x2907bc0', 4, 'h B4 C6 27 B7') gg.toast("😈大厅😈") end _ENV['手臂路飞'] = function() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4138667321167981973", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.refineNumber("4138667321167981973", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.refineNumber("4138667321167981973", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll("4848124999984742400", gg.TYPE_QWORD) gg.clearResults() gg.toast("ʟᴏɴɢ ʜand ") end _ENV['快速落地'] = function() gg.clearResults() gg.setRanges(32) gg.searchNumber('1024', 16) resultCounts = gg.getResultsCount() results = gg.getResults(resultCounts) for _FORV_3_ = 1, resultCounts do values = {} values[1] = {} values[1].address = results[_FORV_3_].address - 4 values[1].flags = 16 values = gg.getValues(values) if values[1].value == 5000 then values = {} values[1] = {} values[1].address = results[_FORV_3_].address - 8 values[1].flags = 16 values = gg.getValues(values) if values[1].value == 3000 then values = {} values[1] = {} values[1].address = results[_FORV_3_].address - 12 values[1].flags = 16 values = gg.getValues(values) if values[1].value == 0.5 then setvalues = {} setvalues[1] = {} setvalues[1].address = results[_FORV_3_].address setvalues[1].flags = 16 setvalues[1].value = 200000 setvalues[2] = {} setvalues[2].address = results[_FORV_3_].address - 4 setvalues[2].flags = 16 setvalues[2].value = 200000 setvalues[3] = {} setvalues[3].address = results[_FORV_3_].address - 8 setvalues[3].flags = 16 setvalues[3].value = 200000 setvalues[4] = {} setvalues[4].address = results[_FORV_3_].address - 12 setvalues[4].flags = 16 setvalues[4].value = 200000 gg.setValues(setvalues) gg.toast('秒落地') end end end end end _ENV['爆头范围'] = function() local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x78, 0x68, 0x3CC} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -9999}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1E17CC, 0x87C, 0x18, 0x3D4} local ttt = S_Pointer(t, tt) Name = "" local Nc = 32 local Lx = 16 local Sz1 = {{10.0, 0},{46.0, 4}} local Sz2 = {{99999, 0}} HaoGe(Nc, Lx, Sz1, Sz2) gg.clearResults() Name = "" local Nc = 16384 local Lx = 16 local Sz1 = {{-1.42781105e28, 0}} local Sz2 = {{0, 0}} HaoGe(Nc, Lx, Sz1, Sz2) Name = "" local Nc = 32 local Lx = 16 local Sz1 = {{-100.91194152832, 0},{87.27782440186, -4},{88.50576019287, -8},{1.4012985e-45, 16}} local Sz2 = {{1.96875, -8},{1.96875, -4},{999999, 4},{2, 8}} HaoGe(Nc, Lx, Sz1, Sz2) Name = "" local Nc = 32 local Lx = 16 local Sz1 = {{18.38787841797, 0},{-0.53867292404, 4}} local Sz2 = {{140, 0}} HaoGe(Nc, Lx, Sz1, Sz2) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("25;30.5", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("999", gg.TYPE_FLOAT) gg.clearResults() gg.toast("😈RANGE😈") end _ENV['20延迟'] = function() so=gg.getRangesList('libUE4.so')[1].start py=0X2A954C4 setvalue(so+py,16,0) gg.toast("20ms") end _ENV['X特效'] = function() Name = "DEVIL ADITYA" local Nc = 32 local Lx = 16 local Sz1 = {{10.0, 0},{46.0, 4}} local Sz2 = {{99999, 0}} HaoGe(Nc, Lx, Sz1, Sz2) so=gg.getRangesList('libUE4.so')[1].start py=0x11726B8 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0x11726CC setvalue(so+py,16,0) gg.clearResults() gg.toast("XXX") end _ENV['全局离线'] = function() so=gg.getRangesList("libgcloud.so")[1].start--so基址头 py=0x30a770 setvalue(so+py,4,0) py=0x30a774 setvalue(so+py,4,0) py=0x30a778 setvalue(so+py,4,0) py=0x30a77c setvalue(so+py,4,0) py=0x30a780 setvalue(so+py,4,0) py=0x30a784 setvalue(so+py,4,0) py=0x30a788 setvalue(so+py,4,0) py=0x30a78c setvalue(so+py,4,0) py=0x30a790 setvalue(so+py,4,0) py=0x30a794 setvalue(so+py,4,0) py=0x30a798 setvalue(so+py,4,0) py=0x30a79c setvalue(so+py,4,0) py=0x30a7a0 setvalue(so+py,4,0) py=0x30a7a4 setvalue(so+py,4,0) py=0x30a7a8 setvalue(so+py,4,0) py=0x30a7ac setvalue(so+py,4,0) py=0x30a7b0 setvalue(so+py,4,0) py=0x30a7b4 setvalue(so+py,4,0) py=0x30a7b8 setvalue(so+py,4,0) py=0x30a7bc setvalue(so+py,4,0) py=0x30a7c0 setvalue(so+py,4,0) py=0x30a7c4 setvalue(so+py,4,0) py=0x30a7c8 setvalue(so+py,4,0) py=0x30a7cc setvalue(so+py,4,0) py=0x30a7d0 setvalue(so+py,4,0) py=0x30a7d4 setvalue(so+py,4,0) py=0x30a7d8 setvalue(so+py,4,0) py=0x30a7dc setvalue(so+py,4,0) py=0x30a7e0 setvalue(so+py,4,0) py=0x30a7e4 setvalue(so+py,4,0) py=0x30a7e8 setvalue(so+py,4,0) py=0x30a7ec setvalue(so+py,4,0) py=0x30a7f0 setvalue(so+py,4,0) py=0x30a7f4 setvalue(so+py,4,0) py=0x30a7f8 setvalue(so+py,4,0) py=0x30a7fc setvalue(so+py,4,0) py=0x30a800 setvalue(so+py,4,0) py=0x30a804 setvalue(so+py,4,0) py=0x30a808 setvalue(so+py,4,0) py=0x30a80c setvalue(so+py,4,0) gg.toast('全局离线开启成功') end _ENV['离线关'] = function() so=gg.getRangesList("libgcloud.so")[1].start--so基址头 py=0x30a770 setvalue(so+py,4,-2021158379) py=0x30a774 setvalue(so+py,4,-370597687) py=0x30a778 setvalue(so+py,4,-825341561) py=0x30a77c setvalue(so+py,4,1431699370) py=0x30a780 setvalue(so+py,4,673740880) py=0x30a784 setvalue(so+py,4,-539002203) py=0x30a788 setvalue(so+py,4,-1936945405) py=0x30a78c setvalue(so+py,4,-1583220647) py=0x30a790 setvalue(so+py,4,-1987477495) py=0x30a794 setvalue(so+py,4,218961690) py=0x30a798 setvalue(so+py,4,-1077945755) py=0x30a79c setvalue(so+py,4,-421121577) py=0x30a7a0 setvalue(so+py,4,1111672452) py=0x30a7a4 setvalue(so+py,4,1751693520) py=0x30a7a8 setvalue(so+py,4,1094828930) py=0x30a7ac setvalue(so+py,4,-1717981143) py=0x30a7b0 setvalue(so+py,4,757954394) py=0x30a7b4 setvalue(so+py,4,252645662) py=0x30a7b8 setvalue(so+py,4,-1330590853) py=0x30a7bc setvalue(so+py,4,1414855848) py=0x30a7c0 setvalue(so+py,4,-1145317779) py=0x30a7c4 setvalue(so+py,4,370555436) py=0x30a7c8 setvalue(so+py,4,-190361519) py=0x30a7cc setvalue(so+py,4,1097159550) py=0x30a7d0 setvalue(so+py,4,396673818) py=0x30a7d4 setvalue(so+py,4,660510266) py=0x30a7d8 setvalue(so+py,4,-1418998981) py=0x30a7dc setvalue(so+py,4,-1656360673) py=0x30a7e0 setvalue(so+py,4,-94852180) py=0x30a7e4 setvalue(so+py,4,-486304949) py=0x30a7e8 setvalue(so+py,4,821712160) py=0x30a7ec setvalue(so+py,4,1986918061) py=0x30a7f0 setvalue(so+py,4,-864644728) py=0x30a7f4 setvalue(so+py,4,38544885) py=0x30a7f8 setvalue(so+py,4,-438830001) py=0x30a7fc setvalue(so+py,4,718002117) py=0x30a800 setvalue(so+py,4,893681702) py=0x30a804 setvalue(so+py,4,1654886325) py=0x30a808 setvalue(so+py,4,-1319482914) py=0x30a80c setvalue(so+py,4,-1172609243) gg.toast('全局离线关闭成功') end _ENV['改帧'] = function() local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x310,0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 120}})--35 gg.toast("开启成功") end _ENV['锁帧'] = function() gg.setValues({ { address = S_Pointer({ "libUE4.so:bss", "Cb" }, {2096812, 32}), flags = 16, value = 200 } }) gg.setValues({ { address = S_Pointer({ "libUE4.so:bss", "Cb" }, {2096812, 36}), flags = 16, value = 200 } }) gg.toast("开启成功") end floatingWindowManager:newWindow('轻量功能', { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_width = 'match_parent', layout_height ='match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '10dp', newSwitchLayout("大厅一套"), newSwitchLayout("手臂路飞"), newSwitchLayout("快速落地"), newSwitchLayout("爆头范围"), newSwitchLayout("20延迟"), newSwitchLayout("X特效"), newSwitchLayout("全局离线","离线关"), newSwitchLayout("改帧"), newSwitchLayout("锁帧"), } }) end }) _ENV['蹲浮'] = function() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("1400;0.10000000149;1000;88;60;30", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("60", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-50", gg.TYPE_FLOAT) f10sj="-50" gg.toast("蹲浮") end _ENV['站浮'] = function() Name = "Master" local Nc = 32 local Lx = 16 local Sz1 = {{1400.0, 0},{88.0, 20},{60.0, 24},{50.0, 28},{2.0, 32}} local Sz2 = {{-48, 24}} MasterAhsanYT(Nc, Lx, Sz1, Sz2) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("4,787,326,405,013,667,840", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("4,787,326,405,011,308,544", gg.TYPE_QWORD) gg.toast("浮空开启成功") end _ENV['防坡'] = function() local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 75}}) gg.toast("防坡") end _ENV['慢动作'] = function() so=gg.getRangesList('libUE4.so')[1].start py=0X2684E28 setvalue(so+py,16,999)--慢动 gg.toast("慢动作") end _ENV['加速¹开'] = function() gg.clearResults() gg.setRanges(32) gg.setVisible(false) gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,414,147,695", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99999) gg.editAll("4,525,216,907,473,673,257", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1,328,550,408,728,725,571", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99999) gg.editAll("-1,328,550,408,576,460,390", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(99999) gg.editAll("-1296744149264269342", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1296744149883614555", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll("-18289292828288282888/280", gg.TYPE_QWORD) gg.clearResults() gg.setVisible(false) gg.searchNumber("-1505254313802431360", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll("-1505254313804899999", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-2188679037581846016", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResultsCount() gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1585267064848315881", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1585267068834414550", gg.TYPE_QWORD) gg.clearResults() gg.searchNumber("0.0001;0::16", 16,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber("0", 16,false,gg.SIGN_EQUAL,0, -1) gg.getResults(200) gg.editAll("5.6",16) gg.clearResults() gg.toast("FLASH ON") end _ENV['加速¹关'] = function() gg.clearResults() gg.setVisible(false) gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,473,673,257", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll("4,525,216,907,414,147,695", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1,328,550,408,576,460,390", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll("-1,328,550,408,728,725,571", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1296744149264269342", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll("-1296744149883614555", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-18289292828288282888/280", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll("-1296744149883614555", gg.TYPE_QWORD) gg.clearResults() gg.setVisible(false) gg.searchNumber("-1505254313804899999", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll("-1505254313802431360", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-2188679037581846016", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResultsCount() gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-1585267068834414550", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-1585267064848315881", gg.TYPE_QWORD) gg.clearResults() gg.searchNumber("0.0001;5.6::16", 16,false,gg.SIGN_EQUAL,0, -1) gg.searchNumber("5.6", 16,false,gg.SIGN_EQUAL,0, -1) gg.getResults(200) gg.editAll("0",16) gg.clearResults() gg.toast("Flash OFF") end _ENV['加速²开'] = function() local t = {"libUE4.so:bss", "Cb"} local tt = {0x1FFEAC, 0x20} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 9999}})--改帧率 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1FFEAC, 0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 9999}})--改帧率 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x1558} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 70}})--防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x62EB8,0xA8,0x24C,0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1000000}})--开枪防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x1558} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 75}})--防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x18,0x1C8,0x3C8} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.15}})--加速 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x18,0x1C8,0x3D4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.22}})--加速 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x310,0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 70}})--443 so=gg.getRangesList('libUE4.so')[1].start py=0XCBCB00 setvalue(so+py,16,-3.83692277e21)--突破 so=gg.getRangesList('libUE4.so')[1].start py=0X2D107D0 setvalue(so+py,16,0)--防拉 so=gg.getRangesList('libUE4.so')[1].start py=0X2684E28 setvalue(so+py,16,2)--慢动作 so=gg.getRangesList('libUE4.so')[1].start py=0X2704F44 setvalue(so+py,16,0.25)--加速 so=gg.getRangesList('libUE4.so')[1].start py=0X2710C8C setvalue(so+py,16,0)---1.86389771e-20 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8, 0x20, 0x2CC, 0x14F0} local ttt = S_Pointer(t, tt) gg.setValues({{address=ttt,flags=16,value=9999}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8, 0x20, 0x2CC, 0x14F4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 9999}})--开枪479.5 so=gg.getRangesList('libUE4.so')[1].start py=0XCB1E48 setvalue(so+py,16,-2.73959308e28)---2.73959284e28 gg.toast("加速²开") end _ENV['加速²关'] = function() so=gg.getRangesList('libUE4.so')[1].start py=0X2710C8C setvalue(so+py,16,-1.86389771e-20) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1FFEAC, 0x20} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 120}})--改帧率 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1FFEAC, 0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 120}})--改帧率 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x1558} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 88}})--防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x1558} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 75}})--浮 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x14F0} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}})--翻倍 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x2CC,0x14F4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 479.5}})--翻倍 local t = {"libUE4.so:bss", "Cb"} local tt = {0x62EB8,0xA8,0x24C,0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 10000}})--开枪防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x18,0x1C8,0x3C8} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}})--加速 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8,0x20,0x18,0x1C8,0x3D4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.00050000002}})--加速 so=gg.getRangesList('libUE4.so')[1].start py=0X2684E28 setvalue(so+py,16,0)--慢动作 so=gg.getRangesList('libUE4.so')[1].start py=0X2704F44 setvalue(so+py,16,9.99999997e-7)--加速 so=gg.getRangesList('libUE4.so')[1].start py=0X2C3BA14 setvalue(so+py,16,10.90734863281) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8, 0x20, 0x2CC, 0x14F0} local ttt = S_Pointer(t, tt) gg.setValues({{address=ttt,flags=16,value=1}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EADC8, 0x20, 0x2CC, 0x14F4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 479.5}})--开枪479.5 so=gg.getRangesList('libUE4.so')[1].start py=0XCB1E48 setvalue(so+py,16,-2.73959284e28)---2.73959284e28 gg.toast("加速²关") end _ENV['加速³开'] = function() setvalue(gg.getRangesList('libUE4.so')[1].start+0x2C3BA14,32,"h 61 D9 08 41 2D 43 1C EB") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2704F44,32,"h 9A 99 99 3E 71 0A 90 ED") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2D107D0,32,"h E2 7F 89 12 11 0A 01 EE") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2E8CED4,32,"h 00 00 B4 41 16 EF C3 3E") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2C3BA14,16,"h 61 D9 08 41") setvalue(gg.getRangesList('libUE4.so')[1].start+0xCBCB00,16,"h 00 00 50 E3") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2684E28,16,"h 00 00 20 40") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2704F44,16,"h 9A 99 99 3E") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2710C8C,16,"h 00 00 00 00") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2C3B974,16,"h 00 00 00 00") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2C3B98C,16,"h 00 00 00 00") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2C3BA18,16,"h 00 00 00 00") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2D107D0,16,"h 00 00 00 00") gg.toast("加速³开启") end _ENV['加速³关'] = function() setvalue(gg.getRangesList('libUE4.so')[1].start+0x2C3BA14,32,"h 80 84 2E 41 2D 43 1C EB") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2704F44,32,"h BD 37 86 35 71 0A 90 ED") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2D107D0,32,"h A5 0A 9F ED 10 0A 01 EE") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2E8CED4,16,"h 65 CD CD 41") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2C3BA14,16,"h 80 84 2E 41") setvalue(gg.getRangesList('libUE4.so')[1].start+0xCBCB00,16,"h 01 00 50 E3") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2684E28,16,"h 4B 4A EA A9") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2704F44,16,"h 5A B0 BB A4") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2710C8C,16,"h 48 0A B0 9E") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2C3B974,16,"h 59 00 00 0A") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2C3B98C,16,"h 53 00 00 1A") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2C3BA18,16,"h 2D 43 1C EB") setvalue(gg.getRangesList('libUE4.so')[1].start+0x2D107D0,16,"h A5 0A 9F ED") gg.toast("加速³关闭") end floatingWindowManager:newWindow('轻量加速', { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_width = 'match_parent', layout_height ='match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '10dp', { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '必看', textSize = '15sp', onClick = function() gg.alert("蹲浮全局不拉 加速 浮空一把一开 低端机爆速 ---TG@KING_KGA") end }, newSwitchLayout("蹲浮"), newSwitchLayout("站浮"), newSwitchLayout("防坡"), newSwitchLayout("慢动作"), newSwitchLayout("加速¹开","加速¹关"), newSwitchLayout("加速²开","加速²关"), newSwitchLayout("加速³开","加速³关"), } }) end }) floatingWindowManager:newWindow(('0.24轻体'):format(floatingWindowManager.version), { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_margin = '10dp', layout_width = 'match_parent', layout_height = 'match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '15dp', { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '进程', textSize = '15sp', onClick = function() gg.setProcessX() end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '轻体防闪', textSize = '15sp', onClick = function() so = gg.getRangesList("libanogs.so")[1].start setvalue(so + "0x30618", 32,"h 00 00 B0 E3 1E FF 2F E1") setvalue(so + "0x3061C", 32,"h 00 00 B0 E3 1E FF 2F E1") end }, { Switch, layout_width = 'match_parent', text = '龟速¹', onCheckedChange = function(CompoundButton, state) if state then so=gg.getRangesList('libUE4.so')[1].start py=0XCADDE8 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XCADDEC setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26FCA44 setvalue(so+py,16,0.20000000298) so=gg.getRangesList('libUE4.so')[1].start py=0X270878C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X2C33524 setvalue(so+py,16,9) local t = {"libUE4.so:bss", "Cb"} local tt = {0x2494A0, 0xB4, 0xD90, 0x19F4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.6}})--上下坡 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EFEEC, 0x82C, 0x6E0} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 120, freeze = true}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EFEEC, 0x82C, 0x6E4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 120, freeze = true}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8,0x20,0x2CC,0x60} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.10000000149}})--A减速 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2D8, 0x1558} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 70}})--浮空 local t = {"libUE4.so:bss", "Cb"} local tt = {0x62678,0xA8,0x2DC,0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 4, value = 1000000}})--去除开枪 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8,0x20,0x320,0x3D8} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.39989717e-42}})--踏空 gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4,525,216,907,414,147,695", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1401) gg.editAll("4,525,216,907,480,384,143", gg.TYPE_QWORD) gg.clearResults() local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x14F0} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 32}})--翻倍 gg.toast("飞空") else so=gg.getRangesList('libUE4.so')[1].start py=0X267C928 setvalue(so+py,16,0)--人物慢动作 local t = {"libUE4.so:bss", "Cb"} local tt = {0x2494A0, 0xB4, 0xD90, 0x19F4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 35}})--防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x14F0} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}})--翻倍 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8,0x20,0x2CC,0x60} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}})--A减速 local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x78, 0x68, 0x3C8} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}})--全局关键提速 local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x20, 0x1C8, 0x3CC} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.0001}})--小翻倍 local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x24, 0x6C, 0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.40129846e-41}})--开枪防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1E17CC, 0x87C, 0x18, 0x3D4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.00005}})--全局可以自改速度 so=gg.getRangesList('libUE4.so')[1].start py=0XCADA50 setvalue(so+py,16,-1.33640717e28) so=gg.getRangesList('libUE4.so')[1].start py=0XCADC2C setvalue(so+py,16,-2.13605127e28)-- so=gg.getRangesList('libUE4.so')[1].start py=0XCADE2C setvalue(so+py,16,-3.74440972e28)-- so=gg.getRangesList('libUE4.so')[1].start py=0XCADE80 setvalue(so+py,16,-3.74440972e28)-- so=gg.getRangesList('libUE4.so')[1].start py=0XCAE20C setvalue(so+py,16,-9.90656152e27)-- so=gg.getRangesList('libUE4.so')[1].start py=0XCAE2A4 setvalue(so+py,16,-9.00722502e15)-- so=gg.getRangesList('libUE4.so')[1].start py=0XCAFF20 setvalue(so+py,16,0)-- so=gg.getRangesList('libUE4.so')[1].start py=0XCB86D0 setvalue(so+py,16,-1.3697734e28)-- so=gg.getRangesList('libUE4.so')[1].start py=0XCB8AFC setvalue(so+py,16,-3.83692277e21)-- so=gg.getRangesList('libUE4.so')[1].start py=0XCB8B34 setvalue(so+py,16,-2.02910561e20)-- so=gg.getRangesList('libUE4.so')[1].start py=0X1250170 setvalue(so+py,16,1477779456)-- so=gg.getRangesList('libUE4.so')[1].start py=0X12501F8 setvalue(so+py,16,1477779456) so=gg.getRangesList('libUE4.so')[1].start py=0X267C928 setvalue(so+py,16,0)-- so=gg.getRangesList('libUE4.so')[1].start py=0X26E20D8 setvalue(so+py,16,-3.86856262e25)-- so=gg.getRangesList('libUE4.so')[1].start py=0X26E20DC setvalue(so+py,16,-2.8323923e28)-- so=gg.getRangesList('libUE4.so')[1].start py=0X26F1700 setvalue(so+py,16,-3.74440972e28)-- so=gg.getRangesList('libUE4.so')[1].start py=0X26FCA34 setvalue(so+py,16,-6.15494476e27) so=gg.getRangesList('libUE4.so')[1].start py=0X26FCA38 setvalue(so+py,16,-2.53646207e30) so=gg.getRangesList('libUE4.so')[1].start py=0X270FD5C setvalue(so+py,16,-5.84304308e27) so=gg.getRangesList('libUE4.so')[1].start py=0X2728CA0 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X2C33484 setvalue(so+py,16,6.16304121e-33) so=gg.getRangesList('libUE4.so')[1].start py=0X2C3349C setvalue(so+py,16,2.64700415e-23) so=gg.getRangesList('libUE4.so')[1].start py=0X2C33524 setvalue(so+py,16,10.90734863281) so=gg.getRangesList('libUE4.so')[1].start py=0X2C33528 setvalue(so+py,16,-1.88909657e26) so=gg.getRangesList('libUE4.so')[1].start py=0X2D082A0 setvalue(so+py,16,-6.15262313e27) so=gg.getRangesList('libUE4.so')[1].start py=0X2D082A4 setvalue(so+py,16,-9.98393277e27) so=gg.getRangesList('libUE4.so')[1].start py = 0X270878C setvalue(so + py, 16,-1.86389771e-20)--游泳 so=gg.getRangesList('libUE4.so')[1].start py=0X2705D24 setvalue(so+py,16,-2.78601489e28)--定点 so=gg.getRangesList('libUE4.so')[1].start py=0XCDF648 setvalue(so+py,16,-1.23824239e28)--定点不拉回 so=gg.getRangesList('libUE4.so')[1].start py=0XCB8A54 setvalue(so+py,16,-9.90656152e27) so=gg.getRangesList('libUE4.so')[1].start py=0X26FCA44 setvalue(so+py,16,9.99999997e-7) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8,0x20,0x2CC,0x60} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}})--A减速 qmnb = {{["memory"] = 32}, {["name"] = "Jump To Sky"}, {["value"] = 1138589696, ["type"] = 32}, {["lv"] = 4890205508990664704, ["offset"] = -4, ["type"] = 32}, {["lv"] = 4759178909462822912, ["offset"] = -8, ["type"] = 32}, }qmxg = {{["value"] = 1, ["offset"] = -8, ["type"] = 16},}xqmnb(qmnb) qmnb = {{["memory"] = 16384},{["name"] = ""},{["value"] = -1585267068834414592, ["type"] = 32},{["lv"] = -1245515772902506496, ["offset"] = 4, ["type"] = 32},{["lv"] = -2269812005025087472, ["offset"] = -132, ["type"] = 32},}qmxg = {{["value"] = -5.84305488e27, ["offset"] = 0, ["type"] = 16},}xqmnb(qmnb) qmnb = {{["memory"] = 16384},{["name"] = ""},{["value"] = -1328550408577131479, ["type"] = 32},{["lv"] = -1324311156955805071, ["offset"] = 4, ["type"] = 32},}qmxg = {{["value"] = 9.99999997e-7, ["offset"] = 0, ["type"] = 16},}xqmnb(qmnb) qmnb = {{["memory"] = 32},{["name"] = ""},{["value"] = 1144750080, ["type"] = 32},{["lv"] = 4728779609692288791, ["offset"] = 56, ["type"] = 32},{["lv"] = 1053609165, ["offset"] = 68, ["type"] = 32},}qmxg = {{["value"] = 0.0005, ["offset"] = 64, ["type"] = 16},}xqmnb(qmnb) qmnb = { {["memory"] = 8 | 16384}, {["name"] = "关闭"}, {["value"] = -289990141, ["type"] = 4}, {["lv"] = -301987312, ["offset"] = -4, ["type"] = 4}, {["lv"] = -309052878, ["offset"] = 4, ["type"] = 4}, {["lv"] = -293533184, ["offset"] = 8, ["type"] = 4}, } qmxg = { {["value"] = -1327371999739700736, ["offset"] = 0, ["type"] = 32}, } xqmnb(qmnb) gg.toast("关闭成功") end end }, { Switch, layout_width = 'match_parent', text = '龟速²', onCheckedChange = function(CompoundButton, state) if state then local t = {"libUE4.so:bss", "Cb"} local tt = {0x62678,0xA8,0x2DC,0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 4, value = 1000000}})--去除开枪 local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x20, 0x1C8, 0x3CC} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -9999}})--小翻倍 local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x24, 0x6C, 0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.40129846e-39}})--开枪防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1000}})--防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x14F0} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 999}})--翻倍 local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x24, 0x6C, 0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.40129846e-39}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8,0x20,0x2CC,0x60} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.24}})--A减速 local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x20, 0x1C8, 0x3CC} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -9999}})--小翻倍 local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x24, 0x6C, 0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.40129846e-39}})--开枪防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1E17CC, 0x87C, 0x18, 0x3D4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.07}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x13C} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -1000}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x210BE0, 0xA8, 0x30} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -1000}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 68}})--上坡防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2D8, 0x1558} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 70}})--悬浮 local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x78, 0x68, 0x3C8} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.24}}) so=gg.getRangesList('libUE4.so')[1].start py1=0X267C928 py2=0X270878C py3=0X2D082A0 py4=0XCB8B40 py5=0X2C33484 py6=0X2C3349C py7=0X2C33528 py8=0XCAFF20 py9=0X1250170 py10=0X26FCA44 py11=0XCCFAC0 py12=0XCB8A54 py13=0x2738EA4 setvalue(so+py1,16,9999) setvalue(so+py2,16,0) setvalue(so+py3,16,0) setvalue(so+py4,16,-3.83692277e21) setvalue(so+py5,16,0) setvalue(so+py6,16,0) setvalue(so+py7,16,0) setvalue(so+py8,16,2.5) setvalue(so+py9,16,0) setvalue(so+py10,16,0.28) setvalue(so+py11,16,70) setvalue(so+py12,16,-9.9065426e27) setvalue(so+py13,16,99999) so=gg.getRangesList('libUE4.so')[1].start py=0X26FCA34 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26E8408 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F15D8 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F15EC setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F1700 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F1720 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F1840 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F1858 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F1888 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F1898 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F18C0 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F19B8 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F19E0 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F1A10 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26F1B3C setvalue(so+py,16,0) Name='飞天移速' local tb1= { {2048.0,16,0}, {300.0,16,8}, {0.05000000074505806,16,16}, {2.0,16,20}, } local tb2= { {10086999999,16,16}, } SH(tb1,tb2,dataType) gg.setRanges(32) gg.toast("龟速²开") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2D8, 0x1558} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 88}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x2494A0, 0xB4, 0xD90, 0x19F4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 35}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x14F0} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}}) local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x20, 0x1C8, 0x3CC} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.0001}}) local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x24, 0x6C, 0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.40129846e-41}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1E17CC, 0x87C, 0x18, 0x3D4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.00005}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x13E438,0x15C8,0x3C8} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}})--去除速度 local t = {"libUE4.so:bss", "Cb"} local tt = {0x2494A0, 0xB4, 0xD90, 0x19F4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}}) local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x78, 0x68, 0x3C8} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x14F0} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}}) so=gg.getRangesList('libUE4.so')[1].start py=0X270878C setvalue(so+py,16,-1.86389771e-20) so=gg.getRangesList('libUE4.so')[1].start py=0X270FD5C setvalue(so+py,16,-5.84304308e27) so=gg.getRangesList('libUE4.so')[1].start py=0X2728CA0 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XCDF648 setvalue(so+py,16,-1.23824239e28) so=gg.getRangesList('libUE4.so')[1].start py=0X2C33484 setvalue(so+py,16,6.16304121e-33) so=gg.getRangesList('libUE4.so')[1].start py=0X2C3349C setvalue(so+py,16,2.64700415e-23) so=gg.getRangesList('libUE4.so')[1].start py=0X2C33524 setvalue(so+py,16,10.90734863281) so=gg.getRangesList('libUE4.so')[1].start py=0X2C33628 setvalue(so+py,16,-3.74440972e28) so=gg.getRangesList('libUE4.so')[1].start py=0X2D082A0 setvalue(so+py,16,-6.15262313e27) so=gg.getRangesList('libUE4.so')[1].start py=0X2D082A4 setvalue(so+py,16,-9.98393277e27) py=0XCB86D0 setvalue(so+py,16,-1.3697734e28) so=gg.getRangesList('libUE4.so')[1].start py=0XCB8A54 setvalue(so+py,16,-9.90656152e27) so=gg.getRangesList('libUE4.so')[1].start py=0XCB8AFC setvalue(so+py,16,-3.83692277e21) so=gg.getRangesList('libUE4.so')[1].start py=0XCB8B34 setvalue(so+py,16,-2.02910561e20) so=gg.getRangesList('libUE4.so')[1].start py=0X1250170 setvalue(so+py,16,1) so=gg.getRangesList('libUE4.so')[1].start py=0X12501F8 setvalue(so+py,16,1) so=gg.getRangesList('libUE4.so')[1].start py=0X26E20D8 setvalue(so+py,16,-3.86856262e25) so=gg.getRangesList('libUE4.so')[1].start py=0X26E20DC setvalue(so+py,16,-2.8323923e28) so=gg.getRangesList('libUE4.so')[1].start py=0X26F1700 setvalue(so+py,16,-3.74440972e28) so=gg.getRangesList('libUE4.so')[1].start py=0X26FCA34 setvalue(so+py,16,-6.15494476e27) so=gg.getRangesList('libUE4.so')[1].start py=0X26FCA38 setvalue(so+py,16,-2.53646207e30) so=gg.getRangesList('libUE4.so')[1].start py=0X26FCA44 setvalue(so+py,16,9.99999997e-7) so=gg.getRangesList('libUE4.so')[1].start py=0XCADA50 setvalue(so+py,16,-1.33640717e28) so=gg.getRangesList('libUE4.so')[1].start py=0XCADA60 setvalue(so+py,16,-3.74440972e28) so=gg.getRangesList('libUE4.so')[1].start py=0XCADC2C setvalue(so+py,16,-2.13605127e28) so=gg.getRangesList('libUE4.so')[1].start py=0XCADE2C setvalue(so+py,16,-3.74440972e28) so=gg.getRangesList('libUE4.so')[1].start py=0XCADE80 setvalue(so+py,16,-3.74440972e28) so=gg.getRangesList('libUE4.so')[1].start py=0XCAE20C setvalue(so+py,16,-9.90656152e27) so=gg.getRangesList('libUE4.so')[1].start py=0XCAE2A4 setvalue(so+py,16,-9.00722502e15) so=gg.getRangesList('libUE4.so')[1].start py=0XCAFF20 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X267C928 setvalue(so+py,16,0) gg.toast("龟速²关") end end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '轻体控制', textSize = '15sp', onClick = function() floatingWindowManager:start('轻体控制') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '轻体功能', textSize = '15sp', onClick = function() floatingWindowManager:start('轻体功能') end }, { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '轻体加速', textSize = '15sp', onClick = function() floatingWindowManager:start('轻体加速') end }, } }) end, onDestroy = function() end }) floatingWindowManager:newWindow('轻体控制', { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_width = '250dp', layout_height = '50dp', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = '250dp', layout_height = '0dp', layout_gravity="center"; orientation = 'horizontal', padding = '0dp', { Button, layout_width = '50dp', layout_margin = '0dp', text = '上', onClick = Z1 -- 把函数名赋值给 onClick 即可 }, { Button, layout_width = '50dp', text = '定', onClick = Z2 }, { Button, layout_width = '50dp', text = '下', onClick = Z3 }, { Button, layout_width = '50dp', text = '关', onClick = Z4 }, { Button, layout_width = '50dp', text = '救', onClick = Z5 }, } }) end }) _ENV['大厅一键'] = function() so=gg.getRangesList('libUE4.so')[1].start py=0XDB0AF8 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XDB10AC setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XDB10B8 setvalue(so+py,16,90) so=gg.getRangesList('libUE4.so')[1].start py=0X116E568 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X1264FA8 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X1264FAC setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X19457C8 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X20843D0 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X2640680 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26BC7AC setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26BF690 setvalue(so+py,16,230) so=gg.getRangesList('libUE4.so')[1].start py=0X2739E34 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X2739E68 setvalue(so+py,16,0) gg.toast("大厅一键开启成功") end _ENV['g3开镜'] = function() gg.clearResults() gg.setRanges(32) gg.searchNumber("10101000", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("10101000", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1000) gg.editAll("10100100", gg.TYPE_DWORD) end _ENV['秒落地'] = function() gg.clearResults() gg.setRanges(32) gg.searchNumber("1024",16) resultCounts=gg.getResultsCount() results=gg.getResults(resultCounts) for i=1,resultCounts do values={} values[1]={} values[1].address=results[i].address-4 values[1].flags=16 values=gg.getValues(values) if values[1].value==5000.0 then values={} values[1]={} values[1].address=results[i].address-8 values[1].flags=16 values=gg.getValues(values) if values[1].value==3000.0 then values={} values[1]={} values[1].address=results[i].address-12 values[1].flags=16 values=gg.getValues(values) if values[1].value==0.5 then setvalues={} setvalues[1]={} setvalues[1].address=results[i].address setvalues[1].flags=16 setvalues[1].value=-200000 setvalues[2]={} setvalues[2].address=results[i].address-4 setvalues[2].flags=16 setvalues[2].value=-200000 setvalues[3]={} setvalues[3].address=results[i].address-8 setvalues[3].flags=16 setvalues[3].value=-200000 setvalues[4]={} setvalues[4].address=results[i].address-12 setvalues[4].flags=16 setvalues[4].value=-200000 gg.setValues(setvalues) gg.toast("الهبوط السريع") end end end end end _ENV['范围'] = function() gg.clearResults() gg.toast("الأذى") gg.clearResults() gg.setRanges(gg.REGION_C_ALLOC) gg.searchNumber("135682;144387", gg.TYPE_DWORD) gg.refineNumber("135682", gg.TYPE_DWORD) gg.getResults(50000) gg.editAll("0", gg.TYPE_DWORD) gg.clearResults() gg.setRanges(gg.REGION_C_ALLOC) gg.searchNumber("134658;131586", gg.TYPE_DWORD) gg.refineNumber("134658", gg.TYPE_DWORD) gg.getResults(50000) gg.editAll("0", gg.TYPE_DWORD) gg.clearResults() gg.toast("الملك يؤذي👑") gg.getResults(20) gg.editAll("4746794010547806208", gg.TYPE_QWORD) gg.clearResults() gg.setRanges(gg.REGION_C_DATA | gg.REGION_CODE_APP) gg.searchNumber("-298284466;-1.304566e23F", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-298284466", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) gg.toast("الملك يؤذي👑") gg.searchNumber("25;30.5", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(10) gg.editAll("140;210", gg.TYPE_FLOAT) gg.clearResults() gg.setRanges(gg.REGION_C_DATA | gg.REGION_CODE_APP) gg.refineNumber("363 160 1.0", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.clearResults() gg.setRanges(gg.REGION_VIDEO or gg.REGION_BAD) gg.searchNumber("-88.66608428955;26:512", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("26", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(2) gg.editAll("-260", gg.TYPE_FLOAT) gg.clearResults() gg.searchNumber("-88.73961639404;28:512", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-9.2861054e22;-1.5474144e26::", 16, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-1.5474144e26", 16, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("0", 16) qmnb = { -----报错就删除 {["memory"] = 32}, {["name"] = "xʜɪᴛ"}, {["value"] = 4771563806291656704, ["type"] = 32}, {["lv"] = 1110966272, ["offset"] = 4, ["type"] = 32}, {["lv"] = 4692750811720056832, ["offset"] = -4, ["type"] = 32},} qmxg = { {["value"] = 3333, ["offset"] = 0, ["type"] = 16},} xqmnb(qmnb) so=gg.getRangesList('libUE4.so')[1].start---紫特效 py=0X116E570 setvalue(so+py,16,0) gg.toast("الملك.👑") end _ENV['降低延迟'] = function() gg.clearResults() gg.setRanges(gg.REGION_CODE_APP) gg.searchNumber("-3.8738163e21;-8.1893464e19;-7.5552396e19:25", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-8.1893464e19", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(1) gg.editAll("0", gg.TYPE_FLOAT) gg.clearResults() gg.toast("延迟降低") end _ENV['自改帧率'] = function() OP=gg.prompt({'推荐修改:144'},{[1]='144'},{[1]='number'}) if OP == nil or OP[1] == '' or OP[1] == '0' then gg.toast("取消") else local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EFEEC, 0x82C, 0x6E0} local ttt = S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 16, value = OP[1], freeze = true}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EFEEC, 0x82C, 0x6E4} local ttt = S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 16, value = OP[1], freeze = true}}) gg.toast("开启成功") end _ENV['路飞'] = function() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("-4,596,664,798,720,407,275;-9,212,254,259,951,697,919", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("-4,596,664,798,720,407,275", gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-4,596,664,798,678,810,624", gg.TYPE_QWORD) gg.toast("فتح بنجاح") gg.toast("يد طويلة") end end floatingWindowManager:newWindow('轻体功能', { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_width = 'match_parent', layout_height ='match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '10dp', newSwitchLayout("大厅一键"), newSwitchLayout("g3开镜"), newSwitchLayout("秒落地"), newSwitchLayout("范围"), newSwitchLayout("降低延迟"), newSwitchLayout("自改帧率"), newSwitchLayout("路飞"), } }) end }) floatingWindowManager:newWindow('轻体加速', { onCreate = function(floatingWindow) floatingWindow:addlayout({ ScrollView, layout_width = 'match_parent', layout_height ='match_parent', { LinearLayout, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_height = 'match_parent', orientation = 'vertical', padding = '10dp', { Button, background = floatingWindowManager:getStateListDrawable(), layout_width = 'match_parent', layout_margin = '10dp', text = '必看', textSize = '15sp', onClick = function() gg.alert("轻体加速。低端机加速,一把一开 ---TG@KING_KGA") end }, newSwitchLayout("下蹲浮空"), newSwitchLayout("站立浮空"), newSwitchLayout("防卡坡"), newSwitchLayout("动作减速"), newSwitchLayout("丝滑加速开","丝滑加速关"), newSwitchLayout("超快加速开","超快加速关"), } }) end }) _ENV['下蹲浮空'] = function() gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("1400;0.10000000149;1000;88;60;30", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.searchNumber("60", gg.TYPE_FLOAT, false, gg.SIGN_EQUAL, 0, -1) gg.getResults(100) gg.editAll("-50", gg.TYPE_FLOAT) f10sj="-50" gg.toast("蹲浮") end _ENV['站立浮空'] = function() local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2D8, 0x1558} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 70}}) YuQin({{2500000000.0,0,16},{88.0,28,16},{60.0,32,16},},{{70,28,16},},32,"站立浮空",true) gg.toast("战立浮空") end _ENV['防卡坡'] = function() local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 75}}) gg.toast("防坡") end _ENV['动作减速'] = function() so=gg.getRangesList('libUE4.so')[1].start py=0X267C928 setvalue(so+py,16,100) gg.toast("慢动作") end _ENV['丝滑加速开'] = function() local t = {"libUE4.so:bss", "Cb"} local tt = {0x2494A0, 0xB4, 0xD90, 0x19F4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.92}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 75}}) local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x78, 0x68, 0x3C8} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.9}}) local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x24, 0x6C, 0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 4, value = 1000000}})--开枪防拉 local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2D8, 0x1558} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 70}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EFEEC, 0x82C, 0x6E0} local ttt = S_Pointer(t, tt) gg.addListItems({{address = ttt, flags = 16, value = 500, freeze = true}}) local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x78, 0x68, 0x3CC} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -9999}}) so=gg.getRangesList('libUE4.so')[1].start py1=0X26FCA44 py2=0X270878C py4=0X2D082A0 py5=0XCB8B40 py7=0X2C33484 py8=0X2C3349C py9=0X2C33528 setvalue(so+py1,16,0.28) setvalue(so+py2,16,0) setvalue(so+py4,16,0) setvalue(so+py5,16,-3.83692277e21) setvalue(so+py7,16,0) setvalue(so+py8,16,0) setvalue(so+py9,16,0) local t = {"libUE4.so", "Cd"} local tt = {0x1EA3A8, 0x20, 0x320, 0x19F4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.13}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8, 0x20, 0x2CC, 0x310, 0x138} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 70}}) local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x24, 0x6C, 0x24} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1.40129846e-39}})--开枪防拉 so=gg.getRangesList('libUE4.so')[1].start py=0X267C928 setvalue(so+py,16,99) so=gg.getRangesList('libUE4.so')[1].start py=0X2C33528 setvalue(so+py,16,0)--全局 so=gg.getRangesList('libUE4.so')[1].start py=0X2C3349C setvalue(so+py,16,0)--全局 so=gg.getRangesList('libUE4.so')[1].start py=0X2C33484 setvalue(so+py,16,0)--全局 so=gg.getRangesList('libUE4.so')[1].start py=0X26F1700 setvalue(so+py,16,0) gg.toast("丝滑加速开") end _ENV['丝滑加速关'] = function() so=gg.getRangesList('libUE4.so')[1].start py=0X26F1700 setvalue(so+py,16,-3.74440972e28) so=gg.getRangesList('libUE4.so')[1].start py1=0X26FCA44 py2=0X270878C py3=0X2C33524 py4=0X2D082A0 py5=0XCB8B40 py7=0X2C33484 py8=0X2C3349C py9=0X2C33528 setvalue(so+py1,16,9.99999997e-7) setvalue(so+py2,16,-1.86389771e-20) setvalue(so+py3,16,10.90734863281) setvalue(so+py4,16,-6.15262313e27) setvalue(so+py5,16,-3.83692305e21) setvalue(so+py7,16,6.16304121e-33) setvalue(so+py8,16,2.64700415e-23) setvalue(so+py9,16,-1.88909657e26) so=gg.getRangesList('libUE4.so')[1].start py=0X267C928 setvalue(so+py,16,0) local t = {"libUE4.so:bss", "Cb"} local tt = {0x2493A0, 0xB4, 0xD90, 0x19F4} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}}) local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x78, 0x68, 0x3C8} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 1}}) local t = {"libUE4.so", "Cd"} local tt = {0x5C2A20, 0x20, 0x1C8, 0x3CC} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.0001}})--小翻倍 gg.toast("丝滑加速关") end _ENV['超快加速开'] = function() readWrite({{false,-2.1515281e28,0,16,nil,nil}, {-1.1144502e28,4,16}},{{-1.1221873e28,0,16,false}, {-1.1221873e28,4,16,false}},32,16384,"千克") readWrite({{false,268464131,0,4,nil,nil},{290914307,4,4}}, {{0,24,16,false}},4,16384,"千克速度") readWrite({{false,150994944,0,4,nil,nil}, {58,-4,4},{58,-8,4},{89,40,4},{1084227584,68,4}}, {{90.0,16,16,false},{90.0,20,16,false}},4,32,"千克") readWrite({{false,-1901117039636905984,0,32,nil,nil}}, {{-1901117038551420109,0,32,false}},32,16384,"千克") readWrite({{false,-309327247,0,4,nil,nil},{-308340220,4,4}}, {{0.285,-4,16,false}},4,16384,"千克人物速度") readWrite({{false,1198153728,0,4,nil,nil}, {1,20,4},{1,24,4}},{{1.01,100,16,false}},4,32,"千克全局速度") readWrite({{false,-1088801054,0,4,nil,nil}}, {{9,-8,16,false}},4,16384,"千克全局") readWrite({{false,4525216907414147695,0,32,nil,nil}}, {{4525216907473673257,0,32,false}},32,32,"加速") readWrite({{false,-1328550408728725571,0,32,nil,nil}}, {{-1328550408576460390,0,32,false}},32,16384,"千克优化") gg.toast("超快加速开") end _ENV['超快加速关'] = function() readWrite({{false,268464131,0,4,nil,nil},{290914307,4,4}}, {{-6.15262313e27,24,16,false}},4,16384,"关闭") readWrite({{false,-998965248,0,4,nil,nil},{1101004800,232,4}}, {{0.0005,236,16,false}},4,32,"关闭") readWrite({{false,-309327247,0,4,nil,nil},{-308340220,4,4}}, {{9.99999997e-7,-4,16,false}},4,16384,"关闭") readWrite({{false,1198153728,0,4,nil,nil},{1,20,4},{1,24,4}}, {{1.0,100,16,false}},4,32,"关闭") readWrite({{false,-1088801054,0,4,nil,nil}}, {{10.90734863281,-8,16,false}},4,16384,"关闭") readWrite({{false,-1359975840,0,4,nil,nil}}, {{-1228926276669014016,-12,32,false}},4,16384,"关闭") readWrite({{false,1139785728,0,4,nil,nil},{1065353216,-12,4}, {1065353216,-8,4},{1065353216,-4,4}},{{1.0,-12,16,false}, {1.0,-8,16,false},{1.0,-4,16,false}},4,32,"关闭") readWrite({{false,4525216907473673257,0,32,nil,nil}}, {{4525216907414147695,0,32,false}},32,32,"关闭") readWrite({{false,-1328550408576460390,0,32,nil,nil}}, {{-1328550408728725571,0,32,false}},32,16384,"关闭") readWrite({{false,-1901117038551420109,0,32,nil,nil}}, {{-1901117039636905984,0,32,false}},32,16384,"关闭") gg.toast("超快加速关") end -- 运行悬浮窗 floatingWindowManager:run()