Jump to content

Hexadecimal Searches in Game Guardian


Trasd
 Share

Recommended Posts

  • Administrators

An Argument for Hexadecimal Support

In Game Guardian

Game Guardian currently allows for only integer data types in its searches. If a real or complex data type needs to be found and edited, GG users must first convert these values to their integral, base ten, numeric representations. Not only are these conversions error prone, but they are counterintuitive and enormously large in their integral form.

Based on my personal experience, I'd say at least 25% of existing Android games use floating point representation for at least some of their data. I can only assume this is an attempt to discourage the editing of this data by memory editors such as Game Guardian.

As an example of the conversion needed to search for a floating point number using GG, consider the following where we want to edit the amount of gold:

Gold = 120

120 as a real number, float or double = 120.00

120.00 as a float in HEX = 0x42F00000

0x42F00000 as an integer for GG searches = 1123024896

120.00 as a double in HEX = 0x405E000000000000

0x405E000000000000 as an integer for GG searches = *4638144666238189568 (too large for GG)

As GG is currently written, to search for 120 as a floating point, you have to convert it to the unmanageable integer 1123024896 for float or *4638144666238189568 for double (too large for GG)! It would be much simpler to search for 0x42F00000 for float or 0x405E000000000000 for double. To make things even easier, if the number does not contain a decimal component (mantissa, which game storage uses usually don't), the zeros could be omitted altogether.

With the zeros left off and a hexadecimal search option implemented, a search for 120 as a real data type would result in:

42F0 (without the 0x clarification prefix) instead of 1123024896 used now for float or

405E (without the 0x clarification prefix) instead of *4638144666238189568 (too large for GG) used now for double

There may be legitimate reasons real data type searching was omitted from Game Guardian, but using this method, I've been able to hack a couple games that were basically left unresolved in the Request forums and, I have a feeling many more request could be fulfilled.

I think both Game Guardian and its users would benefit greatly if a hexadecimal data type option were added to the app's search feature.

Can I get an "ahmen?" lol

*EDITED: Please note, the double data type is too large to enter into GG as a base 10 dedecimal.

Link to comment
Share on other sites

  • 3 weeks later...
  • Administrators

Ahmen.

 

There ya go..    ;)

lol! TY
Link to comment
Share on other sites

 

An Argument for Hexadecimal Support

In Game Guardian

Game Guardian currently allows for only integer data types in its searches. If a real or complex data type needs to be found and edited, GG users must first convert these values to their integral, base ten, numeric representations. Not only are these conversions error prone, but they are counterintuitive and enormously large in their integral form.

Based on my personal experience, I'd say at least 25% of existing Android games use floating point representation for at least some of their data. I can only assume this is an attempt to discourage the editing of this data by memory editors such as Game Guardian.

As an example of the conversion needed to search for a floating point number using GG, consider the following where we want to edit the amount of gold:

Gold = 120

120 as a real number, float or double = 120.00

120.00 as a float in HEX = 0x42F00000

0x42F00000 as an integer for GG searches = 1123024896

120.00 as a double in HEX = 0x405E000000000000

0x405E000000000000 as an integer for GG searches = *4638144666238189568 (too large for GG)

As GG is currently written, to search for 120 as a floating point, you have to convert it to the unmanageable integer 1123024896 for float or *4638144666238189568 for double (too large for GG)! It would be much simpler to search for 0x42F00000 for float or 0x405E000000000000 for double. To make things even easier, if the number does not contain a decimal component (mantissa, which game storage uses usually don't), the zeros could be omitted altogether.

With the zeros left off and a hexadecimal search option implemented, a search for 120 as a real data type would result in:

42F0 (without the 0x clarification prefix) instead of 1123024896 used now for float or

405E (without the 0x clarification prefix) instead of *4638144666238189568 (too large for GG) used now for double

There may be legitimate reasons real data type searching was omitted from Game Guardian, but using this method, I've been able to hack a couple games that were basically left unresolved in the Request forums and, I have a feeling many more request could be fulfilled.

I think both Game Guardian and its users would benefit greatly if a hexadecimal data type option were added to the app's search feature.

Can I get an "ahmen?" lol

*EDITED: Please note, the double data type is too large to enter into GG as a base 10 dedecimal.

 

Have you tried contacting the developer about this ?

Link to comment
Share on other sites

  • Administrators

Have you tried contacting the developer about this ?

No, I haven't. At first I thought it was d2, then I figured the developer read this forum. I tried searching for another "official" forum, but that was a bust.

Should I send the developer an official request?

Link to comment
Share on other sites

No, I haven't. At first I thought it was d2, then I figured the developer read this forum. I tried searching for another "official" forum, but that was a bust.

Should I send the developer an official request?

I don't know, i thought you'd be more informed than me.

 

I sent D2Dyno a PM with a link to this topic but i'm guessing he's already seen it.

 

If you know how to get in touch with the developer i don't see what you've got to lose by just pointing him to this thread.

 

How did you get to be a moderator ?

Link to comment
Share on other sites

  • Administrators

Hello,

 

This is a great idea. Though, I'm not sure of a few things.

  1. If it would be possible to implement this into GG.
  2. If it would be feasible to implement it.

I remember people asked for name searching for GG, and Aqua said that he wouldn't add it, because it's ineffective, and a pain to code. Perhaps it can be implemented little by little, or simply by an overhaul to the search engine.

 

Not sure, but you can definitely email him: Here

Link to comment
Share on other sites

  • Administrators

Hello,

This is a great idea. Though, I'm not sure of a few things.

  • If it would be possible to implement this into GG.
  • If it would be feasible to implement it.
I remember people asked for name searching for GG, and Aqua said that he wouldn't add it, because it's ineffective, and a pain to code. Perhaps it can be implemented little by little, or simply by an overhaul to the search engine.

Not sure, but you can definitely email him: Here

Actually, searching for a hex value should be easier as it takes less conversions, if entered as hex. Plus, with floating point data, the first 4 bytes don't change based on the mantissa and doubles can be found as well. It's a win-win thing.

I've also seen where some of the "other" memory editors have found values GG couldn't; this is because they convert values to hex for at least one of their passes and the values were stored as floating point (Townsmen, in these forums is, I believe, one of them).

Now, my disclaimer: This is all based on 30+ years PC programming experience (C/C++, Assembly) and 0 years (Java) programming for the Android, or anything else....

Link to comment
Share on other sites

  • Administrators

I don't know, i thought you'd be more informed than me.

 

I sent D2Dyno a PM with a link to this topic but i'm guessing he's already seen it.

 

If you know how to get in touch with the developer i don't see what you've got to lose by just pointing him to this thread.

 

How did you get to be a moderator ?

I became a moderator for technical reasons (I'm an Admin on the Dev site), not because of any connection with GG. I ended up here because GG is the best and only memory editor I use IMHO, and I'm working on a crusade to rid Android of (most) IAP before the OS is ruined (like rock and roll in the '70s). If I can help others learn to edit their games (you'll see I rarely give answers, but show people how to find this stuff themselves), IAP will become obsolete or less cost effective.

These forums are a wonderful soapbox and I can help out with the site, too.

Link to comment
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
 Share

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