

public static class HElems
{
public static UInt32
xOffset = 0x08,
yOffset = 0x04,
textOffset = 0x84,
fontOffset = 0x24,
fontSizeOffset = 0x14,
colorOffset = 0x30,
relativeOffset = 0x2c,
widthOffset = 0x44,
heightOffset = 0x48,
shaderOffset = 0x4c,
GlowColor = 0x8C,
alignOffset = 0x2C,
fadeStartTime = 0x38,
fadeTime = 0x3c,
label = 0x40,
clientOffset = 0xA8,
fromWidth = 0x50,
fromHeight = 0x54,
scaleStartTime = 0x58,
scaleTime = 0x5c,
fromX = 0x60,
fromY = 0x64,
fromAlignOrg = 0x68,
fromAlignScreen = 0x6c,
moveStartTime = 0x70,
moveTime = 0x74,
time = 0x78,
duration = 0x7c,
value = 0x80,
sort = 0x88,
fxBirthTime = 0x90,
fxLetterTime = 0x94,
fxDecayStartTime = 0x98,
fxDecayDuration = 0x9c,
soundID = 0xa0,
flags = 0xa4;
}
public void doTypeWriter(UInt32 clientIndex, String text,Single X = 100, Single Y = 300, Int32[] rgba = { 255,255,255,255 } ,Int32[] glow)
{
UInt32 Elem = HudElem_Alloc();
SetMemory(Elem, new Byte[] { 0x00, 0x00, 0x00, 0x01 });
SetMemory(Elem + HElems.textOffset, uintBytes(createText("")));
SetMemory(Elem + HElems.relativeOffset, uintBytes(0x05));
SetMemory(Elem + HElems.relativeOffset - 4, uintBytes(0x06));
SetMemory(Elem + HElems.fontOffset, uintBytes(10));
SetMemory(Elem + HElems.alignOffset, uintBytes(5));
SetMemory(Elem + HElems.textOffset + 4, new Byte[] { 0x40, 0x00 });
SetMemory(Elem + HElems.fontSizeOffset, ReverseBytes(BitConverter.GetBytes((float)2)));
SetMemory(Elem + HElems.xOffset, ReverseBytes(BitConverter.GetBytes(X)));
SetMemory(Elem + HElems.yOffset, ReverseBytes(BitConverter.GetBytes(Y)));
SetMemory(Elem + HElems.colorOffset, new Byte[] { BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(255)[0] });
SetMemory(Elem + HElems.GlowColor, new Byte[] { BitConverter.GetBytes(glow[0])[0], BitConverter.GetBytes(glow[1])[0], BitConverter.GetBytes(glow[2])[0], BitConverter.GetBytes(glow[3])[0] });
SetMemory(Elem + HElems.clientOffset, ReverseBytes(BitConverter.GetBytes(clientIndex)));
WriteInt32(Elem + HElems.fxBirthTime, getLevelTime());
WriteInt32(Elem + HElems.fxLetterTime, 100);
WriteInt32(Elem + HElems.fxDecayStartTime, 4000);
WriteInt32(Elem + HElems.fxDecayDuration, 1000);
WriteInt32(Elem + HElems.flags, 1);
SetMemory(Elem + HElems.textOffset, uintBytes(createText(text)));
}
public Int32 getLevelTime()
{
Byte[] LevelTime = new Byte[4];
GetMemory(0xFC3DB0,LevelTime);
Array.Reverse(LevelTime, 0, 4);
return BitConverter.ToInt32(LevelTime, 0);
}
public UInt32 HudElem_Alloc()
{
for (UInt32 i = 0xF0E10C; i < 0xF3B10C; i += 0xB4)
{
Byte[] buff = new Byte[4];
GetMemory(i, buff);
if (buff[3] == 0)
{
SetMemory(i, new Byte[0xB4]);
return i;
}
}
return 0;
}
public void WriteInt32(uint offset, int input)
{
Byte[] buff = new Byte[4];
BitConverter.GetBytes(input).CopyTo(buff, 0);
Array.Reverse(buff, 0, 4);
SetMemory(offset, buff);
}

doTypeWriter(< clientnumber >, < text >, < X Position > , < Y Position > , < RGBA Colors Int32 Array > , < RGBA GlowColors Int32 Array >
doTypeWriter(0, Welcome to my Modded Lobby, 100 , 300 , new Int32[] { 255, 255, 255, 255 } , new Int32[] { 0, 0, 255, 255 })

public void WelcomeMessage(UInt32 clientIndex, String Text1, String Text2, String Text3, Int32[] glowColor)
{
UInt32 elem = HudElem_Alloc();
SetMemory(Elem, new Byte[] { 0x00, 0x00, 0x00, 0x01 });
SetMemory(Elem + HElems.textOffset, uintBytes(createText("")));
SetMemory(Elem + HElems.relativeOffset, uintBytes(0x05));
SetMemory(Elem + HElems.relativeOffset - 4, uintBytes(0x06));
SetMemory(Elem + HElems.fontOffset, uintBytes(10));
SetMemory(Elem + HElems.alignOffset, uintBytes(5));
SetMemory(Elem + HElems.textOffset + 4, new Byte[] { 0x40, 0x00 });
SetMemory(Elem + HElems.fontSizeOffset, ReverseBytes(BitConverter.GetBytes((float)2)));
SetMemory(Elem + HElems.xOffset, ReverseBytes(BitConverter.GetBytes(150)));
SetMemory(Elem + HElems.yOffset, ReverseBytes(BitConverter.GetBytes(300)));
SetMemory(Elem + HElems.colorOffset, new Byte[] { BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(255)[0] });
SetMemory(Elem + HElems.GlowColor, new Byte[] { BitConverter.GetBytes(glow[0])[0], BitConverter.GetBytes(glow[1])[0], BitConverter.GetBytes(glow[2])[0], BitConverter.GetBytes(glow[3])[0] });
SetMemory(Elem + HElems.clientOffset, ReverseBytes(BitConverter.GetBytes(clientIndex)));
WriteInt32(elem + HElems.fxBirthTime, getLevelTime());
WriteInt32(elem + HElems.fxLetterTime, 80);
WriteInt32(elem + HElems.fxDecayStartTime, 9500);
WriteInt32(elem + HElems.fxDecayDuration, 1000);
WriteInt32(elem + HElems.flags, 1);
SetMemory(elem + HElems.textOffset, UInt32ToBytes(createText(Text1 + "\n" + CenterTypeWriterString(Text2, Text1.Length) + "\n" + CenterTypeWriterString(Text3, Text1.Length))));
}
public String CenterTypeWriterString(String text, Int32 length)
{
Int32 calc = (length - text.Length) / 2;
String MyText = String.Empty;
for (Int32 i = 0; i <= calc; i++)
{
MyText += " ";
}
return MyText + " " + text;
}
)
WelcomeMessage(< clientnumber >, < Text 1 >, < Text 2 >, < Text 3 >, < RGBA Colors Int32 Array >
WelcomeMessage(0, "Welcome to my Modded MW3 Lobby", "Subcribe xRevolutionsHD", "Created by xRevolution", new Int32[] { 255, 255, 255, 255 })
- xRevolution
- Therifboy (Motivated me to find it. Helping with some things and find with me LevelTime Offset)
- Hacksource (Full Hud Elements Struct)
- Choco (RPC and Huds)
- iMCSx (WriteInt32 Function and connecting things)


public static class HElems
{
public static UInt32
xOffset = 0x08,
yOffset = 0x04,
textOffset = 0x84,
fontOffset = 0x24,
fontSizeOffset = 0x14,
colorOffset = 0x30,
relativeOffset = 0x2c,
widthOffset = 0x44,
heightOffset = 0x48,
shaderOffset = 0x4c,
GlowColor = 0x8C,
alignOffset = 0x2C,
fadeStartTime = 0x38,
fadeTime = 0x3c,
label = 0x40,
clientOffset = 0xA8,
fromWidth = 0x50,
fromHeight = 0x54,
scaleStartTime = 0x58,
scaleTime = 0x5c,
fromX = 0x60,
fromY = 0x64,
fromAlignOrg = 0x68,
fromAlignScreen = 0x6c,
moveStartTime = 0x70,
moveTime = 0x74,
time = 0x78,
duration = 0x7c,
value = 0x80,
sort = 0x88,
fxBirthTime = 0x90,
fxLetterTime = 0x94,
fxDecayStartTime = 0x98,
fxDecayDuration = 0x9c,
soundID = 0xa0,
flags = 0xa4;
}
public void doTypeWriter(UInt32 clientIndex, String text,Single X = 100, Single Y = 300, Int32[] rgba = { 255,255,255,255 } ,Int32[] glow)
{
UInt32 Elem = HudElem_Alloc();
SetMemory(Elem, new Byte[] { 0x00, 0x00, 0x00, 0x01 });
SetMemory(Elem + HElems.textOffset, uintBytes(createText("")));
SetMemory(Elem + HElems.relativeOffset, uintBytes(0x05));
SetMemory(Elem + HElems.relativeOffset - 4, uintBytes(0x06));
SetMemory(Elem + HElems.fontOffset, uintBytes(10));
SetMemory(Elem + HElems.alignOffset, uintBytes(5));
SetMemory(Elem + HElems.textOffset + 4, new Byte[] { 0x40, 0x00 });
SetMemory(Elem + HElems.fontSizeOffset, ReverseBytes(BitConverter.GetBytes((float)2)));
SetMemory(Elem + HElems.xOffset, ReverseBytes(BitConverter.GetBytes(X)));
SetMemory(Elem + HElems.yOffset, ReverseBytes(BitConverter.GetBytes(Y)));
SetMemory(Elem + HElems.colorOffset, new Byte[] { BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(255)[0] });
SetMemory(Elem + HElems.GlowColor, new Byte[] { BitConverter.GetBytes(glow[0])[0], BitConverter.GetBytes(glow[1])[0], BitConverter.GetBytes(glow[2])[0], BitConverter.GetBytes(glow[3])[0] });
SetMemory(Elem + HElems.clientOffset, ReverseBytes(BitConverter.GetBytes(clientIndex)));
WriteInt32(Elem + HElems.fxBirthTime, getLevelTime());
WriteInt32(Elem + HElems.fxLetterTime, 100);
WriteInt32(Elem + HElems.fxDecayStartTime, 4000);
WriteInt32(Elem + HElems.fxDecayDuration, 1000);
WriteInt32(Elem + HElems.flags, 1);
SetMemory(Elem + HElems.textOffset, uintBytes(createText(text)));
}
public Int32 getLevelTime()
{
Byte[] LevelTime = new Byte[4];
GetMemory(0xFC3DB0,LevelTime);
Array.Reverse(LevelTime, 0, 4);
return BitConverter.ToInt32(LevelTime, 0);
}
public UInt32 HudElem_Alloc()
{
for (UInt32 i = 0xF0E10C; i < 0xF3B10C; i += 0xB4)
{
Byte[] buff = new Byte[4];
GetMemory(i, buff);
if (buff[3] == 0)
{
SetMemory(i, new Byte[0xB4]);
return i;
}
}
return 0;
}
public void WriteInt32(uint offset, int input)
{
Byte[] buff = new Byte[4];
BitConverter.GetBytes(input).CopyTo(buff, 0);
Array.Reverse(buff, 0, 4);
SetMemory(offset, buff);
}

doTypeWriter(< clientnumber >, < text >, < X Position > , < Y Position > , < RGBA Colors Int32 Array > , < RGBA GlowColors Int32 Array >
doTypeWriter(0, Welcome to my Modded Lobby, 100 , 300 , new Int32[] { 255, 255, 255, 255 } , new Int32[] { 0, 0, 255, 255 })

public void WelcomeMessage(UInt32 clientIndex, String Text1, String Text2, String Text3, Int32[] glowColor)
{
UInt32 elem = HudElem_Alloc();
SetMemory(Elem, new Byte[] { 0x00, 0x00, 0x00, 0x01 });
SetMemory(Elem + HElems.textOffset, uintBytes(createText("")));
SetMemory(Elem + HElems.relativeOffset, uintBytes(0x05));
SetMemory(Elem + HElems.relativeOffset - 4, uintBytes(0x06));
SetMemory(Elem + HElems.fontOffset, uintBytes(10));
SetMemory(Elem + HElems.alignOffset, uintBytes(5));
SetMemory(Elem + HElems.textOffset + 4, new Byte[] { 0x40, 0x00 });
SetMemory(Elem + HElems.fontSizeOffset, ReverseBytes(BitConverter.GetBytes((float)2)));
SetMemory(Elem + HElems.xOffset, ReverseBytes(BitConverter.GetBytes(150)));
SetMemory(Elem + HElems.yOffset, ReverseBytes(BitConverter.GetBytes(300)));
SetMemory(Elem + HElems.colorOffset, new Byte[] { BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(255)[0] });
SetMemory(Elem + HElems.GlowColor, new Byte[] { BitConverter.GetBytes(glow[0])[0], BitConverter.GetBytes(glow[1])[0], BitConverter.GetBytes(glow[2])[0], BitConverter.GetBytes(glow[3])[0] });
SetMemory(Elem + HElems.clientOffset, ReverseBytes(BitConverter.GetBytes(clientIndex)));
WriteInt32(elem + HElems.fxBirthTime, getLevelTime());
WriteInt32(elem + HElems.fxLetterTime, 80);
WriteInt32(elem + HElems.fxDecayStartTime, 9500);
WriteInt32(elem + HElems.fxDecayDuration, 1000);
WriteInt32(elem + HElems.flags, 1);
SetMemory(elem + HElems.textOffset, UInt32ToBytes(createText(Text1 + "\n" + CenterTypeWriterString(Text2, Text1.Length) + "\n" + CenterTypeWriterString(Text3, Text1.Length))));
}
public String CenterTypeWriterString(String text, Int32 length)
{
Int32 calc = (length - text.Length) / 2;
String MyText = String.Empty;
for (Int32 i = 0; i <= calc; i++)
{
MyText += " ";
}
return MyText + " " + text;
}
)
WelcomeMessage(< clientnumber >, < Text 1 >, < Text 2 >, < Text 3 >, < RGBA Colors Int32 Array >
WelcomeMessage(0, "Welcome to my Modded MW3 Lobby", "Subcribe xRevolutionsHD", "Created by xRevolution", new Int32[] { 255, 255, 255, 255 })
- xRevolution
- Therifboy (Motivated me to find it. Helping with some things and find with me LevelTime Offset)
- Hacksource (Full Hud Elements Struct)
- Choco (RPC and Huds)
- iMCSx (WriteInt32 Function and connecting things)


public static class HElems
{
public static UInt32
xOffset = 0x08,
yOffset = 0x04,
textOffset = 0x84,
fontOffset = 0x24,
fontSizeOffset = 0x14,
colorOffset = 0x30,
relativeOffset = 0x2c,
widthOffset = 0x44,
heightOffset = 0x48,
shaderOffset = 0x4c,
GlowColor = 0x8C,
alignOffset = 0x2C,
fadeStartTime = 0x38,
fadeTime = 0x3c,
label = 0x40,
clientOffset = 0xA8,
fromWidth = 0x50,
fromHeight = 0x54,
scaleStartTime = 0x58,
scaleTime = 0x5c,
fromX = 0x60,
fromY = 0x64,
fromAlignOrg = 0x68,
fromAlignScreen = 0x6c,
moveStartTime = 0x70,
moveTime = 0x74,
time = 0x78,
duration = 0x7c,
value = 0x80,
sort = 0x88,
fxBirthTime = 0x90,
fxLetterTime = 0x94,
fxDecayStartTime = 0x98,
fxDecayDuration = 0x9c,
soundID = 0xa0,
flags = 0xa4;
}
public void doTypeWriter(UInt32 clientIndex, String text,Single X = 100, Single Y = 300, Int32[] rgba = { 255,255,255,255 } ,Int32[] glow)
{
UInt32 Elem = HudElem_Alloc();
SetMemory(Elem, new Byte[] { 0x00, 0x00, 0x00, 0x01 });
SetMemory(Elem + HElems.textOffset, uintBytes(createText("")));
SetMemory(Elem + HElems.relativeOffset, uintBytes(0x05));
SetMemory(Elem + HElems.relativeOffset - 4, uintBytes(0x06));
SetMemory(Elem + HElems.fontOffset, uintBytes(10));
SetMemory(Elem + HElems.alignOffset, uintBytes(5));
SetMemory(Elem + HElems.textOffset + 4, new Byte[] { 0x40, 0x00 });
SetMemory(Elem + HElems.fontSizeOffset, ReverseBytes(BitConverter.GetBytes((float)2)));
SetMemory(Elem + HElems.xOffset, ReverseBytes(BitConverter.GetBytes(X)));
SetMemory(Elem + HElems.yOffset, ReverseBytes(BitConverter.GetBytes(Y)));
SetMemory(Elem + HElems.colorOffset, new Byte[] { BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(255)[0] });
SetMemory(Elem + HElems.GlowColor, new Byte[] { BitConverter.GetBytes(glow[0])[0], BitConverter.GetBytes(glow[1])[0], BitConverter.GetBytes(glow[2])[0], BitConverter.GetBytes(glow[3])[0] });
SetMemory(Elem + HElems.clientOffset, ReverseBytes(BitConverter.GetBytes(clientIndex)));
WriteInt32(Elem + HElems.fxBirthTime, getLevelTime());
WriteInt32(Elem + HElems.fxLetterTime, 100);
WriteInt32(Elem + HElems.fxDecayStartTime, 4000);
WriteInt32(Elem + HElems.fxDecayDuration, 1000);
WriteInt32(Elem + HElems.flags, 1);
SetMemory(Elem + HElems.textOffset, uintBytes(createText(text)));
}
public Int32 getLevelTime()
{
Byte[] LevelTime = new Byte[4];
GetMemory(0xFC3DB0,LevelTime);
Array.Reverse(LevelTime, 0, 4);
return BitConverter.ToInt32(LevelTime, 0);
}
public UInt32 HudElem_Alloc()
{
for (UInt32 i = 0xF0E10C; i < 0xF3B10C; i += 0xB4)
{
Byte[] buff = new Byte[4];
GetMemory(i, buff);
if (buff[3] == 0)
{
SetMemory(i, new Byte[0xB4]);
return i;
}
}
return 0;
}
public void WriteInt32(uint offset, int input)
{
Byte[] buff = new Byte[4];
BitConverter.GetBytes(input).CopyTo(buff, 0);
Array.Reverse(buff, 0, 4);
SetMemory(offset, buff);
}

doTypeWriter(< clientnumber >, < text >, < X Position > , < Y Position > , < RGBA Colors Int32 Array > , < RGBA GlowColors Int32 Array >
doTypeWriter(0, Welcome to my Modded Lobby, 100 , 300 , new Int32[] { 255, 255, 255, 255 } , new Int32[] { 0, 0, 255, 255 })

public void WelcomeMessage(UInt32 clientIndex, String Text1, String Text2, String Text3, Int32[] glowColor)
{
UInt32 elem = HudElem_Alloc();
SetMemory(Elem, new Byte[] { 0x00, 0x00, 0x00, 0x01 });
SetMemory(Elem + HElems.textOffset, uintBytes(createText("")));
SetMemory(Elem + HElems.relativeOffset, uintBytes(0x05));
SetMemory(Elem + HElems.relativeOffset - 4, uintBytes(0x06));
SetMemory(Elem + HElems.fontOffset, uintBytes(10));
SetMemory(Elem + HElems.alignOffset, uintBytes(5));
SetMemory(Elem + HElems.textOffset + 4, new Byte[] { 0x40, 0x00 });
SetMemory(Elem + HElems.fontSizeOffset, ReverseBytes(BitConverter.GetBytes((float)2)));
SetMemory(Elem + HElems.xOffset, ReverseBytes(BitConverter.GetBytes(150)));
SetMemory(Elem + HElems.yOffset, ReverseBytes(BitConverter.GetBytes(300)));
SetMemory(Elem + HElems.colorOffset, new Byte[] { BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(0)[0], BitConverter.GetBytes(255)[0] });
SetMemory(Elem + HElems.GlowColor, new Byte[] { BitConverter.GetBytes(glow[0])[0], BitConverter.GetBytes(glow[1])[0], BitConverter.GetBytes(glow[2])[0], BitConverter.GetBytes(glow[3])[0] });
SetMemory(Elem + HElems.clientOffset, ReverseBytes(BitConverter.GetBytes(clientIndex)));
WriteInt32(elem + HElems.fxBirthTime, getLevelTime());
WriteInt32(elem + HElems.fxLetterTime, 80);
WriteInt32(elem + HElems.fxDecayStartTime, 9500);
WriteInt32(elem + HElems.fxDecayDuration, 1000);
WriteInt32(elem + HElems.flags, 1);
SetMemory(elem + HElems.textOffset, UInt32ToBytes(createText(Text1 + "\n" + CenterTypeWriterString(Text2, Text1.Length) + "\n" + CenterTypeWriterString(Text3, Text1.Length))));
}
public String CenterTypeWriterString(String text, Int32 length)
{
Int32 calc = (length - text.Length) / 2;
String MyText = String.Empty;
for (Int32 i = 0; i <= calc; i++)
{
MyText += " ";
}
return MyText + " " + text;
}
)
WelcomeMessage(< clientnumber >, < Text 1 >, < Text 2 >, < Text 3 >, < RGBA Colors Int32 Array >
WelcomeMessage(0, "Welcome to my Modded MW3 Lobby", "Subcribe xRevolutionsHD", "Created by xRevolution", new Int32[] { 255, 255, 255, 255 })
- xRevolution
- Therifboy (Motivated me to find it. Helping with some things and find with me LevelTime Offset)
- Hacksource (Full Hud Elements Struct)
- Choco (RPC and Huds)
- iMCSx (WriteInt32 Function and connecting things)
Copyright © 2026, NextGenUpdate.
All Rights Reserved.