public class PS3 {
public static uint ProcessID;
public static uint[] ProcessIDs;
public static void SetMemory(uint Address, byte[] Bytes)
{
PS3TMAPI.ProcessSetMemory(0, PS3TMAPI.UnitType.PPU, ProcessID, 0, Address, Bytes);
}
public static void GetMemory(uint Address, ref byte[] Bytes)
{
PS3TMAPI.ProcessGetMemory(0, PS3TMAPI.UnitType.PPU, ProcessID, 0, Address, ref Bytes);
}
public static void Connect()
{
PS3TMAPI.InitTargetComms();
PS3TMAPI.Connect(0, null);
}
public static void Attach()
{
PS3TMAPI.GetProcessList(0, out ProcessIDs);
ulong uProcess = ProcessIDs[0];
ProcessID = Convert.ToUInt32(uProcess);
PS3TMAPI.ProcessAttach(0, PS3TMAPI.UnitType.PPU, ProcessID); PS3TMAPI.ProcessContinue(0, ProcessID);
}
}
public class HElems
{
public static uint //CREDITS: xSonoro <3 <--Da Bes♥
type = 0x6D,
xOffset = 0x00,
yOffset = 0x04,
textOffset = 0x62,
sort = 32,
fontSizeOffset = 0x71,
clientOffset = 0x7C,
colorOffset = 0x18,
widthOffset = 0x58,
heightOffset = 0x5A,
shaderOffset = 0x74,
Material = 0x71;
}
public class HUDS
{
public static byte[] SetTextGhetto(string Text)
{
byte[] clean = new byte[250];
PS3.SetMemory(0x2000000, clean);
PS3.SetMemory(0x2000000, Encoding.ASCII.GetBytes(Text + "\0"));
byte[] BLP = new byte[] { 0x48, 0x44, 0x8D, 0xE5, 0x3C, 0x60, 0x00, 0xD9, 0x80, 0x63, 0xB5, 0xF8, 0x2C, 0x03, 0x00, 0x00, 0x40, 0x82, 0x00, 0x7C, 0x3C, 0x60, 0x02, 0x00, 0x30, 0x63, 0x00, 0x00, 0x4B, 0xED, 0xE9, 0x15, 0x3C, 0x80, 0x02, 0x00, 0x90, 0x64, 0x50, 0x00, 0x48, 0x00, 0x00, 0x68, 0x4B, 0xFD, 0x80, 0x09 };
byte[] ORG = new byte[] { 0x48, 0x44, 0x8D, 0xE5, 0x3C, 0x60, 0x00, 0xD9, 0x80, 0x63, 0xB5, 0xF8, 0x2C, 0x03, 0x00, 0x00, 0x41, 0x82, 0x00, 0x7C, 0x3C, 0x60, 0x00, 0x39, 0x38, 0x80, 0x00, 0x00, 0x3B, 0xE3, 0x5E, 0x8C, 0x63, 0x43, 0x00, 0x00, 0xC3, 0xFF, 0x00, 0x08, 0xFC, 0x20, 0xF8, 0x90, 0x4B, 0xFD, 0x80, 0x09, };
LIB.PS3.SetMemory(0x396484, BLP);
System.Threading.Thread.Sleep(15);
LIB.PS3.SetMemory(0x396484, ORG);
byte[] GetX = new byte[4];
PS3.GetMemory(0x2005000, ref GetX);
return GetX;
}
public static byte[] uintBytes(uint input) { byte[] data = BitConverter.GetBytes(input); Array.Reverse(data); return data; }
class MenuItems
{
public static uint
Shader = 0,
ScrollBarBackGround = 1;
}
public static byte[] ReverseBytes(byte[] inArray) { Array.Reverse(inArray); return inArray; }
public static byte[] ToHexFloat(float Axis) { byte[] bytes = BitConverter.GetBytes(Axis); Array.Reverse(bytes); return bytes; }
public static byte[] RGBA(decimal R, decimal G, decimal B, decimal A) { byte[] RGBA = new byte[4]; byte[] RVal = BitConverter.GetBytes(Convert.ToInt32(R)); byte[] GVal = BitConverter.GetBytes(Convert.ToInt32(G)); byte[] BVal = BitConverter.GetBytes(Convert.ToInt32(B)); byte[] AVal = BitConverter.GetBytes(Convert.ToInt32(A)); RGBA[0] = RVal[0]; RGBA[1] = GVal[0]; RGBA[2] = BVal[0]; RGBA[3] = AVal[0]; return RGBA; }
public static void StoreIcon(int elemIndex, uint client, int shader, int width, int height, int x, int y, uint align, float sort, int r, int g, int b, int a)
{
byte[] Material_ = BitConverter.GetBytes(shader);
Array.Reverse(Material_);
byte[] Height_ = BitConverter.GetBytes(Convert.ToInt32(height));
Array.Resize(ref Height_, 2);
Array.Reverse(Height_);
byte[] width_ = BitConverter.GetBytes(Convert.ToInt32(width));
Array.Resize(ref width_, 2);
Array.Reverse(width_);
uint elem = 0x15df280 + ((Convert.ToUInt32(elemIndex)) * 0x8
;
byte[] ClientID = ReverseBytes(BitConverter.GetBytes(client));
PS3.SetMemory(elem, new byte[0x88]);
PS3.SetMemory(elem + HElems.type, ReverseBytes(BitConverter.GetBytes(
));
PS3.SetMemory(elem + 0x79, new byte[] { 0xFF });
PS3.SetMemory(elem + 0xC, new byte[] { 0x3f, 0xc0 });
PS3.SetMemory(elem + 0x104, new byte[] { 0x03, 0xff });
PS3.SetMemory(elem + HElems.Material, Material_);
PS3.SetMemory(elem + HElems.heightOffset, Height_);
PS3.SetMemory(elem + HElems.widthOffset, width_);
PS3.SetMemory(elem + HElems.textOffset + 4, ReverseBytes(BitConverter.GetBytes(sort)));
PS3.SetMemory(elem + HElems.xOffset, ToHexFloat(x));
PS3.SetMemory(elem + HElems.yOffset, ToHexFloat(y));
PS3.SetMemory(elem + HElems.colorOffset, RGBA(r, g, b, a));
PS3.SetMemory(elem + HElems.clientOffset, ClientID);
System.Threading.Thread.Sleep(20);
}
public static void StoreTextElem(int elemIndex, int client, string text, int font, int fontScale, int x, int y, uint align, int sort, int r, int g, int b, int a)
{
string setText = text + "\0";
byte[] TextIndex = SetTextGhetto(setText);
uint elem = 0x15df280 + ((Convert.ToUInt32(elemIndex)) * 0x8
;
byte[] ClientID = ReverseBytes(BitConverter.GetBytes(Convert.ToInt32(client)));
PS3.SetMemory(elem, new byte[0x88]);
PS3.SetMemory(elem + HElems.type, ReverseBytes(BitConverter.GetBytes(1)));
PS3.SetMemory(elem + 0x79, new byte[] { 0xFF });
PS3.SetMemory(elem + 0xC, new byte[] { 0x3f, 0xc0 });
PS3.SetMemory(elem + 0x104, new byte[] { 0x03, 0xff });
PS3.SetMemory(elem + HElems.textOffset, TextIndex);
byte[] font_ = BitConverter.GetBytes(Convert.ToInt32(font));
Array.Resize(ref font_, 1);
PS3.SetMemory(elem + HElems.fontSizeOffset, font_);
PS3.SetMemory(elem + HElems.xOffset, ToHexFloat(x));
PS3.SetMemory(elem + HElems.yOffset, ToHexFloat(y));
PS3.SetMemory(elem + HElems.colorOffset, RGBA(r, g, b, a));
PS3.SetMemory(elem + HElems.clientOffset, ClientID);
System.Threading.Thread.Sleep(20);
}
public static void DestroyElem(int index)
{
uint elem = 0x15df280 + ((Convert.ToUInt32(index)) * 0x8
;
PS3.SetMemory(elem, new byte[0x88]);
}
}
public class PS3 {
public static uint ProcessID;
public static uint[] ProcessIDs;
public static void SetMemory(uint Address, byte[] Bytes)
{
PS3TMAPI.ProcessSetMemory(0, PS3TMAPI.UnitType.PPU, ProcessID, 0, Address, Bytes);
}
public static void GetMemory(uint Address, ref byte[] Bytes)
{
PS3TMAPI.ProcessGetMemory(0, PS3TMAPI.UnitType.PPU, ProcessID, 0, Address, ref Bytes);
}
public static void Connect()
{
PS3TMAPI.InitTargetComms();
PS3TMAPI.Connect(0, null);
}
public static void Attach()
{
PS3TMAPI.GetProcessList(0, out ProcessIDs);
ulong uProcess = ProcessIDs[0];
ProcessID = Convert.ToUInt32(uProcess);
PS3TMAPI.ProcessAttach(0, PS3TMAPI.UnitType.PPU, ProcessID); PS3TMAPI.ProcessContinue(0, ProcessID);
}
}
public class HElems
{
public static uint //CREDITS: xSonoro <3 <--Da Bes♥
type = 0x6D,
xOffset = 0x00,
yOffset = 0x04,
textOffset = 0x62,
sort = 32,
fontSizeOffset = 0x71,
clientOffset = 0x7C,
colorOffset = 0x18,
widthOffset = 0x58,
heightOffset = 0x5A,
shaderOffset = 0x74,
Material = 0x71;
}
public class HUDS
{
public static byte[] SetTextGhetto(string Text)
{
byte[] clean = new byte[250];
PS3.SetMemory(0x2000000, clean);
PS3.SetMemory(0x2000000, Encoding.ASCII.GetBytes(Text + "\0"));
byte[] BLP = new byte[] { 0x48, 0x44, 0x8D, 0xE5, 0x3C, 0x60, 0x00, 0xD9, 0x80, 0x63, 0xB5, 0xF8, 0x2C, 0x03, 0x00, 0x00, 0x40, 0x82, 0x00, 0x7C, 0x3C, 0x60, 0x02, 0x00, 0x30, 0x63, 0x00, 0x00, 0x4B, 0xED, 0xE9, 0x15, 0x3C, 0x80, 0x02, 0x00, 0x90, 0x64, 0x50, 0x00, 0x48, 0x00, 0x00, 0x68, 0x4B, 0xFD, 0x80, 0x09 };
byte[] ORG = new byte[] { 0x48, 0x44, 0x8D, 0xE5, 0x3C, 0x60, 0x00, 0xD9, 0x80, 0x63, 0xB5, 0xF8, 0x2C, 0x03, 0x00, 0x00, 0x41, 0x82, 0x00, 0x7C, 0x3C, 0x60, 0x00, 0x39, 0x38, 0x80, 0x00, 0x00, 0x3B, 0xE3, 0x5E, 0x8C, 0x63, 0x43, 0x00, 0x00, 0xC3, 0xFF, 0x00, 0x08, 0xFC, 0x20, 0xF8, 0x90, 0x4B, 0xFD, 0x80, 0x09, };
LIB.PS3.SetMemory(0x396484, BLP);
System.Threading.Thread.Sleep(15);
LIB.PS3.SetMemory(0x396484, ORG);
byte[] GetX = new byte[4];
PS3.GetMemory(0x2005000, ref GetX);
return GetX;
}
public static byte[] uintBytes(uint input) { byte[] data = BitConverter.GetBytes(input); Array.Reverse(data); return data; }
class MenuItems
{
public static uint
Shader = 0,
ScrollBarBackGround = 1;
}
public static byte[] ReverseBytes(byte[] inArray) { Array.Reverse(inArray); return inArray; }
public static byte[] ToHexFloat(float Axis) { byte[] bytes = BitConverter.GetBytes(Axis); Array.Reverse(bytes); return bytes; }
public static byte[] RGBA(decimal R, decimal G, decimal B, decimal A) { byte[] RGBA = new byte[4]; byte[] RVal = BitConverter.GetBytes(Convert.ToInt32(R)); byte[] GVal = BitConverter.GetBytes(Convert.ToInt32(G)); byte[] BVal = BitConverter.GetBytes(Convert.ToInt32(B)); byte[] AVal = BitConverter.GetBytes(Convert.ToInt32(A)); RGBA[0] = RVal[0]; RGBA[1] = GVal[0]; RGBA[2] = BVal[0]; RGBA[3] = AVal[0]; return RGBA; }
public static void StoreIcon(int elemIndex, uint client, int shader, int width, int height, int x, int y, uint align, float sort, int r, int g, int b, int a)
{
byte[] Material_ = BitConverter.GetBytes(shader);
Array.Reverse(Material_);
byte[] Height_ = BitConverter.GetBytes(Convert.ToInt32(height));
Array.Resize(ref Height_, 2);
Array.Reverse(Height_);
byte[] width_ = BitConverter.GetBytes(Convert.ToInt32(width));
Array.Resize(ref width_, 2);
Array.Reverse(width_);
uint elem = 0x15df280 + ((Convert.ToUInt32(elemIndex)) * 0x8
;
byte[] ClientID = ReverseBytes(BitConverter.GetBytes(client));
PS3.SetMemory(elem, new byte[0x88]);
PS3.SetMemory(elem + HElems.type, ReverseBytes(BitConverter.GetBytes(
));
PS3.SetMemory(elem + 0x79, new byte[] { 0xFF });
PS3.SetMemory(elem + 0xC, new byte[] { 0x3f, 0xc0 });
PS3.SetMemory(elem + 0x104, new byte[] { 0x03, 0xff });
PS3.SetMemory(elem + HElems.Material, Material_);
PS3.SetMemory(elem + HElems.heightOffset, Height_);
PS3.SetMemory(elem + HElems.widthOffset, width_);
PS3.SetMemory(elem + HElems.textOffset + 4, ReverseBytes(BitConverter.GetBytes(sort)));
PS3.SetMemory(elem + HElems.xOffset, ToHexFloat(x));
PS3.SetMemory(elem + HElems.yOffset, ToHexFloat(y));
PS3.SetMemory(elem + HElems.colorOffset, RGBA(r, g, b, a));
PS3.SetMemory(elem + HElems.clientOffset, ClientID);
System.Threading.Thread.Sleep(20);
}
public static void StoreTextElem(int elemIndex, int client, string text, int font, int fontScale, int x, int y, uint align, int sort, int r, int g, int b, int a)
{
string setText = text + "\0";
byte[] TextIndex = SetTextGhetto(setText);
uint elem = 0x15df280 + ((Convert.ToUInt32(elemIndex)) * 0x8
;
byte[] ClientID = ReverseBytes(BitConverter.GetBytes(Convert.ToInt32(client)));
PS3.SetMemory(elem, new byte[0x88]);
PS3.SetMemory(elem + HElems.type, ReverseBytes(BitConverter.GetBytes(1)));
PS3.SetMemory(elem + 0x79, new byte[] { 0xFF });
PS3.SetMemory(elem + 0xC, new byte[] { 0x3f, 0xc0 });
PS3.SetMemory(elem + 0x104, new byte[] { 0x03, 0xff });
PS3.SetMemory(elem + HElems.textOffset, TextIndex);
byte[] font_ = BitConverter.GetBytes(Convert.ToInt32(font));
Array.Resize(ref font_, 1);
PS3.SetMemory(elem + HElems.fontSizeOffset, font_);
PS3.SetMemory(elem + HElems.xOffset, ToHexFloat(x));
PS3.SetMemory(elem + HElems.yOffset, ToHexFloat(y));
PS3.SetMemory(elem + HElems.colorOffset, RGBA(r, g, b, a));
PS3.SetMemory(elem + HElems.clientOffset, ClientID);
System.Threading.Thread.Sleep(20);
}
public static void DestroyElem(int index)
{
uint elem = 0x15df280 + ((Convert.ToUInt32(index)) * 0x8
;
PS3.SetMemory(elem, new byte[0x88]);
}
}
Copyright © 2024, NextGenUpdate.
All Rights Reserved.