Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local targetPackage = "com.pixonic.wwr"
- local scriptVersion = "11.2.0"
- local Update = "2025/07/10"
- function showApkInfo()
- local info = gg.getTargetInfo()
- local is64 = info.x64 and "64-bit" or "32-bit"
- local packageName = gg.getTargetPackage()
- local version = info.versionName or "Unknown"
- if version ~= scriptVersion then
- gg.alert("Please update scripts!\nScript version: " .. scriptVersion .. "\nAPK version: " .. version)
- os.exit()
- end
- local message = string.format(
- "APK Info :\n\nApk Name : War Robots\nPackage : %s\nGame Version : %s\nScript Version :%s\nArchitecture : %s\n Update : %s\nScript By : AbhiModszYT",
- packageName, version, scriptVersion, is64, Update
- )
- gg.alert(message)
- end
- function checkArch()
- local info = gg.getTargetInfo()
- if info.x64 then
- gg.toast("Please Install 32-bit APK")
- os.exit()
- else
- gg.toast("32-bit Architecture Detected")
- gg.sleep(5000)
- end
- end
- showApkInfo()
- checkArch()
- local n, startAddress, endAddress = nil, 0, 0
- local originalValues = {}
- local function name(lib)
- if n == lib then
- return startAddress, endAddress
- end
- local ranges = gg.getRangesList(lib or 'libil2cpp.so')
- for i, v in ipairs(ranges) do
- if v.state == "Xa" then
- startAddress = v.start
- endAddress = ranges[#ranges]['end']
- break
- end
- end
- return startAddress, endAddress
- end
- local function hexToBytes(hex)
- local t = {}
- for h in string.gmatch(hex, "%S%S") do
- table.insert(t, tonumber(h, 16))
- end
- return t
- end
- local function togglePatch(libname, offset, hex, label)
- name(libname)
- local address = startAddress + offset
- local newBytes = hexToBytes(hex)
- local byteCount = #newBytes
- local readTable = {}
- for i = 0, byteCount - 1 do
- table.insert(readTable, {address = address + i, flags = gg.TYPE_BYTE})
- end
- local currentValues = gg.getValues(readTable)
- local key = string.format("%s_%X", libname, offset)
- if originalValues[key] == nil then
- originalValues[key] = {}
- for i, v in ipairs(currentValues) do
- table.insert(originalValues[key], v.value)
- end
- local patchTable = {}
- for i, b in ipairs(newBytes) do
- table.insert(patchTable, {
- address = address + i - 1,
- flags = gg.TYPE_BYTE,
- value = b
- })
- end
- gg.setValues(patchTable)
- gg.toast(label .. " Enabled")
- else
- local restoreTable = {}
- for i, val in ipairs(originalValues[key]) do
- table.insert(restoreTable, {
- address = address + i - 1,
- flags = gg.TYPE_BYTE,
- value = val
- })
- end
- gg.setValues(restoreTable)
- originalValues[key] = nil
- gg.toast(label .. " Disabled")
- end
- end
- local patches = {
- {name = "Speed Hack", offset = 0x3274468, hex = "A0 00 45 E3 1E FF 2F E1"},
- {name = "No Gravity", offset = 0x858B214, hex = "7F 0F 4F E3 1E FF 2F E1"},
- {name = "20m distance", offset = 0x259A390, hex = "A0 01 44 E3 1E FF 2F E1"},
- {name = "No Cd Module", offset = 0x32714F4, hex = "00 00 A0 E3 1E FF 2F E1"},
- {name = "No Cooldown Skills 1", offset = 0x3274498, hex = "00 00 A0 E3 1E FF 2F E1"},
- {name = "No Duration Skills 1", offset = 0x32744F8, hex = "00 00 A0 E3 1E FF 2F E1"},
- {name = "No Cooldown Skills 2", offset = 0x32744B8, hex = "00 00 A0 E3 1E FF 2F E1"},
- {name = "No Duration Skills 2", offset = 0x3274518, hex = "00 00 A0 E3 1E FF 2F E1"},
- {name = "Don't Lock Module By StatusEffect", offset = 0x3274618, hex = "00 00 A0 E3 1E FF 2F E1"},
- {name = "Don't Lock Ability By StatusEffect", offset = 0x3274604, hex = "00 00 A0 E3 1E FF 2F E1"},
- {name = "Don't Lock Ability1 ByPilot", offset = 0x32745D0, hex = "00 00 A0 E3 1E FF 2F E1"},
- {name = "Don't Lock Ability2 ByPilot", offset = 0x32745F0, hex = "00 00 A0 E3 1E FF 2F E1"},
- {name = "Spider Game Weapon Range", offset = 0x3271434, hex = "00 00 04 E3 1C 06 44 E3 1E FF 2F E1"},
- {name = "Auto Abilitie v2", offset = 0x33345DC, hex = "00 F0 20 E3 1E FF 2F E1"},
- {name = "Auto Abilitie v3", offset = 0x33345F4, hex = "00 F0 20 E3 1E FF 2F E1"}
- }
- local function isPatchEnabled(libname, offset)
- local key = string.format("%s_%X", libname, offset)
- return originalValues[key] ~= nil
- end
- local function main()
- local menuItems = {}
- for i, patch in ipairs(patches) do
- local status = isPatchEnabled("libil2cpp.so", patch.offset) and "✅" or "❌"
- table.insert(menuItems, string.format("%s %s", patch.name, status))
- end
- table.insert(menuItems, "Exit Script")
- local menu = gg.choice(menuItems, nil, "Hacks : Enabled ✅ / Disabled ❌")
- if not menu then return end
- if menu == #menuItems then
- os.exit()
- else
- local patch = patches[menu]
- togglePatch("libil2cpp.so", patch.offset, patch.hex, patch.name)
- end
- end
- while true do
- if gg.isVisible() then
- gg.setVisible(false)
- main()
- end
- gg.sleep(10)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement