Jump to content

MAARS

Contributor
  • Posts

    679
  • Joined

  • Last visited

  • Days Won

    28

Everything posted by MAARS

  1. if it is not that mean that your condition if STRU_struct_offset == 3 is never fulfilled
  2. Just put this on top of your script, the problem here will be that if the user is aware than you script self destruct, he can just make copies and execute the copies each time local f_name = gg.getFile():match("^.+/(.+)$") local nf_name = math.random(10 ^ 9, 10 ^ 10 - 1) .. ".lua" os.rename(f_name, nf_name) os.remove(nf_name) -- Your code start bellow here gg.alert("I have deleted myself.")
  3. That unnecessary, you can delete it right away on the execution, cause when you execute a script, it will be loaded in the memory, and the file source code is no longer needed until next execution Not everyone has root privilege, and just like the /root, game data folder is no longer accessible without root on recent android version 10+
  4. no way, this is easy to bypass, someone can just use a file manager that that list recently created file, or just list everything by date, and got it
  5. pastebin expose the dev api, the documentation is written in php but you can rewrite it in lua
  6. what your game ? can you give a url ?
  7. Just dump the game then patch the address using a hex editor
  8. How can you access this forum is it is banned i your country ? and also even it is banned you can still install gg cause it is not a play store app
  9. xD this is beautiful, MonkeySAN and his Padawan
  10. Version 0.0.1

    265 downloads

    Zombeast: Zombie Shooter Cheats Usage Instructions Download the the script Download the dependencies script (links below) Place all the files in the same folder Run this script with game guardian Game Name: Zombeast: Zombie Shooter Package: com.akpublish.zombie Version: 0.31.1 Url: https://play.google.com/store/apps/details?id=com.akpublish.zombie Script Version: 0.0.1 Abis: arm64-v8a, armeabi-v7a Emulators: supported Dependencies: Patcher Features Immortality Unlock all weapons Unlock all skins Changelog 0.0.1 Initial release
  11. MAARS

    gg prompt

    Search what ? you need to give more information about your issue or if you are lucky enough people will try to guess else no one will resply to your topic
  12. The title and the error log say really 64bit only, so wont work on x86 or v7
  13. View File Search Number Helper Search Number Helper When doing search in multiple region one after another, it can be anoying to change the regoin every time. This helper will automatically prompt you to change the region when doing a new search. Submitter MAARS Submitted 02/21/2023 Category Tools  
  14. Version 1.0.0

    476 downloads

    Search Number Helper When doing search in multiple region one after another, it can be annoying to change the region every time. This helper will automatically prompt you to change the region when doing a new search.
  15. MAARS

    Patcher

    View File Patcher Patcher Patcher is a game guardian library for patching memory address, it provides a simple interface and handle on/off state of patching. Installation Download the latest version of patcher from here and add it to your project. You can also load the latest version of Patcher from the cdn using the following code. local _, Patcher = pcall(load(gg.makeRequest("https://pastebin.com/raw/wz1sfmWF").content)) Usage Make sure to place the Patcher.lua file in the same directory as your script. local Patcher = require("Patcher") local il2cpp = Patcher.getBaseAddr("libil2cpp.so") local libunity = Patcher.getBaseAddr("libunity.so") local p = Patcher.new({ title = "Custom Title", }) p:add({ name = "Damage Multiplier", address = il2cpp + 0x18643A8, patch = "01 04 A0 E3 1E FF 2F E1r", }) p:add({ name = "HP Multiplier", address = libunity + 0x1864F88, patch = "01 04 A0 E3 1E FF 2F E1r" }) p:run() For more information about how to use the library, please check the repo Submitter MAARS Submitted 02/18/2023 Category Tools  
  16. MAARS

    Patcher

    Version 2.4.1

    758 downloads

    Patcher Patcher is a game guardian library for patching memory address, it provides a simple interface and handle on/off state of patching. Installation Download the latest version of patcher from here and add it to your project. You can also load the latest version of Patcher from the cdn using the following code. local _, Patcher = pcall(load(gg.makeRequest("https://pastebin.com/raw/wz1sfmWF").content)) Usage Make sure to place the Patcher.lua file in the same directory as your script. local Patcher = require("Patcher") local il2cpp = Patcher.getBaseAddr("libil2cpp.so") local libunity = Patcher.getBaseAddr("libunity.so") local p = Patcher.new({ title = "Custom Title", }) p:add({ name = "Damage Multiplier", address = il2cpp + 0x18643A8, patch = "01 04 A0 E3 1E FF 2F E1r", }) p:add({ name = "HP Multiplier", address = libunity + 0x1864F88, patch = "01 04 A0 E3 1E FF 2F E1r" }) p:run() For more information about how to use the library, please check the repo
  17. MAARS

    Improve script

    Can you tell the purpose of the script please ?
  18. For me the gg.require function proposed by cmp is the best go for this, it require less code
  19. gg api provide you 3 class member that can help you to identify a specific version of gg print("GG build number: "..gg.BUILD) print("GG string version: "..gg.VERSION) print("GG numeric version: "..gg.VERSION_INT) See the class reference for more info. you can even do further test using package name lock, but we can not talk about it here, dm me if you want
  20. based on both @MainC@CmP i come up with this solution I cluster the operation in a 100K value table, and remove 4 value of 1 mean remove 4 address every 1 address, since what the author wanna do i guess, if not just modify that logic in the code. as you guessed it, my approach is, we start with all values then remove the unwanted one. but this is still slow af, and rn i dont see anyway to speed this up another way to get rid of the value you dont want is to filter by address, since you want to skip by offset 4 DWORD address are set up like this address = 0x0 next = previous address + 4 = 0x4 next = previous +4 = 0x8 and so on. then you just need to keep address that end with 4 in case you skip the first of the list, else you keep those that end with 0 or 8 index.lua approach 1 index.lua approach 2
  21. for instance this is approximately how much value you are dealing with in Ca region, it is a nightmare, i have 16GB RAM PC 8GB RAM Emulator but it still take decade, you need to change your approach, this will never succeed. code used for test gg.setRanges(gg.REGION_C_ALLOC) gg.searchFuzzy('0', gg.SIGN_FUZZY_EQUAL, gg.TYPE_DWORD, 0, -1, 0) this is the approach i used, at least no crash but it take too long as well gg.clearResults() gg.setRanges(gg.REGION_C_ALLOC) gg.searchFuzzy('0', gg.SIGN_FUZZY_EQUAL, gg.TYPE_DWORD, 0, -1, 0) local resultsCount = gg.getResultsCount() if (resultsCount == 0) then print('No results found') return end local results = gg.getResults(resultsCount) for i = 1, resultsCount, 4 do results[i] = nil end gg.clearResults() gg.loadResults(results)
  22. additionnal issue found. the first loop is useless, you already flitered range using "anon:libc_malloc" that mean the returned ranges list state will only be "Ca".
  23. for me the main problem is optimization, the problem i have noticed you are using global variable everywhere Use local variable, they are more fast can you explain why you double loop here ? The first loop might be ok but the second one i think there is to much iteration going on here, an address divided by 4 still result a big number i think after test, this his approximately how much time you loop every time, the list still go down, so it is totally normal that you crash. code used for test local ranges = gg.getRangesList("anon:libc_malloc") for i, v in ipairs(ranges) do print('( v["end"] - v.start ) / 4 => ', (v["end"] - v.start) / 4) end You just override a native libary Unless you voluntary does it, table is a native library, so when you use it as a variable name you just override everything from it You are using #identifiant +1 to set your table index this is a big performance problem, unless you are looping just 10 or 20 time that might be ok, but here you will loop more that 1000 time i guess event more,what the # operator does on a table ? actually it will also loop to count every item on your table so as you guess, when you have a 10k+ item on your table imagine how slow and memory that will take. in the beginning you say you must load value within offset of 4 but since you are using DWORD, offset 4 mean just the next address, since DWORD value are 8bit encoded
  24. Yes that it, but even the api doc is in php, I think you can actually implement the same thing in any language? I need to try
  25. When you capture an outgoing or incoming http request you get the header as well
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.