Jump to content

Platonic

Contributor
  • Posts

    755
  • Joined

  • Last visited

  • Days Won

    27

Everything posted by Platonic

  1. I'm not sure about the question. Which original value? Original value refers to: (XA)(libil2cpp) offset 0x19A30A0 ?
  2. I see. Thanks for info provided.
  3. I think its useful when your accessing same table. But if table has a new variable because you don't want old table to be modified you still will be writhing multiply gg.getValues(). If its now in a while loop or not.
  4. Join the guy his server. And see if its real server or if he is deceiving you on a private server.
  5. Code is not the problem. Its lua scripting or GG logic. Just as in your example you use offset. Which updates only the address but not the value on that updated address. You use gg.getValues() to then get the values on that updated address and perform some actions with it. It would been efficient if GG automatically updates the value as well without using gg.getValues() I want to make a script that does that. But have no understanding or whatsoever of whats happening behind the screens for make a script that updates the values according to its addresses without needing to use gg.getValues().
  6. Hello Zolotov_official0, I believe my question has been misinterpreted. What i want to know is "why" values don't correspond to there addresses unless you do something as gg.getValues() which then get the values corresponding to the address in the sub tables...at least thats how it looks like it. Example in the screenshot. It is not always working in the favour to create new table with getValues because values don't get updated according to the address instantly. However im not complaining. Just asking why for educational purposes. Its something i don't find the logic in.
  7. Way out of range. Tagged pointer is one problem, Bigger problem is that it is the value that has the needed pointers near it which is out of range. Haven't find any other pointers that are properly ordered to get the desired values. Except for manually group searching. If manual group search is the only way then i suggest to install 32 bit apk of the game. Then script will work.
  8. Can someone explain me how this works. I have a table from the result list with 5 sub tables. Each has address, flags and value. Let's say i want the values of the current address + 0x8 Why does only the address update but not the value? I clearly have some misunderstandings i want to clear up. I also like to know how gg.getValues() is able to assign the right values to the addresses.
  9. One thing i forgot on the script was to add the appropriate regions,mainly its Ca but some special devices like emu will be only Anonymous or Other. Its included in script now. com.mytona.seekersnotes.android.lua
  10. I would suggest to do some prints on the script so we can find the issue. Is instruction set architecture value correct as in your apk? (If not then script uses wrong offsets), (return instructionSetArchitecture) Do you get 500+ results when first qword search happen?(make sure to try region (A, Ca, O) manually(just for sure) If above two are working correct it can be that your offsets for the pointers are different after the search. (Which would be strange, but you can check it manually) Check manually(this is for the first process level of Cafe): group search: 180D;35D;20D;4D;7D;10D;0D;0D;19D:33 18 or 9 results. Refine 4D Go to address of one of the two(there function is same) Go to address. You should see two pointers. They point to same address. 64bit -> - 0x1C and 32bit -> - 0x14 Go to pointer. Then you should see a string named .types = 126,879,515,898,890 and a pointer above that. Pointer should be 64bit -> 0x10 and 32bit -> 0x8 from the value 126,879,515,898,890. That pointer points back to the address where we saw two pointers. You have that?
  11. Tested on Memu 32 bit apk which only uses region A and a Xiaomi phone 64 bit apk Which is Ca before uploading. Both worked. If not emulator you must select region Ca. Where did the issue occure?
  12. Made a quick script just in case. Finding the values manually for each object location and progress level seems tiring as all values are all different. The script loads every process rate value for each location. Execute and edit all values to zero and it will give same results as above. com.mytona.seekersnotes.android.lua
  13. Hello Jennie1998, Please note: Value is dword. Value is different for each progress rate and object location Decreasing value = increasing % per play How value is found: First thing to try would be searching for nearby values because i could not find that process rate value directly either. Since the game starts with the Cafe i look there. Start with group searching the values from up to down(ignore symbols first): 75;60;19:: I get results, refine to 75. Use increment by 1 on the results to see if anything happens to desired value. 75 became 84, refine 84(make sure you reverted all other values to avoid crash) We must go to address of the value..to inspect if your process rate value is there. We first should analyze the structure, so we know more or less the range in which we should edit. We can see values that represent the same as on the board. 84, 60 and 19. As shown on the board. Since they are all dword values properly structured it seems to resemble a some data that represents stats. The stats visible on that board. We don't see anywhere the value 100, yet in memory it shows that value. Since it is a dword value between the 60 and 19 (known values) it should not be harmful to edit that value. I edit it to zero. Then switch board and return so that effects have taken. Value changed from 0% to NaN%, We play a game, you finish it in one go.
  14. Hi, If you still need. 64bit. Version 2.47.0 https://mega.nz/folder/zBswDYqQ#JX1ACmD_1QX4GBZuVy4Cyg
  15. Don't know what it is you need? You need Xa libil2cpp.so only for your research? No idea why but on Nox emulator its usually working a bit different: https://mega.nz/file/2AUnVZpD#h9bIE8Q99lExtyCHl2FTzw4E8HKJ-lxTWSrNOoPOyc0
  16. Has to be dumped with GG. Both libil2cpp.so and metadata.dat. Then it can be dumped with il2cpp dumper.
  17. Platonic

    No skills cooldown

    Hi. I could be wrong but it looks server sided. Putting cool down to zero = no damage on other objects. Cool Down time minus 0.459sec still works. But not higher and that's probably because of the FPS. I dunno if that's interesting to you? Its very little but slightly more advanced then others.
  18. Sadly has no subtitles. There is a other video. Bit more information and has YT subtitle feature avaible.
  19. I don't know that. If you don't get results then that means in most cases that the address is not being pointed to. If your on android 11+ and 64bit it could be tagged pointer but usually these addresses are in some unknown memory range. Then searching with GG usually won't work. Only way i believe to get to that memory then is if you know where the values your looking for are located, then some addresses above these values you have a pointer that can look like this: B400007500783467h. Then when using go to pointer GG will be able to jump to that location. To be fair. There can be lots of other reason why you don't get results. Perhaps your just searching at a wrong state of the game.
  20. Personnaly i don't really get the point of obfuscating a script that your not even selling(i guess your not selling). At fist all scripts where open source and people could learn from it..now alot think there script is so valuable no one is allowed to see it. Im only talking about those scripts made for specific games. Not talking about tools. @HEROGAMEOfficial im not sure because i can't install your game but are this some of your values? If so then i think the info is enough after a few tries here and there to replicate your behaviour. I also don't expect you to tell me. I would not know eitherway as i can't install that game. I tried for learning purposes. Not looking for take anything. testHero.txt
  21. Hello. Can you explain why GG can run obfuscated scripts, i see scripts that start with "LuaR"? New to this. Also does this work the same as with encrypted metadata that when loaded during runtime the texts becomes readable because it has been decrypted with some key(i think). If i recall a serious member of the forum once explained that no matter what the obfuscation is, GG has to understand the script. So it must do some conversion in something GG understands. Let me know because it kind of seems interesting for learn. Thanks.
  22. Try this script. Type your desired player name and it should swap with current player name, regardless of length. Keep note that during a match there is a limit on the player name. But its bigger limit then the one in the menu. Script does what was mentioned in previous comment. com.kitkagames.fallbuddies.lua
  23. Its not clear the issue. Otherwise make a video? How do you know that your supposed to get results?
  24. The issue does happen. See video. Not sure why: mobizen_20220726_071135.mp4
  25. The script works great. Yes i used byte, i believed it not to make a difference if i load them afterwards in the result list as the editAll should give the same result. But i can see the logic of working by WORD. Its the appropriate data type and must be faster as it does less loops to. Did not change anything to your script. Just added some things so its adjusted to the test subject. Script working fine. local newmem = gg.allocatePage(gg.PROT_WRITE) local string = "Doing good. Hearing good stories from the Admin, proud of what it has and will become" length = {{address = newmem + 0x10, flags = gg.TYPE_BYTE, value = #string, name = "Length"}, {address = newmem, flags = gg.TYPE_DWORD, value = 0, name = "START"}} gg.setValues(length) gg.addListItems(length) local stringTable = {} string:gsub(".",function(c) table.insert(stringTable,c) end) --convert string to table local addrs = {} local utf16Size = 2 for i=1, #string do addrs[i] = {} addrs[i]["address"] = (newmem+0x14) + (i-1)*utf16Size addrs[i]["flags"] = gg.TYPE_WORD addrs[i]["value"] = ";"..stringTable[i] end gg.setValues(addrs) gg.searchNumber('238,113,273', gg.TYPE_QWORD) r = gg.getResults(20) for i, v in ipairs(r) do v.address = v.address + 0x18 v.value = newmem end gg.setValues(r) gg.addListItems(r) Appreciated. mobizen_20220725_224227.mp4
×
×
  • 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.