Jump to content

metadata_fields_modifier 1.1

   (0 reviews)

1 Screenshot

About This File

Template for automatic finding of the values to modify from the class strings and fields offsets

This gameguardian script to help automatize fields modifications, from the info you have found into the global-metadata file.

have been tested only in this configuration:
- original phone android 11, no-root
- virtualxposed + gameguardian

Now it help me as a base when I try a new game
-> only need to indicate the classes and fields names I want to look for

Notes:
- to use it you need to edit the script and adapt it for your specific game -> it is a template
- must know what is global-metadata file + a bit of lua script language (not too much)
- it is searching the fields into the anonymous A region (often in my android phone fields values are there)
- if the game upgrade, possible that classes names and fields offsets are modified so you must upgrade your script too
 

How to use and modify the template

 1. open the global-metada file [see below to know how to get it], and find the classes and fields you are interested in -> it is the hard stuff

image.thumb.png.6c5e0ee32728250d8e58ed802ef8eacf.png
in this example are selected two fields I want to alterate the values:
- classname is LockDrillerMinigameParameters
- field SafeAngle, that is a float, with offset 0x40
- field ShakeModifierIncreasingRate, a float too, offset 0x44
 

2. edit the metadata_fields_modifier script (on the phone I use Acode), but to be faster can be done on the PC (open with notepad and copy-paste the data directly from global-metadata)

from line 20 in the script, modify the classes_and_fields to fit your data, the example gives:

metadata_fields_modifier-2.thumb.png.956f65b7053804aba53af59d97db7865.png

local classes_and_fields = {
  LockDrillerMinigameParameters=
  {fields={
    {'SafeAngle' , gg.TYPE_FLOAT, 0x40 , 32},
    {'ShakeModifier' , gg.TYPE_FLOAT , 0x44 , 0.001}
  }},
}

for each field you have:
{'field name', data type, offset, eventual replaced value}

data type possibilities, according what global-metadata indicates
  -- gg.TYPE_FLOAT for float
  -- gg.TYPE_BYTE for bool
  -- gg.TYPE_DWORD for int

Note:
-> "replaced value" is optional, can put only {'SafeAngle',gg.TYPE_FLOAT,0x40}
   a) indeed at the beginning you do not know what field is impacting the game, so with this script you can put many classes (ex: 10) and all the int/float fields that seems interesting (ex: 5 for each classes)
   b) then running the script in the game, it will find and load each field in gameguardian without modification
   c) next you can try to modify the value of each of these fields to look for the best to use, and what values to put
   d) edit the script again and this time you can specify the "replaced value" at the end like in my example {'SafeAngle',gg.TYPE_FLOAT,0x40 , 0x32}
 

3. open the game + run the metadata_fields_modifier script in the game
-> it will ask you what class to search for

Then if successful, the results class and fields data, will be loaded in the gameguardian interface (save tab) so you can check what has be done and modified

metadata_fields_modifier-3.thumb.png.f26d8aa46dd548626d22d6f790249afd.png

 

=> Hope this script will help you make some great modifications on the games you like.
 

Extra info about getting global-metadata
- I use the great libil2cpp.so and metadata.dat dumping script (LibDumper by Lover1500) -> get both needed files (script can be found on this site)
https://gameguardian.net/forum/files/file/2740-libil2cppso-and-metadatadat-dumping-script/?tab=comments#comment-9358
- then I use "il2cppdumper gui" on my phone (dont remember where I found the app apk) to convert both files -> finally got the global-metdata file (named dump.cs)
- seeing it is a very big file not easily readable on the phone -> I send it to the PC to search for some interesting classes to alterate


 

image.png

metadata_fields_modifier-2.png

metadata_fields_modifier-3.png

Edited by veh


What's New in Version 1.1   See changelog

Released

modified class_instances initialization not to get script error when the class is not found

 Share


User Feedback

You may only provide a review once you have downloaded the file.

There are no reviews to display.

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