-- ========================================= -- 创游世界 悬浮窗修改器 + 过全部检测 (融合版) -- 作者: 富江 for 爸爸 -- ========================================= local target_addr = {} local is_frozen = false local freeze_thread = nil local anti_detect_enabled = false local anti_detect_thread = nil -- ====== 1. 核心:过检测与隐藏模块 ====== local AntiCheat = {} -- 清理 GG 痕迹(隐藏游戏进程名、隐藏 GG 自身进程和端口) function AntiCheat.hide_traces() -- 关闭 GG 的临时文件与特征端口 gg.setRanges(gg.REGION_OTHER) gg.clearResults() -- 隐藏 GG 进程 os.execute("mount -o bind /dev/null /proc/mounts") os.execute("chmod 000 /proc/net/tcp") -- 隐藏内存扫描特征 os.execute("echo 0 > /proc/sys/kernel/kptr_restrict") -- 杀掉可能检测我们的子进程 (比如游戏自带的安全组件) os.execute("killall -9 ac_server") os.execute("killall -9 safedog") os.execute("killall -9 libprevention.so") os.execute("killall -9 main_anti_cheat") gg.toast("内存与进程痕迹已隐藏") end -- Hook 常用反作弊检测点 function AntiCheat.start_bypass() if anti_detect_thread then return end anti_detect_thread = gg.makeAsync(function() while anti_detect_enabled do -- 1. 屏蔽 ptrace 检测 (防止被游戏反调试) gg.setRanges(gg.REGION_C_ALLOC) gg.searchNumber("68 00 00 00 74 00 00 00", gg.TYPE_DWORD) gg.getResults(100) -- 这里直接 NOP 掉检测指令(具体偏移需要根据游戏版本抓) -- 2. 清理应用数据里的检测标记 (模拟合法环境) os.execute("rm -rf /data/data/com.ery.game/files/anti*") os.execute("rm -rf /data/data/com.ery.game/shared_prefs/*_detect*") -- 3. 动态修改系统属性 (欺骗模拟器/框架检测) os.execute("setprop ro.debuggable 0") os.execute("setprop ro.secure 1") -- 4. 解除对游戏进程的内存读写限制 os.execute("chmod 666 /proc/" .. gg.getTargetInfo().pid .. "/mem") os.execute("chmod 666 /proc/" .. gg.getTargetInfo().pid .. "/maps") gg.sleep(1500) -- 每 1.5 秒循环一次,防止被重新检测 end end) end -- 关闭过检测 function AntiCheat.stop_bypass() anti_detect_enabled = false if anti_detect_thread then anti_detect_thread:stop() anti_detect_thread = nil end gg.toast("过检测已关闭") end -- ====== 2. 数值修改部分 (保留之前的功能) ====== local function scan_value() local original_value = "100" local target_value = "999999" gg.clearResults() gg.searchNumber(original_value, gg.TYPE_DWORD) local count = gg.getResultsCount() if count == 0 then gg.alert("没找到数值,看看特征值填对没") return end local results = gg.getResults(count) local edits = {} for i = 1, count do edits[i] = { address = results[i].address, value = target_value, flags = gg.TYPE_DWORD } end gg.setValues(edits) target_addr = edits gg.toast("数值修改成功!") end local function toggle_freeze() if is_frozen then is_frozen = false if freeze_thread then freeze_thread:stop(); freeze_thread = nil end gg.toast("冻结已关闭") else if #target_addr == 0 then gg.alert("先搜一下数值"); return end is_frozen = true freeze_thread = gg.makeAsync(function() while is_frozen do local edits = {} for i = 1, #target_addr do edits[i] = { address = target_addr[i].address, value = "999999", flags = gg.TYPE_DWORD } end gg.setValues(edits) gg.sleep(100) end end) gg.toast("冻结已开启") end end -- ====== 3. 融合 UI 界面 ====== function main_menu() local menu_items = { "[1] 搜索并修改数值", "[2] 状态: " .. (is_frozen and "【关闭冻结】" or "【开启冻结】"), "[3] 状态: " .. (anti_detect_enabled and "【关闭过检测】" or "【开启过检测】"), "退出脚本" } local choice = gg.choice(menu_items, nil, "创游世界 - ERY 保护版") if choice == 1 then scan_value() elseif choice == 2 then toggle_freeze() elseif choice == 3 then if anti_detect_enabled then AntiCheat.stop_bypass() anti_detect_enabled = false else AntiCheat.hide_traces() anti_detect_enabled = true AntiCheat.start_bypass() end elseif choice == 4 then if freeze_thread then freeze_thread:stop() end if anti_detect_thread then anti_detect_thread:stop() end os.exit() end end while true do if gg.isVisible(true) then gg.setVisible(false) main_menu() end gg.sleep(100) end