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(0x2B959B6B) 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 Main0() SN = gg.choice({ "上", "定", "下", "飞开", "飞关", "退出脚本", }, nil, "小神飞天") if SN==1 then S1() end if SN==2 then S2() end if SN==3 then S3() end if SN==4 then S4() end if SN==5 then S5() end if SN==6 then os.exit() end FX1=0 end function S1() local t = {"libUE4.so:bss", "Cb"} local tt = {0x210BE0, 0xA8, 0x30} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 2000}}) end function S2() local t = {"libUE4.so:bss", "Cb"} local tt = {0x210BE0, 0xA8, 0x30} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0}}) end function S3() local t = {"libUE4.so:bss", "Cb"} local tt = {0x210BE0, 0xA8, 0x30} local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = -2000}}) end function S4() 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 getRanges() local ranges = {} local tt = {} local t = gg.getRangesList('^/data/*.so*$') for i in pairs(t) do if t[i].type:sub(2, 2) == 'w' or t[i].type == "r-xp" then if not tt[t[i].internalName] then tt[t[i].internalName] = {} end if not tt[t[i].internalName][t[i].state] then tt[t[i].internalName][t[i].state] = 0 end tt[t[i].internalName][t[i].state] = tt[t[i].internalName][t[i].state] + 1 t[i].count = tt[t[i].internalName][t[i].state] table.insert(ranges, t[i]) end end return ranges end function Base_Address(N_So) local S_list = getRanges() local _S = {} 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 and N_So[3] == S_list[i].count then _S = S_list[i] break end end return _S.start end function Get_Address(Address, Offset) local flags_bit = {[true] = 32, [false] = 4} local ti64 = gg.getTargetInfo().x64 local Type = flags_bit[ti64] local addr = 0 if Address then addr = Address + Offset[1] for _ = 2, #Offset do local pointer = gg.getValues({{address = addr, flags = Type}}) if not ti64 then pointer[1].value = pointer[1].value & 0xFFFFFFFF end addr = pointer[1].value + Offset[_] end end return addr end local t = Base_Address({"libUE4.so:bss", "Cb", 1}) local tt = {0x1FF48C, 0x20} local ttt = Get_Address(t, tt) gg.setValues({{address = ttt, flags = 16, value = 200}})---小晨 local t = Base_Address({"libUE4.so:bss", "Cb", 1}) local tt = {0x1FF48C, 0x24} local ttt = Get_Address(t, tt) gg.setValues({{address = ttt, flags = 16, value = 200}})--小晨 gg.toast("开启成功") local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8,0x20,0x2CC,0x310,0x1AC} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = 99999999, freeze = true}}) local t = {"libUE4.so:bss", "Cb"} local tt = {0x1EA3A8,0x20,0x2CC,0x310,0x1AC} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = 0.05000000075, freeze = true}}) 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 = {0x1EA3A8, 0x20, 0x2CC, 0x14F0} local ttt = S_Pointer(t, tt) gg.setValues({{address=ttt,flags=16,value=999999999}}) 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=100}}) 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.7}}) 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 = {0x2494A0, 0xB4, 0xD90, 0x19F4}local ttt = S_Pointer(t, tt) gg.setValues({{address = ttt, flags = 16, value = 0.48}}) local tt = {0x1EA3A8,0x20,0x2CC,0x310,0x1AC} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = 99999999, freeze = true}}) 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}}) so=gg.getRangesList('libUE4.so')[1].start py=0X2CA998C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X2647E54 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X2C33524 setvalue(so+py,16,9.5) so=gg.getRangesList('libUE4.so')[1].start py=0X26FCA34 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X270878C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X2D082A0 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X2D082A4 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XCB8AFC setvalue(so+py,16,-3.83692305e21) so=gg.getRangesList('libUE4.so')[1].start py=0X270FD5C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XCB86D0 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=0X267C928 setvalue(so+py,16,999) so=gg.getRangesList('libUE4.so')[1].start py=0XCADC2C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XCADA50 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XCAE2A4 setvalue(so+py,16,0) 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=0XCAFF20 setvalue(so+py,16,1.45) so=gg.getRangesList('libUE4.so')[1].start py=0X2728CAC setvalue(so+py,16,-2.6563314e21) so=gg.getRangesList('libUE4.so')[1].start py=0XCAE20C setvalue(so+py,16,-9.9065426e27) so=gg.getRangesList('libUE4.so')[1].start py=0X2728CA0 setvalue(so+py,16,0.00100000005) so=gg.getRangesList('libUE4.so')[1].start py=0X1250170 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X12501F8 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26E20D8 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26E20DC setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26FCA38 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XCADE2C setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XCADE80 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0XCB8B34 setvalue(so+py,16,0) so=gg.getRangesList('libUE4.so')[1].start py=0X26FCA44 setvalue(so+py,16,0.3) end function S5() so=gg.getRangesList('libUE4.so')[1].start py=0X2CA998C setvalue(so+py,16,-5.5723836e27) so=gg.getRangesList('libUE4.so')[1].start py=0X2647E54 setvalue(so+py,16,-5.10801854e27) 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", "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,0x310,0x1AC} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 16, value = 0.05000000075, freeze = true}}) end while true do if gg.isVisible(true) then FX1 = nil gg.setVisible(false) end if FX1 == nil then Main0() end end