Jump to content

bukandewa

Ascended
  • Posts

    210
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by bukandewa

  1. I have learn Lua from zero, I always read many references about Lua in some sites. You can starting Read Lua Manual for basic understanding. Dont be tired to solve trial and error your code.
  2. Try to add some of nearby value in your group search. For example, 1000;2000;3000 3 steps Above 1000 is 500, then you can try 500;1000;2000;3000. 3 steps below 3000 is 100, then you can change to 500;1000;2000;3000;100. And so on, until the group search is find desire value, if group search is not direct to your desire value, restart, try different combinations. Yeah, it is so boring, you need to restart the game many times.
  3. Leaking to get a little bit clue, learning, then try to writing by your self is better for your future educational, for your personal use. But if your purposes is to reshare with less effort, it is a bad things. If you want to developing, writing lua scripts or something else, research is the most important, well it will take your time a lot, also make your brain stuck sometimes. But you will get usefull knowledge, experience.
  4. The most silly things is, os.remove can be remove your obb files.
  5. Version = tonumber(gg.makeRequest('https://pastebin.com/raw/GgPrZ1t9').content) --1.1 Script = gg.makeRequest('https://pastebin.com/raw/EheRSRkv').content --this is example if Version == 1.2 then gg.alert('Script is up to date.') else Update = gg.alert('New version '..Version..' available.\nClick button below to save the file.', 'Exit', 'Save File') if not Update then os.exit() end if Update == 1 then os.exit() end if Update == 2 then --file path downloaded file file = io.open(gg.getFile():gsub('lua', 'downloaded.lua'),'w') file:write(Script) file:close() end end Code above just an example version checker and downloader script. You can improve as you need. I am not recommended to share text file in pastebin, because pastebin didnt have file management. I think github is good enough for free services. Or if you want to more advance with php, you can try 000webhost.
  6. I am very rarely use discord, it will slow respond to answer. You can jump to my telegram if you want. t.me/bukandewa
  7. gg.makeRequest just load raw text content in read mode, temporary, not downloaded as a file. Basically, you need to know how script loader works. I think its not hard to understand. Then, you should give an example of the work you have done, people will try to solve your code, also will give you some explanations. One more thing, everyone who have access to your 'online' file, highly possible to leak your code, like an example below. Mortal_combat_BadCaseScriptLauncher.lua
  8. You cant make direct link to download file via script.
  9. The problem is, line break. file:read(*l) will read the file line by line, so it will capture only first line 'gg.alert([['
  10. Just pm, I will try to solve. Jump to my tele t.me/bukandewa
  11. Maybe your string inside ([[ ]])) is too long. Error log says 'expression too complex'? To fix that issue you can try to split the string, then concatenate them. I'll give you an example obsfucate function. It is not protect the scripts from log hooking, but the purposes is, to slower any 'leaker' convert back your code to full original text using tools like unluac or sstool. --encode function strToBytes(str) local byteArray= { str:byte(1, -1) } for i = 1, #byteArray do byteArray[i] = byteArray[i] + 100 encoded = '{' ..table.concat(byteArray, ',') .. '}' encoded = 'bytesToStr(' ..encoded .. ')' encoded = 'string.dump(load('..encoded..'),true,true)' encoded = 'load('..encoded..')()\n' end return encoded end --decode function bytesToStr(byteArray) local output = "" for _,b in ipairs(byteArray) do output = output .. string.char(b - 100) end return output end
  12. Ok, just wait for a moment. About the changelog, I am very appreciated you block function abuse that can be harm the user.
  13. Cant download latest versions @Enyby
  14. Script cannot look which region is actually needed. Why you make it become complicated? gg.setRanges(gg.REGION_BAD) gg.searchNumber("1;2;3", gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1) Just put memory region which is needed before searchNumber, then scripts will only search value in memory region selected by scripts.
  15. function tochar(str, sep) if type(str) == 'string' then sep = ',' or '' for i = 1,#str do bytes = table.concat({string.byte(str, 1,-1)},sep) end return "load(string.char("..bytes.."))()\n" end end a = "gg.REGION_BAD" b = "gg.REGION_ANONYMOUS" c = "gg.REGION_C_ALLOC" d = "gg.setRanges(bit32.bxor("..a..", "..b..", "..c.."))" print(d) --output : gg.setRanges(bit32.bxor(gg.REGION_BAD, gg.REGION_ANONYMOUS, gg.REGION_C_ALLOC)) print(tochar(d)) --output : load(string.char(103,103,46,115,101,116,82,97,110,103,101,115,40,98,105,116,51,50,46,98,120,111,114,40,103,103,46,82,69,71,73,79,78,95,66,65,68,44,32,103,103,46,82,69,71,73,79,78,95,65,78,79,78,89,77,79,85,83,44,32,103,103,46,82,69,71,73,79,78,95,67,95,65,76,76,79,67,41,41))() I cant understand what do you mean clearly, but maybe code above is helping your case
  16. Well, single quote and double quotes will be complicated if you inconsistent in writing code. Syntax highlight will help you to see and find which code should be fixed.
  17. Because you put double (") inside concatenate function. It is should be put single quote first followed by double quotes. Then to closing, you should put double quotes first followed by single quote. It is depends on your first use in the code. I give you example below how to using single and double quote in some different case. str = 'world' data = 'hello('..str..')' str2 = 'world' data2 = 'hello("'..str..'")' str3 = "world" data3 = "hello('"..str.."')" str4 = "world" data4 = "hello("..str..")" print(data)--output : hello(world) print(data2)--output : hello("world") print(data3)--output : hello('world') print(data4)--output : hello(world)
  18. Every usefull open source code is can be used by others, changing and improving code is an option based on your needs.
  19. local g = {} g.sel = nil g.config = gg.EXT_FILES_DIR:gsub('files', 'tes.cfg') g.data = loadfile(g.config) if g.data ~= nil then g.sel = g.data() g.data = nil end while true do g.sel = gg.prompt({ 'Select file to encode :',--1 'Select writable path for output :',--2 },g.sel, {'file',--1 'path',--2 }) if g.sel == nil then break end gg.saveVariable(g.sel, g.config) break end You can use part of enyby compiler to load config, you can select g.config .cfg file location and name as you want. In my code above, I put .cfg file in the gg.EXT_FILES_DIR and named tes.cfg. You can improve as you need.
  20. Dont surrender, you can find another way to keep enjoy hacking the game using GG. How about edit values? You can try find something usefull value, example, damage, health, skill cooldown etc.
  21. I am using magisk and preroot by lineage, both of them have a weakness. Yes sir, we need analyzing the reason of game wont start or force stop while try to hack. So, whats the solutions if gg cant avoid ptrace protection? Based on your explanation, it is should be 1 pid process?
  22. It is depends on your code. You can learn and improving the code, for example : function tochar(str, sep) if type(str) == 'string' then for i = 1,#str do sep = ',' char = table.concat({string.byte(str, 1,-1)},sep) end return "load(string.char("..char.."))()" end end repeat local data = filex:read("*l") if data ~= nil then if data:match('gg(.-)%p$') and data:match('os(.-)%p$') or data:match('searchNumber') or data:match('editAll') or data:match('getResults') or data:match('toast') or data:match('setRanges') or data:match('searchAddress') or data:match('remove') or data:match('rename') then local data = tochar(data) file = io.open(g.sel[1]..'X', 'a+') file:write(data) file:write("\n") file:close() else file = io.open(g.sel[1]..'X', 'a+') file:write(data) file:write("\n") file:close() end end I just convert some important string using string.match. It will keep results smaller, also it will minimalizing error while compiling. You can improving function tochar, string.match to fix error while compiling. Of course, it is need enough knowledge. But, you can learn by read in many refferences about lua programming, do trial and error. Tips to know which line of code cause error while compiling, you can try edit os.remove(g.sel[1]..'X') to --os.remove(g.sel[1]..'X'). You can analyzing which part also read error log in precompiled file.
  23. It is looks like your root status not hide perfectly. Idk about security in your game talking about. But, in most case, some android online game not allowed rooted phone, xposed installed etc. So you can try hide your root status, hide xposed installed to avoid detection while run the game.
  24. Check status, all status should be all green and checked.
×
×
  • 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.