Jump to content

nok1a

Contributor
  • Posts

    592
  • Joined

  • Last visited

  • Days Won

    12

Posts posted by nok1a

  1. On 6/2/2024 at 4:00 AM, BloodMoonScript said:

    Well dony play action on my comment, it just was advice to that person

    What i want:

     

    When u use script, so value or offset search and change

    And if we exit script, so script will close, and function will active

    And if we.. click on "change as result search" we get all changed value, and so easy steal value, but i wanna do protection from it, as i know it possible (because already see encryption with this function), but my script have.. specific source what encryption not support, so it crash after using, thats why i wanna find code for hide value from load "change as results search"

    Oh, you want the value to return to original state when the user exit the script?

  2. 4 hours ago, BloodMoonScript said:

    Write if u find solution, but u can use spam value

    (When your script active, there search static value and changes to their num, well 284 change to 284) and so will a lot result changed

    It's not clear what you want to do

  3. On 5/26/2024 at 12:04 AM, ItsMeAnsh said:

    I have downloaded the bluestacks on my laptop and have the root accessed to it, then I downloaded the simcity  buildit and i started using the game guardian because I have heard a lot about that, then at the end when I was trying to execute the file, it shows me the error in the attachment, how to get this fixed, any help?

    error in gg.docx 438.13 kB · 3 downloads

    I guess that you selected the default execution path. This happens when you open a process for the first time, then GG will select a default path with the package name of the selected process. 

    Navigate to the path where you have your downloaded Lua script and select it. Then execute it.

  4. 11 hours ago, MrAgent said:

    Hi i have small problem with found Offset by working adress in GG.

    I used script GG to speed hack game and it's work good. So if this script work and i have a adress where speed game function work i want find offset to find this offset on dump.cs file.

    I tried it with XA and calculator offset but this offset not was found in dumps.cs file so i need help how i can find correct offset for speed game if i have ready adress.

     

    IMG_20240510_000538.jpg

    The speed value that the script finds is from libunity.so. You won't find it in the dump.cs.

  5. On 4/15/2024 at 9:32 PM, Defkie said:

    Unable to load features...

    Getting "the values are not found yet, trying again in 10 seconds" before the hacks menu appears

    Hmm, game had an update? Which version your on.

  6. 8 hours ago, Adamoumou said:

    Hello,

    I try to dump libil2cpp.so and global-metadata.dat from a game called Critical Ops but I can’t.

    I tried decompiling the apk (from apkpure) taking the needed file in there but they are invalid for il2cpp dumper.

    I also tried Zygisk il2cpp dumper to dump it from memory but the Game crash. Also tried libil2cppdumper.so that I put in the game’s apk and executed in MainActivity’s smali file but same thing it always crashs the game. I even froze the game to prevent it from crashing but it crash anyways

    Finally I tried with gameguardians scripts to dump il2cpp but they are invalid like the first method I used.

    I think the 2 files are encrypted and then they are decrypted at the very start of the game but the put a protection to detect memory reading at location of these 2 files or something like that and then they are freed of the memory so I can’t dump them with gg scripts.

    Thank for reading me and I hope someone can help me!

    Usually right when the logo appears i tab to main menu so that process runs in background. It kind of freezes and give me more time to dump the files.

  7. On 4/15/2024 at 12:41 AM, Khadimulislam said:

    Awesome Brother. 
    Now this Code Working
    Your are very Good Coder 
    How can i learn coding like you?

    I don't know, I would pick a game and do something simple like look for ammo value and change it with GG manually. Then try to make a Lua script for it. Download a simple Lua script from the forum and try to understand how it is making changes to the game. There is some nice documentation we use: https://gameguardian.net/help/classgg.html

     

  8. 1 hour ago, Khadimulislam said:

    Showing this error

    Screenshot_2024-04-14-18-03-39-327_games.burny.playdoku.block.puzzle.jpg

    Can you try this:
     

    function class_Pointer()
      local range = gg.getRangesList("global-metadata.dat")
      -- get dll pointer UserProfile
      gg.setRanges(gg.REGION_OTHER)
      gg.searchNumber("h00 55 73 65 72 50 72 6F 66 69 6C 65 2E 49 6E 66 72 61 73 74 72 75 63 74 75 72 65 2E 64 6C 6C 00", gg.TYPE_BYTE, nil, nil, range[1].start, range[1]["end"]) -- UserProfile.Infrastructure.dll
      local char_UserProfile = gg.getResults(2)
      gg.setRanges(gg.REGION_ANONYMOUS)
      gg.clearResults()
      gg.searchNumber(char_UserProfile[2].address, gg.TYPE_QWORD)
      local pointerCheck = gg.getResults(1)
      gg.clearResults()
      -- get class pointer JourneyProgress
      gg.setRanges(gg.REGION_OTHER)
      gg.searchNumber("h00 4A 6F 75 72 6E 65 79 50 72 6F 67 72 65 73 73 00", gg.TYPE_BYTE, nil, nil, range[1].start, range[1]["end"]) -- JourneyProgress
      local char_Journey = gg.getResults(2)
      gg.clearResults()
      gg.setRanges(gg.REGION_ANONYMOUS)
      gg.searchNumber(char_Journey[2].address, gg.TYPE_QWORD)
      local t = gg.getResults(gg.getResultsCount())
      for i, v in ipairs(t) do
        v.address = v.address - 0x10
      end
      t = gg.getValues(t)
      local class_Pointer_JourneyProcess = {}
      for i, v in ipairs(t) do
        if v.value == pointerCheck[1].address then
          class_Pointer_JourneyProcess[#class_Pointer_JourneyProcess + 1] = v.address
        end
      end
      gg.clearResults()
      return class_Pointer_JourneyProcess
    end
    local class_Pointer_JourneyProcess = class_Pointer()
    
    function field_numberOfCompletedJourney(input)
      local Level = input
      gg.searchNumber(class_Pointer_JourneyProcess[1], gg.TYPE_QWORD)
      local t = gg.getResults(gg.getResultsCount())
      for i, v in ipairs(t) do
        v.address = v.address + 0x190
        v.flags = gg.TYPE_DWORD
      end
      t = gg.getValues(t)
      local numberOfCompletedJourney = {}
      for i, v in ipairs(t) do
        if v.value == (tonumber(Level[1]) - 1) then
          numberOfCompletedJourney[#numberOfCompletedJourney + 1] = t[i]
        end
      end
      if #numberOfCompletedJourney == 0 then
        gg.toast("Level not found, did you input correct level?")
        gg.sleep(100)
      else
        local LevelSet = gg.prompt(
          {'Input desired Level to edit to'},
          {[1]=''},
          {[1]='number'}
        )
        for i, v in ipairs(numberOfCompletedJourney) do
          v.value = tonumber(LevelSet[1]) - 1
        end
        gg.setValues(numberOfCompletedJourney)
        gg.toast("Level set, go in game and back to lobby for apply the change visually")
      end
      gg.clearResults()
    end
    function start()
      local Level = gg.prompt(
        {'Input your current Level'},
        {[1]=''},
        {[1]='number'}
      )
      if Level == nil then
        gg.toast("No input")
      else
        local nonNumb = 0
        for i in string.gmatch(Level[1], "%U") do
          local char = string.byte(i)
          if char < 0x30 or char > 0x39 then
            nonNumb = nonNumb + 1
          end
          if nonNumb ~= 0 then
            gg.toast("This is not a number")
          else
            field_numberOfCompletedJourney(Level)
            break
          end
        end
      end
    end
    while (true) do
      if gg.isVisible() then
        gg.setVisible(false)
        start()
      end
      gg.sleep(100) 
    end

     

  9. On 4/13/2024 at 1:13 AM, Khadimulislam said:

    Thanks. Try now @alien420, @Khadimulislam:

      On 2/14/2024 at 12:44 AM, nok1a said:
    If your using 64 Bit download this script, should work:
    
    function class_Pointer()
      local range = gg.getRangesList("global-metadata.dat")
      -- get dll pointer UserProfile
      gg.setRanges(gg.REGION_OTHER)
      gg.searchNumber("h00 55 73 65 72 50 72 6F 66 69 6C 65 2E 49 6E 66 72 61 73 74 72 75 63 74 75 72 65 2E 64 6C 6C 00", gg.TYPE_BYTE, nil, nil, range[1].start, range[1]["end"]) -- UserProfile.Infrastructure.dll
      local char_UserProfile = gg.getResults(2)
      gg.setRanges(gg.REGION_ANONYMOUS)
      gg.clearResults()
      gg.searchNumber(char_UserProfile[2].address, gg.TYPE_QWORD)
      local pointerCheck = gg.getResults(1)
      gg.clearResults()
      -- get class pointer JourneyProgress
      gg.setRanges(gg.REGION_OTHER)
      gg.searchNumber("h00 4A 6F 75 72 6E 65 79 50 72 6F 67 72 65 73 73 00", gg.TYPE_BYTE, nil, nil, range[1].start, range[1]["end"]) -- JourneyProgress
      local char_Journey = gg.getResults(2)
      gg.clearResults()
      gg.setRanges(gg.REGION_ANONYMOUS)
      gg.searchNumber(char_Journey[2].address, gg.TYPE_QWORD)
      local t = gg.getResults(gg.getResultsCount())
      for i, v in ipairs(t) do
        v.address = v.address - 0x10
      end
      t = gg.getValues(t)
      local class_Pointer_JourneyProcess = {}
      for i, v in ipairs(t) do
        if v.value == pointerCheck[1].address then
          class_Pointer_JourneyProcess[i] = v.address
        end
      end
      gg.clearResults()
      return class_Pointer_JourneyProcess
    end
    local class_Pointer_JourneyProcess = class_Pointer()
    
    function field_numberOfCompletedJourney(input)
      local Level = input
      gg.searchNumber(class_Pointer_JourneyProcess[1], gg.TYPE_QWORD)
      local t = gg.getResults(gg.getResultsCount())
      for i, v in ipairs(t) do
        v.address = v.address + 0x190
        v.flags = gg.TYPE_DWORD
      end
      t = gg.getValues(t)
      local numberOfCompletedJourney = {}
      for i, v in ipairs(t) do
        if v.value == (tonumber(Level[1]) - 1) then
          numberOfCompletedJourney[#numberOfCompletedJourney + 1] = t[i]
        end
      end
      if #numberOfCompletedJourney == 0 then
        gg.toast("Level not found, did you input correct level?")
        gg.sleep(100)
      else
        local LevelSet = gg.prompt(
          {'Input desired Level to edit to'},
          {[1]=''},
          {[1]='number'}
        )
        for i, v in ipairs(numberOfCompletedJourney) do
          v.value = tonumber(LevelSet[1]) - 1
        end
        gg.setValues(numberOfCompletedJourney)
        gg.toast("Level set, go in game and back to lobby for apply the change visually")
      end
      gg.clearResults()
    end
    
    
    function start()
      local Level = gg.prompt(
        {'Input your current Level'},
        {[1]=''},
        {[1]='number'}
      )
      if Level == nil then
        gg.toast("No input")
      else
        local nonNumb = 0
        for i in string.gmatch(Level[1], "%U") do
          local char = string.byte(i)
          if char < 0x30 or char > 0x39 then
            nonNumb = nonNumb + 1
          end
          if nonNumb ~= 0 then
            gg.toast("This is not a number")
          else
            field_numberOfCompletedJourney(Level)
            break
          end
        end
      end
    end
    
    while (true) do
      if gg.isVisible() then
        gg.setVisible(false)
        start()
      end
      gg.sleep(100) 
    end

     

  10. 4 hours ago, Khadimulislam said:

    brother please update script.

    Ok, sorry for late reply. Yes they made some changes in the structure of the game. Will probably need to dump it again and see what they did.

    Although kind of questionable these request of levels hacks. It's like the devs are having their game cheated on purpose to then improve their security. But probably i am paranoid and the devs aren't watching here at all.

  11. 6 minutes ago, MAARS said:

    constant variable are made so you dont have to memorize these constant value ? why would you want to type the value ?

    Personally i don't use it. I responded because i did not knew that GG had that specific menu.

    I would assume that pressing that question mark would give some explanation about how execution of script in GG works so i never pressed that button. Just like any other question mark symbol would give more info about the info that is present on the tab your on.

  12. 3 hours ago, MonkeySAN said:

    IMG_20240409_121808.thumb.JPG.b2eafab60401681254e26bae0d85918e.JPG

    - open GG and tap that in the red circle.

    IMG_20240409_121900.thumb.JPG.4628e2ed8e295b10b47da56ab2988375.JPG

    - then tap the circle with ? in it.

    Screenshot_2024_0409_121711.thumb.png.f7540a1b4f145286300ac15e08b67158.png

    - scroll down and you will find it.

    Did not knew that, thanks!

  13. 48 minutes ago, MAARS said:

    I don't know if encryption is the right word but. The memory is not disposed how it should be for a il2cpp game. Address are weird. That why any field offset finder won't work. I did manual search like for 3pmon until I gave up. Note since I had also Frida I used the exact runtime address with the goto tool with gg but that did not help at all the address lead somewhere that not the field offset 

    So your not just performing pointer search on the class and then search the offset of the field?

  14. On 3/30/2024 at 5:33 AM, MAARS said:

    I managed to do it using frida but using GG it seem like an impossible task or a skill issue the game is using some kind of encryption. So far this is class and offset
     

    public class levelSelection : MonoBehaviour
    {
    	public bool unlockalllevel;
    }

     

    image.png

    I don't see any protection though. But thanks for posting the class. It avoided me dumping the game and made it no struggle for find. I dunno why field offset finder doesn't work, perhaps a script needs to be made. Offset 0x20

  15. 11 hours ago, missmcp said:

    What should I put in there?

    I'm not sure if that mobile dumper is designed to find registration offsets or if just there for the show (i'm saying because i never managed to dump a protected game with mobile dumpes before, and i also never saw the option to use registration offsets).

    You have to perform pointer search on the start address of the global-metadata.dat. You should get 2 pointers that are located pointer size under each other. one pointer size above it you find the Code andMeta registrations.

    image.thumb.png.4a0507907670383a6294c9f5f3bbcd3e.png

    Then just copy the values at those addresses and place them in the fields.

  16. On 3/26/2024 at 8:19 PM, missmcp said:

    Hello, I apologise if this isn't the correct forum. 

    I've been creating lua scripts using game guardian for the game RuPauls Drag Race Superstar for a while now. However with the most recent release 1.13.0, I'm getting an error when trying to create the dump file, see attached images. I'd never seen this before, with the previous versions of the game the dumping always ran smoothly. What should i do?

    Screenshot_20240326-161239_Il2CppDumperGUI.jpg

    Screenshot_20240326-161314_Il2CppDumperGUI.jpg

    Screenshot_20240326-161319_Il2CppDumperGUI.jpg

    Why you leave the registration offsets empty?

  17. 8 hours ago, Yelay12 said:

    I have an error in my script.When i second function "BACK" 'OK' and then first function "Exit" 'Cancel', this script is show error like follow error code.

    Please help me where is error in my script. Please see attach file my script.

    (Script ended:

    Script error: luaj.o: /storage/emulated/0/VMOSfiletransferstation/helprequest.lua:13

    `if menu[3] == true then`

    attempt to index ? (a nil value) with key '3' (global 'menu')

    level = 1, const = 17, proto = 0, upval = 1, vars = 5, code = 35

    GETTABLE v0 v0 3

     ; PC 28 CODE 00434007 OP 7 A 0 B 0 C 269 Bx 269 sBx -130802

    stack traceback:

    /storage/emulated/0/VMOSfiletransferstation/helprequest.lua:13 in function 'START'

    /storage/emulated/0/VMOSfiletransferstation/helprequest.lua:66 in main chunk

    [Java]: in ?

    at luaj.LuaValue.f(src:989)

    at luaj.LuaValue.c(src:2864)

    at luaj.LuaValue.i(src:2767)

    at luaj.LuaValue.w(src:1094)

    at luaj.LuaClosure.a(src:363)

    at luaj.LuaClosure.l(src:160)

    at luaj.LuaClosure.a(src:533)

    at luaj.LuaClosure.l(src:160)

    at android.ext.Script.d(src:6056)

    at android.ext.Script$ScriptThread.run(src:5785))

     

    requesthelp.lua 1.04 kB · 0 downloads

    os.exit()

  18. 35 minutes ago, Miraxidor said:

    Engaging in such activities can lead to various consequences, including account suspension, permanent bans, and even legal action in some cases. Instead of looking for shortcuts, there are legitimate ways to enhance your gaming experience and possibly earn more coins or chips within the rules set by the game developers.

    I doubt anyone is here to look for a legitimate way.

  19. 9 hours ago, Tama7 said:

    This should be used "gg",But this changes with "L*_*"

    IMG_20240324_013628.jpg

    I'm not sure, but probably they did 

    local LO_O = gg
    LO_O.toast("test")

    I have no idea why the creator did that because you can still use "gg".

  20. On 3/11/2024 at 12:01 AM, elactix364 said:

    (Offline game)

    Hi, what should I do if I'm searching for an address and game guardian couldn't find it, it looks that the address is encrypted in some way? I don't know if that's possible. 

    I've searched here and on YouTube seems its only me who's facing this issue so maybe I'm doing something wrong 

    Provide more info. A video perhaps.

  21. 20 hours ago, kotako said:

    Well, in my opinion, I did everything right, but nothing works.  + i tired use offset for delete check unique identifiers, but then i cant logging to online.

    Well, thx for help

    I mean, you didn't let NoFear help and just said you tried everything. Can't ask for help and say you tried everything. They don't work together. Just say what you tried. Then others can figure out what you haven't tried.

×
×
  • 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.