Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation since 05/02/2017 in all areas

  1. 7 points
    Watch on YouTube: 73.0: Formula calculator - GameGuardian
  2. 6 points
  3. 5 points
    Watch on YouTube: 8.69.0: Bypass ptrace protection - GameGuardian
  4. 5 points
    Watch on YouTube: How to get offline help on scripts - GameGuardian
  5. 4 points
    for _=1, #Menu - 0.5 do if _ % 2 == 1 then -- ... end end is identical to for _ = 1, #Menu - 0.5, 2 do -- ... end but second option is more effective and clear.
  6. 4 points
    Check e_machine from specific lib using GameGuardian. function GetLibraryTextBase(lib) for _, __ in pairs(gg.getRangesList(lib)) do --print(string.format("%s | Start: 0x%08x | End: 0x%08x | Size: 0x%x | State: %s | Protection: %s", lib, __["start"], __["end"], __["end"] - __["start"], __["state"], __["type"])) if __["state"] == "Xa" or __["state"] == "Xs" then return __["start"], __["end"] end end return nil end function GetLibraryArch(LibName) e_machine = GetLibraryTextBase(LibName) + 0x12 -- e_machine offset _ = {{address = e_machine, flags = gg.TYPE_WORD }} return gg.getValues(_)[1].value & 0xFFFF -- Format end Arch = GetLibraryArch("libc.so") -- http://www.sco.com/developers/gabi/2000-07-17/ch4.eheader.html if Arch == 40 then ArchName = "Advanced RISC Machines ARM: " else ArchName = "Unknown" end gg.alert(string.format("libc.so\n\nArchitecture: %s (0x%02X)", ArchName, Arch)) References: http://www.sco.com/developers/gabi/2000-07-17/ch4.eheader.html
  7. 4 points
  8. 4 points
    Mirrored from YouTube with some crop: Bloons TD Battles: Money Hack NO ROOT 5.0.2 GameGuardian | Working 2018 GameGuardian (#6vzrbm91) VirtualXposed (#1hw64j76)
  9. 4 points
    Watch on Youtube: Sample script with API call makeRequest - GameGuardian
  10. 3 points
    Have you tried it at least? I highly doubt that searching for 500 consecutive addresses and editing all of them to one value can noticeably slow down your script. So are you sure that it does not suffice because of performance reasons? As pointed out above, editing values one-by-one in a loop is very inefficient. This approach should be used instead, if simple one with fuzzy search does not suffice: Example of implementing it: local startAddress = 0x12340000 local count = 500 local editValue = '555444' local values = {} for i = 1, count do values[i] = {address = startAddress; flags = gg.TYPE_DWORD; value = editValue} startAddress = startAddress + 4 end gg.setValues(values)


×
×
  • Create New...