red16
Platinian
r16Menu Template for Theos!
Sample Menu UI look.
Get from GitHub here
Features:
* Customizable UI
* Customizable menu logo
* 7 different switchs:
* Patcher
* Patch
* Regular switch
* Textfield Switch wide or right
* Slider Switch
* Index switch
* Hook Swith
* Patcher and Patch switch is based on KittyMemory
* Original bytes are required
* Supports MSHookMemory
* Write unlimited bytes to a offset
Encryption:
Open r16Logo.h and paste your own menu image <Base64 Encode - Online>
Using a custom framework:
You can set this in the function startAuthentication() inside Tweak.xm but this is not requierd. Dont worry about it skip_
menu.frameworkNamed = @"UnityFramework";
Patching variables:
Hooking methods:
Patcher switch:
Plain Switch:
Textfield Switch Right:
Textfield Switch Wide:
Slider Switch:
Index Switch:
Hook Switch:
Checking if a switch is on:
Getting value from textfield and slider:
Credits:
* @red16
* @TheArmKing
* For helping meh and ideas ;-;
*Ruit
*[KittyMemory](https://github.com/MJx0/KittyMemory)
Contact:
If you find a bug in this beta version hit me up
Don't spam me please.
Sample Menu UI look.
Get from GitHub here
Features:
* Customizable UI
* Customizable menu logo
* 7 different switchs:
* Patcher
* Patch
* Regular switch
* Textfield Switch wide or right
* Slider Switch
* Index switch
* Hook Swith
* Patcher and Patch switch is based on KittyMemory
* Original bytes are required
* Supports MSHookMemory
* Write unlimited bytes to a offset
Encryption:
- I did not include encryption you will have to make your own to encrypt nsstrings.
- Download the modmenu template paste in /var/theos/templates/ios/theos
Open r16Logo.h and paste your own menu image <Base64 Encode - Online>
Objective-C:
menu.r16Logo = @"YOUR BASE 64 Here"; //for both menu and button will implement button and logo searperatly later
Using a custom framework:
You can set this in the function startAuthentication() inside Tweak.xm but this is not requierd. Dont worry about it skip_
menu.frameworkNamed = @"UnityFramework";
Patching variables:
C++:
//call these inside ur own custom functions
*(int*)[UIKeyPatch address:@"0x78" ptr:ptr] = 999;
*(bool*)[UIKeyPatch address:@"0x32" ptr:ptr] = true;
*(float*)[UIKeyPatch address:@"0x56" ptr:ptr] = 999.0f;
Hooking methods:
Objective-C:
//toggle on or off
[r16Hook toggleHook:true
address:@"0x101C0E5F0"
with:(void *)PlayerMoveC_Update
original:(void **)&orig_PlayerMoveC_Update];
//without toggle
[r16Hook hook:@"0x10276FB26"
with:(void *)Player_Update
original:(void **)&_Player_Update];
//shmoos
HOOK(@"0x102517FB251", Player_Update, orig_Player_Update);
HOOK_NO_ORIG(@"0x102517FB251", Player_Update);
Patching a plain offset:
[UIKeyPatch offset:@"0x104361010" byte:@"0xC0035FD6"];
[UIKeyPatch offset:@"0x104361010" byte:@"0x000080D2C0035FD6"];
// You can write as many bytes as you want to an offset i think
[UIKeyPatch offset:@"0x104361010" byte:@"0x00F0271E0008201E000080D2C0035FD6"];
Patcher switch:
Objective-C:
[menu addPatcher:@"Custom Patch #1"]; //custom offsetpatcher switch live
Plain Switch:
Objective-C:
[menu addSwitch:@"Mana"
description:@"Infinite mana"];
Textfield Switch Right:
Objective-C:
[menu addTextfieldRight:@"Set Weapon:"
description:@""];
Textfield Switch Wide:
Objective-C:
[menu addTextfieldWide:@"Chat Spam:"
description:@""];
Slider Switch:
Objective-C:
[menu addSlider:@"Custom Fov"
description:@""
initialValue:1.00
minValue:1.00
maxValue:200.00];
Index Switch:
Objective-C:
[menu addIndexSwitch:@"Pick Damage"
description:@""
items:@[@"10", @"20", @"40", @"80", @"120", @"140"]];
Hook Switch:
Objective-C:
//adding one hook
[menu addHookNamed:@"Aimbot"
description:@""
hook:@[[r16Hook hook:@"0x10276FB26"
with:(void *)Player_Update
original:(void **)&_Player_Update]]];
//adding infinte :)
[menu addHookNamed:@"Aimbot"
description:@""
hook:@[
[r16Hook hook:@"0x10276FB26"
with:(void *)Player_Update
original:(void **)&_Player_Update],
[r16Hook hook:@"0x10276FB26"
with:(void *)Player_Update
original:(void **)&_Player_Update],
[r16Hook hook:@"0x10276FB26"
with:(void *)Player_Update
original:(void **)&_Player_Update]]
];
Checking if a switch is on:
Objective-C:
bool manaOn = [menu getSwitchOnForSwitch:@"Mana"];
if(manaOn) {
//stuff
}
//checking directly:
if([menu getSwitchOnForSwitch:@"Mana"]) {
//stuff
}
//using index string-arrays start at 0
if([menu getIndexForString:@"Pick Damage"] == 1/*20*/){
//do stuff
}
if([menu getIndexForString:@"Pick Damage"] == 0/*10*/){
//do stuff
}
Objective-C:
//textfield
int userValue = [menu getInt:@"Switch Name"];
NSString *userValue3 = [menu getNSString:@"Switch Name"];
//slider
float userValue1 = [menu getFloat:@"Switch Name"];
Credits:
* @red16
* @TheArmKing
* For helping meh and ideas ;-;
*Ruit
*[KittyMemory](https://github.com/MJx0/KittyMemory)
Contact:
If you find a bug in this beta version hit me up
Don't spam me please.
Attachments
Last edited: