local soname, somark = nil, nil -- 执行次数统计 local filePath = "/sdcard/gg_script_execution_count.txt" local file = io.open(filePath, "r") local count = 0 if file then count = tonumber(file:read("*a")) or 0 file:close() end count = count + 1 file = io.open(filePath, "w") if file then file:write(tostring(count)) file:close() end function getSoConfig() if soname then return soname, somark end local t = gg.getRangesList('^*base.apk*$') for i, v in ipairs(t) do if v.type:sub(2,2) == 'w' and (v["end"] - v.start) > 10*1024*1024 then soname, somark = "base.apk", "O" return soname, somark end end soname, somark = "libil2cpp.so", "Cd" return soname, somark end ------------------------------------------------------------------ function S_Pointer(t_So,t_Offset,_bit) local function getRanges() local ranges={} local t=gg.getRangesList('^*base.apk*$') for i,v in pairs(t) do if v.type:sub(2,2)=='w' and(v["end"]-v.start)>10*1024*1024 then table.insert(ranges,v) end end if #ranges==0 then t=gg.getRangesList('libil2cpp.so') for i,v in pairs(t) do if v.type:sub(2,2)=='w' and v.state=="Cd" then table.insert(ranges,v) end 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 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 return Get_Address(t_So,t_Offset,_bit) end ---------- local colorList = { "#1E90FF", "#FF69B4", "#32CD32", "#FF4500", "#9370DB", "#00CED1", "#FF6347", "#20B2AA", "#FF1493", "#00FF7F", "#9932CC", "#00BFFF", "#FF7F50", "#66CDAA", "#8A2BE2", "#00FA9A", "#DC143C", "#191970", "#3CB371", "#FF00FF", "#87CEEB", "#008080", "#DDA0DD", "#228B22", "#FF0000", "#0000FF", "#FFFFFF", "#000000", "#808080", "#C0C0C0", "#FFC0CB", "#800080", "#008000", "#800000", "#00FFFF", "#FFE4E1", "#4169E1", "#8FBC8F", "#FA8072", "#2E8B57", "#7FFF00", "#FFA07A", "#FF8C69", "#FF6600", "#FF3300", "#FF2200", "#FF1100", "#FF0033", "#FF0066", "#FF0099", "#FF00CC", "#FFD1DC", "#FFF0F5", "#FFFAF0", "#FF7F24", "#FF5500", "#FF4400", "#FF3333", "#FF2222", "#FF1111", "#FF9900", "#FFAA00", "#90EE90", "#006400", "#48D1CC", "#40E0D0", "#5F9EA0", "#B0E0E6", "#ADD8E6", "#0000CD", "#00008B", "#0066CC", "#0099CC", "#33CCFF", "#3399FF", "#3366FF", "#3333FF", "#6633FF", "#6666FF", "#9966FF", "#CC33FF", "#CC66FF", "#A020F0", "#EE82EE", "#FF99FF", "#8B008B", "#9400D3", "#BA55D3", "#E6E6FA", "#7B68EE", "#6A5ACD", "#4B0082", "#F0F8FF", "#F5F5F5", "#F0FFF0", "#F5FFFA", "#F0FFFF", "#F8F8F8", "#C71585", "#DB7093", "#FF83FA", "#FFBFFF", "#FF8CFF", "#FF4FFF" } local randomIndex = math.random(1, #colorList) local randomColor = colorList[randomIndex] local text = "公益版本@SLNB71" local x, y, size = 130, 800, 21 drawText(text, randomColor, x-1, y-1, size, 0) drawText(text, randomColor, x+1, y-1, size, 0) drawText(text, randomColor, x-1, y+1, size, 0) drawText(text, randomColor, x+1, y+1, size, 0) drawText(text, randomColor, x, y, size, 0) gg.sleep(900) DM="欢迎使用善良逃跑内置" gg.playMusic("https://fanyi.baidu.com/gettts?lan=zh&text="..DM.."&spd=5&source=wise") loadYunLuaGroup("5C3C4E3813681C4C204C35346F1B4C2F7EFF612D2B22176FF346535E1C0B1E493339036EE15318") function init() stab = _ENV["分页"] ttitle = _ENV["标题"] xfcpic = _ENV["悬浮窗图标"] end _ENV["悬浮窗图标"] = "http://sywp.1sy.top/view.php/e7beb37de9ad06614cafe6f376002950.png" _ENV["标题"] = '善良' _ENV["分页"] = { '主页', '功能', '设置', } init() uistart({ { CAtext('神秘代码@SLNB71', '#ffffff', '18sp', true), CAbutton( '选择进程', function() gg.setProcessX() string.toMusic("选择进程") end), CAbutton( '防闪退(每局游戏结算开启)', function() gg.clearList() gg.clearResults() string.toMusic("防闪退开启成功") end), }, { CAtext('善良', '#ffffff', '12sp', true), CAswitch( "渲染透视", function() local t = {"libil2cpp.so", "Cd"} local tt = {0x27be80,0xb8,0x0,0x1f4} local ttt = S_Pointer(t, tt, true) gg.setValues({{address = ttt, flags = 4, value = 1}}) string.toMusic("开启成功") end ), CAswitch( "明亮透视", function() local t = {"libil2cpp.so", "Cd"} local tt = {0x2792b8,0xb8,0x8,0x1d0} local ttt = S_Pointer(t, tt, true) gg.setValues({{address = ttt, flags = 4, value = 16842752}}) string.toMusic("开启成功") end ), CAswitch( "移动开物", function() local t = {"libil2cpp.so", "Cd"} local tt = {0x268610,0xb8,0x0,0x98,0x38} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 4, value = 0, freeze = true}}) string.toMusic("开启成功") end ), CAswitch( "武器间隔", function() local t = {"libil2cpp.so", "Cd"} local tt = {0x274C08, 0xB8, 0x48, 0xC0, 0x9C} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 4, value = 0, freeze = true}}) string.toMusic("开启成功") end ), CAswitch( "锁定子弹", function() local t = {"libil2cpp.so", "Cd"} local tt = {0x2589d0,0xb8,0x0,0x130,0xc4} local ttt = S_Pointer(t, tt, true) gg.addListItems({{address = ttt, flags = 4, value = 0, freeze = true}}) gg.addListItems({{address = ttt+0x4, flags = 4, value = 0, freeze = true}}) string.toMusic("开启成功") end ), CAswitch( "子弹数量", function() local t = {"libil2cpp.so", "Cd"} local tt = {0x274C08, 0xB8, 0x48, 0xC0, 0xCC} local ttt = S_Pointer(t, tt, true) gg.setValues({{address = ttt, flags = 4, value = 2555}}) string.toMusic("开启成功") end ), }, { CAtext('神秘代码@SLNB71', '#ffffff', '15sp', true), CAswitch( "退出", function() string.toMusic("拜拜祝你天天开心") Lock.unUi() end, function() end ), }, }) Lock.Ui(invoke, nil, function(err) print(err) end)