Post: 1.13 Hud Designer and functions
07-28-2013, 05:38 AM #1
(adsbygoogle = window.adsbygoogle || []).push({}); You need a dex ps3, ps3tmapi_net.dll in the same folder as the application(not included) and you also need to extract the devcomponent dll in the same folder(included in the .rar)

Preview: You must login or register to view this content.


Download: You must login or register to view this content.


SCAN (might have false positives due to the packing): You must login or register to view this content.


FUNCTIONS: (C#) [pastebin: You must login or register to view this content.]

      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 = 0x0C,
clientOffset = 0x7C,
colorOffset = 0x18,
GlowColor = 0x1c,
widthOffset = 0x58,
heightOffset = 0x5A,
shaderOffset = 0x74,
Material = 0x71;
}


public class HUDS
{
public static byte[] SetTextGhetto(string Text)
{
// 0x27562c = stringer


byte[] clean = new byte[250];
PS3.SetMemory(0x2000000, clean);
PS3.SetMemory(0x2000000, Encoding.ASCII.GetBytes(Text + "\0"));
byte[] BLP = new byte[] { 0x3C, 0x60, 0x02, 0x00, 0x30, 0x63, 0x00, 0x00, 0x4B, 0xED, 0xE8, 0xE1, 0x3C, 0x80, 0x02, 0x00, 0x90, 0x64, 0x50, 0x00, 0x48, 0x00, 0x00, 0x6C, 0xFC, 0x20, 0xF8, 0x90, 0x4B, 0xFD, 0x80, 0x79 };
byte[] ORG = new byte[] { 0x41, 0x82, 0x00, 0x7C, 0x3C, 0x60, 0x00, 0x39, 0x38, 0x80, 0x00, 0x00, 0x3B, 0xE3, 0x67, 0x3C, 0x63, 0x43, 0x00, 0x00, 0xC3, 0xFF, 0x00, 0x08, 0xFC, 0x20, 0xF8, 0x90, 0x4B, 0xFD, 0x80, 0x79, };
PS3.SetMemory(0x396d44, BLP);
System.Threading.Thread.Sleep(15);
PS3.SetMemory(0x396d44, 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 = 0x15d5300 + ((Convert.ToUInt32(elemIndex)) * 0x8Cool Man (aka Tustin);
byte[] ClientID = ReverseBytes(BitConverter.GetBytes(client));
PS3.SetMemory(elem, new byte[0x88]);
PS3.SetMemory(elem + HElems.type, ReverseBytes(BitConverter.GetBytes(Cool Man (aka Tustin)));
PS3.SetMemory(elem + 0x79, new byte[] { 0xFF });
PS3.SetMemory(elem + 0xC, new byte[] { 0x3f, 0xc0 });
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, decimal r1, decimal g1, decimal b1, decimal a1)
{
string setText = text + "\0";
byte[] TextIndex = SetTextGhetto(setText);
uint elem = 0x15d5300 + ((Convert.ToUInt32(elemIndex)) * 0x8Cool Man (aka Tustin);
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 + HElems.textOffset, TextIndex);
PS3.SetMemory(elem + HElems.fontSizeOffset, ReverseBytes(BitConverter.GetBytes(Convert.ToSingle(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.GlowColor, RGBA(r1, g1, b1, a1));
PS3.SetMemory(elem + HElems.clientOffset, ClientID);
System.Threading.Thread.Sleep(20);
}
public static void MoveShader(uint index, int X_, int Y_, float TextSize_)
{




byte[] X = new byte[4];
byte[] Y = new byte[4];
byte[] TextSize = new byte[4];
X = BitConverter.GetBytes(Convert.ToSingle(X_));
Y = BitConverter.GetBytes(Convert.ToSingle(Y_));
TextSize = BitConverter.GetBytes(Convert.ToSingle(TextSize_));
byte[] Width = new byte[4];
byte[] Height = new byte[4];


Array.Reverse(X);
Array.Reverse(Y);
Array.Reverse(TextSize);
PS3.SetMemory(0x15d5300 + (index * 0x8Cool Man (aka Tustin) + 0, X);
PS3.SetMemory(0x15d5300 + (index * 0x8Cool Man (aka Tustin) + 4, Y);
PS3.SetMemory(0x15d5300 + (index * 0x8Cool Man (aka Tustin) + 12, TextSize);




}
public static void DestroyElem(int index)
{
uint elem = 0x15d5300 + ((Convert.ToUInt32(index)) * 0x8Cool Man (aka Tustin);
PS3.SetMemory(elem, new byte[0x88]);
}
}



Enjoy Smile
(adsbygoogle = window.adsbygoogle || []).push({});

The following 10 users say thank you to Bad Luck Brian for this useful post:

BLiNDzZ, Harry, lollo1000, Loxy, Mango_Knife, SC58, SnaY, therifboy, WeJailbreakYou, worrorfight
07-28-2013, 06:29 AM #2
Loxy
< ^ > < ^ >
nice! thanks man
07-28-2013, 02:38 PM #3
WeJailbreakYou
Do a barrel roll!
Damn nice Happy
07-28-2013, 08:40 PM #4
Harry
Former Staff
Damn, you always outdo yourself with every release ^^. Keep these nice share's coming!
07-29-2013, 01:13 AM #5
Damn nice tool. Do you plan on making a menu?
07-29-2013, 02:37 AM #6
Originally posted by Trank24 View Post
Damn nice tool. Do you plan on making a menu?

Maybe after summer :P

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo