Jump to content
Enyby

LUA scripting

Recommended Posts

On 7/20/2017 at 8:50 PM, Enyby said:

Build 5559:

GameGuardian.5559.apk

It think you made a typo, it's 5561 actually:

Screenshot_20170722-082448.thumb.png.465a729e458d4b8e55b9ea559030baf1.png

Some request:

1_Can we have a command to edit a certain value in search results?

We have "editAll" command but sometimes it's critical to only edit one value from founded values, cuz others are fake and crash the game, something like this:

[code] [edit] = function: edit /* gg.edit(value number in results,string value, int type) [/code]

example we have 4 value and we want to edit the third value to 1000 we do this then:

 gg.edit(3,1000,gg.TYPE_DWORD) 

 

2_can we have the ability to save a value to saved list? Not just for saving, for adding other addressess based on that address from offsets.

_______________________________________________
added 1 minute later
5 hours ago, congadey said:

about 5561 not 5559

Yes, you are right. In "about" it's 5561 not 5599. Thanks for telling.

Share this post


Link to post
Share on other sites

1 minute ago, Backlift said:

It think you made a typo, it's 5561 actually:

No. I made rebuild. Build number increased but it is does not matter.

_______________________________________________
added 3 minutes later
2 minutes ago, Backlift said:

1_Can we have a command to edit a certain value in search results?

Use
 

local tbl = gg.getResults(10)
print(tbl)
local item = tbl[3]
item.value = '123'
gg.setValues({item})

 

Share this post


Link to post
Share on other sites
6 minutes ago, Backlift said:

can we have the ability to save a value to saved list? Not just for saving, for adding other addressess based on that address from offsets.

Now - no. We have plans about work with saved lists in future.

Share this post


Link to post
Share on other sites

I do understand it will be able to run LUA Scripts but is it possible to make it compatible to a game called 'Roblox'?

I have seen the game scripting similar to LUA.

Here is an image:

_3tKWSwuTri_A_zBK5GgyA.png

Share this post


Link to post
Share on other sites

No. You can not make car compatible with cow.

Share this post


Link to post
Share on other sites

Updated gg table:

Spoiler

gg =   table(538aa1ec): {
       [BUILD] = 5713
       [CACHE_DIR] = /data/data/catch_.me_.if_.you_.can_/cache
       [EXT_CACHE_DIR] = /mnt/sdcard/Android/data/catch_.me_.if_.you_.can_/cache
       [EXT_FILES_DIR] = /mnt/sdcard/Android/data/catch_.me_.if_.you_.can_/files
       [FILES_DIR] = /data/data/catch_.me_.if_.you_.can_/files
       [PACKAGE] = catch_.me_.if_.you_.can_
       [REGION_ANONYMOUS] = 32
       [REGION_ASHMEM] = 524288
       [REGION_BAD] = 131072
       [REGION_CODE_APP] = 16384
       [REGION_CODE_SYS] = 32768
       [REGION_C_ALLOC] = 4
       [REGION_C_BSS] = 16
       [REGION_C_DATA] = 8
       [REGION_C_HEAP] = 1
       [REGION_JAVA] = 65536
       [REGION_JAVA_HEAP] = 2
       [REGION_OTHER] = -1032320
       [REGION_PPSSPP] = 262144
       [REGION_STACK] = 64
       [SIGN_EQUAL] = 536870912
       [SIGN_INEQUAL] = 268435456
       [SIGN_LARGER] = 67108864
       [SIGN_SMALLER] = 134217728
       [TYPE_AUTO] = 127
       [TYPE_BYTE] = 1
       [TYPE_DOUBLE] = 64
       [TYPE_DWORD] = 4
       [TYPE_FLOAT] = 16
       [TYPE_QWORD] = 32
       [TYPE_WORD] = 2
       [TYPE_XOR] = 8
       [VERSION] = 8.29.0
       [VERSION_INT] = 82900
       [alert] = function: alert /* gg.alert(string text[, string positive[, string negative[, string neutral]]]) -> int: 0 = cancel, 1 = positive, 2 = negative, 3 = neutral */
       [choice] = function: choice /* gg.choice(table items[, string selected]) -> string || nil */
       [clearResults] = function: clearResults /* gg.clearResults() -> nil */
       [copyMemory] = function: copyMemory /* gg.copyMemory(long from, long to, int bytes) -> true || string with error */
       [dumpMemory] = function: dumpMemory /* gg.dumpMemory(long from, long to, string dir) -> true || string with error */
       [editAll] = function: editAll /* gg.editAll(string value, int type) -> count of changed || string with error */
       [getRanges] = function: getRanges /* gg.getRanges() -> int */
       [getResultCount] = function: getResultCount /* gg.getResultCount() -> long */
       [getResults] = function: getResults /* gg.getResults(int count) -> array || string with error */
       [getSelectedPackage] = function: getSelectedPackage /* gg.getSelectedPackage() -> string || nil */
       [getSpeed] = function: getSpeed /* gg.getSpeed() -> double */
       [getValuesRange] = function: getValuesRange /* gg.getValuesRange(table values) -> table || string with error */
       [getValues] = function: getValues /* gg.getValues(table values) -> table || string with error */
       [gotoAddress] = function: gotoAddress /* gg.gotoAddress(long address) -> nil */
       [isPackageInstalled] = function: isPackageInstalled /* gg.isPackageInstalled(string pkg) -> bool */
       [isProcessPaused] = function: isProcessPaused /* gg.isProcessPaused() -> bool */
       [isVisible] = function: isVisible /* gg.isVisible() -> bool */
       [multiChoice] = function: multiChoice /* gg.choice(table items[, table selection]) -> table || nil */
       [processKill] = function: processKill /* gg.processKill() -> bool */
       [processPause] = function: processPause /* gg.processPause() -> bool */
       [processResume] = function: processResume /* gg.processResume() -> bool */
       [processToggle] = function: processToggle /* gg.processToggle() -> bool */
       [prompt] = function: prompt /* gg.prompt(table prompts[, table defaults[, table types]]) -> nil || table with keys from prompts and values from inputs */
       [removeResults] = function: removeResults /* gg.removeResults(table results) -> true || string with error */
       [searchAddress] = function: searchAddress /* gg.searchAddress(string text[, long mask[, int type[, int sign[, long memoryFrom[, long memoryTo]]]]]) -> true || string with error */
       [searchFuzzy] = function: searchFuzzy /* gg.searchFuzzy([string difference[, int type[, int sign[, long memoryFrom[, long memoryTo]]]]]) -> true || string with error */
       [searchNumber] = function: searchNumber /* gg.searchNumber(string text[, int type[, bool encrypted[, int sign[, long memoryFrom[, long memoryTo]]]]]) -> true || string with error */
       [setRanges] = function: setRanges /* gg.setRanges(int ranges) -> nil */
       [setSpeed] = function: setSpeed /* gg.setSpeed(double speed) -> true || string with error */
       [setValues] = function: setValues /* gg.setValues(table values) -> true || string with error */
       [setVisible] = function: setVisible /* gg.setVisible(bool visible) -> nil */
       [sleep] = function: sleep /* gg.sleep(int milliseconds) -> nil */
       [startFuzzy] = function: startFuzzy /* gg.startFuzzy([int type[, long memoryFrom[, long memoryTo]]]) -> true || string with error */
       [timeJump] = function: timeJump /* gg.timeJump(string time) -> true || string with error */
       [toast] = function: toast /* gg.toast(string text[, bool fast]) -> nil */
}

 

 

Share this post


Link to post
Share on other sites
4 hours ago, Enyby said:

Updated gg table:

  Hide contents


gg =   table(538aa1ec): {
       [BUILD] = 5713
       [CACHE_DIR] = /data/data/catch_.me_.if_.you_.can_/cache
       [EXT_CACHE_DIR] = /mnt/sdcard/Android/data/catch_.me_.if_.you_.can_/cache
       [EXT_FILES_DIR] = /mnt/sdcard/Android/data/catch_.me_.if_.you_.can_/files
       [FILES_DIR] = /data/data/catch_.me_.if_.you_.can_/files
       [PACKAGE] = catch_.me_.if_.you_.can_
       [REGION_ANONYMOUS] = 32
       [REGION_ASHMEM] = 524288
       [REGION_BAD] = 131072
       [REGION_CODE_APP] = 16384
       [REGION_CODE_SYS] = 32768
       [REGION_C_ALLOC] = 4
       [REGION_C_BSS] = 16
       [REGION_C_DATA] = 8
       [REGION_C_HEAP] = 1
       [REGION_JAVA] = 65536
       [REGION_JAVA_HEAP] = 2
       [REGION_OTHER] = -1032320
       [REGION_PPSSPP] = 262144
       [REGION_STACK] = 64
       [SIGN_EQUAL] = 536870912
       [SIGN_INEQUAL] = 268435456
       [SIGN_LARGER] = 67108864
       [SIGN_SMALLER] = 134217728
       [TYPE_AUTO] = 127
       [TYPE_BYTE] = 1
       [TYPE_DOUBLE] = 64
       [TYPE_DWORD] = 4
       [TYPE_FLOAT] = 16
       [TYPE_QWORD] = 32
       [TYPE_WORD] = 2
       [TYPE_XOR] = 8
       [VERSION] = 8.29.0
       [VERSION_INT] = 82900
       [alert] = function: alert /* gg.alert(string text[, string positive[, string negative[, string neutral]]]) -> int: 0 = cancel, 1 = positive, 2 = negative, 3 = neutral */
       [choice] = function: choice /* gg.choice(table items[, string selected]) -> string || nil */
       [clearResults] = function: clearResults /* gg.clearResults() -> nil */
       [copyMemory] = function: copyMemory /* gg.copyMemory(long from, long to, int bytes) -> true || string with error */
       [dumpMemory] = function: dumpMemory /* gg.dumpMemory(long from, long to, string dir) -> true || string with error */
       [editAll] = function: editAll /* gg.editAll(string value, int type) -> count of changed || string with error */
       [getRanges] = function: getRanges /* gg.getRanges() -> int */
       [getResultCount] = function: getResultCount /* gg.getResultCount() -> long */
       [getResults] = function: getResults /* gg.getResults(int count) -> array || string with error */
       [getSelectedPackage] = function: getSelectedPackage /* gg.getSelectedPackage() -> string || nil */
       [getSpeed] = function: getSpeed /* gg.getSpeed() -> double */
       [getValuesRange] = function: getValuesRange /* gg.getValuesRange(table values) -> table || string with error */
       [getValues] = function: getValues /* gg.getValues(table values) -> table || string with error */
       [gotoAddress] = function: gotoAddress /* gg.gotoAddress(long address) -> nil */
       [isPackageInstalled] = function: isPackageInstalled /* gg.isPackageInstalled(string pkg) -> bool */
       [isProcessPaused] = function: isProcessPaused /* gg.isProcessPaused() -> bool */
       [isVisible] = function: isVisible /* gg.isVisible() -> bool */
       [multiChoice] = function: multiChoice /* gg.choice(table items[, table selection]) -> table || nil */
       [processKill] = function: processKill /* gg.processKill() -> bool */
       [processPause] = function: processPause /* gg.processPause() -> bool */
       [processResume] = function: processResume /* gg.processResume() -> bool */
       [processToggle] = function: processToggle /* gg.processToggle() -> bool */
       [prompt] = function: prompt /* gg.prompt(table prompts[, table defaults[, table types]]) -> nil || table with keys from prompts and values from inputs */
       [removeResults] = function: removeResults /* gg.removeResults(table results) -> true || string with error */
       [searchAddress] = function: searchAddress /* gg.searchAddress(string text[, long mask[, int type[, int sign[, long memoryFrom[, long memoryTo]]]]]) -> true || string with error */
       [searchFuzzy] = function: searchFuzzy /* gg.searchFuzzy([string difference[, int type[, int sign[, long memoryFrom[, long memoryTo]]]]]) -> true || string with error */
       [searchNumber] = function: searchNumber /* gg.searchNumber(string text[, int type[, bool encrypted[, int sign[, long memoryFrom[, long memoryTo]]]]]) -> true || string with error */
       [setRanges] = function: setRanges /* gg.setRanges(int ranges) -> nil */
       [setSpeed] = function: setSpeed /* gg.setSpeed(double speed) -> true || string with error */
       [setValues] = function: setValues /* gg.setValues(table values) -> true || string with error */
       [setVisible] = function: setVisible /* gg.setVisible(bool visible) -> nil */
       [sleep] = function: sleep /* gg.sleep(int milliseconds) -> nil */
       [startFuzzy] = function: startFuzzy /* gg.startFuzzy([int type[, long memoryFrom[, long memoryTo]]]) -> true || string with error */
       [timeJump] = function: timeJump /* gg.timeJump(string time) -> true || string with error */
       [toast] = function: toast /* gg.toast(string text[, bool fast]) -> nil */
}

 

 

Finally and official Update, Hope So Further Update Include much More Functions and Features.

Share this post


Link to post
Share on other sites
On 21.07.2017 at 4:00 PM, Backlift said:

User MAY want to hack only one value , for this instance of the game

print(gg.choice({'1', 'cat', 'dog', 'racoon', 'bear'}))
print(gg.choice({'2', 'cat', 'dog', 'racoon', 'bear'}, 3))
print(gg.choice({'3', 'cat', 'dog', 'racoon', 'bear'}, 30))
print(gg.multiChoice({'4', 'cat', 'dog', 'racoon', 'bear'}, {true, false, true}))
print(gg.multiChoice({'5', 'cat', 'dog', 'racoon', 'bear'}))

 

scr_1500880002.jpg

scr_1500880009.jpg

scr_1500880015.jpg

scr_1500880020.jpg

scr_1500880031.jpg

scr_1500880039.jpg

Share this post


Link to post
Share on other sites
1 hour ago, Enyby said:

print(gg.choice({'1', 'cat', 'dog', 'racoon', 'bear'}))

print(gg.choice({'2', 'cat', 'dog', 'racoon', 'bear'}, 3))

print(gg.choice({'3', 'cat', 'dog', 'racoon', 'bear'}, 30))

print(gg.multiChoice({'4', 'cat', 'dog', 'racoon', 'bear'}, {true, false, true}))

print(gg.multiChoice({'5', 'cat', 'dog', 'racoon', 'bear'}))

That awesome now its looking like we can finally create  more advance and complicated lua scripts

Share this post


Link to post
Share on other sites

Any scripts for refining search results?

Sorry I'm still learning English and GG.

Share this post


Link to post
Share on other sites

Any search function make refine if you not cleared previous result.

Share this post


Link to post
Share on other sites

How to remove results using the script?...

I really need an example. Thank you.

Share this post


Link to post
Share on other sites
2 minutes ago, Aufar_R said:

How to remove results using the script?...

I really need an example. Thank you.

you can use gg.clearResults()                              --By using so it clear's the list of searched results

::research::
v = gg.prompt({i='Enter value'}, {i='0'})
gg.searchNumber(v['i'], gg.TYPE_DWORD, true, gg.SIGN_EQUAL, 0, -1)
if gg.getResultCount() == 1 then
   gg.editAll('10000', gg.TYPE_DWORD) 
   gg.alert('Hacking Done!, Enjoy') 
   gg.clearResults()
   os.exit()
   else gg.alert('Too much values found, Go to game and change the value, then open gameguardian window again')
  goto research
   end 

it not a complete example but can work

Share this post


Link to post
Share on other sites
43 minutes ago, Aufar_R said:

I really need an example.

-- first search
gg.clearResults()
gg.searchNumber ('10', gg.TYPE_DWORD)

-- refine search for existsing results
gg.searchNumber ('10', gg.TYPE_DWORD)

 

Share this post


Link to post
Share on other sites
12 minutes ago, Enyby said:

-- first search
gg.clearResults()
gg.searchNumber ('10', gg.TYPE_DWORD)

-- refine search for existsing results
gg.searchNumber ('10', gg.TYPE_DWORD)

 

now that's an example ?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...