PS3 Ghost 1.12 HUD Elements

  • Hello Guest! Welcome to ConsoleCrunch, to help support our site check out the premium upgrades HERE! to get exclusive access to our hidden content.
  • Unable to load portions of the website...
    If you use an ad blocker addon, you should disable it because it interferes with several elements of the site and blocks more than just adverts.
  • Read Rules Before Posting Post Virus Scans with every program.

Chris

ROKETO PAAAAAAAAAAAAAANCH!
Retired Staff
Determined Poster
Active Member
Dec 11, 2013
572
494
163
Here are the HUD elements for the new update! Have fun :) and happy creating!

Credit - PrimeNotorius, BadLuckBrian, Seb5594

public class Addresses
{
public static UInt32
G_HudElems = 0xD87808,
G_LocalizedStringIndex = 0x33580;
}
public class HElems
{
public static UInt32
type = 0x0,
X = 0x4,
Y = 0x8,
Z = 0xC,
clientIndex = 0x10,
FontSize = 0x14,
fromFontScale = 0x18,
fontscaletime = 0x1C,
Font = 0x24,
allign = 0x28,
allignOrg = 0x2C,
color = 0x30,
fromColor = 0x34,
fadeStartTime = 0x38,
fadeTime = 0x3C,
text = 0x42,
Width = 0x46,
Heigth = 0x4A,
MaterialIndex = 0x4E,
fromWidth = 0x50,
fromHeigth = 0x54,
scaleStartTime = 0x58,
scaleTime = 0x5C,
fromY = 0x60,
fromX = 0x64,
fromAlignOrg = 0x68,
fromAlignScreen = 0x6C,
moveStartTime = 0x70,
moveTime = 0x74,
time = 0x78,
duration = 0x7C,
sort = 0x88,
glowColor = 0x8C,
fxBirthTime = 0x90,
fxLetterTime = 0x94,
fxDecayStartTime = 0x98,
fxDecayDuration = 0x9C,
soundID = 0xA0,
flags = 0xA4,
clientOffset = 0xA8,
HudsLength = 0xB8;
}
private static UInt32 HudElem_Alloc()
{
for (Int32 i = 0; i < 1024; i++)
{
UInt32 address = (Addresses.G_HudElems + ((UInt32)i * 0xB8));
if (PS3.GetMemory(address, 4)[3] == 0)
{
PS3.SetMemory(address + HElems.type, new Byte[0xB8]);
return address;
}
}
return 0;
}
public static UInt32 SetShader(Int32 clientIndex, Object Material, Int16 width, Int16 height, Single x, Single y, Int32 r = 255, Int32 g = 255, Int32 b = 255, Int32 a = 255)
{
UInt32 Element = HudElem_Alloc();
Byte[] HudElement = new Byte[HElems.HudsLength];
ArrayBuilder BuildElem = new ArrayBuilder(HudElement);
BuildElem.Write.SetInt32((Int32)HElems.type, 4);
if (Material is String)
BuildElem.Write.SetInt16((Int32)HElems.MaterialIndex, GetMaterialIndex((String)Material));
else
BuildElem.Write.SetInt32((Int32)HElems.MaterialIndex - 2, Convert.ToInt32(Material));
BuildElem.Write.SetFloat((Int32)HElems.X, x);
BuildElem.Write.SetFloat((Int32)HElems.Y, y);
BuildElem.Write.SetInt16((Int32)HElems.Width, width);
BuildElem.Write.SetInt16((Int32)HElems.Heigth, height);
BuildElem.Write.SetInt32((Int32)HElems.clientOffset, clientIndex);
BuildElem.Write.SetBytes((Int32)HElems.color, new Byte[] { (Byte)r, (Byte)g, (Byte)b, (Byte)a });
PS3Lib.Extention.WriteBytes(Element, HudElement);
return Element;
}
public static UInt32 SetText(Int32 clientIndex, String Text, Byte Font, Double FontSize, Single x, Single y, Int32 r = 255, Int32 g = 255, Int32 b = 255, Int32 a = 255, Int32 glowr = 255, Int32 glowg = 255, Int32 glowb = 255, Int32 glowa = 0)
{
UInt32 Element = HudElem_Alloc();
Byte[] HudElement = new Byte[HElems.HudsLength];
ArrayBuilder BuildElem = new ArrayBuilder(HudElement);
BuildElem.Write.SetInt32((Int32)HElems.type, 1);
BuildElem.Write.SetInt16((Int32)HElems.text, G_LocalizedStringIndex(Text));
BuildElem.Write.SetInt32((Int32)HElems.Font, Font);
BuildElem.Write.SetFloat((Int32)HElems.FontSize, (Single)FontSize);
BuildElem.Write.SetFloat((Int32)HElems.X, x);
BuildElem.Write.SetFloat((Int32)HElems.Y, y);
BuildElem.Write.SetInt32((Int32)HElems.clientOffset, clientIndex);
BuildElem.Write.SetBytes((Int32)HElems.color, new Byte[] { (Byte)r, (Byte)g, (Byte)b, (Byte)a });
BuildElem.Write.SetBytes((Int32)HElems.glowColor, new Byte[] { (Byte)glowr, (Byte)glowg, (Byte)glowb, (Byte)glowa });
PS3Lib.Extention.WriteBytes(Element, HudElement);
return Element;
}
public static Int16 G_LocalizedStringIndex(String Text)
{
PS3Lib.Extention.WriteByte(Addresses.G_LocalizedStringIndex + 0x48, 0x41);
Int16 StringIndex = (Int16)RPC.Call(Functions.Offsets.G_LocalizedStringIndex, Text);
PS3Lib.Extention.WriteByte(Addresses.G_LocalizedStringIndex + 0x48, 0x40);
return StringIndex;
}
public static void ChangeText(UInt32 Element, String Text)
{
PS3Lib.Extention.WriteInt16(Element + HElems.text, G_LocalizedStringIndex(Text));
}
public static void ChangeAlpha(UInt32 Element, Byte Alpha)
{
PS3Lib.Extention.WriteByte(Element + HElems.color + 3, Alpha);
}
public static void DestroyElement(UInt32 Element)
{
PS3Lib.Extention.WriteBytes(Element, new Byte[HElems.HudsLength]);
}
public static void DestroyAll()
{
for (UInt32 i = 0; i < 1024; i++)
PS3Lib.Extention.WriteBytes(Addresses.G_HudElems + (i * HElems.HudsLength), new Byte[HElems.HudsLength]);
}
 
  • Like
Reactions: Nostafaru

Nostafaru

Moderating the Crunch Bunch.
Retired Staff
Community Elite
Community Veteran
Determined Poster
Active Member
Console ID Poster
Apr 6, 2014
2,020
1,783
443
General chit-chat
Help Users
  • @ QM|T_JinX:
    yea me too i dont have one
  • @ lurch6661:
    and you are right gta is way better playing with friends
  • @ QM|T_JinX:
    yea lol
  • @ lurch6661:
    kinda boring playing byurself ya no
  • @ lurch6661:
    its like zzzzzz
  • @ lurch6661:
    lol
  • @ QM|T_JinX:
    yea it is
  • @ lurch6661:
    we need more people in chat
  • @ lurch6661:
    maybe if cc hosts contests
  • @ lurch6661:
    to win premium memberships
  • @ QM|T_JinX:
    if there isnt that mutch already working ids online then yea
  • @ lurch6661:
    i mean theres gotta be a way to popularize
  • @ lurch6661:
    this site
  • @ QM|T_JinX:
    think there will be more online is when the jb on ps4 starts running
  • @ QM|T_JinX:
    not everybody have a ps5 and ps4 need low fw ps4 on lowfw is hard to find
  • @ lurch6661:
    yea that is very true
  • @ lurch6661:
    iam sure if my name was illuminated we could get more followers for cc
  • @ lurch6661:
    i forget how much it is
  • @ QM|T_JinX:
    not sure
  • Chat Bot:
    extiflyy is our newest member. Welcome!
  • @ lurch6661:
    my minds playing tricks on me
  • @ lurch6661:
    lol
    @ QM|T_JinX: :weed: