************************************************** ********
* i was out of interesting to make trainer, 190 in 1 is the final version *
* you can use all functions free to upgrade other trainer engine *
* you can combine all 190 trainers free to your trainer *
************************************************** ********
don't waste time in these games:
Resonance of Fate, End of Eternity => heavy protection
Metal Gear Solid: Peace Walker => simple protection
1. vibration
Vibr01();
2. popup message
Notify("hello");
3. peek // no carsh when read unallocated memory
x = GetBYTE(0x83000000);
x = GetWORD(0x83000000);
x = GetDWORD(0x83000000);
4. poke // no carsh when write unallocated memory
SetBYTE(0x83000000, 100);
SetWORD(0x83000000, 100);
SetDWORD(0x83000000, 100);
5. patch for codecave // no carsh when write unallocated memory
PatchJump(0x83000000, (DWORD)CodeCave); // use r11, bctrl // use blr in codecave
PatchJump1(0x83000000, (DWORD)CodeCave, 13); // use r13, bctrl // use blr in codecave
PatchJumpC(0x83000000, (DWORD)CodeCave); // use r11, bctr // use bctr in codecave
PatchJumpC1(0x83000000, (DWORD)CodeCave, 13); // use r13, bctr // use bctr in codecave
6. serach patterns // no carsh when read unallocated memory
DWORD hp_buf[] = {0xEC0D0028, 0xD01D0120};
HP_addr = GetAddr(0x82000000, 0x83000000, hp_buf, 2, 1); // range 0x82~0x83, 2 patterns, 1st match
7. multi language
if(Xbox_Language == XC_LANGUAGE_TCHINESE)
Language = 1;
else
Language = 0;
8. multi input // add 2 lines
while(hr) // line 1
{
hr = GetInput(); // line 2
switch(hr)
{
case 1:
SetDWORD(HP_addr, 0x60000000);
break;
case 11:
SetDWORD(HP_addr, 0x39600000);
break;
}
}
9. map teleport
MyFloat X,Y,Z;
X.dw = MapTele(map_x1, map_x2, pos_X1, pos_X2, map_xin);
Y.dw = MapTele(map_y1, map_y2, pos_Y1, pos_Y2, map_yin);
Z.f = Z.f + 50;
SetDWORD(X_addr, X.dw);
SetDWORD(Y_addr, Y.dw);
SetDWORD(Z_addr, Z.dw);
10. multi xbox360 games
games.h : add two lines
void Init_454109BA(void); // line 1
const GAME_INIT Game_Init[] =
{
0xFFFE07D2, Init_FFFE07D2,
0x454109BA, Init_454109BA, // line 2
};
10. multi xbox games
X_games.h : add two lines
void Init_4D530051(void); // line 1
const GAME_INIT Game_Init[] =
{
0x4D530051, Init_4D530051, // line 2
};
xce2_190.rar
xce2_engine.rar