Hi its Dex Today am going to show you how to edit flex patches in ifile i recommand taking look at my tut on how to edit a plist file before you try this.Heres link to my tut http://iosgods.com/topic/945-how-to-edit-a-plist-using-ifile-for-beginners/ after you get some understanding of plist editng you may come back here and follow the tut on how to edit flex patches enjoy.
1.Open ifile and go to /var/mobile/documents/flex/then look for patches.plist and open it.
2.Heres a example of my old flex hack from along time ago witch is how am going to show you how to edit it.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>patches</key>
<array>
<dict>
<key>UUID</key>
<string>B595E91D-E4EF-4C1E-B63F-A07DDEBA2B23</string>
<key>appIdentifier</key>
<string>com.mogainteractive.micromon</string>
<key>author</key>
<string>insidious</string>
<key>cloudDescription</key>
<string>Hack made by insidious for more vist iOSGods.com
</string>
<key>downloadDate</key>
<integer>1</integer>
<key>name</key>
<string>Micromon Hack Made By Me</string>
<key>switchedOn</key>
<true/>
<key>units</key>
<array>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(int) diamonds</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>diamonds</string>
<key>typeEncoding</key>
<string>i8@0:4</string>
</dict>
<key>name</key>
<string>Unit for -(int) diamonds</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>99999999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(void) setDiamonds:(int)</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>setDiamonds:</string>
<key>typeEncoding</key>
<string>v12@0:4i8</string>
</dict>
<key>name</key>
<string>Unit for -(void) setDiamonds:(int)</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>1</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>99999999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(void) addDiamonds:(int)</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>addDiamonds:</string>
<key>typeEncoding</key>
<string>v12@0:4i8</string>
</dict>
<key>name</key>
<string>Unit for -(void) addDiamonds:(int)</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>1</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>99999999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>Treasure</string>
<key>displayName</key>
<string>-(int) getGold</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>getGold</string>
<key>typeEncoding</key>
<string>i8@0:4</string>
</dict>
<key>name</key>
<string>Unit for -(int) getGold</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>99999999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(int) gold</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>gold</string>
<key>typeEncoding</key>
<string>i8@0:4</string>
</dict>
<key>name</key>
<string>Unit for -(int) gold</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>99999999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(void) setGold:(int)</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>setGold:</string>
<key>typeEncoding</key>
<string>v12@0:4i8</string>
</dict>
<key>name</key>
<string>Unit for -(void) setGold:(int)</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>1</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>99999999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(void) addGold:(int)</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>addGold:</string>
<key>typeEncoding</key>
<string>v12@0:4i8</string>
</dict>
<key>name</key>
<string>Unit for -(void) addGold:(int)</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>1</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>99999999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(int) goldenEggs</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>goldenEggs</string>
<key>typeEncoding</key>
<string>i8@0:4</string>
</dict>
<key>name</key>
<string>Unit for -(int) goldenEggs</string>
<key>overrides</key>
<array/>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(void) setGoldenEggs:(int)</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>setGoldenEggs:</string>
<key>typeEncoding</key>
<string>v12@0:4i8</string>
</dict>
<key>name</key>
<string>Unit for -(void) setGoldenEggs:(int)</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>1</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>99999999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(int) silverEggs</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>silverEggs</string>
<key>typeEncoding</key>
<string>i8@0:4</string>
</dict>
<key>name</key>
<string>Unit for -(int) silverEggs</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>99999999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(void) setSilverEggs:(int)</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>setSilverEggs:</string>
<key>typeEncoding</key>
<string>v12@0:4i8</string>
</dict>
<key>name</key>
<string>Unit for -(void) setSilverEggs:(int)</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>1</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>99999999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>Player</string>
<key>displayName</key>
<string>-(float) stamina</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>stamina</string>
<key>typeEncoding</key>
<string>f8@0:4</string>
</dict>
<key>name</key>
<string>Unit for -(float) stamina</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>3</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>3</integer>
<key>value</key>
<integer>999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>Player</string>
<key>displayName</key>
<string>-(void) setStamina:(float)</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>setStamina:</string>
<key>typeEncoding</key>
<string>v12@0:4f8</string>
</dict>
<key>name</key>
<string>Unit for -(void) setStamina:(float)</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>1</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>3</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>3</integer>
<key>value</key>
<integer>999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>FlurryUtil</string>
<key>displayName</key>
<string>+(BOOL) deviceIsJailbroken</string>
<key>prefix</key>
<string>+</string>
<key>selector</key>
<string>deviceIsJailbroken</string>
<key>typeEncoding</key>
<string>c8@0:4</string>
</dict>
<key>name</key>
<string>Unit for +(BOOL) deviceIsJailbroken</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>5</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>5</integer>
<key>value</key>
<false/>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>FlurryUtil</string>
<key>displayName</key>
<string>+(BOOL) appIsCracked</string>
<key>prefix</key>
<string>+</string>
<key>selector</key>
<string>appIsCracked</string>
<key>typeEncoding</key>
<string>c8@0:4</string>
</dict>
<key>name</key>
<string>Unit for +(BOOL) appIsCracked</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>5</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>5</integer>
<key>value</key>
<false/>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(int) normalChips</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>normalChips</string>
<key>typeEncoding</key>
<string>i8@0:4</string>
</dict>
<key>name</key>
<string>Unit for -(int) normalChips</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>9999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(int) superChips</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>superChips</string>
<key>typeEncoding</key>
<string>i8@0:4</string>
</dict>
<key>name</key>
<string>Unit for -(int) superChips</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>9999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(int) masterChips</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>masterChips</string>
<key>typeEncoding</key>
<string>i8@0:4</string>
</dict>
<key>name</key>
<string>Unit for -(int) masterChips</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>9999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>DetectionExample</string>
<key>displayName</key>
<string>+(BOOL) jailbreakAppsDetected</string>
<key>prefix</key>
<string>+</string>
<key>selector</key>
<string>jailbreakAppsDetected</string>
<key>typeEncoding</key>
<string>c8@0:4</string>
</dict>
<key>name</key>
<string>Unit for +(BOOL) jailbreakAppsDetected</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>5</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>5</integer>
<key>value</key>
<false/>
</dict>
</dict>
</array>
</dict>
<dict>
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(id) generateDataForMicromon:(id) withLevel:(int) andGrowthRate:(int)</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>generateDataForMicromon:withLevel:andGrowthRate:</string>
<key>typeEncoding</key>
<string>@20@0:4@8i12i16</string>
</dict>
<key>name</key>
<string>Unit for -(id) generateDataForMicromon:(id) withLevel:(int) andGrowthRate:(int)</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>2</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>90</integer>
</dict>
</dict>
<dict>
<key>argument</key>
<integer>3</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>90</integer>
</dict>
</dict>
</array>
</dict>
</array>
</dict>
</array>
</dict>
</plist>
Now to edit a value on a flex hack in ifile
Heres a example of a code
<key>methodObjc</key>
<dict>
<key>className</key>
<string>GameData</string>
<key>displayName</key>
<string>-(int) diamonds</string>
<key>prefix</key>
<string>-</string>
<key>selector</key>
<string>diamonds</string>
<key>typeEncoding</key>
<string>i8@0:4</string>
</dict>
<key>name</key>
<string>Unit for -(int) diamonds</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>4</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>4</integer>
<key>value</key>
<integer>99999999999999</integer>
</dict>
</dict>
</array>
</dict>
<dict>
now you see were the <integer>99999999999999</integer> is at now don't delete the <integer> </integer> just edit the numbers
like this <integer>123456789</integer> and done you have edited a value now this is for diamonds so thats the amount of diamonds you well have in game not every hack is this easy to edit so please take note of that.
NEXT STEP this how you do it in flex
1. Some well have true and false or pass-through witch are normaly
unit for -(BOOL)Example
Target Class
Demo
Return Value (BOOL)
witch here there can be 3 options Pass-through true or flase depending on what it is say it was unlock level you would put true so you can unlock it and if you never wanted to unlock put false and to earn just leave it pass-through witch is not editing the value. Now that was in flex to edit now in ifile heres a example of it
<key>methodObjc</key>
<dict>
<key>className</key>
<string>DetectionExample</string>
<key>displayName</key>
<string>+(BOOL) jailbreakAppsDetected</string>
<key>prefix</key>
<string>+</string>
<key>selector</key>
<string>jailbreakAppsDetected</string>
<key>typeEncoding</key>
<string>c8@0:4</string>
</dict>
<key>name</key>
<string>Unit for +(BOOL) jailbreakAppsDetected</string>
<key>overrides</key>
<array>
<dict>
<key>argument</key>
<integer>0</integer>
<key>type</key>
<dict>
<key>subtype</key>
<integer>0</integer>
<key>type</key>
<integer>5</integer>
</dict>
<key>value</key>
<dict>
<key>type</key>
<integer>5</integer>
<key>value</key>
<false/>
</dict>
</dict>
</array>
</dict>
<dict>
you see were the <false/> that is now were you put the one of the 3 options as i said before this part is true,false and pass through anyone would work but for this code i put as false because you don't want game developers to know you are jailbroken right so if you understand that you should be good.
I hope you enjoyed part 1 of the tut good luck on editing i tried to explain the best i can for you guys credit for the tut Dex.