Count_Nosferatu
Contributor-
Posts
142 -
Joined
-
Last visited
-
Days Won
10
Content Type
Profiles
Forums
Downloads
Gallery
Everything posted by Count_Nosferatu
-
How to use GG and GO Multiple in Bluestack 5 Pie(64bit)
Count_Nosferatu replied to NopeWhy's question in Help
-
How to use GG and GO Multiple in Bluestack 5 Pie(64bit)
Count_Nosferatu replied to NopeWhy's question in Help
Which game detects root? I want to check it on other emulators. -
It is also useful for server to check that request to it comes from GG. So that it does not respond to requests from Firefox, Chrome, IE, Edge and other brouser. Otherwise, everyone and their dogs, will try to get your content.
-
Such descriptions are not public. In any case, users authentication and storage of keys cannot be done in script itself.
-
If you said "A", then say "B"
-
Official version of BlueStacks does not have root permission. You need to look for a special version with root access. NOX, MEMU, LDPlayer has a root settings.
-
You didn't ask about installing GG on a smartphone
-
Read this forum. the successful combination of your Emulator and virtual space APK (#1882nrfi)
-
How to write lua script to find & copy game status bin to storage /download
Count_Nosferatu replied to Jamieq's question in Help
Each file has a permission: read, write, executable. Each folder has permission: read, write, and to view its content. This is for owner of file and for group owner belongs to. You won't be able to change this using GG. Standard lua function os.execute(command), blocked for security reasons. -
How to write lua script to find & copy game status bin to storage /download
Count_Nosferatu replied to Jamieq's question in Help
After executing your script, what does file */game_status.bin contain ? -
the successful combination of your Emulator and virtual space APK
Count_Nosferatu replied to lonmowrman's question in Help
GG requires root rights to work. This can be done by running a virtual machine, or rooting your smartphone or tablet. In emulator, set root in settings. There is no need to install virtual machine in emulator. -
the successful combination of your Emulator and virtual space APK
Count_Nosferatu replied to lonmowrman's question in Help
I don't understand why, when the emulators have root in their settings, you are trying to install virtual machines in them? Please explain. -
How do I use gg to see what accesses this address
Count_Nosferatu replied to Xwl522's question in Help
Perhaps You can't explain what You want. An old programmer's joke: "To ask a question correctly, you need to know more than half answer!" -
How do I use gg to see what accesses this address
Count_Nosferatu replied to Xwl522's question in Help
Long tap on desired address, and select "Search Pointer" Or use in script gg.searchPointer() https://gameguardian.net/help/classgg.html#a5eef9aac9f02932a4c67a184edec2bd4 -
The value of one byte can be from 0 to 255 decimal numbers. (0x00 - 0xFF) If the decimal number is greater than 255, then it is already two or more bytes. 256 - 0x01 & 0x00 257 - 0x01 & 0x01 999 - 0x03 & 0xE7
-
Instead of the last line in your script, write: local r = getListItems() gg.clearList() local t for i = 1, #r do t = gg.getValues({{address = r[i].address, flags = gg.TYPE_DWORD}})[1].value if t ~= 670 then return else break end end print(r[i].value) print(r[i].address) Then do whatever you want.
-
RR3 All version. Unlocks events in current ROUND.
Count_Nosferatu replied to Count_Nosferatu's topic in LUA scripts
Hi Guys. Open the script with any text editor, the comments say what needs to be done for new versions of the game. Specifically for version 12.6.1 you need to change: local Events = { -- For RR3 v12.5 'HUAYRA ROYALE (Flashback) - August 20, 2024', 'Ferrari 296 GTB TTC - August 26, 2024', "F1 PIRELLI GP D'ITALIA 2024 (Race Day) - August 27, 2024", 'TRACK DAY: MONZA SP1 (Flashback) - September 1, 2024', 'Acura NSX GT3 LTS - September 6, 2024', 'GT3 Challenge TTC - September 10, 2024', 'Jaguar C-X75 R3 Spec LTS - September 11, 2024', 'F1 SINGAPORE GP 2024 (Race Day) - September 16, 2024', } local Date = { -- For RR3 v12.6 '2024082000', '2024082600', '2024082700', '2024090100', '2024090600', '2024091000', '2024091100', '2024091600', } -
I think the problem is not in the search, but in the memory overflow after execution gg.loadResults(results)
-
For example, look at this part of the code, here you can see the main difference between x32 and x64 local f = {} local f1 = 0 local f2 = 0 local f3 = 0 local b = 0 local d2 = '2;h08;h32;h30;h30;h39::' local d6 = '6;h08;h32;h30;h31;h30::' local d7 = '7;h08;h32;h30;h31;h33::' local bytes = 9 gg.setRanges(gg.REGION_ANONYMOUS) if gg.getTargetInfo().x64 then bytes = 13 gg.setRanges(gg.REGION_C_ALLOC | gg.REGION_OTHER) end gg.searchNumber(d2 ..bytes, gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 1) f = gg.getResults(1) f1 = f[1].address gg.toast('\nFound data for item #2') gg.clearResults() gg.searchNumber(d6 ..bytes, gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 1) f = gg.getResults(1) f2 = f[1].address gg.toast('\nFound data for item #6') gg.clearResults() gg.searchNumber(d7 ..bytes, gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 1) f = gg.getResults(1) f3 = f[1].address gg.toast('\nFound data for item #7') gg.clearResults() if gg.getTargetInfo().x64 then gg.searchNumber(f1 ..';' ..f2 ..';' ..f3 ..'::24', gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1, 1) b = gg.getResultCount() if b == 3 then gg.refineNumber(f1, gg.TYPE_QWORD, false, gg.SIGN_EQUAL, 0, -1, 0) b = gg.getResultCount() f = gg.getResults(1) end else gg.searchNumber(f1 ..';' ..f2 ..';' ..f3 ..'::12', gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 1) b = gg.getResultCount() if b == 3 then gg.refineNumber(f1, gg.TYPE_DWORD, false, gg.SIGN_EQUAL, 0, -1, 0) b = gg.getResultCount() f = gg.getResults(1) end end gg.alert('Found first address of items table')
-
My grandfather used to say: "Everything is new, this is long forgotten old."
-
Pointer is jump address. For 32bit programs, address is 4 bytes DWORD. For 64bit programs, address is 8 bytes QWORD
-
I think that the problem has not yet been solved. It is not clear which range should be used. The script finds many ranges with ['type'] = 'rw-p' t = gg.getRangesList('com.ea.games.r3_row*base.apk') for i = 1, #t do if t[i]['type'] == 'rw-p' then print(t[i]) end end script-output.txt
-
Script ended: Script error: luaj.o: /storage/emulated/0/Pictures/Scripts/pointerTest.lua:67 ` if ((a[1].address > v["start"]) and (a[1].address < v["end"])) then` attempt to index ? (a nil value) with key 'address' (field '1')
-
Doesn't really work. It is not clear which of base apk to count from. gg.setRanges(gg.REGION_CODE_APP) t = gg.getRangesList('^/data/*com.ea.games.r3_row*base.apk*$') print('Found ' ..#t ..' results') a = 0 for i = 1, #t do if t[i]['type'] == 'rw-p' then print(t[i]) a = a + 1 end end print('Found ' ..a ..' rw-p results') -- -> Script ended: Found 37 results { -- table(5d5648b) ['end'] = 133868052664320, ['internalName'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['name'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['start'] = 133868052647936, ['state'] = 'O', ['type'] = 'rw-p', } { -- table(f005968) ['end'] = 133868054269952, ['internalName'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['name'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['start'] = 133868054241280, ['state'] = 'O', ['type'] = 'rw-p', } { -- table(cd3f181) ['end'] = 133868055478272, ['internalName'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['name'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['start'] = 133868055474176, ['state'] = 'O', ['type'] = 'rw-p', } { -- table(4995226) ['end'] = 133868055621632, ['internalName'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['name'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['start'] = 133868055617536, ['state'] = 'O', ['type'] = 'rw-p', } { -- table(bb3be67) ['end'] = 133868057997312, ['internalName'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['name'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['start'] = 133868057923584, ['state'] = 'O', ['type'] = 'rw-p', } { -- table(a35a414) ['end'] = 133868058820608, ['internalName'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['name'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['start'] = 133868058816512, ['state'] = 'O', ['type'] = 'rw-p', } { -- table(c4d24bd) ['end'] = 133868059889664, ['internalName'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['name'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['start'] = 133868059885568, ['state'] = 'O', ['type'] = 'rw-p', } { -- table(5386ab2) ['end'] = 133868116672512, ['internalName'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['name'] = '/data/app/com.ea.games.r3_row-etCOPHVNo-lYN2A8uKT50Q==/base.apk', ['start'] = 133868116594688, ['state'] = 'O', ['type'] = 'rw-p', } Found 8 rw-p results