Jump to content

kiynox

Contributor
  • Posts

    472
  • Joined

  • Last visited

  • Days Won

    13

Posts posted by kiynox

  1. [ @Koolie ]
    ---
    You just need to save the earlier results into memory:

    function increments(memo)
    	gg.clearResults()
    	memo_temp = {}
    	second_memo = gg.getValues(memo)
    	for k, v in ipairs(second_memo) do
    		memo_temp[k] = { ['address'] = v.address, ['flags'] = v.flags, ['value'] = tonumber(v.value) + 1 }
    	end
    	gg.setValues(memo_temp)
    end
    
    gg.searchNumber('10', gg.TYPE_DWORD)
    memo = gg.getResults( gg.getResultsCount() )
    
    --First Increment
    increments(memo)
    
    --Second Increment
    increments(memo)
    ...

    ---
    *Fixed. I forgot something

  2. [ @ash_9 ]
    ---
    There's nothing useful to read on the waydroid logs. Here's what I need to see:

    adb -d logcat > logcat.txt
    • - Send Game Guardian logs: Game Guardian -> Fix It Button -> Generate logs. Generated logs will exist on Internal Storage and send it here.

    ---
    This is tough, to provide some context, please attach Android Logs, Game Guardian Logs, and WayDroid Logs (perhaps find another one). And yes, I just recommend to use another emulator.

  3. [ @tthgj ]
    ---
    You don't need loop, using "gg.editAll" will change all the value of the address to your desires.

    # Search for Dword: 10
    gg.searchNumber('10', gg.TYPE_DWORD)
    
    # Edit all value to 99
    gg.getResults(gg.getResultsCount())
    gg.editAll('99', gg.TYPE_DWORD)

    ---
    I recommend to read our documentation: here

  4. [ @DimoNULL ]
    ---
    You need to specify what colors you're looking for, is it Shaders or Textures? Also, Shaders depends on Device Architecture (Mali or Snapdragon). Here's how you can find it:

    1. - Shaders are usually consist of RGB values (Red, Green, Blue). Each values is ranged from 1 to 255, example for color Blue : [0, 0, 255]. You can search this values as Float.
    2. - If you're looking for Body Color (changing Player color), you can search for "1" as float, and mess around with it. Usually it is for Unity based game.
    3. - You can change color by Hex value: Hex color. You need to change it before the game reach loading screen.
    4. - For textures, you can't change it's color. You need to edit the texture itself, which will involve editing the in-game files.
    5. - Assuming the game don't have tiled textures, you can change color for any object texture. You need to make the game unload the textures by deleting in-game files or unreferencing it on Memory (before loading screen). The object will turn to purple / pink: No Texture, which then you can find the pink color values and change to anything you want.
    6. - As for shaders, you can also debug your in-game renderer (OpenGL or Vulkan) using: Android GPU Inspector (never tried it) . Also, you can go with Android Emulator route and use: SpecialK or: Ninja Ripper to dump your in-game shaders to help you find color values.

    ---
    I have given you 6 answers for each scenario. If you have any questions, just ask me.

  5. [ @trafo ]
    ---
    If there's no global-metada & libil2cpp, then it is not Unity engine based game. The solution is: you need to cheat it manually. As alternative to dumping, you can just dissasemble the library and do your own research to find the game structure and values. Here's some useful tools:

    ---
    Seems like similar to Unity games, S3DMain.smf as Metadata, and libS3DClient.so as libil2cpp.so. Did you have tried to rename those file and see if you can use libil2cpp dumper?
    ---

  6. [ @tthgj ]
    ---
    I'm honestly confused on what you're trying to say. Please add punctuation and explain it slowly. So this is what I understand:
    Find value -> get the address from result -> address search, you mean pointer? -> and then save it:

    gg.searchNumber('10', gg.TYPE_DWORD)
    gg.loadResults( gg.getResults( gg.getResultsCount() ) )
    gg.searchPointer()

    *Use DWORD: for 32-bit & QWORD: for 64-bit
    ---

  7. [ @-SAICOBO- ]
    ---

    Quote

    It is not the application

    I'm talking about the solution for installing GG on your device, not installing GG on your virtual apps.
    ---

    Quote

    it is error 105 in the virtual app

    Instead of using Virtual Apps, I recommend you to use Virtual Machine. It has better features and compatibility, check it on this thread: Game Guardian: Android 14
    ---

  8. [ @PhPhPh ]
    ---
    You're wrong. Run each command separately, you're combining them all in one line.
    ---

    Quote

    package name means file name right ? 

    No. It's application name of Game Guardian. Look at "/data/data" and send screenshot here (use any kind of File Explorer)
    ---

    Quote

    this post is for people using virtual right ? 

    Partially, you can use that same solution. @MC874 has give you 2 answer, did you try the second one?
    ---
    *Also remove "<>" from the command. There's some example above.

  9. [ @douglaspo ]
    ---
    You're being weirdly vague. We need context for what this "offset" is. So is this what you mean?

    gg.setValues( {{["address"]= base_address + offset, ["value"] = 1, ["flags"] = gg.TYPE_DWORD}} )

    ---
    Since you're mentioning Offset, do you refer it to Unity games or anything in general? Anyway, just some summary:

    • - Boolean (True/False) are integer (Dword):
    • - 0 as false and 1 as true

    ---

  10. [ @mercutos ]
    ---

    Quote

    How can I get the source code for the following game?

    Unfortunately you can't get the original source code from already compiled library. You might assume it wrong about SDK. It is just the structure of the game library that shows you the pattern on "how the values are stored".
    ---

    Quote

    I found some ways, but it was with paid programs. I would like some free option (even if it is more rudimentary, I have engineering knowledge)

    There's a free version that you can use: Ghidra dissasembler software or Frida toolkit.
    ---

  11. [ @BiNoops ]
    ---

    Quote

    tips about hiding GG from the game did not help, apparently it was in the script.

    You can use these external modules in the future.
    ---

    Quote

    I used the for loop because there are a lot of teleportations

    If so, I recommend to do teleportations once in a while, trough prompt or interval because you're using "freeze value" here. Then set all of your coordinates into a table:

    player_coords = { [1] = {["x"]=1, ["y"]=2, ["z"]=3}, [2] = {["x"]=2, ["y"]=3, ["z"]=4} }

    ---

    Quote

    About freezing values - sometimes someone can push a character, so I freeze values

    Your "for loop" is apparently the main problem here. You need to remove "freeze value" or atleast clear any items from your savedlist: gg.clearList() before adding a new teleportations.
    ---
    If you have any problem just ask me.

  12. [ @BiNoops ]
    ---
    I forgot, should works now:

    gg.setRanges(gg.REGION_C_ALLOC)
    gg.sleep(300)
    
    gg.searchNumber('1 688;1 374;11.99852752686', gg.TYPE_FLOAT)
    gg.refineNumber('1 688', gg.TYPE_FLOAT)
    local xCoord = gg.getResults(gg.getResultsCount())
    local xCotemp = {}
    gg.clearResults()
    
    gg.searchNumber('1 688;1 374;11.99852752686', gg.TYPE_FLOAT)
    gg.refineNumber('1 374', gg.TYPE_FLOAT)
    local yCoord = gg.getResults(gg.getResultsCount())
    local yCotemp = {}
    gg.clearResults()
    
    gg.searchNumber('1 688;1 374;11.99852752686', gg.TYPE_FLOAT)
    gg.refineNumber('11.99852752686', gg.TYPE_FLOAT)
    local zCoord = gg.getResults(gg.getResultsCount())
    local zCotemp = {}
    gg.clearResults()
    
    for i, v in ipairs(xCoord) do
    	if v.flags == gg.TYPE_FLOAT then
    		xCotemp[i] = {
    			["address"] = v.address,
    			["value"] = '1575',
    			["flags"] = v.flags
    		}
    	end
    end
    gg.setValues(xCotemp)
    
    for i, v in ipairs(yCoord) do
    	if v.flags == gg.TYPE_FLOAT then
    		yCotemp[i] = {
    			["address"] = v.address,
    			["value"] = '1356',
    			["flags"] = v.flags
    		}
    	end
    end
    gg.setValues(yCotemp)
    
    for i, v in ipairs(zCoord) do
    	if v.flags == gg.TYPE_FLOAT then
    		zCotemp[i] = {
    			["address"] = v.address,
    			["value"] = '13.44929885',
    			["flags"] = v.flags
    		}
    	end
    end
    gg.setValues(zCotemp)

    ---

     

    chingchong.lua

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