Post: (Released, 1.13, C#) RPC To Make A Menu For MP and ZM (Stable And Works)
10-13-2014, 05:48 AM #1
CrEaTiiOn_420
Can’t trickshot me!
(adsbygoogle = window.adsbygoogle || []).push({}); hey guys im just releasing a RPC that i have made for BO1 that allows you to create a stable menu for Multiplayer and Zombies and i included alot of functions like detect map and shit like that so have fun and if you make any menu's etc. just leave credit <3


    
//RPC By: CrEaTiiOn_420
//===

public class RPC
{
public static UInt32 function_address = 0x6E34E0; //MP = 0x7A21E0 || ZM = 0x6E34E0

public static void Enable_RPC()
{
PS3.SetMemory(function_address, new byte[] { 0x4e, 0x80, 0, 0x20 });
System.Threading.Thread.Sleep(20);
byte[] memory = new byte[] {
0x7c, 8, 2, 0xa6, 0xf8, 1, 0, 0x80, 60, 0x60, 0x10, 5, 0x81, 0x83, 0, 0x4c,
0x2c, 12, 0, 0, 0x41, 130, 0, 100, 0x80, 0x83, 0, 4, 0x80, 0xa3, 0, 8,
0x80, 0xc3, 0, 12, 0x80, 0xe3, 0, 0x10, 0x81, 3, 0, 20, 0x81, 0x23, 0, 0x18,
0x81, 0x43, 0, 0x1c, 0x81, 0x63, 0, 0x20, 0xc0, 0x23, 0, 0x24, 0xc0, 0x43, 0, 40,
0xc0, 0x63, 0, 0x2c, 0xc0, 0x83, 0, 0x30, 0xc0, 0xa3, 0, 0x34, 0xc0, 0xc3, 0, 0x38,
0xc0, 0xe3, 0, 60, 0xc1, 3, 0, 0x40, 0xc1, 0x23, 0, 0x48, 0x80, 0x63, 0, 0,
0x7d, 0x89, 3, 0xa6, 0x4e, 0x80, 4, 0x21, 60, 0x80, 0x10, 5, 0x38, 160, 0, 0,
0x90, 0xa4, 0, 0x4c, 0x90, 100, 0, 80, 0xe8, 1, 0, 0x80, 0x7c, 8, 3, 0xa6,
0x38, 0x21, 0, 0x70, 0x4e, 0x80, 0, 0x20
};
PS3.SetMemory(function_address + 4, memory);
PS3.SetMemory(0x10050000, new byte[0x2854]);
PS3.SetMemory(function_address, new byte[] { 0xf8, 0x21, 0xff, 0x91 });
}

public static uint Call(uint func_address, params object[] parameters)
{
int length = parameters.Length;
uint num2 = 0;
for (uint i = 0; i < length; i++)
{
if (parameters[i] is int)
{
byte[] array = BitConverter.GetBytes((int)parameters[i]);
Array.Reverse(array);
PS3.SetMemory(0x10050000 + ((i + num2) * 4), array);
}
else if (parameters[i] is uint)
{
byte[] buffer2 = BitConverter.GetBytes((uint)parameters[i]);
Array.Reverse(buffer2);
PS3.SetMemory(0x10050000 + ((i + num2) * 4), buffer2);
}
else if (parameters[i] is string)
{
byte[] buffer3 = Encoding.UTF8.GetBytes(Convert.ToString(parameters[i]) + "\0");
PS3.SetMemory(0x10050054 + (i * 0x400), buffer3);
uint num4 = 0x10050054 + (i * 0x400);
byte[] buffer4 = BitConverter.GetBytes(num4);
Array.Reverse(buffer4);
PS3.SetMemory(0x10050000 + ((i + num2) * 4), buffer4);
}
else if (parameters[i] is float)
{
num2++;
byte[] buffer5 = BitConverter.GetBytes((float)parameters[i]);
Array.Reverse(buffer5);
PS3.SetMemory(0x10050024 + ((num2 - 1) * 4), buffer5);
}
}
byte[] bytes = BitConverter.GetBytes(func_address);
Array.Reverse(bytes);
PS3.SetMemory(0x1005004c, bytes);
System.Threading.Thread.Sleep(20);
byte[] memory = new byte[4];
PS3.GetMemoryR(0x10050050, ref memory);
Array.Reverse(memory);
return BitConverter.ToUInt32(memory, 0);
}
}

//Hud Elements
//============

public class Huds
{
public class HudStruct
{
public static uint
G_HudElems = 0x00EE7B84,
IndexSize = 0x84,
x = 0x0,
y = 0x4,
z = 0x8,
fontScaleStartTime = 0x14,
fontScale = 0xC,
entNum = 0x18,
color = 0x18,
teamNum = 0x1C,
fromColor = 0x1C,
icon = 0x20,
fadeStartTime = 0x20,
scaleStartTime = 0x24,
fromX = 0x28,
fromY = 0x2C,
moveStartTime = 0x30,
time = 0x34,
duration = 0x38,
value = 0x3C,
sort = 0x40,
glowColor = 0x44,
fxBirthTime = 0x48,
targetEntNum = 0x4C,
fontScaleTime = 0x4E,
fadeTime = 0x50,
label = 0x52,
width = 0x54,
height = 0x56,
fromWidth = 0x58,
fromHeight = 0x5A,
scaleTime = 0x5C,
moveTime = 0x5E,
text = 0x60,
fxDecayStartTime = 0x64,
fxDecayDuration = 0x66,
fxRedactDecayStartTime = 0x68,
fxRedactDecayDuration = 0x6A,
flags = 0x6C,
type = 0x6E,
font = 0x6F,
alignOrg = 0x70,
alignScreen = 0x71,
materialIndex = 0x72,
fxLetterTime = 0x62,
offscreenMaterialIdx = 0x73,
fromAlignOrg = 0x74,
fromAlignScreen = 0x75,
soundID = 0x76,
ui3dWindow = 0x77,
clientNum = 0x78,
team = 0x7C,
archived = 0x80;
}
public static short G_LocalizedStringIndex(string Text)
{
return (short)RPC.Call(0x00304BA0, Text);
}
public static void ChangeText(UInt32 elemIndex, String Text)
{
PS3.Extension.WriteInt16(elemIndex + HudStruct.text, G_LocalizedStringIndex(Text));
}
public static uint SetText(int clientIndex, string TextString, int Font, Single FontSize, Single X, Single Y, uint align = 0, int r = 255, int g = 255, int b = 255, int a = 255, int glowr = 255, int glowg = 255, int glowb = 255, int glowa = 0)
{
uint text = HudElem_Alloc();
PS3.Extension.WriteByte(text + HudStruct.type, 1);
Funcs.WriteSingle(text + HudStruct.fontScale, FontSize);
PS3.Extension.WriteByte(text + HudStruct.font, Convert.ToByte(Font));
if (align != 0)
{ PS3.Extension.WriteByte(text + HudStruct.alignOrg, 5); PS3.Extension.WriteByte(text + HudStruct.alignScreen, Convert.ToByte(align)); }
else
{ Funcs.WriteSingle(text + HudStruct.x, X); Funcs.WriteSingle(text + HudStruct.y, Y); }
PS3.Extension.WriteInt32(text + HudStruct.clientNum, clientIndex);
PS3.Extension.WriteInt16(text + HudStruct.text, G_LocalizedStringIndex(TextString));
PS3.Extension.WriteBytes(text + HudStruct.color, new Byte[] { (Byte)r, (Byte)g, (Byte)b, (Byte)a });
PS3.Extension.WriteBytes(text + HudStruct.glowColor, new Byte[] { (Byte)glowr, (Byte)glowg, (Byte)glowb, (Byte)glowa });
PS3.Extension.WriteByte(text + HudStruct.ui3dWindow, 0xFF);
return text;
}
public static uint SetShader(int clientIndex, int Material, short Width, short Height, Single X, Single Y, uint align = 0, int r = 255, int g = 255, int b = 255, int a = 255)
{
uint Shader = HudElem_Alloc();
PS3.Extension.WriteByte(Shader + HudStruct.type, 4);
PS3.Extension.WriteByte(Shader + HudStruct.materialIndex, Convert.ToByte(Material));
PS3.Extension.WriteInt16(Shader + HudStruct.height, Height);
PS3.Extension.WriteInt16(Shader + HudStruct.width, Width);
if (align != 0)
{ PS3.Extension.WriteByte(Shader + HudStruct.alignOrg, 5); PS3.Extension.WriteByte(Shader + HudStruct.alignScreen, Convert.ToByte(align)); }
else
{ Funcs.WriteSingle(Shader + HudStruct.x, X); Funcs.WriteSingle(Shader + HudStruct.y, Y); }
PS3.Extension.WriteInt32(Shader + HudStruct.clientNum, clientIndex);
PS3.SetMemory(Shader + HudStruct.ui3dWindow, new Byte[] { 0xFF });
PS3.Extension.WriteBytes(Shader + HudStruct.color, new Byte[] { (Byte)r, (Byte)g, (Byte)b, (Byte)a });
return Shader;
}
public static uint HudElem_Alloc()
{
for (uint i = 40; i < 1024; i++)
{
uint Index = HudStruct.G_HudElems + (i * HudStruct.IndexSize);
if (PS3.Extension.ReadByte(Index + HudStruct.type) == 0)
{
PS3.Extension.WriteBytes(Index, new Byte[0x88]);
return Index;
}
}
return 0;
}
public static void DestroyElement(uint Element)
{
PS3.SetMemory(Element, new byte[HudStruct.IndexSize]);
}
}

//Buttons Monitoring
//==================

public static class Buttons
{
public static Int32
L1 = 1048704,
L2 = 72704,
L3 = 1074003968,
R1 = -2147483648,
R2 = 131072,
R3 = 536870912,
Square = 67108864,
Cross = 2104320,
Crouch = 4194304,
Prone = 8388608,
Triangle = 8;
}
public static bool ButtonPressed(int client, int Button)
{
if (Convert.ToInt32(PS3.Extension.ReadInt32(0x11007E8 + ((uint)client * 0x1D30))) == Button)
return true;
else return false;
}

//Addresses
//=========

class Addresses
{
public static uint
G_entityZM = 0xFA805C,
G_entitySizeZM = 0x34C,
G_clientZM = 0x010fed78,
G_clientSizeZM = 0x1D30;
}

//Functions
//=========

public static string GetPlayerNameForMenu(Int32 clientIndex)
{
String Name = PS3.Extension.ReadString(0x011008B8 + ((uint)clientIndex * 0x1d30));
if (Name == "")
return "Not Connected";
else
return Name;
}

public string GetMap()
{
return PS3.Extension.ReadString(0x0138E1BCool Man (aka Tustin);
}

public int getMapMaterialWhiteShader()
{
string map = GetMap();
if (map == "zombie_theater")
{
return 18;
}
if (map == "zombie_pentagon")
{
return 17;
}
if (map == "zombie_cod5_prototype")
{
return 16;
}
if (map == "zombie_asylum")
{
return 16;
}
if (map == "zombie_swamp")
{
return 16;
}
if (map == "zombie_cod5_factory")
{
return 16;
}
if (map == "zombie_cosmodrome")
{
return 16;
}
if (map == "zombie_coast")
{
return 19;
}
if (map == "zombie_temple")
{
return 17;
}
if (map == "zombie_paris")
{
return 16;
}
else
{
return 0;
}
}

public int getMapMaterialBlackShader()
{
string map = GetMap();
if (map == "zombie_theater")
{
return 11;
}
if (map == "zombie_pentagon")
{
return 10;
}
if (map == "zombie_cod5_prototype")
{
return 9;
}
if (map == "zombie_asylum")
{
return 9;
}
if (map == "zombie_swamp")
{
return 9;
}
if (map == "zombie_cod5_factory")
{
return 9;
}
if (map == "zombie_cosmodrome")
{
return 9;
}
if (map == "zombie_coast")
{
return 12;
}
if (map == "zombie_temple")
{
return 10;
}
if (map == "zombie_paris")
{
return 9;
}
else
{
return 0;
}
}

public static int GetHost()
{
string Host = PS3.Extension.ReadString(0x01C33DB0);
int i = 0;
if (Host == "")
{
i = 0;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (0 * 0x1d30)))
{
i = 0;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (1 * 0x1d30)))
{
i = 1;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (2 * 0x1d30)))
{
i = 2;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (3 * 0x1d30)))
{
i = 3;
}
return i;
}

public static void SV_GameSendServerCommand(int client, string command)
{
RPC.Call(0x003C33A8, client, 1, command);
}



You must login or register to view this content.

Check Out My New Channel--> [ You must login or register to view this content. ]
(adsbygoogle = window.adsbygoogle || []).push({});

The following 3 users say thank you to CrEaTiiOn_420 for this useful post:

network10, John, TreyBeModding-

The following 6 users groaned at CrEaTiiOn_420 for this awful post:

Leo, makeabce, MRHackzFTW, Mantus, Taylors Bish, xMrJR
10-13-2014, 05:07 PM #2
-JM-
Space Ninja
Originally posted by 420 View Post
hey guys im just releasing a RPC that i have made for BO1 that allows you to create a stable menu for Multiplayer and Zombies and i included alot of functions like detect map and shit like that so have fun and if you make any menu's etc. just leave credit <3

    
//RPC By: CrEaTiiOn_420
//===

public class RPC
{
public static UInt32 function_address = 0x6E34E0; //MP = 0x7A21E0 || ZM = 0x6E34E0

public static void Enable_RPC()
{
PS3.SetMemory(function_address, new byte[] { 0x4e, 0x80, 0, 0x20 });
System.Threading.Thread.Sleep(20);
byte[] memory = new byte[] {
0x7c, 8, 2, 0xa6, 0xf8, 1, 0, 0x80, 60, 0x60, 0x10, 5, 0x81, 0x83, 0, 0x4c,
0x2c, 12, 0, 0, 0x41, 130, 0, 100, 0x80, 0x83, 0, 4, 0x80, 0xa3, 0, 8,
0x80, 0xc3, 0, 12, 0x80, 0xe3, 0, 0x10, 0x81, 3, 0, 20, 0x81, 0x23, 0, 0x18,
0x81, 0x43, 0, 0x1c, 0x81, 0x63, 0, 0x20, 0xc0, 0x23, 0, 0x24, 0xc0, 0x43, 0, 40,
0xc0, 0x63, 0, 0x2c, 0xc0, 0x83, 0, 0x30, 0xc0, 0xa3, 0, 0x34, 0xc0, 0xc3, 0, 0x38,
0xc0, 0xe3, 0, 60, 0xc1, 3, 0, 0x40, 0xc1, 0x23, 0, 0x48, 0x80, 0x63, 0, 0,
0x7d, 0x89, 3, 0xa6, 0x4e, 0x80, 4, 0x21, 60, 0x80, 0x10, 5, 0x38, 160, 0, 0,
0x90, 0xa4, 0, 0x4c, 0x90, 100, 0, 80, 0xe8, 1, 0, 0x80, 0x7c, 8, 3, 0xa6,
0x38, 0x21, 0, 0x70, 0x4e, 0x80, 0, 0x20
};
PS3.SetMemory(function_address + 4, memory);
PS3.SetMemory(0x10050000, new byte[0x2854]);
PS3.SetMemory(function_address, new byte[] { 0xf8, 0x21, 0xff, 0x91 });
}

public static uint Call(uint func_address, params object[] parameters)
{
int length = parameters.Length;
uint num2 = 0;
for (uint i = 0; i < length; i++)
{
if (parameters[i] is int)
{
byte[] array = BitConverter.GetBytes((int)parameters[i]);
Array.Reverse(array);
PS3.SetMemory(0x10050000 + ((i + num2) * 4), array);
}
else if (parameters[i] is uint)
{
byte[] buffer2 = BitConverter.GetBytes((uint)parameters[i]);
Array.Reverse(buffer2);
PS3.SetMemory(0x10050000 + ((i + num2) * 4), buffer2);
}
else if (parameters[i] is string)
{
byte[] buffer3 = Encoding.UTF8.GetBytes(Convert.ToString(parameters[i]) + "\0");
PS3.SetMemory(0x10050054 + (i * 0x400), buffer3);
uint num4 = 0x10050054 + (i * 0x400);
byte[] buffer4 = BitConverter.GetBytes(num4);
Array.Reverse(buffer4);
PS3.SetMemory(0x10050000 + ((i + num2) * 4), buffer4);
}
else if (parameters[i] is float)
{
num2++;
byte[] buffer5 = BitConverter.GetBytes((float)parameters[i]);
Array.Reverse(buffer5);
PS3.SetMemory(0x10050024 + ((num2 - 1) * 4), buffer5);
}
}
byte[] bytes = BitConverter.GetBytes(func_address);
Array.Reverse(bytes);
PS3.SetMemory(0x1005004c, bytes);
System.Threading.Thread.Sleep(20);
byte[] memory = new byte[4];
PS3.GetMemoryR(0x10050050, ref memory);
Array.Reverse(memory);
return BitConverter.ToUInt32(memory, 0);
}
}

//Hud Elements
//============

public class Huds
{
public class HudStruct
{
public static uint
G_HudElems = 0x00EE7B84,
IndexSize = 0x84,
x = 0x0,
y = 0x4,
z = 0x8,
fontScaleStartTime = 0x14,
fontScale = 0xC,
entNum = 0x18,
color = 0x18,
teamNum = 0x1C,
fromColor = 0x1C,
icon = 0x20,
fadeStartTime = 0x20,
scaleStartTime = 0x24,
fromX = 0x28,
fromY = 0x2C,
moveStartTime = 0x30,
time = 0x34,
duration = 0x38,
value = 0x3C,
sort = 0x40,
glowColor = 0x44,
fxBirthTime = 0x48,
targetEntNum = 0x4C,
fontScaleTime = 0x4E,
fadeTime = 0x50,
label = 0x52,
width = 0x54,
height = 0x56,
fromWidth = 0x58,
fromHeight = 0x5A,
scaleTime = 0x5C,
moveTime = 0x5E,
text = 0x60,
fxDecayStartTime = 0x64,
fxDecayDuration = 0x66,
fxRedactDecayStartTime = 0x68,
fxRedactDecayDuration = 0x6A,
flags = 0x6C,
type = 0x6E,
font = 0x6F,
alignOrg = 0x70,
alignScreen = 0x71,
materialIndex = 0x72,
fxLetterTime = 0x62,
offscreenMaterialIdx = 0x73,
fromAlignOrg = 0x74,
fromAlignScreen = 0x75,
soundID = 0x76,
ui3dWindow = 0x77,
clientNum = 0x78,
team = 0x7C,
archived = 0x80;
}
public static short G_LocalizedStringIndex(string Text)
{
return (short)RPC.Call(0x00304BA0, Text);
}
public static void ChangeText(UInt32 elemIndex, String Text)
{
PS3.Extension.WriteInt16(elemIndex + HudStruct.text, G_LocalizedStringIndex(Text));
}
public static uint SetText(int clientIndex, string TextString, int Font, Single FontSize, Single X, Single Y, uint align = 0, int r = 255, int g = 255, int b = 255, int a = 255, int glowr = 255, int glowg = 255, int glowb = 255, int glowa = 0)
{
uint text = HudElem_Alloc();
PS3.Extension.WriteByte(text + HudStruct.type, 1);
Funcs.WriteSingle(text + HudStruct.fontScale, FontSize);
PS3.Extension.WriteByte(text + HudStruct.font, Convert.ToByte(Font));
if (align != 0)
{ PS3.Extension.WriteByte(text + HudStruct.alignOrg, 5); PS3.Extension.WriteByte(text + HudStruct.alignScreen, Convert.ToByte(align)); }
else
{ Funcs.WriteSingle(text + HudStruct.x, X); Funcs.WriteSingle(text + HudStruct.y, Y); }
PS3.Extension.WriteInt32(text + HudStruct.clientNum, clientIndex);
PS3.Extension.WriteInt16(text + HudStruct.text, G_LocalizedStringIndex(TextString));
PS3.Extension.WriteBytes(text + HudStruct.color, new Byte[] { (Byte)r, (Byte)g, (Byte)b, (Byte)a });
PS3.Extension.WriteBytes(text + HudStruct.glowColor, new Byte[] { (Byte)glowr, (Byte)glowg, (Byte)glowb, (Byte)glowa });
PS3.Extension.WriteByte(text + HudStruct.ui3dWindow, 0xFF);
return text;
}
public static uint SetShader(int clientIndex, int Material, short Width, short Height, Single X, Single Y, uint align = 0, int r = 255, int g = 255, int b = 255, int a = 255)
{
uint Shader = HudElem_Alloc();
PS3.Extension.WriteByte(Shader + HudStruct.type, 4);
PS3.Extension.WriteByte(Shader + HudStruct.materialIndex, Convert.ToByte(Material));
PS3.Extension.WriteInt16(Shader + HudStruct.height, Height);
PS3.Extension.WriteInt16(Shader + HudStruct.width, Width);
if (align != 0)
{ PS3.Extension.WriteByte(Shader + HudStruct.alignOrg, 5); PS3.Extension.WriteByte(Shader + HudStruct.alignScreen, Convert.ToByte(align)); }
else
{ Funcs.WriteSingle(Shader + HudStruct.x, X); Funcs.WriteSingle(Shader + HudStruct.y, Y); }
PS3.Extension.WriteInt32(Shader + HudStruct.clientNum, clientIndex);
PS3.SetMemory(Shader + HudStruct.ui3dWindow, new Byte[] { 0xFF });
PS3.Extension.WriteBytes(Shader + HudStruct.color, new Byte[] { (Byte)r, (Byte)g, (Byte)b, (Byte)a });
return Shader;
}
public static uint HudElem_Alloc()
{
for (uint i = 40; i < 1024; i++)
{
uint Index = HudStruct.G_HudElems + (i * HudStruct.IndexSize);
if (PS3.Extension.ReadByte(Index + HudStruct.type) == 0)
{
PS3.Extension.WriteBytes(Index, new Byte[0x88]);
return Index;
}
}
return 0;
}
public static void DestroyElement(uint Element)
{
PS3.SetMemory(Element, new byte[HudStruct.IndexSize]);
}
}

//Buttons Monitoring
//==================

public static class Buttons
{
public static Int32
L1 = 1048704,
L2 = 72704,
L3 = 1074003968,
R1 = -2147483648,
R2 = 131072,
R3 = 536870912,
Square = 67108864,
Cross = 2104320,
Crouch = 4194304,
Prone = 8388608,
Triangle = 8;
}
public static bool ButtonPressed(int client, int Button)
{
if (Convert.ToInt32(PS3.Extension.ReadInt32(0x11007E8 + ((uint)client * 0x1D30))) == Button)
return true;
else return false;
}

//Addresses
//=========

class Addresses
{
public static uint
G_entityZM = 0xFA805C,
G_entitySizeZM = 0x34C,
G_clientZM = 0x010fed78,
G_clientSizeZM = 0x1D30;
}

//Functions
//=========

public static string GetPlayerNameForMenu(Int32 clientIndex)
{
String Name = PS3.Extension.ReadString(0x011008B8 + ((uint)clientIndex * 0x1d30));
if (Name == "")
return "Not Connected";
else
return Name;
}

public string GetMap()
{
return PS3.Extension.ReadString(0x0138E1BCool Man (aka Tustin);
}

public int getMapMaterialWhiteShader()
{
string map = GetMap();
if (map == "zombie_theater")
{
return 18;
}
if (map == "zombie_pentagon")
{
return 17;
}
if (map == "zombie_cod5_prototype")
{
return 16;
}
if (map == "zombie_asylum")
{
return 16;
}
if (map == "zombie_swamp")
{
return 16;
}
if (map == "zombie_cod5_factory")
{
return 16;
}
if (map == "zombie_cosmodrome")
{
return 16;
}
if (map == "zombie_coast")
{
return 19;
}
if (map == "zombie_temple")
{
return 17;
}
if (map == "zombie_paris")
{
return 16;
}
else
{
return 0;
}
}

public int getMapMaterialBlackShader()
{
string map = GetMap();
if (map == "zombie_theater")
{
return 11;
}
if (map == "zombie_pentagon")
{
return 10;
}
if (map == "zombie_cod5_prototype")
{
return 9;
}
if (map == "zombie_asylum")
{
return 9;
}
if (map == "zombie_swamp")
{
return 9;
}
if (map == "zombie_cod5_factory")
{
return 9;
}
if (map == "zombie_cosmodrome")
{
return 9;
}
if (map == "zombie_coast")
{
return 12;
}
if (map == "zombie_temple")
{
return 10;
}
if (map == "zombie_paris")
{
return 9;
}
else
{
return 0;
}
}

public static int GetHost()
{
string Host = PS3.Extension.ReadString(0x01C33DB0);
int i = 0;
if (Host == "")
{
i = 0;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (0 * 0x1d30)))
{
i = 0;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (1 * 0x1d30)))
{
i = 1;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (2 * 0x1d30)))
{
i = 2;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (3 * 0x1d30)))
{
i = 3;
}
return i;
}

public static void SV_GameSendServerCommand(int client, string command)
{
RPC.Call(0x003C33A8, client, 1, command);
}


Check Out My New Channel--> [ You must login or register to view this content. ]


you beat me to it haha awesome work dawg
really good work

The following user thanked -JM- for this useful post:

CrEaTiiOn_420
10-13-2014, 06:05 PM #3
CrEaTiiOn_420
Can’t trickshot me!
Originally posted by JM
you beat me to it haha awesome work dawg
really good work


thank you <3 <3
10-14-2014, 10:11 AM #4
makeabce
I defeated!
Originally posted by 420 View Post
hey guys im just releasing a RPC that i have made for BO1 that allows you to create a stable menu for Multiplayer and Zombies and i included alot of functions like detect map and shit like that so have fun and if you make any menu's etc. just leave credit <3


    
//RPC By: CrEaTiiOn_420
//===

public class RPC
{
public static UInt32 function_address = 0x6E34E0; //MP = 0x7A21E0 || ZM = 0x6E34E0

public static void Enable_RPC()
{
PS3.SetMemory(function_address, new byte[] { 0x4e, 0x80, 0, 0x20 });
System.Threading.Thread.Sleep(20);
byte[] memory = new byte[] {
0x7c, 8, 2, 0xa6, 0xf8, 1, 0, 0x80, 60, 0x60, 0x10, 5, 0x81, 0x83, 0, 0x4c,
0x2c, 12, 0, 0, 0x41, 130, 0, 100, 0x80, 0x83, 0, 4, 0x80, 0xa3, 0, 8,
0x80, 0xc3, 0, 12, 0x80, 0xe3, 0, 0x10, 0x81, 3, 0, 20, 0x81, 0x23, 0, 0x18,
0x81, 0x43, 0, 0x1c, 0x81, 0x63, 0, 0x20, 0xc0, 0x23, 0, 0x24, 0xc0, 0x43, 0, 40,
0xc0, 0x63, 0, 0x2c, 0xc0, 0x83, 0, 0x30, 0xc0, 0xa3, 0, 0x34, 0xc0, 0xc3, 0, 0x38,
0xc0, 0xe3, 0, 60, 0xc1, 3, 0, 0x40, 0xc1, 0x23, 0, 0x48, 0x80, 0x63, 0, 0,
0x7d, 0x89, 3, 0xa6, 0x4e, 0x80, 4, 0x21, 60, 0x80, 0x10, 5, 0x38, 160, 0, 0,
0x90, 0xa4, 0, 0x4c, 0x90, 100, 0, 80, 0xe8, 1, 0, 0x80, 0x7c, 8, 3, 0xa6,
0x38, 0x21, 0, 0x70, 0x4e, 0x80, 0, 0x20
};
PS3.SetMemory(function_address + 4, memory);
PS3.SetMemory(0x10050000, new byte[0x2854]);
PS3.SetMemory(function_address, new byte[] { 0xf8, 0x21, 0xff, 0x91 });
}

public static uint Call(uint func_address, params object[] parameters)
{
int length = parameters.Length;
uint num2 = 0;
for (uint i = 0; i < length; i++)
{
if (parameters[i] is int)
{
byte[] array = BitConverter.GetBytes((int)parameters[i]);
Array.Reverse(array);
PS3.SetMemory(0x10050000 + ((i + num2) * 4), array);
}
else if (parameters[i] is uint)
{
byte[] buffer2 = BitConverter.GetBytes((uint)parameters[i]);
Array.Reverse(buffer2);
PS3.SetMemory(0x10050000 + ((i + num2) * 4), buffer2);
}
else if (parameters[i] is string)
{
byte[] buffer3 = Encoding.UTF8.GetBytes(Convert.ToString(parameters[i]) + "\0");
PS3.SetMemory(0x10050054 + (i * 0x400), buffer3);
uint num4 = 0x10050054 + (i * 0x400);
byte[] buffer4 = BitConverter.GetBytes(num4);
Array.Reverse(buffer4);
PS3.SetMemory(0x10050000 + ((i + num2) * 4), buffer4);
}
else if (parameters[i] is float)
{
num2++;
byte[] buffer5 = BitConverter.GetBytes((float)parameters[i]);
Array.Reverse(buffer5);
PS3.SetMemory(0x10050024 + ((num2 - 1) * 4), buffer5);
}
}
byte[] bytes = BitConverter.GetBytes(func_address);
Array.Reverse(bytes);
PS3.SetMemory(0x1005004c, bytes);
System.Threading.Thread.Sleep(20);
byte[] memory = new byte[4];
PS3.GetMemoryR(0x10050050, ref memory);
Array.Reverse(memory);
return BitConverter.ToUInt32(memory, 0);
}
}

//Hud Elements
//============

public class Huds
{
public class HudStruct
{
public static uint
G_HudElems = 0x00EE7B84,
IndexSize = 0x84,
x = 0x0,
y = 0x4,
z = 0x8,
fontScaleStartTime = 0x14,
fontScale = 0xC,
entNum = 0x18,
color = 0x18,
teamNum = 0x1C,
fromColor = 0x1C,
icon = 0x20,
fadeStartTime = 0x20,
scaleStartTime = 0x24,
fromX = 0x28,
fromY = 0x2C,
moveStartTime = 0x30,
time = 0x34,
duration = 0x38,
value = 0x3C,
sort = 0x40,
glowColor = 0x44,
fxBirthTime = 0x48,
targetEntNum = 0x4C,
fontScaleTime = 0x4E,
fadeTime = 0x50,
label = 0x52,
width = 0x54,
height = 0x56,
fromWidth = 0x58,
fromHeight = 0x5A,
scaleTime = 0x5C,
moveTime = 0x5E,
text = 0x60,
fxDecayStartTime = 0x64,
fxDecayDuration = 0x66,
fxRedactDecayStartTime = 0x68,
fxRedactDecayDuration = 0x6A,
flags = 0x6C,
type = 0x6E,
font = 0x6F,
alignOrg = 0x70,
alignScreen = 0x71,
materialIndex = 0x72,
fxLetterTime = 0x62,
offscreenMaterialIdx = 0x73,
fromAlignOrg = 0x74,
fromAlignScreen = 0x75,
soundID = 0x76,
ui3dWindow = 0x77,
clientNum = 0x78,
team = 0x7C,
archived = 0x80;
}
public static short G_LocalizedStringIndex(string Text)
{
return (short)RPC.Call(0x00304BA0, Text);
}
public static void ChangeText(UInt32 elemIndex, String Text)
{
PS3.Extension.WriteInt16(elemIndex + HudStruct.text, G_LocalizedStringIndex(Text));
}
public static uint SetText(int clientIndex, string TextString, int Font, Single FontSize, Single X, Single Y, uint align = 0, int r = 255, int g = 255, int b = 255, int a = 255, int glowr = 255, int glowg = 255, int glowb = 255, int glowa = 0)
{
uint text = HudElem_Alloc();
PS3.Extension.WriteByte(text + HudStruct.type, 1);
Funcs.WriteSingle(text + HudStruct.fontScale, FontSize);
PS3.Extension.WriteByte(text + HudStruct.font, Convert.ToByte(Font));
if (align != 0)
{ PS3.Extension.WriteByte(text + HudStruct.alignOrg, 5); PS3.Extension.WriteByte(text + HudStruct.alignScreen, Convert.ToByte(align)); }
else
{ Funcs.WriteSingle(text + HudStruct.x, X); Funcs.WriteSingle(text + HudStruct.y, Y); }
PS3.Extension.WriteInt32(text + HudStruct.clientNum, clientIndex);
PS3.Extension.WriteInt16(text + HudStruct.text, G_LocalizedStringIndex(TextString));
PS3.Extension.WriteBytes(text + HudStruct.color, new Byte[] { (Byte)r, (Byte)g, (Byte)b, (Byte)a });
PS3.Extension.WriteBytes(text + HudStruct.glowColor, new Byte[] { (Byte)glowr, (Byte)glowg, (Byte)glowb, (Byte)glowa });
PS3.Extension.WriteByte(text + HudStruct.ui3dWindow, 0xFF);
return text;
}
public static uint SetShader(int clientIndex, int Material, short Width, short Height, Single X, Single Y, uint align = 0, int r = 255, int g = 255, int b = 255, int a = 255)
{
uint Shader = HudElem_Alloc();
PS3.Extension.WriteByte(Shader + HudStruct.type, 4);
PS3.Extension.WriteByte(Shader + HudStruct.materialIndex, Convert.ToByte(Material));
PS3.Extension.WriteInt16(Shader + HudStruct.height, Height);
PS3.Extension.WriteInt16(Shader + HudStruct.width, Width);
if (align != 0)
{ PS3.Extension.WriteByte(Shader + HudStruct.alignOrg, 5); PS3.Extension.WriteByte(Shader + HudStruct.alignScreen, Convert.ToByte(align)); }
else
{ Funcs.WriteSingle(Shader + HudStruct.x, X); Funcs.WriteSingle(Shader + HudStruct.y, Y); }
PS3.Extension.WriteInt32(Shader + HudStruct.clientNum, clientIndex);
PS3.SetMemory(Shader + HudStruct.ui3dWindow, new Byte[] { 0xFF });
PS3.Extension.WriteBytes(Shader + HudStruct.color, new Byte[] { (Byte)r, (Byte)g, (Byte)b, (Byte)a });
return Shader;
}
public static uint HudElem_Alloc()
{
for (uint i = 40; i < 1024; i++)
{
uint Index = HudStruct.G_HudElems + (i * HudStruct.IndexSize);
if (PS3.Extension.ReadByte(Index + HudStruct.type) == 0)
{
PS3.Extension.WriteBytes(Index, new Byte[0x88]);
return Index;
}
}
return 0;
}
public static void DestroyElement(uint Element)
{
PS3.SetMemory(Element, new byte[HudStruct.IndexSize]);
}
}

//Buttons Monitoring
//==================

public static class Buttons
{
public static Int32
L1 = 1048704,
L2 = 72704,
L3 = 1074003968,
R1 = -2147483648,
R2 = 131072,
R3 = 536870912,
Square = 67108864,
Cross = 2104320,
Crouch = 4194304,
Prone = 8388608,
Triangle = 8;
}
public static bool ButtonPressed(int client, int Button)
{
if (Convert.ToInt32(PS3.Extension.ReadInt32(0x11007E8 + ((uint)client * 0x1D30))) == Button)
return true;
else return false;
}

//Addresses
//=========

class Addresses
{
public static uint
G_entityZM = 0xFA805C,
G_entitySizeZM = 0x34C,
G_clientZM = 0x010fed78,
G_clientSizeZM = 0x1D30;
}

//Functions
//=========

public static string GetPlayerNameForMenu(Int32 clientIndex)
{
String Name = PS3.Extension.ReadString(0x011008B8 + ((uint)clientIndex * 0x1d30));
if (Name == "")
return "Not Connected";
else
return Name;
}

public string GetMap()
{
return PS3.Extension.ReadString(0x0138E1BCool Man (aka Tustin);
}

public int getMapMaterialWhiteShader()
{
string map = GetMap();
if (map == "zombie_theater")
{
return 18;
}
if (map == "zombie_pentagon")
{
return 17;
}
if (map == "zombie_cod5_prototype")
{
return 16;
}
if (map == "zombie_asylum")
{
return 16;
}
if (map == "zombie_swamp")
{
return 16;
}
if (map == "zombie_cod5_factory")
{
return 16;
}
if (map == "zombie_cosmodrome")
{
return 16;
}
if (map == "zombie_coast")
{
return 19;
}
if (map == "zombie_temple")
{
return 17;
}
if (map == "zombie_paris")
{
return 16;
}
else
{
return 0;
}
}

public int getMapMaterialBlackShader()
{
string map = GetMap();
if (map == "zombie_theater")
{
return 11;
}
if (map == "zombie_pentagon")
{
return 10;
}
if (map == "zombie_cod5_prototype")
{
return 9;
}
if (map == "zombie_asylum")
{
return 9;
}
if (map == "zombie_swamp")
{
return 9;
}
if (map == "zombie_cod5_factory")
{
return 9;
}
if (map == "zombie_cosmodrome")
{
return 9;
}
if (map == "zombie_coast")
{
return 12;
}
if (map == "zombie_temple")
{
return 10;
}
if (map == "zombie_paris")
{
return 9;
}
else
{
return 0;
}
}

public static int GetHost()
{
string Host = PS3.Extension.ReadString(0x01C33DB0);
int i = 0;
if (Host == "")
{
i = 0;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (0 * 0x1d30)))
{
i = 0;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (1 * 0x1d30)))
{
i = 1;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (2 * 0x1d30)))
{
i = 2;
}
else if (Host == PS3.Extension.ReadString(0x011008B8 + (3 * 0x1d30)))
{
i = 3;
}
return i;
}

public static void SV_GameSendServerCommand(int client, string command)
{
RPC.Call(0x003C33A8, client, 1, command);
}



You must login or register to view this content.

Check Out My New Channel--> [ You must login or register to view this content. ]


Are you kidding me? None of this is yours. I sended the all these to you! You said you won't release this.
You must login or register to view this content.

All Credits goes to DexModderFTW(RPC,Some addresses),Shark(HUDS, GetPlayerNameForMenu function),John_dat_goon(porting shark's huds to bo1) and me, for GetMap and material functions.

The following 4 users say thank you to makeabce for this useful post:

CoolAssModder, FusionIsDaName, John, xMrJR
10-14-2014, 07:55 PM #5
-JM-
Space Ninja
Originally posted by makeabce View Post
Are you kidding me? None of this is yours. I sended the all these to you! You said you won't release this.
You must login or register to view this content.

All Credits goes to DexModderFTW(RPC,Some addresses),Shark(HUDS, GetPlayerNameForMenu function),John_dat_goon(porting shark's huds to bo1) and me, for GetMap and material functions.

wait who's in DMT ?
10-23-2014, 11:56 AM #6
CustomHosting
Are you high?
anyone can help me on how to make this into a menu base/sprx/rpc menu such as bo2? i want to learn how to make a menu this game really bad Smile
10-23-2014, 12:43 PM #7
Originally posted by CustomHosting View Post
anyone can help me on how to make this into a menu base/sprx/rpc menu such as bo2? i want to learn how to make a menu this game really bad Smile


Why you can't spell and you're probably 12 it's hard enough for the people that actually make things unless you're leaching which I can see you doing...
10-24-2014, 03:53 AM #8
CustomHosting
Are you high?
Originally posted by 1337Forensics View Post
Why you can't spell and you're probably 12 it's hard enough for the people that actually make things unless you're leaching which I can see you doing...

i thought i would get a dick like you, please fuck off as no one cares if you dont put useful information and no you cant leech shit if you learn from it dumbass.
10-24-2014, 11:44 AM #9
Originally posted by CustomHosting View Post
i thought i would get a dick like you, please fuck off as no one cares if you dont put useful information and no you cant leech shit if you learn from it dumbass.


So you admit to leeching? Cause if you learn from it or not it's not right to get someone's code copy and paste it change it a little bit then say its yours
10-25-2014, 08:18 AM #10
CustomHosting
Are you high?
Originally posted by 1337Forensics View Post
So you admit to leeching? Cause if you learn from it or not it's not right to get someone's code copy and paste it change it a little bit then say its yours


wtf do you even know what leeching is? i never said i did leech you idiot leeching and learning shit is totally different, learning something is observing what you want to know and doing better at that subject and understanding it, leeching is just stealing someone shit, if that was the case then teachers of schools had been "leeching" other peoples work for years.

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo