Jump to content

46 posts in this topic

Recommended Posts

Posted

This is my game looks like

 

public class GWEconomyModel // TypeDefIndex: 9184
{
	public int LoyaltyBonusPerDay_Gold; // 0x288
}

and my plug-in code 

 

try {
    script = initializeUnitySupport();
    aryObj = script.call("findUnityObjectOfType", ["$GWEconomyModel", true]);
    
    if (!aryObj) {
        alert("Cannot find object to cheat. Engine stopped.");
    } else if (aryObj.length == 0) {

          var GWEconomyModel = new UnityObject(aryObj[0])
          GWEconomyModel.loadFields(['DelveAttemptsPerDay'])
          var DelveAttemptsPerDay = new UnityObject(GWEconomyModel.DelveAttemptsPerDay)
          DelveAttemptsPerDay = 50

        //CharacterMotor.loadFields(['DelveAttemptsPerDay'])
        //var DelveAttemptsPerDay = aryObj[0].DelveAttemptsPerDay
        alert(aryObj.length)
        
    }

} catch (e) {
    //reset Unity Support
    gIl2cppInit = false;
    var script = initializeUnitySupport();
    alert("Unity support crashed and reset complete");
}

 

 

The result is app always crash at var GWEconomyModel = new UnityObject(aryObj[0])
the aryObj.length is always 0, but not able to load the field.

 

Can you correct my understand and educate how to fix this error?

 

 

Posted
1 hour ago, ada1016 said:

This is my game looks like

 

public class GWEconomyModel // TypeDefIndex: 9184
{
	public int LoyaltyBonusPerDay_Gold; // 0x288
}

and my plug-in code 

 

try {
    script = initializeUnitySupport();
    aryObj = script.call("findUnityObjectOfType", ["$GWEconomyModel", true]);
    
    if (!aryObj) {
        alert("Cannot find object to cheat. Engine stopped.");
    } else if (aryObj.length == 0) {

          var GWEconomyModel = new UnityObject(aryObj[0])
          GWEconomyModel.loadFields(['DelveAttemptsPerDay'])
          var DelveAttemptsPerDay = new UnityObject(GWEconomyModel.DelveAttemptsPerDay)
          DelveAttemptsPerDay = 50

        //CharacterMotor.loadFields(['DelveAttemptsPerDay'])
        //var DelveAttemptsPerDay = aryObj[0].DelveAttemptsPerDay
        alert(aryObj.length)
        
    }

} catch (e) {
    //reset Unity Support
    gIl2cppInit = false;
    var script = initializeUnitySupport();
    alert("Unity support crashed and reset complete");
}

 

 

The result is app always crash at var GWEconomyModel = new UnityObject(aryObj[0])
the aryObj.length is always 0, but not able to load the field.

 

Can you correct my understand and educate how to fix this error?

 

 

Have you try using Unity Static Analyser to see if you can find that object? 

Normally we need to find one related on scene object that you can get object with Unity's Object.FindObjectOfType. Then use it as root to navigate to your desired object. 

In my example, I do not directly use findUnityObjectOfType to reach ItemStat. Instead, I use Gameplay.m_ItemStat to connect Gameplay object (on scene) to ItemStat(not on scene). Then I can create Unity Object on ItemStat.

On scene is a logical one. You cannot guess if it is available especially for those virtual / intangible things. 

Use Unity Static Analyser to test it out. If you can use Unity Static Analyser to directly retrieve object, that mean you can use get the object with findUnityObjectOfType.

Another note is, as whether on scene or not is important. So, be cautious on where you trigger to cheat...Some object only available on certain screen/scene. Say the some shop related object would only available when you open the shop UI in the game. 

All in all, test it with Unity Static Analyser first...confirmed you can cheat the value you want before you try to prepare the cheat with JSPlug-in. Some games create lots of copy of a game value. You might not cheat the value if you modify the wrong one. 

Posted
9 hours ago, Happy Secret said:

Have you try using Unity Static Analyser to see if you can find that object? 

Normally we need to find one related on scene object that you can get object with Unity's Object.FindObjectOfType. Then use it as root to navigate to your desired object. 

In my example, I do not directly use findUnityObjectOfType to reach ItemStat. Instead, I use Gameplay.m_ItemStat to connect Gameplay object (on scene) to ItemStat(not on scene). Then I can create Unity Object on ItemStat.

On scene is a logical one. You cannot guess if it is available especially for those virtual / intangible things. 

Use Unity Static Analyser to test it out. If you can use Unity Static Analyser to directly retrieve object, that mean you can use get the object with findUnityObjectOfType.

Another note is, as whether on scene or not is important. So, be cautious on where you trigger to cheat...Some object only available on certain screen/scene. Say the some shop related object would only available when you open the shop UI in the game. 

All in all, test it with Unity Static Analyser first...confirmed you can cheat the value you want before you try to prepare the cheat with JSPlug-in. Some games create lots of copy of a game value. You might not cheat the value if you modify the wrong one. 

thanks @Happy Secret

Still much to learn..  I made a recording on what I am experiencing below and found two new things

1. I was able to locate GWEconomyModel as class in UA, but when I click, it always goes to something else (e.g GWGameState). Please see the clip at 17 second.  What does this tells me?  Please educate

2. I love your tutorial, but if possible, can you share what the code looks like at dump.cs that leads you made aware that instead of tracking GamePlay directly, it is Gameplay.m_ItemStat that you are interested?  Wanted to learn you thinking path as well.

 

Thank you so much

 

 

Posted
5 hours ago, ada1016 said:

1. I was able to locate GWEconomyModel as class in UA, but when I click, it always goes to something else (e.g GWGameState). Please see the clip at 17 second.  What does this tells me?  Please educate

 

Pink Color means it can be reached in one Hop, but not directly. For those can reach directly, it will be in Yellow.

In GWGameState, if you scroll down the field list, there is one row highlight in yellow. That is the field that point to GWEconomyModel. If the address there is not bill/0x0, click on it. It will bring you to the GWEconomyModel object view.

Try edit the gold value there by clicking on the 0x288 offset, it will bring up editor. Just put in the number you want. See if it work in game, try spending gold etc, if you conclude the cheat is working fine.

Go back to your script, use GWGameState as the base object to navigate to what you need 

Posted
On 9/1/2023 at 2:07 PM, Happy Secret said:

Pink Color means it can be reached in one Hop, but not directly. For those can reach directly, it will be in Yellow.

In GWGameState, if you scroll down the field list, there is one row highlight in yellow. That is the field that point to GWEconomyModel. If the address there is not bill/0x0, click on it. It will bring you to the GWEconomyModel object view.

Try edit the gold value there by clicking on the 0x288 offset, it will bring up editor. Just put in the number you want. See if it work in game, try spending gold etc, if you conclude the cheat is working fine.

Go back to your script, use GWGameState as the base object to navigate to what you need 

Thank you.. I had very weak sense of Unity Game development, sorry for my further more question....

Objective: change the remaining attempts of a dungen

from Dump.cs, I captured this

public class GWGameState : MonoBehaviour // TypeDefIndex: 9219
{
:
public int DelveAttempts { get; }
public int get_DelveAttempts() { }
:
}

 

my Plug.js code

try {
    script = initializeUnitySupport();
    //[STEP 2][MODIFY]Change the root object of interest, which should able to link to your other cheat object
    aryObj = script.call("findUnityObjectOfType", ["$GWGameState", true]);
    
    if (!aryObj || aryObj.length == 0) {
    }
    
    for (let i = 0; i < aryObj.length; i++) {    
        let GWGameState = new UnityObject(aryObj[i]);
        GWGameState.loadFields(['int32 DelveAttempts']);
        GWGameState.loadMethods(["int32 get_DelveAttempts()"]);
        GWGameState.DelveAttempts=5
        alert("GWGameState (" + aryObj[i].toString(16) + ") with UnityObject:" + GWGameState.DelveAttempts+"get_DelveAttempts="+GWGameState.get_DelveAttempts())
        GWGameState.loadFields(['int32 DelveAttempts']);
        alert(GWGameState.DelveAttempts)
        
    }


} catch (e) {
    //reset Unity Support
    gIl2cppInit = false;
    var script = initializeUnitySupport();
}

 

Result

GWGameState (0x13125ba80) with UnityObject: 5. get_DelveAttempts=3

Unity support crashed and reset completeTypeError: Attempting to change the setter of an unconfigurable property.

 

I believe I didn't change the object value at all, I just changed the object that I initiated, can you please educate ?

 

 

  • Like 1
Posted
2 hours ago, ada1016 said:
public int DelveAttempts { get; }
public int get_DelveAttempts() { }

You can see it only provide getter but there is no setter. That is why, you cannot change the Attempts. You need to find if there are other method allow you to change the Attempts.

 

Can you change attempts using Unity Object explorer or Unity Static Analyzer? 

Posted
4 minutes ago, Happy Secret said:

You can see it only provide getter but there is no setter. That is why, you cannot change the Attempts. You need to find if there are other method allow you to change the Attempts.

 

Can you change attempts using Unity Object explorer or Unity Static Analyzer? 

No, I cannot change via US Analyser as well. But I should be able to find the address and patch it. So.. if the value cannot be change by UA, it cannot be altered by plugin?

 

 

Posted
6 minutes ago, ada1016 said:

No, I cannot change via US Analyser as well. But I should be able to find the address and patch it. So.. if the value cannot be change by UA, it cannot be altered by plugin?

 

 

sorry, ,really interested in this but really got a lot to learn.

The more I play with this, the more unknown I realises.    

 

Q:Is this script worked like one time thing? That, the script only get executed when the code path get there, and you have to run the script before it trigger.  For some method that happened at battle, such as adjust mana when take damage, you cannot use this script as it does not work like a hook.  Is this understand correct?

 

Q: if a method has game object in parameter, how do I loadMethods it?e.g.

public void AdjustPlayerMana(int playerIndex, int[] manaCollected, ref bool activateManaMatchTraits, bool collectedFromBoard = False, bool wasMatch = False, PuzzleTroop pAdjustmentCause) { }

thank you for your time.

Posted
9 hours ago, ada1016 said:

No, I cannot change via US Analyser as well. But I should be able to find the address and patch it. So.. if the value cannot be change by UA, it cannot be altered by plugin?

 

 

Normally, if you cannot change value with Unity Static Analyzer, you would also can do simple memory patch with JSPlug-in.

However, you could try using method call.

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
  • Our picks

    • Egg, Inc. Cheats v1.35.1 +1 [ Free Store ]
      Modded/Hacked App: Egg, Inc. By Auxbrain, Inc.
      Bundle ID: com.auxbrain.egginc
      iTunes Store Link: https://apps.apple.com/us/app/egg-inc/id993492744?uo=4


      Hack Features:
      - Infinite Currencies (Spend to Gain)


      iOS Hack Download Link: https://iosgods.com/topic/141151-egg-inc-cheats-all-versions-1-infinite-currencies/
      • 477 replies
    • Galaxy Attack: Alien Shooter v5.14.9 [ +30++ Cheats ] Currency Max
      Modded/Hacked App: Galaxy Attack: Alien Shooter By DINO GAME LIMITED
      Bundle ID: com.alien.shooter.galaxy.attack
      iTunes Store Link: https://apps.apple.com/us/app/galaxy-attack-alien-shooter/id1176011642?uo=4
       

      🚀 Hack Features

      - ADS NO [ Rewards Free ]

      - Gems [ Linked With Battle Pass ]

      - Gold [ Linked With Battle Pass ]

      - Chest [ Linked With Battle Pass ]

      - Monthly Card Normal

      - Monthly Card Super

      - Monthly Card Premium

      - Energy NO Need [ When 0 Play Unlimited ]

      - Evolve Stone

      - Unlimited Ship [ Select Any Ship Before The Battle ]

      - Drone Ticket

      - Terminator Point

      - Tech Point

      - Overload Ball

      - Matrix Max

      - Golden Revive Max

      - Revive Unlimited

      - Campain Revive Cost Gold [ Earn With Gold ]

      - Gems Revive  [Earn With Gems ]

      - Endless Revive Cost Gold [Earn With Gold ]

      - Talent Upgrade Cost  [Earn With Gold ]

      - Battle Pass Premium Active

      - BP Free [ Claim Unlimited ]

      - BP Premium [ Claim Unlimited ]

      - BP Free Rewards Unlimited [ Gold Gems Chest Stone + More ]

      - BP Premium Rewards Unlimited [ Gold Gems Chest Stone + More ]

      - Bullet Max

      - Life Max

      - Damage

      Warning 


      Don"t Abuse The Hack In Case Banned Any Data Lose I'M Not Responsible  

       

      🍏 For Non-Jailbroken & No Jailbreak required hacks: https://iosgods.com/forum/79-no-jailbreak-section/
      🤖 Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      • 94 replies
    • Galaxy Attack: Alien Shooter v5.14.9 [ +30++ Jailed ] Currency Max
      Modded/Hacked App: Galaxy Attack: Alien Shooter By DINO GAME LIMITED
      Bundle ID: com.alien.shooter.galaxy.attack
      iTunes Store Link: https://apps.apple.com/us/app/galaxy-attack-alien-shooter/id1176011642?uo=4

       

       

      🔧 Mod Requirements

      - Non-Jailbroken/Jailed or Jailbroken iPhone or iPad.
      - Sideloadly or alternatives.
      - Computer running Windows/macOS/Linux with iTunes installed.

       

      🚀 Hack Features

      - ADS NO [ Rewards Free ]

      - Gems [ Linked With Battle Pass ]

      - Gold [ Linked With Battle Pass ]

      - Chest [ Linked With Battle Pass ]

      - Monthly Card Normal

      - Monthly Card Super

      - Monthly Card Premium

      - Energy NO Need [ When 0 Play Unlimited ]

      - Evolve Stone

      - Unlimited Ship [ Select Any Ship Before The Battle ]

      - Drone Ticket

      - Terminator Point

      - Tech Point

      - Overload Ball

      - Matrix Max

      - Golden Revive Max

      - Revive Unlimited

      - Campain Revive Cost Gold [ Earn With Gold ]

      - Gems Revive  [Earn With Gems ]

      - Endless Revive Cost Gold [Earn With Gold ]

      - Talent Upgrade Cost  [Earn With Gold ]

      - Battle Pass Premium Active

      - BP Free [ Claim Unlimited ]

      - BP Premium [ Claim Unlimited ]

      - BP Free Rewards Unlimited [ Gold Gems Chest Stone + More ]

      - BP Premium Rewards Unlimited [ Gold Gems Chest Stone + More ]

      - Bullet Max

      - Life Max

      - Damage

      Warning 


      Don"t Abuse The Hack In Case Banned Any Data Lose I'M Not Responsible 


      🍏 Jailbreak iOS hacks: https://iosgods.com/forum/5-game-cheats-hack-requests/
      🤖 Modded Android APKs: https://iosgods.com/forum/68-android-section/

       

      📥 iOS Hack Download IPA Link


      Hidden Content

      Download via the iOSGods App
      • 77 replies
    • Galaxy Attack Alien Shooter v5.14.9 [ +3 Jailed ] Never Die
      Modded/Hacked App: Galaxy Attack: Alien Shooter By DINO GAME LIMITED
      Bundle ID: com.alien.shooter.galaxy.attack
      iTunes Store Link: https://apps.apple.com/us/app/galaxy-attack-alien-shooter/id1176011642?uo=4


      Hack Features:
      - Max Bullet
      - Max Life
      - DMG



      Jailbreak required hack(s): https://iosgods.com/forum/5-game-cheats-hack-requests/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/
      • 74 replies
    • Galaxy Attack Alien Shooter v5.14.9 [ +3 Cheats ] Never Die
      Modded/Hacked App: Galaxy Attack: Alien Shooter By ABIGAMES PTE. LTD
      Bundle ID: com.alien.shooter.galaxy.attack
      iTunes Store Link: https://apps.apple.com/us/app/galaxy-attack-alien-shooter/id1176011642?uo=4


      Mod Requirements:
      - Jailbroken iPhone/iPad/iPod Touch.
      - iGameGod / Filza / iMazing or any other file managers for iOS.
      - Cydia Substrate, Substitute or libhooker depending on your jailbreak.
      - PreferenceLoader (from Cydia, Sileo or Zebra).


      Hack Features:
      - Max Life 
      - Damage Multi [PvP Use Only Boss ] 
      - Max Bullet



      Non-Jailbroken & No Jailbreak required hack(s): https://iosgods.com/forum/79-no-jailbreak-section/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/


      iOS Hack Download Link:

      Hidden Content

      Download Hack
      • 225 replies
    • Egg, Inc. v1.35.1 Jailed Cheats +1 [ Free Store ]
      Modded/Hacked App: Egg, Inc. by Auxbrain, Inc.
      Bundle ID: com.auxbrain.egginc
      iTunes Store Link: https://itunes.apple.com/us/app/egg-inc/id993492744?mt=8&uo=4&at=1010lce4



      Hack Features:
      - Free iAP


      Hack Download Link: https://iosgods.com/topic/86300-arm64-egg-inc-v18-jailed-cheats-1/

      #Hack #Jailbreak #Cydia #Cheat #Apple #Android #iOSGods
      • 947 replies
    • Soccer Journey 2026 v1.0.6 [ +12 Cheats ] Currency Max
      Modded/Hacked App: Soccer Journey 2026 By KONG SOFTWARE JOINT STOCK COMPANY
      Bundle ID: com.kongsoftware.project02sj.gl
      App Store Link: https://apps.apple.com/us/app/soccer-journey-2026/id6745119606?uo=4


      🤩 Hack Features

      - Gold

      - Cash

      - Player Energy

      - Match Energy

      - Tokens

      - EXP User

      - Scout Ticket +3

      - Standard Scout +4

      - Cube +4

      - Training +3

      - Upgrade Cost All Building [ Earn Cash ]

      - Speed UP Cost All Building [ Earn Cash ]
      • 43 replies
    • Offroad Outlaws v7.0.25 Jailed Cheats +1
      Modded/Hacked App: Offroad Outlaws by Zach Smith
      Bundle ID: com.battlecreek.offroadoutlaws
      iTunes Store Link: https://apps.apple.com/us/app/offroad-outlaws/id1286538410?uo=4&at=1010lce4


      Mod Requirements:
      - Non-Jailbroken/Jailed or Jailbroken iPhone/iPad/iPod Touch.
      - Cydia Impactor.
      - A Computer Running Windows/Mac/Linux.


      Hack Features:
      - Free iAP (Turn on inside iOSGods Mod Menu first)
       


      iOS Hack Download Link: https://iosgods.com/topic/130663-offroad-outlaws-v7025-jailed-cheats-1/
      • 223 replies
    • Walkalypse - IRL Survival RPG v1.1.10 [ +4 Cheats ] Currency Max
      Modded/Hacked App: Walkalypse - IRL Survival RPG By CGDEALERS LTD EOOD
      Bundle ID: com.cgdealers.walkalypse
      App Store Link: https://apps.apple.com/ph/app/walkalypse-irl-survival-rpg/id6748278171?uo=4

      🤩 Hack Features

      - Unlimited Gold / Earn Some Disable After Hack
      - Daily Steps / Auto Max When Use
      - Offline Steps Freeze
      - Resources Max 100 / Earn Some
      • 13 replies
    • Walkalypse - IRL Survival RPG v1.1.10 [ +4 Jailed ] Currency Max
      Modded/Hacked App: Walkalypse - IRL Survival RPG By CGDEALERS LTD EOOD
      Bundle ID: com.cgdealers.walkalypse
      App Store Link: https://apps.apple.com/ph/app/walkalypse-irl-survival-rpg/id6748278171?uo=4

      🤩 Hack Features

      - Unlimited Gold / Earn Some Disable After Hack
      - Daily Steps / Auto Max When Use
      - Offline Steps Freeze
      - Resources Max 100 / Earn Some
      • 6 replies
    • Paradise Paws: Merge Animals v1.0.15 [ +9 Cheats ] Currency Max
      Modded/Hacked App: Animal Sanctuary By Wildlife Studios, Inc
      Bundle ID: com.wildlifestudios.merge.animal.sanctuary
      App Store Link: https://apps.apple.com/us/app/animal-sanctuary/id6741805691?uo=4
       

      🤩 Hack Features

      - Gems

      - Coins

      - Heart

      - Spin

      - LvL

      - Exp

      - Fog Auto Remove [ Linked With LvL ]

      - Premum Lands Unlocked [ Just Tap ]

      - Store Free [ IAP Not ]

      Note:- Game Close After Currency Hack Don't Worry
      • 31 replies
    • Paradise Paws: Merge Animals v1.0.15 [ +9 Jailed ] Currency Max
      Modded/Hacked App: Animal Sanctuary By Wildlife Studios, Inc
      Bundle ID: com.wildlifestudios.merge.animal.sanctuary
      App Store Link: https://apps.apple.com/us/app/animal-sanctuary/id6741805691?uo=4


      🤩 Hack Features

      - Gems

      - Coins

      - Heart

      - Spin

      - LvL

      - Exp

      - Fog Auto Remove [ Linked With LvL ]

      - Premum Lands Unlocked [ Just Tap ]

      - Store Free [ IAP Not ]

      Note:- Game Close After Currency Hack Don't Worry
      • 32 replies
×
  • Create New...

Important Information

We would like to place cookies on your device to help make this website better. The website cannot give you the best user experience without cookies. You can accept or decline our cookies. You may also adjust your cookie settings. Privacy Policy - Guidelines