do if type(getrlyunyz) ~= 'function' then gg.alert('请使用RLGG执行') os.exit() return end local info = { example_version = '1.0.3', name = '玲珑项目', appid = '95710', appkey = 'WWlDFmWHmuhuww8f', rc4key = 'uqz5h6052UTO26Ho', version = '1.0', mi_type = '3' } local rlyunyz = getrlyunyz(info) local ret = rlyunyz.start() if not ret or not isTable(ret) or ret.sign ~= '6af492bd7cb6c5b8776a4ec1598e78e5' then os.exit() return end end ---C10 Echo UI模块 by长安 ---自带音量隐藏、摇一摇隐藏、Echo音乐系统 ---🛒卡:https://wle.toaw.cn//liebiao/F2A983322F057324 ---↑↑↑⭐️把你的UI模块卡密填在上面这个引号里 ---解绑网址:http://111.173.118.158:804/unbind.php ---或在UI工具箱首页解绑 ---❗️请执行UI工具箱在首页查看使用教程 ---👇这里可以改初始大小 UI宽度='300dp' --初始宽度 竖屏建议300dp 横屏建议400dp UI高度='500dp' --初始高度 竖屏建议500dp 横屏建议300dp 悬浮窗宽度="40dp" 悬浮窗高度="40dp" 项目名字='玲珑项目' ---前置代码不要动 loadYunLua('httpByQn0RTmbpsGdcPcXyFHiZ+j9yFx3DxxScvAF7365IpTfJLgFcN4Pn8VMus73gs8PM18XMTsy67BZQw4Yu/nwBqd7IqW4mFwB+LgZc231DRrMCS5ZcAV75KHsTZqWAaT+MpsJdI1WfSOyGA3RWRFjtVdH1/3VMX7qwFk1iE4oUPZm8Ruq6psVfYC0wsJq5MDA3aUB3zQqUI3Gs31h4Qp18/pACRPkhdvcSTa+fw9/AclVWpdATeRvZq/CTUCWj/aLgeFj0RulwaOKV6V22GFKKA') local version = luajava.bindClass("android.os.Build$VERSION").RELEASE local function isSuAvailable() local process = luajava.bindClass("java.lang.Runtime").getRuntime():exec("which su") local reader = luajava.bindClass("java.io.BufferedReader")(luajava.bindClass("java.io.InputStreamReader")(process:getInputStream())) local line = reader:readLine() if line and line:find("su") then return true end return false end if isSuAvailable() then hj="ROOT" else hj="框架" end local function isSuAvailable() local process = luajava.bindClass("java.lang.Runtime").getRuntime():exec("which su") local reader = luajava.bindClass("java.io.BufferedReader")(luajava.bindClass("java.io.InputStreamReader")(process:getInputStream())) local line = reader:readLine() if line and line:find("su") then return true end return false end if isSuAvailable() then hj="ROOT" else hj="框架" end function SO_PT(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[2]==nil then gg.alert("开启失败\n━━━━━━━━━━━━━━━\n错误原因:未找到相关内存\n解决方法:请重新选择游戏进程\n━━━━━━━━━━━━━━━") else gg.setValues({{address=SOMOD[2].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[2].start+FUNCTIONADD+4,flags=TYPE,value="~A8 RET"}}) end end function OP_jizhigongjiu(SONC,NCFW,PYL,TYPE,VALUE,NAME,DJ) local Somod=gg.getRangesList(SONC)[1] if Somod==nil then gg.alert(NAME..'开启失败\n━━━━━━━━━━━━━━━\n错误原因:未找到相关内存\n解决方法:请重新选择游戏进程\n━━━━━━━━━━━━━━━') else 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 time=os.clock() local DZT = S_Pointer({SONC, NCFW},{0x0}) local PY_offsets = PYL local prompt_displayed = false -- 控制提示信息显示的标志变量 for _,MR in pairs(PY_offsets) do gg.addListItems({{address = DZT+MR, flags = TYPE, value = VALUE, freeze = DJ}}) end -- 循环两次但只提示一次的逻辑 local loop_count = 0 repeat loop_count = loop_count + 1 -- 这里可以放置你想要循环执行的代码 -- 例如,可以是修改内存值、读取数据等操作 until loop_count >= 5 -- 只在循环结束后显示一次提示 if not prompt_displayed then local time_str = string.sub(tostring(os.clock() - time), 1, 5) gg.toast(NAME..'️开启成功\n当前进程名称:'..gg.getTargetInfo().label..'\n当前进程包名:'..gg.getTargetPackage()..'\n总共耗时:'..time_str..'秒') prompt_displayed = true -- 更新标志变量,确保提示只显示一次 end end end function SOGSPY_ST(HDZ,DYZ) if HDZ >= DYZ then py=string.format("0x%X",HDZ-DYZ) return tostring(string.format("-0x%X",py)) else py=string.format("0x%X",DYZ-HDZ) return tostring(string.format("0x%X",py)) end 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 SOGSPY_ST(HDZ,DYZ) if HDZ >= DYZ then py=string.format("0x%X",HDZ-DYZ) return tostring(string.format("-0x%X",py)) else py=string.format("0x%X",DYZ-HDZ) return tostring(string.format("0x%X",py)) 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, name) local Table1 = {{}, {}} for k, v in ipairs(Table) do local value = {address = addr + v[3], value = v[1], flags = v[2], freeze = v[4]} if v[4] then Table1[2][#Table1[2] + 1] = value else Table1[1][#Table1[1] + 1] = value end end gg.addListItems(Table1[2]) gg.setValues(Table1[1]) gg.toast((name or "") .. "开启成功, 共修改" .. #Table .. "个值") end So_32 = function ( Ad , Value , IF ) if gg.getRangesList ( 'libil2cpp.so' ) [ 1 ] == nil then gg.alert("请重新选择进程") else gg.clearResults ( ) local Ret = "~A8 RET" local So = gg.getRangesList ( 'libil2cpp.so' ) for key , value in pairs ( So ) do if value.state ~= "Xa" then return else local Soad = value.start local Add = Soad + Ad gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.processResume ( ) if IF == true then gg.setValues ( { { address = Add + 4 , flags = 4 , value = Ret } } ) gg.processResume ( ) elseif IF == nil then gg.processPause ( ) gg.setValues ( { { address = Add + 4 , flags = 4 , value =Ret } } ) gg.processResume ( ) elseif IF == false then break end end end end end function readValue(address, flags) return gg.getValues({{address = address, flags = flags}})[1]["value"]end ms = { } function setvalue ( add , value , falgs , dj ) local WY = { } WY [ 1 ] = { } WY [ 1 ].address = add WY [ 1 ].value = value WY [ 1 ].flags = falgs if dj == true then WY [ 1 ].freeze = true gg.addListItems ( WY ) else gg.setValues ( WY ) end end function ms.ss ( num , ty , nc ) local GGNUMBER_1 = num local GGNUMBER_2 = ty local GGNUMBER_3 = false local GGNUMBER_4 = gg.SIGN_EQUAL local GGNUMBER_5 = 0x3000000000 local GGNUMBER_6 = 0xFFFFFFFFFF local GGNUMBER_7 = 0 gg.clearResults ( ) gg.setRanges ( nc ) gg.searchNumber ( GGNUMBER_1 , GGNUMBER_2 , GGNUMBER_3 , GGNUMBER_4 , GGNUMBER_5 , GGNUMBER_6 , GGNUMBER_7 ) Result = gg.getResults ( gg.getResultCount ( ) ) end function ms.py ( num , py , ty ) if ( Result and # Result ~= 0 ) then t = { } for i , v in ipairs ( Result ) do t [ i ] = { } t [ i ].address = v.address + py t [ i ].flags = ty end t = gg.getValues ( t ) for i , v in ipairs ( t ) do if v.value ~= num then Result [ i ] = nil end end local MS = { } for i , v in pairs ( Result ) do MS [ # MS + 1 ] = v end Result = MS end end function ms.bc ( ) data = { } if Result == nil or # Result == 0 then gg.alert ( "开启失败" ) else for i , v in pairs ( Result ) do data [ # data + 1 ] = v.address end end Result = nil end function ms.edit ( nn , off , ty , dj ) if ( Result ) then ms.bc ( ) end if # data > 0 then for i , v in ipairs ( data ) do setvalue ( v + off , nn , ty , dj or false ) end gg.toast ( Name.."成功" ) end end Sy_x32 = function ( Address , Value ) local Somod = gg.getRangesList ( 'il2cpp.so' ) [ 2 ] if Somod == nil then gg.alert ( '请重新选择地铁跑酷进程' ) else local So = Somod.start local Add = So + Address gg.processPause ( ) gg.setValues ( { { address = Add , flags = 4 , value = Value } } ) gg.setValues ( { { address = Add + 4 , flags = 4 , value = "~A BX LR" } } ) gg.processResume ( ) 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 GetIdentifier() return string.lower(string.sha1(string.UID()))..math.random(0,9) end function GetChecksum(str) return string.lower(string.sha1('wvtijkcqp4shb2al4n5i7r4385rkxhymwhduvnemzepdvrt'..str..'lvmowioin8mnvo32lowoclcowoidhgwladiovgnbvueiwac')) end local starts = 1 local log = '' local vars = {} function SO_FLPTXG(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[2]==nil then gg.alert("开启失败\n━━━━━━━━━━━━━━━\n错误原因:未找到相关内存\n解决方法:请重新选择游戏进程\n━━━━━━━━━━━━━━━") else local SOMOD1=gg.getRangesList("libil2cpp.so")[2].start gg.setValues({{address=SOMOD1+FUNCTIONADD,flags=TYPE,value='~A8 MOV W0, #'..VALUE}}) gg.setValues({{address=SOMOD1+FUNCTIONADD+4,flags=TYPE,value="0000271Er"}}) gg.setValues({{address=SOMOD1+FUNCTIONADD+8,flags=TYPE,value="00D8215Er"}}) gg.setValues({{address=SOMOD1+FUNCTIONADD+12,flags=TYPE,value="0000261Er"}}) gg.setValues({{address=SOMOD1+FUNCTIONADD+16,flags=TYPE,value="~A8 RET"}}) 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 else -- addr[1].value = addr[1].value & 0xFFFFFFFFFF end addr = addr[1].value + offset[i] end return addr end end function gg.edits(addr, Table, name) if not addr then gg.toast('修改失败, 可能是模块不存在') return end local Table1 = { {}, {} } for k, v in ipairs(Table) do local value = { address = addr + v[3], value = v[1], flags = v[2], freeze = v[4] } if v[4] then Table1[2][#Table1[2] + 1] = value else Table1[1][#Table1[1] + 1] = value end end gg.addListItems(Table1[2]) gg.setValues(Table1[1]) gg.toast((name or "") .. "开启成功, 共修改" .. #Table .. "个值") end function search(ss,lx,nc,dz1,dz2) gg.setVisible(false) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,536870912,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("未搜索到结果") end else gg.toast("无搜索值类型") end else gg.toast("无需搜索值") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function editData(qmnb,qmxg)gg.setVisible(false)gg.clearResults()qmnbv=qmnb[3]["value"]or qmnb[3][1]qmnbt=qmnb[3]["type"]or qmnb[3][2]qmnbn=qmnb[2]["name"]or qmnb[2][1]gg.setRanges(qmnb[1]["memory"]or qmnb[1][1])gg.searchNumber(qmnbv,qmnbt)gg.refineNumber(qmnbv,qmnbt)sz=gg.getResultCount()if sz==0 then gg.toast(qmnbn.."开启失败")else sl=gg.getResults(999999)for i=1,sz do pdsz=true for v=4,#qmnb do if pdsz==true then pysz={{}}pysz[1].address=sl[i].address+(qmnb[v]["offset"]or qmnb[v][2])pysz[1].flags=qmnb[v]["type"]or qmnb[v][3]szpy=gg.getValues(pysz)tzszpd=tostring(qmnb[v]["lv"]or qmnb[v][1]):gsub(",","")pyszpd=tostring(szpy[1].value):gsub(",","")if tzszpd==pyszpd then pdjg=true pdsz=true else pdjg=false pdsz=false end end end if pdjg==true then szpy=sl[i].address for x=1,#qmxg do xgsz=qmxg[x]["value"]or qmxg[x][1]xgpy=szpy+(qmxg[x]["offset"]or qmxg[x][2])xglx=qmxg[x]["type"]or qmxg[x][3]xgdj=qmxg[x]["freeze"]or qmxg[x][4]xg={{address=xgpy,flags=xglx,value=xgsz}}if xgdj==true then xg[1].freeze=xgdj gg.addListItems(xg)else gg.setValues(xg)end end xgjg=true end end if xgjg==true then gg.toast(qmnbn.."开启成功")else gg.toast(qmnbn.."开启失败")end end end function xqmnb(qmnb) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) if gg.searchNumber(qmnb[3]["value"],qmnb[3]["type"],false,gg.SIGN_EQUAL,0,-1)~=true then gg.searchAddress(qmnb[3]["value"],-1,qmnb[3]["type"]) end if gg.getResultCount()==0 then gg.toast(qmnb[2]["name"].."开启失败")return end szxx=gg.getResults(gg.getResultCount()) szpd={} a=0 for i=4,#qmnb do for s=1,#szxx do if szpd[s]~="false" then if gg.getValues({{address=szxx[s].address+qmnb[i]["offset"],flags=qmnb[i]["type"]}})[1].value+0~=qmnb[i]["lv"]then szpd[s]="false" a=a+1 end end end end if a==#szxx then gg.toast(qmnb[2]["name"].."开启失败")return end b=0 t={} for x=1,#qmxg do if qmxg[x]["freeze"]==true then a=1 end for i=1,#szxx do if szpd[i]==nil then b=b+1 table.insert(t,{address=szxx[i].address+qmxg[x]["offset"],flags=qmxg[x]["type"],freeze=qmxg[x]["freeze"],value=qmxg[x]["value"]}) end end end gg.setValues(t) gg.addListItems(t) gg.clearResults() if a~=1 then gg.clearList()else a=nil end gg.toast(qmnb[2]["name"].."开启成功,共修改了"..b.."条数据") end qmnb = function(daarr) local array = {} for i = 1, #daarr["搜索数组"] do local data = {["lv"] =daarr["搜索数组"][i][1], ["offset"] = daarr["搜索数组"][i][2], ["type"] = daarr["搜索类型"]} table.insert(array, i, data) end local isok, data = app.memorysearch(daarr["搜索内存"], array) if isok then for i = 1, #data do for x = 1, #daarr["修改数组"] do app.memorywrite(data[i] + daarr["修改数组"][x][2], daarr["搜索类型"], daarr["修改数组"][x][1]) end end gg.toast(daarr["功能名称"] .. "共修改" .. #data * #daarr["修改数组"] .. "条数据") else gg.toast(daarr["功能名称"] .. "开启失败") end end function xg1(value,lx,py,dj) if sj~=nil and #sj>0 then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx if value == nil then value = readValue(z[i].address, lx) end z[i].value= value z[i].freeze = dj and true or false end if dj == true or dj == false then gg.addListItems(z) else gg.setValues(z) end gg.toast('') else gg.toast('') end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast('') else gg.toast('') end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast('') end end Qr_UIP2FazG='Main' gg.clearResults() sj={} xgz={} function search(ss,lx,nc,dz1,dz2) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,gg.SIGN_EQUAL,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("未搜索到结果") end else gg.toast("无搜索值类型") end else gg.toast("无需搜索值") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast("无数据") end end function BaAdd(add) if gg.getTargetInfo().x64==true then t=gg.getValues({[1]={address=add,flags=32}}) return t[1].value else t=gg.getValues({[1]={address=add,flags=4}}) return t[1].value&0xFFFFFFFF end end function set(dz,xg,lx,dj) if dj=="true" then gg.addListItems({{address=dz,flags=lx,value=xg,freeze=true}}) else gg.setValues({{address=dz,flags=lx,value=xg}}) end gg.toast("已修改完成~") end DWORD=gg.TYPE_DWORD DOUBLE=gg.TYPE_DOUBLE FLOAT=gg.TYPE_FLOAT WORD=gg.TYPE_WORD BYTE=gg.TYPE_BYTE XOR=gg.TYPE_XOR QWORD=gg.TYPE_QWORD D=gg.TYPE_DWORD E=gg.TYPE_DOUBLE F=gg.TYPE_FLOAT W=gg.TYPE_WORD B=gg.TYPE_BYTE X=gg.TYPE_XOR Q=gg.TYPE_QWORD -------------不懂勿动------------ ------------道具赛配置--------------- function SearchWrite(Search, Write, Type, Name) local time=os.clock() 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 gg.toast("搜索到"..#data.."条数据") 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) local time=string.sub(os.clock()-time,0,5) gg.toast("开启成功 已修改:"..#t.."条数据 本次启动耗时:"..time.."秒") gg.addListItems(t) else gg.toast("开启失败未搜索到任何数据", false) return false end else gg.toast("开启失败未搜索到任何数据") return false end end function Fs3Fs4(Fs1, Fs2, Fs3, Fs4, Fs5) gg.clearResults() gg.setRanges(Fs2) gg.setVisible(false) gg.searchNumber(Fs3[1][1], Fs3[1][3]) local count = gg.getResultCount() local result = gg.getResults(count) gg.clearResults() local data = {} local base = Fs3[1][2] if (count > 0) then for i, v in ipairs(result) do v.isUseful = true end for k=2, #Fs3 do local tmp = {} local offset = Fs3[k][2] - base local num = Fs3[k][1] for i, v in ipairs(result) do tmp[#tmp+1] = {} tmp[#tmp].address = v.address + offset tmp[#tmp].flags = Fs3[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(Fs1..'\n搜索到{'..#data..'}条数据') local t = {} local base = Fs3[1][2] if Fs5 == '' and Fs5 > 0 and Fs5 < #data then Fs5 = Fs5 else Fs5 = #data end for i=1, Fs5 do for k, w in ipairs(Fs4) 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 local item = {} item[#item+1] = t[#t] item[#item].freeze = true gg.addListItems(item) end end end gg.setValues(t) gg.toast(Fs1..'️\n已修改{'..#t..'}条数据') else gg.toast(Fs1..'\n数据搜索失败', false) return false end else gg.toast(Fs1..'\n数据修改失败', false) return false end end function search(ss,lx,nc,dz1,dz2) if ss~=nil then if lx~=nil then if nc==nil then nc=32 end gg.setRanges(nc) if dz1==nil then dz1="-1" end if dz2==nil then dz1="0" end gg.searchNumber(ss,lx,false,536870912,dz1,dz2) sl=gg.getResultCount() if sl~=0 then sj=gg.getResults(sl) gg.toast("搜索到 "..sl.." 个结果") gg.clearResults() else gg.toast("未搜索到结果") end else gg.toast("无搜索值类型") end else gg.toast("无需搜索值") end end function py1(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value==value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function py2(value,lx,py) if #sj~=nil then z1={} z2={} for i=1,#sj do z1[i]={} z1[i].address=sj[i].address+py z1[i].flags=lx end z1=gg.getValues(z1) for i=1,#sj do if z1[i].value~=value then z2[#z2+1]={} z2[#z2]=sj[i] end end sj=z2 z1={} z2={} gg.toast("共偏移 "..#sj.." 个数据") else gg.toast("没有搜索数据") end end function xg1(value,lx,py,dj) if #sj~=nil then z={} for i=1,#sj do z[i]={} z[i].address=sj[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function xg2(bz,value,lx,py,dj) if #bz~=nil then z={} for i=1,#bz do z[i]={} z[i].address=bz[i].address+py z[i].flags=lx z[i].value=value if dj==true then z[i].freeze=true end end if dj==true then gg.addListItems(z) else gg.clearList() gg.setValues(z) end gg.toast("共修改 "..#z.." 个数据") else gg.toast("没有搜索数据") end end function bc(bz) if sj~=nil then _ENV[bz]=sj else gg.toast("无数据") end end function BaAdd(add) t=gg.getValues({[1]={address=add,flags=4}}) return t[1].value&0xFFFFFFFF end function set(dz,xg,lx,dj) if dj=="true" then gg.addListItems({{address=dz,flags=lx,value=xg,freeze=true}}) else gg.setValues({{address=dz,flags=lx,value=xg}}) end gg.toast("已修改完成~") 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 "\n已修改"..tg_.."条数据" or "" th=(th_) and "\n已获取"..th_.."条数据" or "" gg.setValues(t) t_=gg.getValues(t_) gg.loadResults(t_) gg.alert("\n"..Name.."搜索成功!\n偏移到"..#data.."条数据"..tg..th) tg_,th_=nil,nil else gg.alert("\n"..Name.."开启失败",false) return false end else gg.alert(Name.."开启失败") return false end end ----以上为指针搜索模块 function TYPY_ST(HDZ,DYZ) if HDZ >= DYZ then py=string.format("0x%X",HDZ-DYZ) return tostring(string.format("-0x%X",py)) else py=string.format("0x%X",DYZ-HDZ) return tostring(string.format("0x%X",py)) end 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 TYPY_ST(HDZ,DYZ) if HDZ >= DYZ then py=string.format("0x%X",HDZ-DYZ) return tostring(string.format("-0x%X",py)) else py=string.format("0x%X",DYZ-HDZ) return tostring(string.format("0x%X",py)) end end function SO_Deposit(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[2]==nil then gg.alert("开启失败\n━━━━━━━━━━━━━━━\n错误原因:未找到相关内存\n解决方法:请重新选择游戏进程\n━━━━━━━━━━━━━━━") else gg.setValues({{address=SOMOD[2].start+FUNCTIONADD,flags=4,value='~A8 LDR X0, [PC,#0x8]'}}) gg.setValues({{address=SOMOD[2].start+FUNCTIONADD+4,flags=4,value='~A8 RET'}}) gg.setValues({{address=SOMOD[2].start+FUNCTIONADD+8,flags=TYPE,value=VALUE}}) end end ---SO模块.可修改 function SO_ST(FUNCTIONADD,VALUE,JZXB) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[2]==nil then gg.alert("开启失败\n━━━━━━━━━━━━━━━\n错误原因:未找到相关内存\n解决方法:请重新选择游戏进程\n━━━━━━━━━━━━━━━") else gg.setValues({{address=SOMOD[2].start+FUNCTIONADD,flags=4,value=VALUE}}) gg.setValues({{address=SOMOD[2].start+FUNCTIONADD+4,flags=4,value=JZXB}}) end end function AntiGrabbingBag(ContentOfExecution) AccessConnection=gg.makeRequest("https://vpn.uibe.edu.cn/por/phone_index.csp?rnd=0.23178949332658605#https%3A%2F%2Fvpn.uibe.edu.cn%2F").code if AccessConnection == 200 then pcall(ContentOfExecution) else gg.alert("网络异常 Or 请关闭VPN!\nNetwork abnormality Or please close VPN!") end end function WX_64(FUNCTIONADD,TYPE,VALUE) local SOMOD=gg.getRangesList("il2cpp.so") if SOMOD[2]==nil then gg.alert([[开启失败 ━━━━━━━━━━━━━━━ 错误原因:未找到相关内存 解决方法:请重新选择游戏进程 ━━━━━━━━━━━━━━━]]) else gg.setValues({{address=SOMOD[2].start+FUNCTIONADD,flags=TYPE,value=VALUE}}) gg.setValues({{address=SOMOD[2].start+FUNCTIONADD+4,flags=TYPE,value="~A8 RET"}}) end end local SO = {} SO['新手'] = 0x2185908 SO['封号'] = 0x302a384 SO['行为1'] = 0x33b4e7c SO['行为2'] = 0x33b4f14 SO['行为3'] = 0x33b4cb4 SO['行为4'] = 0x33ae0ac SO['行为5'] = 0x33b4b84 SO['行为6'] = 0x33b4b84 SO['行为7'] = 0x2dca258 SO['行为8'] = 0x24fc530 SO['行为9'] = 0x21c8cd4 SO['行为10'] = 0x21c8be8 SO['行为11'] = 0x33a7790 SO['行为12'] = 0x2b6b9e0 SO['行为13'] = 0x21c8aac SO['行为14'] = 0x21c857c SO['行为15'] = 0x2dc9a68 SO['行为16'] = 0x2dc9f54 SO['行为17'] = 0x2dca19c SO['行为18'] = 0x28e3464 SO['行为19'] = 0x221c90c SO['行为20'] = 0x2dd17e4 SO['行为21'] = 0x2dd3684 SO['行为22'] = 0x2266fa8 SO['行为23'] = 0x2dd53fc SO['行为24'] = 0x2ddbef0 SO['行为25'] = 0x2ddbf94 SO['行为26'] = 0x1eec630 SO['行为27'] = 0x33accb8 SO['行为28'] = 0x33b4c1c SO['行为29'] = 0x33b4d4c SO['行为30'] = 0x33b4de4 SO['行为31'] = 0x2ddbb98 SO['行为32'] = 0x2ddbc3c SO['行为33'] = 0x2ddbce0 SO['行为34'] = 0x2ddbd7c SO['行为35'] = 0x2ddbf94 SO['行为36'] = 0x2ddbb98 SO['行为37'] = 0x24fe1b4 SO['行为38'] = 0x35c0ff8 SO['行为39'] = 0x2dc9d40 SO['行为40'] = 0x33acd54 SO['行为41'] = 0x2dd2958 SO['行为42'] = 0x2dd630c SO['行为43'] = 0x2ddbe20 SO['行为44'] = 0x1a80870 SO['行为45'] = 0x1a80864 SO['作弊1'] = 0x2dca258 SO['作弊2'] = 0x2dca19c SO['作弊3'] = 0x33accb8 SO['作弊4'] = 0x33acd54 SO['作弊5'] = 0x33ae0ac SO['作弊6'] = 0x33b4aec SO['作弊7'] = 0x33b4b84 SO['作弊8'] = 0x33b4c1c SO['作弊9'] = 0x33b4cb4 SO['作弊10'] = 0x33b4d4c SO['作弊11'] = 0x33b4de4 SO['作弊12'] = 0x33b4e7c SO['作弊13'] = 0x33b4f14 SO['作弊14'] = 0x22cab7c SO['作弊15'] = 0x2dd2958 SO['作弊16'] = 0x2dd17e4 SO['作弊17'] = 0x2dd630c SO['作弊18'] = 0x2ddbb98 SO['作弊19'] = 0x2ddbc3c SO['作弊20'] = 0x2ddbce0 SO['作弊21'] = 0x2ddbd7c SO['作弊22'] = 0x2ddbe20 SO['作弊23'] = 0x2ddbef0 SO['作弊24'] = 0x2ddbf94 SO['货币检测'] = 0x22cab7c SO['速度检测'] = 0x2889a10 SO['防举报1'] = 0x35c10a0 SO['防举报2'] = 0x35c0f58 SO['防举报3'] = 0x2f892e0 SO['防举报4'] = 0x27246b8 SO['人物'] = 0x217e4c0 SO['滑板'] = 0x2180270 SO['背饰'] = 0x21a383c SO['背饰保存'] = 0x21a3920 SO['像框'] = 0x23b8410 SO['相框1'] = 0x291961c SO['装扮'] = 0x21726bc SO['技能'] = 0x21e67d4 SO['技能勾选'] = 0x21f1518 SO['名称'] = 0x26258d0 SO['获取十倍'] = 0x33ad5c8 SO['解锁十倍'] = 0x27ff634 SO['内购'] = 0x30922e8 SO['内购成功'] = 0x309f6a4 SO['领奖'] = 0x21daafc SO['十抽'] = 0x2619cd4 SO['宝物备份'] = 0x2617a20 SO['奖励替换'] = 0x23a6310 SO['人物奖励'] = 0x23b7fb4 SO['滑板奖励'] = 0x23b8174 SO['背饰奖励'] = 0x23b8334 SO['像框奖励'] = 0x23b8410 SO['赛事'] = 0x2284070 SO['备份1'] = 0x33a424c SO['备份2'] = 0x21b2970 SO['备份3'] = 0x33a424c SO['备份4'] = 0x3884ad4 SO['双倍'] = 0x2159090 SO['微博'] = 0x2d0c4fc SO['金币'] = 0x216ba68 SO['钥匙'] = 0x216bd80 SO['紫币'] = 0x21dc54c SO['宝物钥匙'] = 0x21ab15c SO['开发者'] = 0x33a93a4 SO['抓娃娃'] = 0x33adcec SO['重生'] = 0x2481a70 SO['邮箱'] = 0x23077b0 SO['炫跑卡'] = 0x21a52b4 SO['历史分数1'] = 0x216c2d4 SO['历史分数2'] = 0x216c4ec SO['历史排名'] = 0x219bdc4 SO['等级'] = 0x216f384 SO['全服'] = 0x22e774c SO['省标'] = 0x22e77e4 SO['地区'] = 0x22e787c SO['断网1'] = 0x1efb784 SO['断网2'] = 0x1efb784 SO['隐藏1'] = 0x2be674c SO['隐藏2'] = 0x33a7790 SO['隐藏3'] = 0x2be768c SO['隐藏4'] = 0x2197ba0 SO['隐藏5'] = 0x35bd2e8 SO['防止卡屏1'] = 0x28e3340 SO['防止卡屏2'] = 0x28e3218 SO['受到攻击'] = 0x3450af0 SO['攻击拾取'] = 0x344b55c SO['局内金币'] = 0x2570628 SO['获取能量'] = 0x344aa9c SO['获取能量1'] = 0x3446434 SO['获取能量2'] = 0x3446434 SO['跳跃'] = 0x257971c SO['下滑'] = 0x2579d18 SO['下滑1'] = 0x257990c SO['下滑左'] = 0x25799e8 SO['下滑中'] = 0x2579a70 SO['下滑右'] = 0x2579af8 SO['滑板跳高'] = 0x259e7e0 SO['滑板滑翔'] = 0x259ebcc SO['滑板瞬移'] = 0x259ed34 SO['无尽装死'] = 0x22375b4 SO['无限跳跃'] = 0x2f8d8c0 SO['金币消失'] = 0x2f0419c SO['无尽死亡'] = 0x223e7f8 SO['道具图标'] = 0x3449968 SO['道具图标2'] = 0x3449a08 SO['道具图标3'] = 0x344b9bc SO['修改道具'] = 0x344b264 SO['战绩消失'] = 0x28e14f0 SO['购买界面'] = 0x22d6638 SO['反弹道具1'] = 0x3521520 SO['反弹道具2'] = 0x352160c SO['释放能量'] = 0x344ac28 SO['释放'] = 0x344ad58 SO['无视道具1'] = 0x35228c8 SO['无视道具2'] = 0x3522e38 SO['无视障碍'] = 0x2396ec0 SO['无视侧撞'] = 0x2397ac8 SO['开局道具'] = 0x216b228 SO['能量穿透'] = 0x3445d88 SO['忙碌状态'] = 0x3449f1c SO['无限能量'] = 0x34497e4 SO['Buff模式'] = 0x344fea4 SO['派对聚能'] = 0x272cb38 SO['得到分数'] = 0x2575ff4 SO['结束游戏'] = 0x28e3218 SO['锁定人机'] = 0x28e5d2c SO['派对新手'] = 0x33aa7ec SO['派对省份'] = 0x2d2d2c0 SO['派对省排'] = 0x2d2d22c SO['派对全服'] = 0x2d2d198 SO['滑板消失'] = 0x239a7f4 SO['三倍金币'] = 0x2ba3c40 SO['得分倍增'] = 0x2170788 SO['宝物等级'] = 0x2cd083c SO['段位'] = 0x2c29670 SO['历史段位'] = 0x219c4e4 SO['星数'] = 0x22ecd58 SO['道具满级'] = 0x3039594 SO['道具等级'] = 0x3039400 SO['退出登录'] = 0x33b15ac SO['超级跑者'] = 0x21d86dc SO['使用技能'] = 0x2ac78b8 SO['观战对手'] = 0x2fd58e0 SO['替换人物'] = 0x2ac60e4 SO['替换滑板'] = 0x2ac6f10 SO['替换背饰'] = 0x2ac82dc SO['替换装扮'] = 0x2ac6808 SO['点击表情'] = 0x3395f14 SO['宝抽次数'] = 0x21ac0b4 SO['铁轨金币'] = 0x2f0419c SO['房间防踢'] = 0x31c4750 SO['匹配人机'] = 0x2724fec SO['道具聚能'] = 0x344ff40 SO['道具备份1'] = 0x21b2970 SO['道具备份2'] = 0x33a424c SO['好友'] = 0x2b6198c SO['踢人'] = 0x2b61f3c SO['修改对抗赛'] = 0x2888090 SO['对抗赛好友匹配'] = 0x2e293c8 SO['观察者室'] = 0x28bb188 SO['自救'] = 0x28857ec SO['复活结算'] = 0x28e14f0 SO['调出名称'] = 0x2185a4c SO['派对新手1'] = 0x33aa7ec SO['派对新手2'] = 0x33aa890 SO['改变角色'] = 0x256091c SO['自变保安'] = 0x25610bc SO['时间'] = 0x2f89b54 SO['异常弹窗'] = 0x2b6b724 SO['HFX目标'] = 0x3513e14 SO['HP目标'] = 0x352160c SO['HP使用人'] = 0x3521520 SO['PVP定人'] = 0x28e5d2c SO['全宝'] = 0x261afdc SO['半宝'] = 0x261afdc SO['强制下线'] = 0x28d6280 SO['时间检测'] = 0x33b4aec SO['行为弹窗'] = 0x2b6b9e0 SO['升级金币'] = 0x2cd0a98 SO['升级材料'] = 0x2ccbc64 SO['道具无限时长'] = 0x2535d00 SO['人物购买按钮'] = 0x2512a30 SO['人物购买成功'] = 0x2517e80 SO['滑板购买按钮'] = 0x2acb830 SO['滑板购买成功'] = 0x2ad05b4 SO['竞赛模式1'] = 0x2c1d6a8 SO['竞赛模式2'] = 0x25f7564 SO['竞赛模式3'] = 0x2ae4018 SO['匹配机制1'] = 0x33962f8 SO['匹配机制2'] = 0x2284070 SO['匹配机制3'] = 0x28bb188 SO['屏蔽时间检1'] = 0x2c2a37c SO['屏蔽时间检2'] = 0x2c2a2e0 SO['屏蔽时间检3'] = 0x22ed4a8 SO['屏蔽时间检4'] = 0x2c2a04c SO['屏蔽时间检5'] = 0x2c273f4 SO['屏蔽时间检6'] = 0x2c29f28 SO['屏蔽时间检7'] = 0x22ed540 SO['屏蔽时间检8'] = 0x33b4aec SO['屏蔽时间检9'] = 0x2c29b00 SO['屏蔽时间检10'] = 0x1a80884 SO['一分40秒1'] = 0x35bd2e8 SO['一分40秒2'] = 0x2c2a37c SO['一分40秒3'] = 0x2c2a2e0 SO['一分40秒4'] = 0x2c273f4 SO['一分40秒5'] = 0x22ed540 SO['一分40秒6'] = 0x2c29f28 SO['一分40秒7'] = 0x33b4aec SO['一分40秒8'] = 0x35c10a0 SO['一分40秒9'] = 0x35c0f58 SO['一分40秒10'] = 0x27246b8 SO['轨道位置'] = 0x2f8a9e4 SO['铁轨金币'] = 0x2f0419c SO['表情退出'] = 0x22e5b84 SO['按钮复制房间'] = 0x3038c28 SO['无视敏感词'] = 0x22e0de0 SO['房间防踢1'] = 0x2e29bcc SO['分数全服'] = 0x26041e0 SO['分数全省'] = 0x2604304 SO['改字复活'] = 0x22e5cbc SO['好友踢人'] = 0x2b61f3c SO['派对房间1'] = 0x385b2a4 SO['派对房间2'] = 0x2d3ec24 SO['人物速度'] = 0x2f89488 SO['滑板时长'] = 0x35102c0 SO['宝藏等级'] = 0x2cd083c SO['目标地图1'] = 0x345d32c SO['目标地图2'] = 0x345e27c SO['目标路线'] = 0x385b328 SO['结算检测1'] = 0x2c273f4 SO['结算检测2'] = 0x33ac8ec SO['结算检测3'] = 0x33b4aec SO['结算检测4'] = 0x35bd2e8 SO['结算退出'] = 0x2c26404 SO['退出界面'] = 0x2cec138 SO['灵魂出窍'] = 0x23e9c44 SO['玩家离线'] = 0x35bffb0 SO['断开连接1'] = 0x260797c SO['断开连接2'] = 0x236656c SO['服务器1'] = 0x33ac8ec SO['服务器2'] = 0x33b43f4 SO['服务器3'] = 0x33b449c SO['服务器4'] = 0x2a21224 SO['人物全显'] = 0x2e0e1ac SO['滑板全显'] = 0x2e0e1ac SO['API检值'] = 0x258305c SO['拖尾'] = 0x2f8b268 SO['弹窗'] = 0x22e2b64 SO['PVP获胜者'] = 0x2d30d78 SO['离线形式'] = 0x35bd2e8 SO['胜利时间'] = 0x2c29b88 SO['能量吸附'] = 0x3445d88 SO['能量吸附2'] = 0x3446d48 SO['撑杆'] = 0x223c820 SO['能量消失'] = 0x3446f18 SO['更新时刻'] = 0x18890b4 SO['更新程序'] = 0x286d7fc SO['获取奖励'] = 0x26c0210 SO['滑板提速'] = 0x3510440 SO['翻滚动作'] = 0x2f8e1d8 SO['翻滚更新'] = 0x2fd65cc SO['触发事件'] = 0x3444630 SO['速度不变'] = 0x2c23450 SO['发送成功'] = 0x2f83c44 SO['金币分数'] = 0x216ca08 SO['客户端离线'] = 0x33ac8ec SO['全局离线'] = 0x35bd2e8 SO['防环境'] = 0x24fe1b4 SO['4399防环境'] = 0x33a7790 SO['静态防环境'] = 0x35c0ff8 SO['检测关闭'] = 0x1eec630 SO['关闭检测'] = 0x2dc9a68 SO['设备ID检测'] = 0x21c8aac SO['上传钥匙作弊'] = 0x21c8cd4 SO['上传金币作弊'] = 0x21c8be8 SO['上传人物数量作弊'] = 0x33b4e7c SO['金币数量检测'] = 0x2dca258 SO['钥匙数量检测'] = 0x33b4cb4 SO['关闭速度异常检测'] = 0x33b4b84 SO['用户离线检测'] = 0x2dc9d40 SO['数据备份1'] = 0x33a424c SO['数据备份2'] = 0x21c634c SO['数据备份3'] = 0x21b2970 SO['等级'] = 0x216f384 SO['奖杯领取'] = 0x21daafc SO['内购'] = 0x30922e8 SO['炫跑卡'] = 0x21a52b4 SO['宝物钥匙'] = 0x21ab15c SO['人物'] = 0x217e4c0 SO['滑板'] = 0x2180270 SO['背饰'] = 0x21a383c SO['背饰保存'] = 0x21a3920 SO['装扮'] = 0x21726bc SO['头像框'] = 0x291961c SO['滑板技能'] = 0x21e67d4 SO['滑板技能勾选'] = 0x21f1518 SO['调出十倍'] = 0x33ad5c8 SO['获得十倍'] = 0x27ff634 SO['解锁微博'] = 0x2d0c4fc SO['十抽宝物'] = 0x2619cd4 SO['赛事调出'] = 0x2284070 SO['社团锁定人机'] = 0x3395f14 SO['人物无敌'] = 0x223e7f8 SO['人物瞬移'] = 0x2f8b004 SO['二段跳'] = 0x259e8d8 SO['无限连跳'] = 0x2f8d8c0 SO['滑板滑翔'] = 0x259ebcc SO['滑板瞬移'] = 0x259ed34 SO['滑板跳高'] = 0x259e7e0 SO['屏蔽上传'] = 0x258305c SO['新时刻'] = 0x2c273f4 SO['最佳时间'] = 0x22ed540 SO['作弊时间'] = 0x33b4aec SO['防举报1'] = 0x35c10a0 SO['防举报2'] = 0x35c0f58 SO['屏蔽时间检测1'] = 0x1a80884 SO['屏蔽时间检测2'] = 0x2c29b00 SO['屏蔽时间检测3'] = 0x2c2a37c SO['屏蔽时间检测4'] = 0x2c29f28 SO['防卡屏'] = 0x28e3340 SO['结算作弊状态'] = 0x28e3464 SO['结算异常'] = 0x28e3218 SO['结算恢复'] = 0x28e3218 SO['屏蔽人机'] = 0x28e5c14 SO['进入结算屏蔽'] = 0x28e46ec SO['房间防踢'] = 0x31c4750 SO['房间踢人'] = 0x2b61f3c SO['改超长名'] = 0x26258d0 SO['防断网'] = 0x1efb784 SO['段位'] = 0x2b2fdb0 SO['阶段'] = 0x2b2fe5c SO['星数'] = 0x2b31d34 SO['分数赛过检'] = 0x2576298 SO['得分倍增'] = 0x2170788 SO['修改速度'] = 0x2f89488 SO['过派对新手1'] = 0x33aa890 SO['过派对新手2'] = 0x33aa7ec SO['发文字复活'] = 0x22e5cbc SO['发表情退出'] = 0x22e5b84 SO['终点自动退出'] = 0x2c26404 SO['国标'] = 0x22e774c SO['省标'] = 0x22e77e4 SO['PVP定人'] = 0x28e5d2c SO['能量倍增1'] = 0x25799e8 SO['能量倍增2'] = 0x2579a70 SO['能量倍增3'] = 0x2579af8 SO['能量倍增4'] = 0x257971c SO['能量倍增5'] = 0x257990c SO['点击道具图标'] = 0x344b9bc SO['忽略能量'] = 0x3445d88 SO['无视道具1'] = 0x35228c8 SO['无视道具2'] = 0x3522e38 SO['无视障碍'] = 0x2396ec0 SO['双倍金币'] = 0x2159090 SO['内购成功'] = 0x309f6a4 SO['宝物解锁'] = 0x261afdc SO['宝物备份'] = 0x2617a20 SO['十抽调出购买界面回调'] = 0x22d6638 SO['社团回调'] = 0x2c1d6a8 SO['发文字复活回调'] = 0x23e9c44 SO['发表情退出回调'] = 0x2cec138 SO['终点自动退出回调'] = 0x2cec138 SO['能量倍增回调'] = 0x3446434 SO['点击道具图标获取能量回调'] = 0x3446434 SO['下滑左'] = 0x25799e8 SO['下滑中'] = 0x2579a70 SO['下滑右'] = 0x2579af8 SO['新手'] = 0x2185908 SO['人物'] = 0x217e4c0 SO['滑板'] = 0x2180270 SO['背饰'] = 0x21a383c SO['相框'] = 0x291961c SO['装扮'] = 0x21726bc SO['技能'] = 0x21e67d4 SO['使用所有技能'] = 0x21f1518 SO['获取十倍'] = 0x33ad5c8 SO['内购'] = 0x30922e8 SO['内购成功'] = 0x309f6a4 SO['奖励替换'] = 0x23a6310 SO['人物奖励'] = 0x23b7fb4 SO['滑板奖励'] = 0x23b8174 SO['背饰奖励'] = 0x23b8334 SO['相框奖励'] = 0x23b8410 SO['替换人物'] = 0x2ac60e4 SO['替换滑板'] = 0x2ac6f10 SO['替换背饰'] = 0x2ac82dc SO['替换装扮'] = 0x2ac6808 SO['备份1'] = 0x33a424c SO['备份2'] = 0x3884ad4 SO['双倍'] = 0x2159090 SO['微博'] = 0x2d0c4fc SO['金币'] = 0x216ba68 SO['钥匙'] = 0x216bd80 SO['宝物钥匙'] = 0x21ab15c SO['赛季币'] = 0x21dc54c SO['炫跑卡'] = 0x21a52b4 SO['等级'] = 0x216f384 SO['十抽'] = 0x2619cd4 SO['宝物备份'] = 0x2617a20 SO['全宝'] = 0x261afdc SO['全服'] = 0x22e774c SO['省标'] = 0x22e77e4 SO['地区'] = 0x22e787c SO['派对全服'] = 0x2d2d198 SO['派对省标'] = 0x2d2d22c SO['派对地区'] = 0x2d2d2c0 SO['局内金币'] = 0x2570628 SO['获取能量'] = 0x344aa9c SO['获得能量'] = 0x3446434 SO['滑板跳高'] = 0x259e7e0 SO['滑板滑翔'] = 0x259ebcc SO['滑板瞬移'] = 0x259ed34 SO['无尽装死'] = 0x22375b4 SO['无限跳跃'] = 0x2f8d8c0 SO['金币消失'] = 0x2f0419c SO['无尽死亡'] = 0x223e7f8 SO['道具图标'] = 0x3449968 SO['道具图标'] = 0x3449a08 SO['反弹道具1'] = 0x3521520 SO['反弹道具2'] = 0x352160c SO['释放能量'] = 0x344ac28 SO['释放'] = 0x344ad58 SO['无视道具'] = 0x35228c8 SO['无视障碍'] = 0x2396ec0 SO['开局道具'] = 0x216b228 SO['升级材料'] = 0x2ccbc64 SO['升级金币'] = 0x2cd0a98 SO['能量'] = 0x34497e4 SO['观战资格'] = 0x2284070 SO['二段跳'] = 0x259e8d8 SO['人物高跳'] = 0x2f8ae98 SO['人物滑翔'] = 0x2f8b0d0 SO['退出登录'] = 0x33b15ac SO['观战对手'] = 0x2fd58e0 SO['道具等级'] = 0x3039400 SO['结束游戏'] = 0x28e3218 SO['使用技能'] = 0x2ac78b8 SO['抓娃娃'] = 0x33adcec SO['开发者'] = 0x33a93a4 SO['跳跃'] = 0x257971c SO['滚动'] = 0x257990c SO['改变速度'] = 0x344fea4 SO['加好友'] = 0x2b6198c SO['房间踢人'] = 0x2b61f3c SO['购买界面'] = 0x22d6638 SO['减速带'] = 0x34453c8 SO['加速带'] = 0x3444630 SO['道具赛'] = 0x2c1d6a8 SO['分数赛'] = 0x22e3c98 SO['社区'] = 0x3395f14 SO['单抽广告'] = 0x261b6b4 SO['发言'] = 0x22e0de0 SO['无视敏感词'] = 0x22e12f0 SO['结算界面'] = 0x2c26404 SO['三倍金币'] = 0x2ba3c40 SO['得分倍增'] = 0x2170788 SO['能量消失'] = 0x3446f18 SO['超长名'] = 0x26258d0 SO['改名成功'] = 0x26259d0 SO['锁地形'] = 0x375f460 SO['加速'] = 0x2e08610 SO['设置道具'] = 0x3449968 SO['使用道具'] = 0x344b9bc SO['新手'] = 0x2185908 SO['封号'] = 0x302a384 SO['作弊1'] = 0x2dca258 SO['作弊2'] = 0x2dca19c SO['作弊3'] = 0x33accb8 SO['作弊4'] = 0x33acd54 SO['作弊5'] = 0x33ae0ac SO['作弊6'] = 0x33b4aec SO['作弊7'] = 0x33b4c1c SO['作弊8'] = 0x33b4cb4 SO['作弊9'] = 0x33b4d4c SO['作弊10'] = 0x33b4de4 SO['作弊11'] = 0x33b4e7c SO['作弊12'] = 0x33b4f14 SO['作弊13'] = 0x21c8aac SO['作弊14'] = 0x21c8be8 SO['作弊15'] = 0x21c8cd4 SO['作弊16'] = 0x22cab7c SO['行为1'] = 0x33b4e7c SO['行为2'] = 0x33b4f14 SO['行为3'] = 0x33b4cb4 SO['行为4'] = 0x33ae0ac SO['行为5'] = 0x33b4b84 SO['行为6'] = 0x33b4b84 SO['行为7'] = 0x2dca258 SO['行为8'] = 0x24fc530 SO['行为9'] = 0x21c8cd4 SO['行为10'] = 0x21c8be8 SO['行为11'] = 0x33a7790 SO['行为12'] = 0x2b6b9e0 SO['行为13'] = 0x21c8aac SO['行为14'] = 0x21c857c SO['行为15'] = 0x2dc9a68 SO['行为16'] = 0x2dc9f54 SO['行为17'] = 0x2dca19c SO['行为18'] = 0x28e3464 SO['行为19'] = 0x221c90c SO['行为20'] = 0x2dd17e4 SO['行为21'] = 0x2dd3684 SO['行为22'] = 0x2266fa8 SO['行为23'] = 0x2dd53fc SO['行为24'] = 0x2ddbef0 SO['行为25'] = 0x2ddbf94 SO['行为26'] = 0x1eec630 SO['行为27'] = 0x33accb8 SO['行为28'] = 0x33b4c1c SO['行为29'] = 0x33b4d4c SO['行为30'] = 0x33b4de4 SO['行为31'] = 0x2ddbb98 SO['行为32'] = 0x2ddbc3c SO['行为33'] = 0x2ddbce0 SO['行为34'] = 0x2ddbd7c SO['行为35'] = 0x2ddbf94 SO['行为36'] = 0x2ddbb98 SO['货币检测'] = 0x22cab7c SO['防举报1'] = 0x35c10a0 SO['防举报2'] = 0x35c0f58 SO['防举报3'] = 0x2f892e0 SO['防举报4'] = 0x27246b8 SO['人物'] = 0x217e4c0 SO['滑板'] = 0x2180270 SO['背饰'] = 0x21a383c SO['背饰保存'] = 0x21a3920 SO['像框'] = 0x23b8410 SO['装扮'] = 0x21726bc SO['技能'] = 0x21e67d4 SO['技能勾选'] = 0x21f1518 SO['名称'] = 0x26258d0 SO['获取十倍'] = 0x33ad5c8 SO['解锁十倍'] = 0x27ff634 SO['内购'] = 0x30922e8 SO['内购成功'] = 0x309f6a4 SO['领奖'] = 0x21daafc SO['十抽'] = 0x2619cd4 SO['宝物备份'] = 0x2617a20 SO['奖励替换'] = 0x23a6310 SO['人物奖励'] = 0x23b7fb4 SO['滑板奖励'] = 0x23b8174 SO['背饰奖励'] = 0x23b8334 SO['像框奖励'] = 0x23b8410 SO['赛事'] = 0x2284070 SO['备份1'] = 0x33a424c SO['备份2'] = 0x21b2970 SO['备份3'] = 0x33a424c SO['备份4'] = 0x3884ad4 SO['双倍'] = 0x2159090 SO['微博'] = 0x2d0c4fc SO['金币'] = 0x216ba68 SO['钥匙'] = 0x216bd80 SO['紫币'] = 0x21dc54c SO['宝物钥匙'] = 0x21ab15c SO['开发者'] = 0x33a93a4 SO['抓娃娃'] = 0x33adcec SO['重生'] = 0x2481a70 SO['邮箱'] = 0x23077b0 SO['炫跑卡'] = 0x21a52b4 SO['历史分数1'] = 0x216c2d4 SO['历史分数2'] = 0x216c4ec SO['历史排名'] = 0x219bdc4 SO['等级'] = 0x216f384 SO['全服'] = 0x22e774c SO['省标'] = 0x22e77e4 SO['地区'] = 0x22e787c SO['断网1'] = 0x1efb784 SO['断网2'] = 0x1efb784 SO['隐藏1'] = 0x2be674c SO['隐藏2'] = 0x33a7790 SO['隐藏3'] = 0x2be768c SO['隐藏4'] = 0x2197ba0 SO['隐藏5'] = 0x35bd2e8 SO['防止卡屏1'] = 0x28e3340 SO['防止卡屏2'] = 0x28e3218 SO['受到攻击'] = 0x3450af0 SO['攻击拾取'] = 0x344b55c SO['局内金币'] = 0x2570628 SO['获取能量'] = 0x344aa9c SO['获取能量2'] = 0x3446434 SO['跳跃'] = 0x257971c SO['下滑'] = 0x2579d18 SO['滑板跳高'] = 0x259e7e0 SO['滑板滑翔'] = 0x259ebcc SO['滑板瞬移'] = 0x259ed34 SO['无尽装死'] = 0x22375b4 SO['无限跳跃'] = 0x2f8d8c0 SO['金币消失'] = 0x2f0419c SO['无尽死亡'] = 0x223e7f8 SO['道具图标'] = 0x3449968 SO['道具图标2'] = 0x3449a08 SO['反弹道具1'] = 0x3521520 SO['反弹道具2'] = 0x352160c SO['释放能量'] = 0x344ac28 SO['释放'] = 0x344ad58 SO['无视道具1'] = 0x35228c8 SO['无视道具2'] = 0x3522e38 SO['无视障碍'] = 0x2396ec0 SO['无视侧撞'] = 0x2397ac8 SO['开局道具'] = 0x216b228 SO['能量穿透'] = 0x3445d88 SO['忙碌状态'] = 0x3449f1c SO['无限能量'] = 0x34497e4 SO['Buff模式'] = 0x344fea4 SO['派对聚能'] = 0x272cb38 SO['得到分数'] = 0x2575ff4 SO['结束游戏'] = 0x28e3218 SO['锁定人机'] = 0x28e5d2c SO['派对新手'] = 0x33aa7ec SO['派对省份'] = 0x2d2d2c0 SO['派对省排'] = 0x2d2d22c SO['派对全服'] = 0x2d2d198 SO['滑板消失'] = 0x239a7f4 SO['三倍金币'] = 0x2ba3c40 SO['得分倍增'] = 0x2170788 SO['宝物等级'] = 0x2cd083c SO['段位'] = 0x2c29670 SO['星数'] = 0x22ecd58 SO['道具满级'] = 0x3039594 SO['道具等级'] = 0x3039400 SO['退出登录'] = 0x33b15ac SO['超级跑者'] = 0x21d86dc SO['使用技能'] = 0x2ac78b8 SO['观战对手'] = 0x2fd58e0 SO['替换人物'] = 0x2ac60e4 SO['替换滑板'] = 0x2ac6f10 SO['替换背饰'] = 0x2ac82dc SO['替换装扮'] = 0x2ac6808 SO['点击表情'] = 0x3395f14 SO['宝抽次数'] = 0x21ac0b4 SO['铁轨金币'] = 0x2f0419c SO['房间防踢'] = 0x31c4750 SO['时间'] = 0x2f89b54 SO['异常弹窗'] = 0x2b6b724 SO['HFX目标'] = 0x3513e14 SO['HP目标'] = 0x352160c SO['HP使用人'] = 0x3521520 SO['PVP定人'] = 0x28e5d2c SO['全宝'] = 0x261afdc SO['半宝'] = 0x261afdc SO['强制下线'] = 0x28d6280 SO['时间检测'] = 0x33b4aec SO['行为弹窗'] = 0x2b6b9e0 SO['升级金币'] = 0x2cd0a98 SO['升级材料'] = 0x2ccbc64 SO['道具无限时长'] = 0x2535d00 SO['人物购买按钮'] = 0x2512a30 SO['人物购买成功'] = 0x2517e80 SO['滑板购买按钮'] = 0x2acb830 SO['屏蔽时间检1'] = 0x2c2a37c SO['屏蔽时间检2'] = 0x2c2a2e0 SO['屏蔽时间检3'] = 0x2c2a04c SO['屏蔽时间检4'] = 0x2c2a04c SO['屏蔽时间检5'] = 0x2c273f4 SO['屏蔽时间检6'] = 0x2c29f28 SO['屏蔽时间检7'] = 0x2c29f28 SO['屏蔽时间检8'] = 0x33b4aec SO['屏蔽时间检9'] = 0x2c29b00 SO['屏蔽时间检10'] = 0x1a80884 SO['一分40秒1'] = 0x35bd2e8 SO['一分40秒2'] = 0x35bd2e8 SO['一分40秒3'] = 0x2c2a2e0 SO['一分40秒4'] = 0x2c273f4 SO['一分40秒5'] = 0x22ed540 SO['一分40秒6'] = 0x2c29f28 SO['一分40秒7'] = 0x33b4aec SO['一分40秒8'] = 0x35c10a0 SO['一分40秒9'] = 0x35c0f58 SO['一分40秒10'] = 0x27246b8 SO['表情退出'] = 0x22e5b84 SO['无视敏感词'] = 0x22e12f0 SO['分数全服'] = 0x26041e0 SO['分数全省'] = 0x2604304 SO['改字复活'] = 0x22e5cbc SO['好友踢人'] = 0x2b61f3c SO['派对房间1'] = 0x385b2a4 SO['派对房间2'] = 0x2d3ec24 SO['宝藏等级'] = 0x2cd083c SO['结算检测1'] = 0x2c273f4 SO['结算检测2'] = 0x33ac8ec SO['结算检测3'] = 0x33b4aec SO['结算检测4'] = 0x35bd2e8 SO['灵魂出窍'] = 0x23e9c44 SO['玩家离线'] = 0x35bffb0 SO['断开连接1'] = 0x260797c SO['断开连接2'] = 0x236656c SO['服务器1'] = 0x33ac8ec SO['服务器2'] = 0x33b43f4 SO['服务器3'] = 0x33b449c SO['服务器4'] = 0x2a21224 SO['API检值'] = 0x258305c SO['PVP获胜者'] = 0x2d30d78 SO['离线形式'] = 0x35bd2e8 SO['胜利时间'] = 0x2c29b88 SO['能量消失'] = 0x3446f18 SO['新时刻'] = 0x2c273f4 SO['离线模式'] = 0x35bd2e8 SO['获取服务器'] = 0x33ac8ec SO['最佳时间'] = 0x22ed540 SO['作弊时间'] = 0x33b4aec SO['自定义分数'] = 0x2575ff4 SO['倍数自定义'] = 0x2170788 SO['金币分数'] = 0x216ca08 SO['踢人'] = 0x2b61f3c SO['分数赛过检'] = 0x2576298 SO['表情退出'] = 0x22e5b84 SO['按钮复制房间'] = 0x3038c28 SO['无视敏感词'] = 0x22e0de0 SO['房间防踢1'] = 0x2e29bcc SO['分数全服'] = 0x26041e0 SO['分数全省'] = 0x2604304 SO['改字复活'] = 0x22e5cbc SO['好友踢人'] = 0x2b61f3c SO['派对房间1'] = 0x385b2a4 SO['派对房间2'] = 0x2d3ec24 SO['人物速度'] = 0x2f89488 SO['滑板时长'] = 0x35102c0 SO['宝藏等级'] = 0x2cd083c SO['目标地图1'] = 0x345d32c SO['目标地图2'] = 0x345e27c SO['目标路线'] = 0x385b328 SO['结算检测1'] = 0x2c273f4 SO['结算检测2'] = 0x33ac8ec SO['结算检测3'] = 0x33b4aec SO['结算检测4'] = 0x35bd2e8 SO['结算退出'] = 0x2c26404 SO['退出界面'] = 0x2cec138 SO['灵魂出窍'] = 0x23e9c44 SO['玩家离线'] = 0x35bffb0 SO['断开连接1'] = 0x260797c SO['断开连接2'] = 0x236656c SO['服务器1'] = 0x33ac8ec SO['服务器2'] = 0x33b43f4 SO['服务器3'] = 0x33b449c SO['服务器4'] = 0x2a21224 SO['人物全显'] = 0x2e0e1ac SO['滑板全显'] = 0x2e0e1ac SO['API检值'] = 0x258305c SO['拖尾'] = 0x2f8b268 SO['弹窗'] = 0x22e2b64 SO['PVP获胜者'] = 0x2d30d78 SO['离线形式'] = 0x35bd2e8 SO['胜利时间'] = 0x2c29b88 SO['能量吸附'] = 0x3445d88 SO['能量吸附2'] = 0x3446d48 SO['撑杆'] = 0x223c820 SO['能量消失'] = 0x3446f18 SO['更新时刻'] = 0x18890b4 SO['更新程序'] = 0x286d7fc SO['获取奖励'] = 0x26c0210 SO['滑板提速'] = 0x3510440 SO['翻滚动作'] = 0x2f8e1d8 SO['翻滚更新'] = 0x2fd65cc SO['三倍金币'] = 0x2ba3c40 SO['星星数量'] = 0x22ecd58 SO['等级检测'] = 0x33b52b4 SO['硬币检测'] = 0x33accb8 SO['宝物钥匙检测'] = 0x33b4d4c SO['宝抽次数'] = 0x21ac0b4 SO['铁轨金币'] = 0x2f0419c SO['房间防踢'] = 0x31c4750 SO['派对聚能'] = 0x272cb38 SO['得到分数'] = 0x2575ff4 SO['结束游戏'] = 0x28e3218 SO['锁定人机'] = 0x28e5d2c SO['派对新手'] = 0x33aa7ec SO['得分倍增'] = 0x2170788 SO['宝物等级'] = 0x2cd083c SO['段位'] = 0x2c29670 SO['星数'] = 0x22ecd58 SO['道具满级'] = 0x3039594 SO['道具等级'] = 0x3039400 SO['退出登录'] = 0x33b15ac SO['超级跑者'] = 0x21d86dc SO['使用技能'] = 0x2ac78b8 SO['观战对手'] = 0x2fd58e0 SO['宝抽次数'] = 0x21ac0b4 SO['铁轨金币'] = 0x2f0419c SO['秒结算'] = 0x28e3190 SO['结算页面'] = 0x2c26404 SO['轨道位置'] = 0x2f8a9e4 SO['充满能量'] = 0x2c29b88 SO['竞赛滑板'] = 0x2f8a9e4 SO['减速带'] = 0x34453c8 SO['加速带'] = 0x3444630 SO['单次抽取广告'] = 0x261b6b4 SO['金币左道'] = 0x25748c4 SO['金币右道'] = 0x2574b7c SO['金币中道'] = 0x2574a20 SO['倒计时'] = 0x35bd388 SO['单人道具赛'] = 0x35bd5f4 SO['双人道具赛'] = 0x35b842c SO['加速带失效'] = 0x3510a58 SO['防止断网'] = 0x2240e84 SO['分数赛检测'] = 0x2b6b9e0 SO['派对房间1'] = 0x385b2a4 SO['派对房间2'] = 0x2d3ec24 SO['宝藏等级'] = 0x2cd083c SO['结算检测1'] = 0x2c273f4 SO['结算检测2'] = 0x33ac8ec SO['结算检测3'] = 0x33b4aec SO['结算检测4'] = 0x35bd2e8 SO['灵魂出窍'] = 0x23e9c44 SO['玩家离线'] = 0x35bffb0 SO['断开连接1'] = 0x260797c SO['断开连接2'] = 0x236656c SO['服务器1'] = 0x33ac8ec SO['服务器2'] = 0x33b43f4 SO['服务器3'] = 0x33b449c SO['服务器4'] = 0x2a21224 SO['API检值'] = 0x258305c SO['PVP获胜者'] = 0x2d30d78 SO['离线形式'] = 0x35bd2e8 SO['胜利时间'] = 0x2c29b88 SO['能量消失'] = 0x3446f18 SO['新时刻'] = 0x2c273f4 SO['离线模式'] = 0x35bd2e8 SO['获取服务器'] = 0x33ac8ec SO['最佳时间'] = 0x22ed540 SO['作弊时间'] = 0x33b4aec SO['自定义分数'] = 0x2575ff4 SO['倍数自定义'] = 0x2170788 SO['金币分数'] = 0x216ca08 SO['踢人'] = 0x2b61f3c SO['按钮复制房间'] = 0x3038c28 SO['派对房间1'] = 0x385b2a4 SO['派对房间2'] = 0x2d3ec24 SO['人物速度'] = 0x2f89488 SO['滑板时长'] = 0x35102c0 SO['宝藏等级'] = 0x2cd083c SO['目标地图1'] = 0x345d32c SO['目标地图2'] = 0x345e27c SO['目标路线'] = 0x385b328 SO['结算检测1'] = 0x2c273f4 SO['结算检测2'] = 0x33ac8ec SO['结算检测3'] = 0x33b4aec SO['结算检测4'] = 0x35bd2e8 SO['结算退出'] = 0x2c26404 SO['退出界面'] = 0x2cec138 SO['灵魂出窍'] = 0x23e9c44 SO['玩家离线'] = 0x35bffb0 SO['断开连接1'] = 0x260797c SO['断开连接2'] = 0x236656c SO['服务器1'] = 0x33ac8ec SO['服务器2'] = 0x33b43f4 SO['服务器3'] = 0x33b449c SO['服务器4'] = 0x2a21224 SO['人物全显'] = 0x2e0e1ac SO['滑板全显'] = 0x2e0e1ac SO['API检值'] = 0x258305c SO['拖尾'] = 0x2f8b268 SO['弹窗'] = 0x22e2b64 SO['PVP获胜者'] = 0x2d30d78 SO['离线形式'] = 0x35bd2e8 SO['胜利时间'] = 0x2c29b88 SO['能量吸附'] = 0x3445d88 SO['能量吸附2'] = 0x3446d48 SO['撑杆'] = 0x223c820 SO['能量消失'] = 0x3446f18 SO['更新时刻'] = 0x18890b4 SO['更新程序'] = 0x286d7fc SO['获取奖励'] = 0x26c0210 SO['滑板提速'] = 0x3510440 SO['翻滚动作'] = 0x2f8e1d8 SO['翻滚更新'] = 0x2fd65cc SO['三倍金币'] = 0x2ba3c40 SO['星星数量'] = 0x22ecd58 SO['等级检测'] = 0x33b52b4 SO['硬币检测'] = 0x33accb8 SO['宝物钥匙检测'] = 0x33b4d4c SO['宝抽次数'] = 0x21ac0b4 SO['铁轨金币'] = 0x2f0419c SO['房间防踢'] = 0x31c4750 SO['派对聚能'] = 0x272cb38 SO['得到分数'] = 0x2575ff4 SO['结束游戏'] = 0x28e3218 SO['锁定人机'] = 0x28e5d2c SO['派对新手'] = 0x33aa7ec SO['得分倍增'] = 0x2170788 SO['宝物等级'] = 0x2cd083c SO['段位'] = 0x2c29670 SO['星数'] = 0x22ecd58 SO['道具满级'] = 0x3039594 SO['道具等级'] = 0x3039400 SO['退出登录'] = 0x33b15ac SO['超级跑者'] = 0x21d86dc SO['使用技能'] = 0x2ac78b8 SO['观战对手'] = 0x2fd58e0 SO['宝抽次数'] = 0x21ac0b4 SO['铁轨金币'] = 0x2f0419c SO['秒结算'] = 0x28e3190 SO['结算页面'] = 0x2c26404 SO['轨道位置'] = 0x2f8a9e4 SO['充满能量'] = 0x2c29b88 SO['竞赛滑板'] = 0x2f8a9e4 SO['减速带'] = 0x34453c8 SO['加速带'] = 0x3444630 SO['单次抽取广告'] = 0x261b6b4 SO['金币左道'] = 0x25748c4 SO['金币右道'] = 0x2574b7c SO['金币中道'] = 0x2574a20 SO['倒计时'] = 0x35bd388 SO['单人道具赛'] = 0x35bd5f4 SO['双人道具赛'] = 0x35b842c SO['加速带失效'] = 0x3510a58 SO['防止断网'] = 0x2240e84 SO['分数赛检测'] = 0x2b6b9e0 SO['派对房间1'] = 0x385b2a4 SO['派对房间2'] = 0x2d3ec24 SO['宝藏等级'] = 0x2cd083c SO['结算检测1'] = 0x2c273f4 SO['结算检测2'] = 0x33ac8ec SO['结算检测3'] = 0x33b4aec SO['结算检测4'] = 0x35bd2e8 SO['灵魂出窍'] = 0x23e9c44 SO['玩家离线'] = 0x35bffb0 SO['断开连接1'] = 0x260797c SO['断开连接2'] = 0x236656c SO['服务器1'] = 0x33ac8ec SO['服务器2'] = 0x33b43f4 SO['服务器3'] = 0x33b449c SO['服务器4'] = 0x2a21224 SO['API检值'] = 0x258305c SO['PVP获胜者'] = 0x2d30d78 SO['离线形式'] = 0x35bd2e8 SO['胜利时间'] = 0x2c29b88 SO['能量消失'] = 0x3446f18 SO['新时刻'] = 0x2c273f4 SO['离线模式'] = 0x35bd2e8 SO['获取服务器'] = 0x33ac8ec SO['最佳时间'] = 0x22ed540 SO['作弊时间'] = 0x33b4aec SO['自定义分数'] = 0x2575ff4 SO['倍数自定义'] = 0x2170788 SO['金币分数'] = 0x216ca08 SO['踢人'] = 0x2b61f3c SO['按钮复制房间'] = 0x3038c28 SO['改字复活'] = 0x22e5cbc SO['好友踢人'] = 0x2b61f3c SO['目标地图1'] = 0x345d32c SO['目标地图2'] = 0x345e27c SO['目标路线'] = 0x385b328 SO['灵魂出窍'] = 0x23e9c44 SO['玩家离线'] = 0x35bffb0 SO['断开连接1'] = 0x260797c SO['断开连接2'] = 0x236656c SO['拖尾'] = 0x2f8b268 SO['弹窗'] = 0x22e2b64 SO['PVP获胜者'] = 0x2d30d78 SO['离线形式'] = 0x35bd2e8 SO['胜利时间'] = 0x2c29b88 SO['能量吸附'] = 0x3445d88 SO['能量吸附2'] = 0x3446d48 SO['滑板提速'] = 0x3510440 SO['修改对抗赛'] = 0x2888090 SO['对抗赛好友匹配'] = 0x2e293c8 SO['观察者室'] = 0x28bb188 SO['自救'] = 0x28857ec SO['复活结算'] = 0x28e14f0 SO['最佳时间'] = 0x22ed540 SO['作弊时间'] = 0x33b4aec SO['点击道具'] = 0x344b9bc SO['新时刻'] = 0x2c273f4 SO['忙碌状态'] = 0x3449f1c SO['获取服务器'] = 0x33ac8ec SO['无视香蕉'] = 0x344eba8 function huiz() --绘制内容必须写在这里否则会消失 draw3 = require("draw3") draw.setStyle("填充") draw.setColor('#00ffff') end local FB=gg.makeRequest("https://v1.hitokoto.cn/?j=j&encode=text").content banbh="6.06.0" 悬浮窗图标="https://pan.jl8.top/view.php/bf40ec7b4c717e19338113504e8636cb.png" 分页名字={ "公告", "防封", "刷号", "竞赛", "设置", } changan.menu({ {---第一页 changan.text(项目名字,"#7F5EFF","15sp"), changan.text("欢迎老板使用玲珑","#7F5EFF","15sp"), changan.text("驱动运行状态:正常运行","#7F5EFF","15sp"), changan.text("当前手机 Android 版本号: " .. version,"#7F5EFF","15sp"), changan.text("当前游戏运行环境: " .. hj,"#7F5EFF","15sp"), changan.text("适配"..banbh.."x64好莱坞版本","#7F5EFF","15sp"), changan.text("玲珑项目在新赛季带你杀出重围","#7F5EFF","15sp"), changan.text("随机一言:"..FB.."","#7F5EFF","15sp"), changan.button( "选择进程", function() gg.setConfig("冻结间隔", 0) string.toMusic('请选择地铁跑酷进程') gg.setProcessX() end), changan.button("加入总群", function () gg.QQgroup("561930271") end), changan.switch("新手教程", function() WX_64(SO['新手'] ,4,"~A8 MOV W0, #1") gg.toast("玲珑提醒你过新手教程开启成功") end), changan.switch("封号弹窗", function() WX_64(SO['封号'] ,4,"~A8 MOV W0, WZR") gg.toast("玲珑提醒你封号弹窗开启成功") end), },{---第二页 changan.radio({--单选 {"防闪+ACE[登录]", function() gg.alert("玲珑提醒你防闪+ACE开启成功") gg.toast("玲珑提醒你防闪+ACE开启成功") end } , {"过滤环境[登录]", function() gg.alert("玲珑提醒你检测全杀开启成功") gg.toast("玲珑提醒你检测全杀开启成功") end } , {"时间检测[大厅]", function() gg.alert("玲珑提醒你时间检测开启成功") gg.toast("玲珑提醒你时间检测开启成功") end } , }), },{---第三页 changan.button("备份数据", function() WX_64(SO['备份3'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['备份4'],4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你备份数据开启成功") end), changan.button("一键拉满", function() local loadingBox = getLoadingBox ('检查初始化中...') loadingBox ['显示']() gg.sleep(2000) loadingBox['关闭']() gg.alert("初始化完毕正在为您刷入中...") WX_64(SO['人物'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['收集令牌'], 4, "~A8 MOV W0, #3") WX_64(SO['滑板'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['背饰'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['背饰保存'] ,4,"~A8 MOV W0, #1","~A8 RET")---背饰保存 WX_64(SO['像框'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['微博'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['双倍'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['获取十倍'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['解锁十倍'] ,4,"~A8 MOV W0, #1","~A8 RET") SO_Deposit(SO['金币'] ,4,8888888,"~A8 RET") WX_64(SO['钥匙'] ,4,"~A8 MOV W0, #8888","~A8 RET") WX_64(SO['宝物钥匙'] ,4,"~A8 MOV W0, #1888","~A8 RET") WX_64(SO['炫跑卡'] ,4,"~A8 MOV W0, #6","~A8 RET") WX_64(SO['等级'] ,4,"~A8 MOV W0, #520","~A8 RET") WX_64(SO['备份1'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['备份2'] ,4,"~A8 MOV W0, #1","~A8 RET")---可以备份数据 WX_64(SO['备份3'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['备份4'],4,"~A8 MOV W0, #1","~A8 RET") gg.alert("一键拉满存档:\n金币数量:8888888\n钥匙数量:8888\n宝物钥匙:1888\n人物全解\n滑板全解\n背饰全解\n十倍:获得\n像框:获得\n微博:获得\n双倍:获得\n炫跑卡:6级\n人物等级:520\n已为您备份数据") end), changan.box({"宝物盒子", changan.switch("十抽备份", function() WX_64(SO['十抽'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['十抽'] ,SO['宝物备份']).."]","~A8 RET") gg.toast("玲珑提醒你十抽备份开启成功") end), changan.switch("宝物点击升级", function() WX_64(SO['升级材料'], 4, "~A8 MOV W0, WZR","~A8 RET")--材料 WX_64(SO['升级金币'], 4, "~A8 MOV W0, WZR","~A8 RET")--金币 gg.toast("玲珑提醒你宝物点击升级开启成功") end), changan.switch("十抽全宝", function() WX_64(SO['十抽'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['十抽'] ,SO['全宝']).."]","~A8 RET") gg.toast("玲珑提醒你十抽全宝开启成功") end), changan.switch("十抽半宝", function() WX_64(SO['十抽'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['十抽'] ,SO['半宝']).."]","~A8 RET") gg.toast("玲珑提醒你十抽半宝开启成功") end), changan.switch("十抽半饰", function() WX_64(SO['十抽'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['十抽'] ,SO['半满']).."]","~A8 RET") gg.toast("玲珑提醒你十抽半饰开启成功") end), changan.switch("十抽全饰", function() WX_64(SO['十抽'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['十抽'] ,SO['三满']).."]","~A8 RET") gg.toast("玲珑提醒你十抽全饰开启成功") end), changan.switch("十抽分数赛", function() WX_64(SO['十抽'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['十抽'] ,SO['竞赛模式2']).."]","~A8 RET") gg.toast("玲珑提醒你十抽分数赛开启成功") end), changan.switch("十抽道具赛", function() WX_64(SO['十抽'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['十抽'] ,SO['竞赛模式1']).."]","~A8 RET") gg.toast("玲珑提醒你十抽道具赛开启成功") end), changan.switch("十抽对抗赛", function() WX_64(SO['十抽'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['十抽'] ,SO['竞赛模式3']).."]","~A8 RET") gg.toast("玲珑提醒你十抽对抗赛开启成功") end), changan.switch("十抽调出老板购买界面", function() WX_64(SO['十抽'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['十抽'] ,SO['购买界面']).."]","~A8 RET") gg.toast("玲珑提醒你十抽调出老板购买界面开启成功") end), changan.switch("十抽调出不更换地图道具赛", function() gg.alert("使用说明:\n打开神秘障碍,再十抽宝物\n一般游戏会加载回无尽模式的地图,但开启此功能则不会") WX_64(SO['十抽'] ,4,"~A8 B [PC,#-0x3872F4]","~A8 RET") gg.toast("玲珑提醒你十抽调出不更换地图道具赛开启成功") end), changan.switch("十抽调出人机局道具赛", function() gg.alert("使用说明:\n打开神秘障碍,再十抽宝物\n一般游戏会加载回无尽模式的地图,但开启此功能则不会\n匹配到全是人机") WX_64(SO['十抽'] ,4,"~A8 B [PC,#0x492A8C]","~A8 RET") gg.toast("玲珑提醒你十抽调出人机局道具赛开启成功") end), }), changan.box({"全解功能", changan.switch('人物全解', function() WX_64(SO['人物'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['收集令牌'], 4, "~A8 MOV W0, #3") gg.toast("玲珑提醒你人物全解开启成功") end), changan.switch("人物直接购买", function() WX_64(SO['人物购买按钮'],4,"~A8 B [PC,#"..TYPY_ST(SO['人物购买按钮'],SO['人物购买成功']).."]","~A8 RET") gg.toast("玲珑提醒你过人物直接购买开启成功") end), changan.switch('滑板全解', function() WX_64(SO['滑板'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你滑板全解开启成功") end), changan.switch("滑板直接购买", function() WX_64(SO['滑板购买按钮'],4,"~A8 B [PC,#"..TYPY_ST(SO['滑板购买按钮'],SO['滑板购买成功']).."]","~A8 RET") gg.toast("玲珑提醒你滑板直接购买开启成功") end), changan.switch('背饰全解', function() WX_64(SO['背饰'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['背饰保存'] ,4,"~A8 MOV W0, #1","~A8 RET")---背饰保存 gg.toast("玲珑提醒你背饰全解开启成功") end), changan.switch("装扮全解", function() WX_64(SO['装扮'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你装扮全解开启成功") end), changan.switch("相框全解", function() WX_64(SO['相框1'],4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你相框全解开启成功") end), changan.switch("技能全解", function() WX_64(SO['技能'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你技能全解开启成功") end), }), changan.box({'修改区域', changan.switch("金币人物", function() local Character = {} time=os.clock() ms.ss(10299,4,32) ms.py(291,0x4,4) ms.py(-1,0x8,4) ms.bc() gg.clearResults() for i , v in ipairs ( data ) do v =v-291*0xE8 for i = 0 , 305 do Character[#Character+1] = {value = 2,address = v + 0x2C + 0xE8 * i,flags = 4} Character[#Character+1] = {value = 0,address = v + 0x30 + 0xE8 * i,flags = 4} Character[#Character+1] = {value = 0,address = v + 0x3C + 0xE8 * i,flags = 4} Character[#Character+1] = {value = 2,address = v + 0x44 + 0xE8 * i,flags = 4} Character[#Character+1] = {value = 0,address = v + 0x64 + 0xE8 * i,flags = 4} end end gg.setValues(Character) local time=string.sub(os.clock()-time,0,5) gg.toast("玲珑提醒你金币人物开启成功") end), changan.switch("金币滑板", function() local Board = {} time=os.clock() ms.ss(20263,4,32) ms.py(254,0x4,4) ms.py(-1,0x8,4) ms.bc() gg.clearResults() for i , v in ipairs ( data ) do v =v-254*0xC0 for i = 0 , 290 do Board[#Board+1] = {value = 2,address = v + 0x24 + 0xC0 * i,flags = 4} Board[#Board+1] = {value = 0,address = v + 0x28 + 0xC0 * i,flags = 4} Board[#Board+1] = {value = 0,address = v + 0x34 + 0xC0 * i,flags = 4} Board[#Board+1] = {value = 2,address = v + 0x4C + 0xC0 * i,flags = 4} Board[#Board+1] = {value = 0,address = v + 0x64 + 0xC0 * i,flags = 4} end end gg.setValues(Board) local time=string.sub(os.clock()-time,0,5) gg.toast("玲珑提醒你金币滑板开启成功") end), changan.switch("金币背饰", function() local Ornament = {} time=os.clock() ms.ss(50061,4,32) ms.py(63,0x4,4) ms.py(-1,0x8,4) ms.bc() gg.clearResults() for i , v in ipairs ( data ) do v =v-63*0x68 for i = 0 , 83 do Ornament[#Ornament+1] = {value = 2,address = v + 0x24 + 0x68 * i,flags = 4} Ornament[#Ornament+1] = {value = 1,address = v + 0x28 + 0x68 * i,flags = 4} Ornament[#Ornament+1] = {value = 0,address = v + 0x30 + 0x68 * i,flags = 4} end end gg.setValues(Ornament) local time=string.sub(os.clock()-time,0,5) gg.toast("玲珑提醒你金币背饰开启成功") end), changan.switch("金币皮肤", function() sz=gg.prompt({"请输入你要修改的购买的形象金币数量"},{"1"},{"text"}) gg.setVisible( false ) local t1 = {} time=os.clock() ms.ss(60129552207,32,32) ms.py(14,0x4,4) ms.py(-1,0x8,4) ms.bc() for i , v in ipairs ( data ) do v =v-14*0xE8 for i = 0 , 318 do t1[#t1+1] = {value = sz[1],address = v + 0x2C + 0xE8 * i,flags = 4} t1[#t1+1] = {value = 0,address = v + 0x30 + 0xE8 * i,flags = 4} t1[#t1+1] = {value = 0,address = v + 0x3C + 0xE8 * i,flags = 4} t1[#t1+1] = {value = 2,address = v + 0x44 + 0xE8 * i,flags = 4} t1[#t1+1] = {value = 0,address = v + 0x64 + 0xE8 * i,flags = 4} end end ms.ss(141733940806,32,32) ms.py(33,0x4,4) ms.py(-1,0x8,4) ms.bc() gg.clearResults() for i , v in ipairs ( data ) do v =v-33*0xC0 for i = 0 , 303 do t1[#t1+1] = {value = sz[1],address = v + 0x24 + 0xC0 * i,flags = 4} t1[#t1+1] = {value = 0,address = v + 0x28 + 0xC0 * i,flags = 4} t1[#t1+1] = {value = 0,address = v + 0x34 + 0xC0 * i,flags = 4} t1[#t1+1] = {value = 2,address = v + 0x4C + 0xC0 * i,flags = 4} t1[#t1+1] = {value = 0,address = v + 0x64 + 0xC0 * i,flags = 4} end end ms.ss(47244690266,32,32) ms.py(11,0x4,4) ms.py(-1,0x8,4) ms.bc() gg.clearResults() for i , v in ipairs ( data ) do v =v-11*0x68 for i = 0 , 91 do t1[#t1+1] = {value = sz[1],address = v + 0x24 + 0x68 * i,flags = 4} t1[#t1+1] = {value = 1,address = v + 0x28 + 0x68 * i,flags = 4} t1[#t1+1] = {value = 0,address = v + 0x30 + 0x68 * i,flags = 4} end end gg.setValues(t1) local time=string.sub(os.clock()-time,0,5) gg.toast("玲珑提醒你金币装扮开启成功") end), }), changan.box({"奖励替换", changan.switch("奖励替换人物" , function() WX_64(SO['奖励替换'],4,"~A8 MOV W0, #10") a = gg.prompt({"请输入人物代码"},{""},{"text"})[1] if not a then return end WX_64(SO['人物奖励'],4,"~A8 MOV W0, #"..a.."") gg.toast("玲珑提醒你奖励替换人物开启成功") end), changan.switch("奖励替换滑板", function() WX_64(SO['奖励替换'],4,"~A8 MOV W0, #12") a = gg.prompt({"请输入滑板代码"},{""},{"text"})[1] if not a then return end WX_64(SO['滑板奖励'],4,"~A8 MOV W0, #"..a.."") gg.toast("玲珑提醒你奖励替换滑板开启成功") end), changan.switch("奖励替换背饰", function() WX_64(SO['奖励替换'],4,"~A8 MOV W0, #14") a = gg.prompt({"请输入背饰代码"},{""},{"text"})[1] if not a then return end WX_64(SO['背饰奖励'],4,"~A8 MOV W0, #"..a.."") gg.toast("玲珑提醒你奖励替换背饰开启成功") end), changan.switch("奖励替换头像框" , function() WX_64(SO['奖励替换'],4,"~A8 MOV W0, #9") a = gg.prompt({"请输入相框代码"},{""},{"text"})[1] if not a then return end WX_64(SO['相框奖励'],4,"~A8 MOV W0, #"..a.."") gg.toast("玲珑提醒你奖励替换头像框开启成功") end), }), changan.box({"直接替换", changan.switch("替换人物", function() a = gg.prompt({"请输入代码"},{""},{"text"})[1] if not a then return end WX_64(SO['替换人物'],4,"~A8 MOV W0, #"..a.."","~A8 RET") gg.toast("玲珑提醒你替换人物开启成功") end), changan.switch("替换滑板", function() a = gg.prompt({"请输入代码"},{""},{"text"})[1] if not a then return end WX_64(SO['替换滑板'],4,"~A8 MOV W0, #"..a.."","~A8 RET") gg.toast("玲珑提醒你替换滑板开启成功") end), changan.switch("替换背饰", function() a = gg.prompt({"请输入代码"},{""},{"text"})[1] if not a then return end WX_64(SO['替换背饰'],4,"~A8 MOV W0, #"..a.."","~A8 RET") gg.toast("玲珑提醒你替换背饰开启成功") end), changan.switch("替换装扮", function() a = gg.prompt({"请输入代码"},{""},{"text"})[1] if not a then return end WX_64(SO['替换装扮'],4,"~A8 MOV W0, #"..a.."","~A8 RET") gg.toast("玲珑提醒你替换装扮开启成功") end), }), changan.box({'游戏特权', changan.switch("十倍得分", function() WX_64(SO['获取十倍'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['解锁十倍'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你十倍得分开启成功") end), changan.switch('微博特权', function() WX_64(SO['微博'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你微博特权开启成功") end), changan.switch("双倍金币", function() WX_64(SO['双倍'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你双倍金币开启成功") end), changan.switch( "破解内购", function() WX_64(SO['内购'] ,4,"~A8 B [PC,#0xD370]","~A8 RET") gg.toast("玲珑提醒你破解内购开启成功") end), changan.switch( "一键领奖", function() WX_64(SO['领奖'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你一键领奖开启成功") end), }), changan.box({"数据修改", changan.edit("普通金币数量","普通金币数量"), changan.edit("普通钥匙数量","普通钥匙数量"), changan.edit("宝物钥匙数量","宝物钥匙数量"), changan.edit("赛季货币数量","赛季货币数量"), changan.edit("燃跑炫卡等级","燃跑炫卡等级"), changan.edit("无尽历史分数","无尽历史分数"), changan.edit("无尽历史排名","无尽历史排名"), changan.edit("账号当前等级","账号当前等级"), changan.edit("道赛显示全服","道赛显示全服"), changan.edit("道赛显示省标","道赛显示省标"), changan.button( "确认更改", function() local table={ changan.getedit("普通金币数量"), changan.getedit("普通钥匙数量"), changan.getedit("宝物钥匙数量"), changan.getedit("赛季货币数量"), changan.getedit("燃跑炫卡等级"), changan.getedit("无尽历史分数"), changan.getedit("无尽历史排名"), changan.getedit("账号当前等级"), changan.getedit("道赛显示全服"), changan.getedit("道赛显示省标"), } for Key,value in pairs(table)do if(Key==1 and value ~="")then local num_1 = changan.getedit("普通金币数量") local num_1 = tonumber(num_1) SO_Deposit(SO['金币'] ,4,num_1,"~A8 RET") elseif(Key==2 and value ~="")then local num_1 = changan.getedit("普通钥匙数量") local num_1 = tonumber(num_1) SO_Deposit(SO['钥匙'] ,4,num_1,"~A8 RET") elseif(Key==3 and value ~="")then local num_1 = changan.getedit("宝物钥匙数量") local num_1 = tonumber(num_1) SO_Deposit(SO['宝物钥匙'] ,4,num_1,"~A8 RET") elseif(Key==4 and value ~="")then local num_1 = changan.getedit("赛季货币数量") local num_1 = tonumber(num_1) SO_Deposit(SO['紫币'] ,4,num_1,"~A8 RET") elseif(Key==5 and value ~="")then WX_64(SO['炫跑卡'] ,4,"~A8 MOV W0, #"..changan.getedit("燃跑炫卡等级"),"~A8 RET") elseif(Key==6 and value ~="")then local num_1 = changan.getedit("无尽历史分数") local num_1 = tonumber(num_1) SO_Deposit(SO['历史分数1'] ,4,num_1,"~A8 RET") SO_Deposit(SO['历史分数2'] ,4,num_1,"~A8 RET") string.toMusic('数据修改成功 重启即可') elseif(Key==7 and value ~="")then local num_1 = changan.getedit("无尽历史排名") local num_1 = tonumber(num_1) SO_Deposit(SO['历史排名'] ,4,num_1,"~A8 RET") elseif(Key==8 and value ~="")then local num_1 = changan.getedit("账号当前等级") local num_1 = tonumber(num_1) SO_Deposit(SO['等级'] ,4,num_1,"~A8 RET") elseif(Key==9 and value ~="")then WX_64(SO['全服'] ,4,"~A8 MOV W0, #"..changan.getedit("道赛显示全服"),"~A8 RET") elseif(Key==10 and value ~="")then WX_64(SO['省标'] ,4,"~A8 MOV W0, #"..changan.getedit("道赛显示省标"),"~A8 RET") end end end), }), },{---第四页 changan.switch("断网状态" , function() gg.alert("使用方法:道具赛开局开,到跳秒结束后关闭,一局一开") WX_64(SO['断网1'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['断网2'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你断网状态开启成功") end, function () WX_64(SO['断网1'] ,4,"~A8 MOV W0, WZR","~A8 RET") WX_64(SO['断网2'] ,4,"~A8 MOV W0, WZR","~A8 RET") gg.toast("玲珑提醒你断网状态恢复成功") end), changan.switch("隐藏数据" , function() WX_64(SO['隐藏1'] ,4,"~A8 MOV W0, WZR","~A8 RET") WX_64(SO['隐藏2'] ,4,"~A8 MOV W0, WZR","~A8 RET") WX_64(SO['隐藏3'] ,4,"~A8 MOV W0, WZR","~A8 RET") WX_64(SO['隐藏4'] ,4,"~A8 MOV W0, WZR","~A8 RET") WX_64(SO['隐藏5'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['防举报3'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['防举报4'],4,"~A8 MOV W0, #1","~A8 RET") gg.toast('玲珑提醒你隐藏数据开启成功') end), changan.switch("过1.40秒检测", function() WX_64(SO['屏蔽时间检10'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['时间检测'],4,"~A8 MOV W0, WZR","~A8 RET") WX_64(SO['屏蔽时间检9'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['隐藏5'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['屏蔽时间检1'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['屏蔽时间检5'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['屏蔽时间检6'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['防举报1'], 4, "~A8 MOV W0, WZR","~A8 RET") WX_64(SO['防举报2'], 4, "~A8 MOV W0, WZR","~A8 RET") gg.toast("玲珑提醒你过1.40秒检测开启成功") end), changan.box ( { "娱乐区" , ---box示例 可以删掉 changan.text("无尽障碍赛不落地等模式通用",nil,"15dp",true), changan.switch("得到分数", function() a = gg.prompt({"输入要修改的分数"},{""},{"text"})[1] a= tonumber(a) SO_Deposit(SO['得到分数'],4,a,"~A8 RET") gg.toast("玲珑提醒你得到分数开启成功") end), changan.switch("退出登录", function() WX_64(SO['退出登录'],4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你退出登录开启成功") end), changan.switch("修改超级跑者", function() a = gg.prompt({"请输入想改的超级跑者等级"},{""},{"text"})[1] if not a then return end WX_64(SO['超级跑者'],4,"~A8 MOV W0, #"..a.."","~A8 RET") gg.toast("玲珑提醒你超级跑者开启成功") end), changan.switch("解锁当前滑板技能", function() WX_64(SO['使用技能'],4,"~A8 MOV W0, #1","~A8 RET") string.toMusic("解锁当前滑板技能开启成功") gg.toast("玲珑提醒你解锁当前滑板技能开启成功") end), changan.switch("历史段位", function() a = gg.prompt({""},{""},{"text"})[1] if not a then return end WX_64(SO['历史段位'],4,"~A8 MOV W0, #"..a.."","~A8 RET") gg.toast("玲珑提醒你历史段位开启成功") end), changan.switch("滑板特效消失", function () WX_64(SO['滑板消失'],4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你滑板特效消失开启成功") end), changan.switch("观战对手", function() WX_64(SO['观战对手'],4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你观战对手开启成功") end, function() WX_64(SO['观战对手'],4,"~A8 RET") gg.toast("玲珑提醒你观战对手关闭成功") end), changan.switch("调出观战", function() WX_64(SO['赛事'],4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你调出观战开启成功") end, function() WX_64(SO['赛事']"~A8 RET") gg.toast("玲珑提醒你调出观战对手关闭成功") end, function () end), changan.switch("超长名字", function() WX_64(SO['名称'] ,4,"~A8 B [PC,#0x100]","~A8 RET") gg.toast("玲珑提醒你超长名字开启成功") end), changan.switch("下滑拖尾加重", function() WX_64(SO['拖尾'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你下滑拖尾加重开启成功") end), changan.switch("三倍金币", function() WX_64(SO['三倍金币'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你三倍金币开启成功") end), changan.text("切记功能要开一把道具赛后再开启,否则失效" , nil , "13sp",true ) , changan.switch("全局速度", function() gg.setRanges(32) local Name="全局速度" local dataType = 16 local tb1 = {{6000,0x0},{300.0,-0x18}} local tb2 = {{0,-0x5C},{0,-0x6C},{1300,-0x70}} SearchWrite(tb1, tb2, dataType) gg.toast("玲珑提醒你全局速度开启成功") end), changan.switch("滑板延长", function() gg.setRanges(32) local Name="滑板延长" local dataType = 16 local tb1 = {{6000,0x0},{300.0,-0x18}} local tb2 = {{0,0x4},{0,-0xC},{12050,-0x10}} SearchWrite(tb1, tb2, dataType) gg.toast("玲珑提醒你滑板延长开启成功") end), changan.switch("滑板速度", function() gg.setRanges(32) local Name="滑板速度微加" local dataType = 16 local tb1 = {{6000,0x0},{300.0,-0x18}} local tb2 = {{0,0xC},{0,0x1C},{1995,0x8}} SearchWrite(tb1, tb2, dataType) gg.toast("玲珑提醒你滑板速度开启成功") end), changan.switch("加速带速度", function() gg.setRanges(32) local Name="加速带速度微加" local dataType = 16 local tb1 = {{6000,0x0},{300.0,-0x18}} local tb2 = {{0,-0x44},{0,-0x54},{2500,-0x58}} SearchWrite(tb1, tb2, dataType) gg.toast("玲珑提醒你加速度速度开启成功") end), changan.switch("基础速度", function() gg.setRanges(32) local Name="基础速度微加" local dataType = 16 local tb1 = {{6000,0x0},{300.0,-0x18}} local tb2 = {{0,0x34},{0,0x24},{1400,0x20}} SearchWrite(tb1, tb2, dataType) gg.toast("玲珑提醒你基础速度开启成功") end), changan.switch("减速恢复", function() gg.setRanges(32) local Name="减速恢复微加" local dataType = 16 local tb1 = {{6000,0x0},{300.0,-0x18}} local tb2 = {{0,0x3C},{0,0x4C},{10000,0x38}} SearchWrite(tb1, tb2, dataType) gg.toast("玲珑提醒你减速恢复开启成功") end), }) , changan.box ( { "道具赛" , ---box示例 可以删掉 changan.switch("Buff聚能" , function() WX_64(SO['Buff模式'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['Buff模式'] ,SO['获取能量1']).."]","~A8 RET") gg.toast("玲珑提醒你Bbff聚能开启成功") end), changan.switch("下滑倍增", function() WX_64(SO['跳跃'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['跳跃'] ,SO['获取能量1']).."]","~A8 RET") WX_64(SO['下滑1'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['下滑1'] ,SO['获取能量1']).."]","~A8 RET") gg.toast("玲珑提醒你下滑倍增开启成功") end), changan.switch("点击道具聚能", function() WX_64(SO['道具图标3'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['道具图标3'] ,SO['获取能量2']).."]","~A8 RET") WX_64(SO['道具图标'],4,"~A8 MOV W0, #565","~A8 RET") gg.toast("可以配上连点器使用,但不能使用道具了") end), changan.switch("能量消失", function() WX_64(SO['能量消失'],4,"~A8 MOV W0, WZR","~A8 RET") gg.toast("玲珑提醒你能量消失开启成功") end, function() WX_64(SO['能量消失'],4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你能量消失关闭成功") end), changan.switch("开板聚能", function() WX_64(SO['道具图标2'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['道具图标2'] ,SO['获取能量1']).."]","~A8 RET") gg.toast("玲珑提醒你开板聚能开启成功") end), changan.switch("一能量一板" , function() WX_64(SO['局内金币'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['局内金币'] ,SO['获取能量1']).."]","~A8 RET") gg.toast("玲珑提醒你一能量一板开启成功") end, function () WX_64XG(SO['局内金币'],4 ,"F657BDA9r","F44F01A9r") gg.toast ('玲珑提醒你一能量一板关闭成功') end), changan.switch("自动开板", function() WX_64(SO['开板效果'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['开板效果'] ,SO['保持效果']).."]","~A8 RET") gg.toast("玲珑提醒你自动开板开启成功") end, function() WX_64(SO['开板效果'],4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你自动开板关闭成功成功") end), changan.switch("道具图标", function() local j_1 = { "道具类型"..[[ 无 = 0 导弹 = 1 蓝泡泡 = 2 护盾 = 4 香蕉 = 8 颜料 = 16 恶魔 = 32 绿泡泡 = 64 狗子 = 128 能量 = 256 乌龟 = 272 云雾 = 288 净化饮料 = 320 磁铁 = 384 群体护盾 = 512 双乌龟对抗赛 = 528 双导弹对抗赛 = 544 群体护盾对抗赛 = 545 滑板 = 560 捕捉观看 = 561 超级冲刺 = 562 羽毛 = 563 砝码 = 564 UFO = 565 充满能量 = 566 龙卷风 = 567 刺激剂 = 568 刺激剂_增加 = 569 ]] } local f_2 local y_3 = { "text" } local Prompt = gg.prompt ( j_1 , f_2 , y_3 ) if Prompt == nil then return else WX_64(SO['道具图标'],4,"~A8 MOV W0, #" ..Prompt[1].."","~A8 RET") gg.toast("玲珑提醒你道具图标修改成功") end end, function() end), changan.switch("无视障碍" , function() WX_64(SO['无视障碍'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你无视障碍开启成功") end), changan.switch("能量穿透" , function() WX_64(SO['能量穿透'] ,4,"~A8 MOV W0, WZR","~A8 RET") gg.toast("玲珑提醒你能量穿透开启成功") end, function () WX_64(SO['能量穿透'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你能量穿透关闭成功") end), changan.switch("滑板瞬移", function() WX_64(SO['滑板瞬移'],4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你滑板瞬移开启成功") end), changan.switch("反弹道具", function() WX_64(SO['反弹道具1'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['反弹道具2'] ,4,"~A8 MOV W0, WZR","~A8 RET") gg.toast("玲珑提醒你反弹道具开启成功") end, function() WX_64(SO['反弹道具2'] ,4,"~A8 MOV W0, WZR","~A8 RET") WX_64(SO['反弹道具1'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你反弹道具关闭成功") end), changan.switch("无视道具[全部]", function() WX_64(SO['无视道具1'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['速度不变'],4,"~A8 MOV W0, WZR","~A8 RET") gg.toast("玲珑提醒你无视道具开启成功") end), changan.switch("无视道具2", function() WX_64(SO['无视道具3'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['速度不变'],4,"~A8 MOV W0, WZR","~A8 RET") gg.alert("人机模式不能用") gg.toast("玲珑提醒你无视道具开启成功") end), changan.switch("道具赛改段位", function() a = gg.prompt({'1=青铜\n2=白银\n3=黄金\n4=铂金\n5=钻石\n6=王者[1;6]'},{[1]=6},{[1]='number'})[1] if not a then return end WX_64(SO['段位'],4,"~A8 MOV W0, #"..a.."","~A8 RET") gg.toast("玲珑提醒你道具赛改段位开启成功") end), changan.switch("开局道具", function() a = gg.prompt({'道具代码:\n1=恶魔 2=乌龟 3=颜料 4=能量10%[1;4]'},{[1]=2},{[1]='number'})[1] if not a then return end WX_64(SO['开局道具'],4,"~A8 MOV W0, #"..a.."","~A8 RET") gg.toast("玲珑提醒你开局道具开启成功") end), changan.switch("修改星数", function() a = gg.prompt({'道具赛自定义星数[1;9999]'},{[1]=200},{[1]='number'})[1] if not a then return end WX_64(SO['星数'],4,"~A8 MOV W0, #"..a.."","~A8 RET") gg.toast("玲珑提醒你修改星数成功") end), changan.switch("100%匹配人机" , function() WX_64(SO['匹配机制3'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['匹配机制3'] ,SO['竞赛模式1']).."]","~A8 RET") WX_64(SO['匹配机制2'] ,4,"~A8 MOV W0, #1","~A8 RET") gg.toast("玲珑提醒你匹配人机开启成功") end), changan.switch("社团表情发信息" , function() WX_64(SO['点击表情'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['点击表情'] ,SO['匹配机制1']).."]","~A8 RET") gg.toast("玲珑提醒你社团表情发信息开启成功") end), changan.switch("好友聊天骂人", function() WX_64(SO['发送信息'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['发送信息'] ,SO['发送成功']).."]") gg.toast("玲珑提醒你好友聊天骂人开启成功") end), changan.switch("发言无视敏感词语", function() WX_64(SO['无视敏感词'] ,4,"~A8 B [PC,#0x510]","~A8 RET") --string.toMusic('发言无视敏感词语开启成功') gg.toast("玲珑提醒你发言无视敏感词语开启成功") end), changan.switch("房间踢人" , function() WX_64(SO['好友踢人'] ,4,"~A8 B [PC,#-0x204]","~A8 RET") gg.toast("玲珑提醒你房间踢人开启成功") end), }) , changan.box({"分数赛",---box示例 可以删掉 changan.switch("屏蔽分数检测", function() WX_64(SO['行为弹窗'] ,4,"~A8 RET") WX_64(SO['行为39'] ,4,"~A8 RET") gg.toast("玲珑提醒你屏蔽分数检测开启成功") end), changan.switch("金币分数",function() gg.alert("建议搭配三倍金币 铁轨金币使用") a = gg.prompt({"输入要修改的倍数"},{""},{"text"})[1] a= tonumber(a) SO_Deposit(SO['金币分数'],4,a,"~A8 RET") end, function() WX_64(SO['金币分数'],4,"~A8 MOV W0, #1","~A8 RET") end), changan.switch("局内分数", function() a = gg.prompt({"输入要修改的分数"},{""},{"text"})[1] a= tonumber(a) SO_Deposit(SO['得到分数'],4,a,"~A8 RET") gg.toast("玲珑提醒你局内分数修改成功") end), changan.text("修改倍数对局加载界面开启",nil,"15dp",true), changan.switch("修改倍数[30/107]", function() WX_64(SO['得分倍增'],4,"~A8 MOV W0, #107") gg.toast("玲珑提醒你得分倍增修改成功") end, function() WX_64(SO['得分倍增'],4,"~A8 MOV W0, #30") gg.toast("玲珑提醒你得分倍增关闭成功") end), changan.switch("修改速度", function() local lib = gg.getRangesList() for _ in ipairs(lib) do if string.find(lib[_].name, 'libil2cpp.so') and lib[_].state == 'Xa' and lib[_].type == 'r-xp' then module = lib[_].start break end end function returnValue(set) local inputRegister local page = module + set[1] local mmap = set[4] local setva = { {address = mmap + 0x4, flags = 4, value = '~A8 BR X30'}, {address = mmap + set[2], flags = 16, value = set[3]}, {address = page, flags = 4, value = '~A8 LDR X0, [PC,#0x8]'}, {address = page + 0x4, flags = 4, value = '~A8 BR X0'}, {address = page + 0x8, flags = 32, value = mmap}, } if set[3] % 1 == 0 then inputRegister = 'X0' else inputRegister = 'S0' end table.insert(setva, {address = mmap, flags = 4, value = '~A8 LDR '..inputRegister..', [PC,#'..string.format('0x%X', set[2])..']'}) return gg.setValues(setva) end returnValue{ SO['人物速度'], 0x3BC, 417.5, gg.allocatePage(gg.PROT_READ | gg.PROT_WRITE | gg.PROT_EXEC), } gg.toast("玲珑提醒你修改速度开启成功") end), }), changan.box({"派对赛", changan.button("❗派对[结算]必看教程❗", function() gg.alert("重要提示:开了表情退出就不能用表情复活\n\n1.先开过检测\n2.开下滑瞬移\n3.再开表情复活\n4.再开结算自动退出\n5.倒计时321点文字或表情 往下滑就可以获胜 然后再点退出 (加星要等整局游戏结束)") end), changan.switch("结算检测", function() WX_64(SO['结算检测1'],4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['结算检测2'],4,"~A8 MOV W0, WZR","~A8 RET") WX_64(SO['结算检测3'],4,"~A8 MOV W0, WZR","~A8 RET") WX_64(SO['结算检测4'],4,"~A8 MOV W0, #1","~A8 RET") --结算检测 gg.toast("玲珑提醒你结算检测开启成功") end), changan.switch("表情退出", function() WX_64(SO['表情退出'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['表情退出'] ,SO['退出界面']).."]","~A8 RET") gg.toast("玲珑提醒你表情退出开启成功") end), changan.switch("字改退出", function() WX_64(SO['改字复活'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['改字复活'] ,SO['退出界面']).."]","~A8 RET") gg.toast("玲珑提醒你字改退出开启成功") end), changan.switch("表情改复活", function() WX_64(SO['表情退出'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['表情退出'] ,SO['灵魂出窍']).."]","~A8 RET") gg.toast("玲珑提醒你表情改复活开启成功") end), changan.switch("字改复活", function() WX_64(SO['改字复活'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['改字复活'] ,SO['灵魂出窍']).."]","~A8 RET") gg.toast("玲珑提醒你字改复活开启成功") end), changan.switch("结算自动退出", function() WX_64(SO['结算退出'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['结算退出'] ,SO['退出界面']).."]","~A8 RET") gg.toast("玲珑提醒你结算自动退出开启成功") end), changan.switch("下滑瞬移", function() --libil2cpp.so + 0x20DA78 -> 0x98 -> 0xB8 -> 0x2C local addr = readPointer("libil2cpp.so", {2153080, 152, 184, 44}, 3) gg.edits(addr, {{99999, 16, 0, true}}) end, function() --libil2cpp.so + 0x20DA78 -> 0x98 -> 0xB8 -> 0x2C local addr = readPointer("libil2cpp.so", {2153080, 152, 184, 44}, 3) gg.edits(addr, {{0, 16, 0, true}}) end), changan.switch("调出撑杆跳" , function () WX_64(SO['撑杆'], 4, "~A8 B [PC,#0x19E8]","~A8 RET") string.toMusic("玲珑已为您开启调出撑杆跳") end, function () WX_64XG(SO['撑杆'],4,"-788,282,369","1,829,446,633") string.toMusic("玲珑已为您关闭调出撑杆跳") end), changan.switch("派对全服", function() a = gg.prompt({""},{""},{"text"})[1] if not a then return end WX_64(SO['派对全服'],4,"~A8 MOV W0, #"..a.."","~A8 RET") string.toMusic("修改成功") end, function() end), changan.switch("派对省排", function() a = gg.prompt({""},{""},{"text"})[1] if not a then return end WX_64(SO['派对省排'],4,"~A8 MOV W0, #"..a.."","~A8 RET") string.toMusic("修改成功") end, function() end), changan.switch("派对省份", function() a = gg.prompt({"0=其他地区\n1=北京\n2=上海\n3=天津\n4=重庆\n5=河北\n6=山西\n7=河南\n8=辽宁\n9=吉林\n10=黑龙江\n11=内蒙古\n12=江苏\n13=山东\n14=安徽\n15=浙江\n16=福建\n17=湖北\n18=湖南\n19=广东\n20=广西\n21=江西\n22=四川\n23=海南\n24=贵州\n25=云南\n26=西藏\n27=陕西\n28=甘肃\n29=青海\n30=宁夏\n31=新疆\n32=香港\n33=澳门\n34=台湾"},{""},{"text"})[1] if not a then return end WX_64(SO['派对省份'],4,"~A8 MOV W0, #"..a.."","~A8 RET") string.toMusic("修改成功") end, function() end), changan.switch("派对道具等级", function() a = gg.prompt({""},{""},{"text"})[1] if not a then return end WX_64(SO['道具等级'],4,"~A8 MOV W0, #"..a.."","~A8 RET") string.toMusic("修改成功") end, function() end), changan.switch("派对道具满级" , function() WX_64(SO['道具满级'] ,4,"~A8 MOV W0, #1","~A8 RET") WX_64(SO['道具等级'] ,4,"~A8 MOV W0, #99","~A8 RET") string.toMusic("开启成功") end), changan.switch("直接结算", function() local nc={} local so=gg.getRangesList("il2cpp.so") for i=1,#so do nc[i]=so[i].state if nc[i]=="Xa" then nc=i break end end local so=so[nc].start local py=SO['防止卡屏1'] gg.setValues({{address=so+py,flags=4,value="~A8 MOV W0, #1"}}) gg.setValues({{address=so+py+4,flags=4,value="~A8 RET"}}) local nc={} local so=gg.getRangesList("il2cpp.so") for i=1,#so do nc[i]=so[i].state if nc[i]=="Xa" then nc=i break end end local so=so[nc].start local py=SO['结束游戏'] gg.setValues({{address=so+py,flags=4,value="~A8 MOV W0, #1"}}) gg.setValues({{address=so+py+4,flags=4,value="~A8 RET"}}) string.toMusic("结算成功") end, function() WX_64(SO['结束游戏'],4,"~A8 MOV W0, WZR","~A8 RET") string.toMusic("关闭成功") end, function () end), changan.switch("buff聚能[大厅]" , function() WX_64(SO['Buff模式'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['Buff模式'] ,SO['获取能量1']).."]","~A8 RET") string.toMusic('buff聚能开启成功') end), changan.switch("无视障碍" , function() WX_64(SO['无视障碍'] ,4,"~A8 MOV W0, #1","~A8 RET") string.toMusic('无视障碍开启成功') end), changan.switch("能量穿透" , function() WX_64(SO['能量穿透'] ,4,"~A8 MOV W0, WZR","~A8 RET") string.toMusic('能量穿透开启成功') end, function () WX_64(SO['能量穿透'] ,4,"~A8 MOV W0, #1","~A8 RET") string.toMusic('能量穿透恢复成功') end), changan.switch("滑板瞬移", function() WX_64(SO['滑板瞬移'],4,"~A8 MOV W0, #1","~A8 RET") string.toMusic('滑板瞬移开启成功') end), }), changan.box({"无尽赛", changan.switch("无尽装死", function() WX_64(SO['无尽装死'],4,"~A8 MOV W0, #1","~A8 RET") end), changan.switch("无限跳跃", function() WX_64(SO['无限跳跃'],4,"~A8 MOV W0, #1","~A8 RET") end), changan.switch("滑板飞翔", function() WX_64(SO['滑板滑翔'],4,"~A8 MOV W0, #1","~A8 RET") end, function() WX_64(SO['滑板滑翔'],4,"~A8 MOV W0, #1","~A8 RET") end), changan.switch("滑板跳高", function() WX_64(SO['滑板跳高'],4,"~A8 MOV W0, #1","~A8 RET") end, function() WX_64(SO['滑板跳高'],4,"~A8 MOV W0, WZR","~A8 RET") end), changan.switch("滑板瞬移", function() WX_64(SO['滑板瞬移'],4,"~A8 MOV W0, #1","~A8 RET") end, function() WX_64(SO['滑板瞬移'],4,"~A8 MOV W0, WZR","~A8 RET") end), changan.switch("撞墙撑杆", function() WX_64(SO['无尽死亡'],4,"~A B -0x0000062C") end), changan.switch('金币消失', function() WX_64(SO['金币消失'],'~A8 MOV W0, WZR',"~A8 RET") end), changan.switch("结算消失", function () WX_64(SO['战绩消失'] ,4,'~A8 MOV W0, WZR',"~A8 RET") string.toMusic("结算消失开启成功") end), changan.switch('平板视角',function() search(1.5,16,32) py1(33,16,0xC) py1(20,16,0x18) xg1(45,16,0x1C,true) gg.alert('平板视角开启成功') end, function() search(1.5,16,32) py1(33,16,0xC) py1(20,16,0x18) xg1(40,16,0x1C,true) end), changan.switch("百倍速度", function () A = gg.prompt({""},{[1]="10"},{"number"}) if A==nil then gg.alert("您选择了取消") Main0() else if A=="" then gg.alert("您还未输入") Main0() end local t = {"libunity.so:bss", "Cb"} local tt = {0x15508, 0xFC} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = A[1], freeze = true}}) string.toMusic("百倍速度开启成功") end end, function() local t = {"libunity.so:bss", "Cb"} local tt = {0x15508, 0xFC} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = 1, freeze = true}}) string.toMusic("百倍速度关闭成功") end), }), changan.box({"对抗赛", changan.switch("道具赛修改对抗赛" , function() WX_64(SO['修改对抗赛'] ,4,"~A8 MOV W0, #1","~A8 RET") string.toMusic("修改对抗赛开启成功") end), changan.switch("队友秒自救" , function() WX_64(SO['局内金币'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['局内金币'] ,SO['自救']).."]","~A8 RET") string.toMusic("队友秒自救开启成功") end), changan.text('点击能量图标获取道具再点击道具就可以发射',nil,'15sp',true), changan.switch("无限道具", function() WX_64(SO['释放能量'] ,4,"~A8 B [PC,#"..TYPY_ST(SO['释放能量'] ,SO['修改道具']).."]","~A8 RET") local j_1 = { "道具类型"..[[ 无 = 0 导弹 = 1 蓝泡泡 = 2 护盾 = 4 香蕉 = 8 颜料 = 16 恶魔 = 32 绿泡泡 = 64 狗子 = 128 能量 = 256 乌龟 = 272 云雾 = 288 净化饮料 = 320 磁铁 = 384 群体护盾 = 512 双乌龟对抗赛 = 528 双导弹对抗赛 = 544 群体护盾对抗赛 = 545 滑板 = 560 捕捉观看 = 561 超级冲刺 = 562 羽毛 = 563 砝码 = 564 UFO = 565 充满能量 = 566 龙卷风 = 567 刺激剂 = 568 刺激剂_增加 = 569 ]] } local f_2 local y_3 = { "text" } local Prompt = gg.prompt ( j_1 , f_2 , y_3 ) if Prompt == nil then return else WX_64(SO['道具图标2'],4,"~A8 MOV W0, #" ..Prompt[1].."","~A8 RET") gg.alert("不要开局准备状态点击图标不然放不出道具") string.toMusic("开启成功") end end, function() end), }), },{---第四页 changan.switch( "音量键隐藏UI", function() 音量键=true end, function() 音量键=false end ), changan.switch( "摇一摇隐藏UI", function() 摇一摇=true end, function() 摇一摇=false end ), changan.button( "退出", function() tuichu=1 end), }, })