-- ============================================= -- 三合一核心脚本:真伤范围 + 防减伤 + 修伤 -- 适配:GameGuardian 官方版 -- 功能:高额真实伤害(无视防御) + 伤害防减免 + 伤害判定修复 -- ============================================= -- 全局依赖函数(三大功能共用核心) function split(szFullString, szSeparator) local nFindStartIndex = 1 local nSplitIndex = 1 local nSplitArray = {} while true do local nFindLastIndex = string.find(szFullString, szSeparator, nFindStartIndex) if not nFindLastIndex then nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, string.len(szFullString)) break end nSplitArray[nSplitIndex] = string.sub(szFullString, nFindStartIndex, nFindLastIndex - 1) nFindStartIndex = nFindLastIndex + string.len(szSeparator) nSplitIndex = nSplitIndex + 1 end return nSplitArray end function setvalue(address, flags, value) local tt = {} tt[1] = {address = address, flags = flags, value = value} gg.setValues(tt) end function xgxc(szpy, qmxg) local xgsl = 0 for x = 1, #(qmxg) do xgpy = szpy + qmxg[x]["offset"] xglx = qmxg[x]["type"] xgsz = qmxg[x]["value"] xgdj = qmxg[x]["freeze"] if xgdj == nil or xgdj == "" then gg.setValues({[1] = {address = xgpy, flags = xglx, value = xgsz}}) else gg.addListItems({[1] = {address = xgpy, flags = xglx, freeze = xgdj, value = xgsz}}) end xgsl = xgsl + 1 end return xgsl end function xqmnb(qmnb, qmxg) gg.clearResults() gg.setRanges(qmnb[1]["memory"]) gg.searchNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") return 0 end gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) gg.refineNumber(qmnb[3]["value"], qmnb[3]["type"]) if gg.getResultCount() == 0 then gg.toast(qmnb[2]["name"] .. "开启失败") return 0 end local sl = gg.getResults(999999) local sz = gg.getResultCount() local total = 0 if sz > 999999 then sz = 999999 end for i = 1, sz do local pdsz = true for v = 4, #(qmnb) do if pdsz == true then local pysz = {} pysz[1] = {} pysz[1].address = sl[i].address + qmnb[v]["offset"] pysz[1].flags = qmnb[v]["type"] local szpy = gg.getValues(pysz) local pdpd = qmnb[v]["lv"] .. ";" .. szpy[1].value local szpd = split(pdpd, ";") local tzszpd = szpd[1] local pyszpd = szpd[2] if tzszpd ~= pyszpd then pdjg = false pdsz = false break end end end if pdsz == true then local szpy = sl[i].address total = total + xgxc(szpy, qmxg) end end gg.toast(qmnb[2]["name"] .. "成功,修改" .. total .. "条") return total end -- ============================================= -- 1. 真伤范围(核心替换模块) -- 作用:无视防御,头部/身体/空中全维度真实伤害覆盖 -- ============================================= gg.toast("🔹 加载【真伤范围】- 无视防御") local xgsl = 0 -- libUE4.so 真伤核心开关(关键步骤) local so_ue4 = gg.getRangesList('libUE4.so')[1] if so_ue4 then local py_ue4 = 0x3437C40 setvalue(so_ue4.start + py_ue4, 16, 0) gg.toast("已激活真伤核心开关") end -- ① 真伤-头部范围(高爆发) local qmnb_zs1 = { {["memory"] = 32}, {["name"] = "真伤-头部"}, {["value"] = 4740038608910024704, ["type"] = 32}, {["lv"] = 4752423507886342144, ["offset"] = 4, ["type"] = 32}, {["lv"] = 1106509824, ["offset"] = 8, ["type"] = 32}, } local qmxg_zs1 = { {["value"] = 700, ["offset"] = 4, ["type"] = 16}, {["value"] = 700, ["offset"] = 8, ["type"] = 16}, } xqmnb(qmnb_zs1, qmxg_zs1) -- ② 真伤-空中范围(针对空中目标) local qmnb_zs2 = { {["memory"] = 32}, {["name"] = "真伤-空中"}, {["value"] = 4719772412750681353, ["type"] = 32}, {["lv"] = 4742290408720039936, ["offset"] = 4, ["type"] = 32}, } local qmxg_zs2 = { {["value"] = -460, ["offset"] = 8, ["type"] = 16}, } xqmnb(qmnb_zs2, qmxg_zs2) -- ③ 真伤-远程范围 local qmnb_zs3 = { {["memory"] = 32}, {["name"] = "真伤-远程"}, {["value"] = -4417614866316724128, ["type"] = 32}, {["lv"] = 4724276012378061487, ["offset"] = 4, ["type"] = 32}, } local qmxg_zs3 = { {["value"] = -560, ["offset"] = 12, ["type"] = 16}, } xqmnb(qmnb_zs3, qmxg_zs3) -- ④ 真伤-身体范围 local qmnb_zs4 = { {["memory"] = 32}, {["name"] = "真伤-身体"}, {["value"] = -4416487068034336677, ["type"] = 32}, {["lv"] = 4724276012378324073, ["offset"] = 4, ["type"] = 32}, } local qmxg_zs4 = { {["value"] = -660, ["offset"] = 8, ["type"] = 16}, {["value"] = -660, ["offset"] = 12, ["type"] = 16}, } xqmnb(qmnb_zs4, qmxg_zs4) -- ⑤ 真伤数值强制强化(最终伤害锁定) gg.clearResults() gg.setRanges(gg.REGION_ANONYMOUS) gg.searchNumber("4752423507886342144", gg.TYPE_QWORD) if gg.getResultCount() > 0 then gg.getResults(100) gg.editAll("4752423507916455936", gg.TYPE_QWORD) end gg.clearResults() gg.toast("✅ 【真伤范围】加载完成") -- ============================================= -- 2. 防减伤(伤害防减免) -- 作用:确保你的真伤不会被任何技能或护甲减免 -- ============================================= gg.toast("🔹 加载【防减伤】- 伤害全额生效") -- libpixuiCurl.so 防减伤补丁 local so_pix = gg.getRangesList('libpixuiCurl.so')[1] if so_pix then local offsets_pix = {0x15D8, 0x15DC, 0x15E0, 0x15E4, 0x15EC, 0x15F0, 0x15F4, 0x15F8, 0x15FC} for _, off in ipairs(offsets_pix) do setvalue(so_pix.start + off, 4, 0) end end -- libUE4.so 防减伤核心偏移 local so_ue4_fjs = gg.getRangesList('libUE4.so')[1] if so_ue4_fjs then local py_ue4_fjs = 0x6E7B1F4 setvalue(so_ue4_fjs.start + py_ue4_fjs, 16, -1.1935767235290156E-24) end gg.toast("✅ 【防减伤】加载完成") -- ============================================= -- 3. 修伤(伤害判定修复) -- 作用:修复伤害计算异常,确保连招和判定稳定 -- ============================================= gg.toast("🔹 加载【修伤】- 修复判定") -- 修伤核心数值替换(7组关键判定值) local repairList = { {old = "1106509824", new = "1142292480"}, {old = "4752423507886342144", new = "4889501821583097856"}, {old = "4771563806291656704", new = "4771563806403022720"}, {old = "-6155480658609176576", new = "-6155480656426696704"}, {old = "-6156377860096393216", new = "-6156377857912471552"}, {old = "4745105158488195072", new = "4745105160678998016"}, {old = "-6138504199075659776", new = "-6138504196889706496"} } gg.setRanges(gg.REGION_ANONYMOUS) for _, item in ipairs(repairList) do gg.clearResults() gg.searchNumber(item.old, gg.TYPE_QWORD) if gg.getResultCount() > 0 then gg.getResults(100) gg.editAll(item.new, gg.TYPE_QWORD) end gg.clearResults() end gg.toast("✅ 【修伤】加载完成") -- ============================================= -- 所有功能加载完成 -- ============================================= gg.setVisible(true) gg.toast("🎉 真伤+防减伤+修伤 全部生效!")