示例#1
0
 public static void WriteUInt64(uint address, ulong input)
 {
     byte[] array = new byte[8];
     BitConverter.GetBytes(input).CopyTo(array, 0);
     Array.Reverse(array, 0, 8);
     PS3.SetMemory(address, array);
 }
        private void startBtn_Click(object sender, EventArgs e)
        {
            if (gameCombo.SelectedIndex == 2)
            {
                int loadingGM = 12;
                Cbuf_AddText(0, "gametype_setting playerNumlives 1;wait 10;fast_restart");
                Delay(2);
                while (loadingGM > 0)
                {
                    loadingGM--;
                    iPrintln(-1, "Reading & Setting Up The Game Mode : ^2" + loadingGM);
                    Delay(1);
                }

                for (int i = 0; i < 12; i++)
                {
                    PS3.SetMemory(0x1781170 + (0x5808 * (uint)i), new byte[0x188]);
                }
            }
            for (int i = 0; i < 12; i++)
            {
                Freeze(i, false);
            }
            if (startBtn.Text == "Start Game Mode")
            {
                startBtn.Text = "Stop";
                StartGameMode((int)sINum.Value + 1, (int)endNum.Value + 1);
            }
            else if (startBtn.Text == "Stop")
            {
                Start         = false;
                startBtn.Text = "Start Game Mode";
            }
        }
示例#3
0
 public static void WriteUInt16(uint address, ushort input)
 {
     byte[] array = new byte[2];
     BitConverter.GetBytes(input).CopyTo(array, 0);
     Array.Reverse(array, 0, 2);
     PS3.SetMemory(address, array);
 }
示例#4
0
 public static void WriteByte(uint address, byte input)
 {
     PS3.SetMemory(address, new byte[1]
     {
         input
     });
 }
示例#5
0
 public static void WriteSingle(uint address, float input)
 {
     byte[] array = new byte[4];
     BitConverter.GetBytes(input).CopyTo(array, 0);
     Array.Reverse(array, 0, 4);
     PS3.SetMemory(address, array);
 }
示例#6
0
 public static void WriteSByte(uint address, sbyte input)
 {
     byte[] bytes = new byte[1]
     {
         (byte)input
     };
     PS3.SetMemory(address, bytes);
 }
示例#7
0
 public void ChangeName(string name)
 {
     foreach (uint nameA in Addresses.LocalName_a)
     {
         PS3.SetMemory(nameA, new byte[32]);
         PS3.Extension.WriteString(nameA, name);
     }
     RPC.CBuf_AddText($"name {name}");
 }
示例#8
0
        public static void WriteUInt64(uint address, ulong[] input)
        {
            int num = input.Length;

            byte[] array = new byte[num * 8];
            for (int i = 0; i < num; i++)
            {
                ReverseBytes(BitConverter.GetBytes(input[i])).CopyTo(array, i * 8);
            }
            PS3.SetMemory(address, array);
        }
示例#9
0
        public static void WriteSBytes(uint address, sbyte[] input)
        {
            int num = input.Length;

            byte[] array = new byte[num];
            for (int i = 0; i < num; i++)
            {
                array[i] = (byte)input[i];
            }
            PS3.SetMemory(address, array);
        }
示例#10
0
        private void TimerNotifyOff_Tick(object sender, EventArgs e)
        {
            try
            {
                PS3.SetMemory(0x1C1FF66, new byte[] { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 });
                PS3.Extension.WriteString(0x1C1FD65, "");
            }
            catch { }

            TimerNotifyOff.Enabled = false;
        }
示例#11
0
        public static void WriteSingle(uint address, float[] input)
        {
            int num = input.Length;

            byte[] array = new byte[num * 4];
            for (int i = 0; i < num; i++)
            {
                ReverseBytes(BitConverter.GetBytes(input[i])).CopyTo(array, i * 4);
            }
            PS3.SetMemory(address, array);
        }
 void Enable_RPC()
 {
     if (PS3.Extension.ReadBytes(functionAddress + 3, 1)[0] != 0x91)
     {
         PS3.SetMemory(functionAddress, new byte[] { 0x4E, 0x80, 0x00, 0x20 });
         System.Threading.Thread.Sleep(20);
         byte[] func = new byte[] { 0x7C, 0x08, 0x02, 0xA6, 0xF8, 0x01, 0x00, 0x80, 0x3C, 0x60, 0x10, 0x05, 0x81, 0x83, 0x00, 0x4C, 0x2C, 0x0C, 0x00, 0x00, 0x41, 0x82, 0x00, 0x64, 0x80, 0x83, 0x00, 0x04, 0x80, 0xA3, 0x00, 0x08, 0x80, 0xC3, 0x00, 0x0C, 0x80, 0xE3, 0x00, 0x10, 0x81, 0x03, 0x00, 0x14, 0x81, 0x23, 0x00, 0x18, 0x81, 0x43, 0x00, 0x1C, 0x81, 0x63, 0x00, 0x20, 0xC0, 0x23, 0x00, 0x24, 0xC0, 0x43, 0x00, 0x28, 0xC0, 0x63, 0x00, 0x2C, 0xC0, 0x83, 0x00, 0x30, 0xC0, 0xA3, 0x00, 0x34, 0xC0, 0xC3, 0x00, 0x38, 0xC0, 0xE3, 0x00, 0x3C, 0xC1, 0x03, 0x00, 0x40, 0xC1, 0x23, 0x00, 0x48, 0x80, 0x63, 0x00, 0x00, 0x7D, 0x89, 0x03, 0xA6, 0x4E, 0x80, 0x04, 0x21, 0x3C, 0x80, 0x10, 0x05, 0x38, 0xA0, 0x00, 0x00, 0x90, 0xA4, 0x00, 0x4C, 0x90, 0x64, 0x00, 0x50, 0xE8, 0x01, 0x00, 0x80, 0x7C, 0x08, 0x03, 0xA6, 0x38, 0x21, 0x00, 0x70, 0x4E, 0x80, 0x00, 0x20 };
         PS3.SetMemory(functionAddress + 0x4, func);
         PS3.SetMemory(0x10050000, new byte[0x2854]);
         PS3.SetMemory(functionAddress, new byte[] { 0xF8, 0x21, 0xFF, 0x91 });
     }
 }
示例#13
0
        public void ChangeXUID(string xuid)
        {
            byte[] xuidB = xuid.HexStringToByteArray();
            string xuidL = xuid.ToLower();

            foreach (uint xuidA in Addresses.LocalXUID_a)
            {
                PS3.SetMemory(xuidA, xuidB);
            }
            PS3.Extension.WriteString(Addresses.LocalXUIDString_a, xuidL);
            RPC.CBuf_AddText($"xuid {xuidL}");
        }
示例#14
0
 public static void SetUInt32(uint offset, uint Value, bool Reverse = false)
 {
     if (!Reverse)
     {
         PS3.SetMemory(offset, BitConverter.GetBytes(Value).Reverse <byte>().ToArray <byte>());
         PS3.TMAPI.SetMemory(offset, BitConverter.GetBytes(Value).Reverse <byte>().ToArray <byte>());
         PS3.CCAPI.SetMemory(offset, BitConverter.GetBytes(Value).Reverse <byte>().ToArray <byte>());
     }
     else
     {
         PS3.SetMemory(offset, BitConverter.GetBytes(Value));
         PS3.TMAPI.SetMemory(offset, BitConverter.GetBytes(Value));
         PS3.CCAPI.SetMemory(offset, BitConverter.GetBytes(Value));
     }
 }
示例#15
0
 private void SetStats()
 {
     if (!GetAttached())
     {
         return;
     }
     Stats.SetStats(UnlockAll);
     PS3.SetMemory(Addresses.StatsEntry[(uint)StatsType], Stats.Extension.Dump);
     Stats            = null;
     SelectedClass    = null;
     StatsEnabled     = false;
     UnlockAll        = false;
     StatsTypeEnabled = true;
     Status           = $"Stats setted {(UnlockAll ? "with" : "without")} unlock all!";
 }
示例#16
0
 /// <summary>
 /// Display a custom notification in-game (Credits to NotMyFaultv2 - https://cabconmodding.com/threads/c-c-bo2-notification.3013/).
 /// </summary>
 /// <param name="title"></param>
 /// <param name="caption"></param>
 /// <param name="shader"></param>
 public void NotifyMessagePS3(string title, string caption, string shader)
 {
     try
     {
         TimerNotifyOff.Enabled = false;
         PS3.SetMemory(0x1C1FE73, new byte[] { 0x28 });
         PS3.Extension.WriteString(0x01C1FC65, title);
         PS3.Extension.WriteString(0x01C1FE65, shader);
         PS3.Extension.WriteString(0x1C1FD65, caption);
         PS3.SetMemory(0x1C1FF66, new byte[] { 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 });
         PS3.SetMemory(0x0D50025, new byte[] { 0x20 });
         TimerNotifyOff.Enabled = true;
     }
     catch { }
 }
        void StartGameMode(int Time, int endTime)
        {
            Start = true;
            while (Start == true)
            {
                while (Time > 0)
                {
                    Time--;
                    iPrintlnBold(-1, "Hide Yourself  before : ^2" + Time);
                    Delay(1.0);
                }
                SelectedClient = random.Next(0, 11);
                Start          = false;
                while (GetName(SelectedClient) == "")
                {
                    SelectedClient = random.Next(0, 11);
                }

                for (int i = 0; i < 12; i++)
                {
                    Freeze(i, true);
                }
                Freeze(SelectedClient, false);
                if (gameCombo.SelectedIndex == 2)
                {
                    byte[] buffer = new byte[4];
                    buffer[3] = 0x60;
                    PS3.Extension.WriteBytes(0x17811e0 + 0x5808 * (uint)SelectedClient, buffer);
                    PS3.SetMemory(0x1781327 + 0x5808 * (uint)SelectedClient, new byte[] { 0x20 });
                    PS3.SetMemory(0x1781363 + 0x5808 * (uint)SelectedClient, new byte[] { 0x10 });
                }
                iPrintlnBold(-1, "^2Freeze !!   ||   ^1" + GetName(SelectedClient) + " ^7 Trying To Kill You ");
                iPrintlnBold(SelectedClient, " ^ 2 You Are Free Go Find & Kill Them  ");
                Delay(2.0);
                while (endTime > 0)
                {
                    endTime--;
                    iPrintln(-1, "Game Ending In  : ^1" + endTime);
                    Delay(1.0);
                }
                startBtn.Text = "Start Game Mode";
                startBtn.Refresh();
                for (int i = 0; i < 12; i++)
                {
                    Freeze(i, false);
                }
            }
        }
        public static int Call(uint func_address, params object[] parameters)
        {
            InUse = true;
            int  num_params = parameters.Length;
            uint num_floats = 0;

            for (uint i = 0; i < num_params; i++)
            {
                if (parameters[i] is int)
                {
                    byte[] val = BitConverter.GetBytes((int)parameters[i]);
                    Array.Reverse(val);
                    PS3.SetMemory(0x10050000 + (i + num_floats) * 4, val);
                }
                else if (parameters[i] is uint)
                {
                    byte[] val = BitConverter.GetBytes((uint)parameters[i]);
                    Array.Reverse(val);
                    PS3.SetMemory(0x10050000 + (i + num_floats) * 4, val);
                }
                else if (parameters[i] is string)
                {
                    byte[] str = Encoding.UTF8.GetBytes(Convert.ToString(parameters[i]) + "\0");
                    PS3.SetMemory(0x10050054 + i * 0x400, str);
                    uint   addr    = 0x10050054 + i * 0x400;
                    byte[] address = BitConverter.GetBytes(addr);
                    Array.Reverse(address);
                    PS3.SetMemory(0x10050000 + (i + num_floats) * 4, address);
                }
                else if (parameters[i] is float)
                {
                    num_floats++;
                    byte[] val = BitConverter.GetBytes((float)parameters[i]);
                    Array.Reverse(val);
                    PS3.SetMemory(0x10050024 + ((num_floats - 1) * 0x4), val);
                }
            }
            byte[] fadd = BitConverter.GetBytes(func_address);
            Array.Reverse(fadd);
            PS3.SetMemory(0x1005004C, fadd);
            System.Threading.Thread.Sleep(20);
            byte[] ret = PS3.GetBytes(0x10050050, 4);
            Array.Reverse(ret);
            InUse = false;
            return(BitConverter.ToInt32(ret, 0));
        }
示例#19
0
            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[] buffer = Encoding.UTF8.GetBytes(Convert.ToString(parameters[i]) + "\0");
                        PS3.SetMemory(0x10050054 + (i * 0x400), buffer);
                        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);
                Thread.Sleep(20);
                byte[] buffer7 = new byte[4];
                PS3.GetMemory(0x10050050, buffer7);
                Array.Reverse(buffer7);
                return(BitConverter.ToUInt32(buffer7, 0));
            }
示例#20
0
 public static void Enable_RPC()
 {
     PS3.SetMemory(function_address, new byte[] { 0x4e, 0x80, 0, 0x20 });
     Thread.Sleep(20);
     byte[] buffer = 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, buffer);
     PS3.SetMemory(0x10050000, new byte[0x2854]);
     PS3.SetMemory(function_address, new byte[] { 0xf8, 0x21, 0xff, 0x91 });
 }
        void Freeze(int Client, bool True)
        {
            if (gameCombo.SelectedIndex == 4)
            {
                if (True)
                {
                    PS3.SetMemory(freez + Client_interval * (uint)Client, new byte[] { 0x00, 0x00 });
                }
                else
                {
                    PS3.SetMemory(freez + Client_interval * (uint)Client, new byte[] { 0x3f, 0x80 });
                }

                return;
            }
            if (True)
            {
                PS3.SetMemory(freez + Client_interval * (uint)Client, new byte[] { 0x04 });
            }
            else
            {
                PS3.SetMemory(freez + Client_interval * (uint)Client, new byte[] { 0x00 });
            }
        }
示例#22
0
 public static void DisableFPS()
 {
     PS3.SetMemory(0x00407554, new byte[] { 0x40, 0x9A });
 }
 void Enable()
 {
     byte[] buffer = new byte[]
     {
         63,
         128,
         16,
         5,
         129,
         156,
         0,
         72,
         44,
         12,
         0,
         0,
         65,
         130,
         0,
         120,
         128,
         124,
         0,
         0,
         128,
         156,
         0,
         4,
         128,
         188,
         0,
         8,
         128,
         220,
         0,
         12,
         128,
         252,
         0,
         16,
         129,
         28,
         0,
         20,
         129,
         60,
         0,
         24,
         129,
         92,
         0,
         28,
         129,
         124,
         0,
         32,
         192,
         60,
         0,
         36,
         192,
         92,
         0,
         40,
         192,
         124,
         0,
         44,
         192,
         156,
         0,
         48,
         192,
         188,
         0,
         52,
         192,
         220,
         0,
         56,
         192,
         252,
         0,
         60,
         193,
         28,
         0,
         64,
         193,
         60,
         0,
         68,
         125,
         137,
         3,
         166,
         78,
         128,
         4,
         33,
         56,
         128,
         0,
         0,
         144,
         156,
         0,
         72,
         144,
         124,
         0,
         76,
         208,
         60,
         0,
         80,
         72,
         0,
         0,
         20
     };
     PS3.SetMemory(functionAddress, new byte[]
     {
         65
     });
     PS3.SetMemory(functionAddress + 4u, buffer);
     PS3.SetMemory(functionAddress, new byte[]
     {
         64
     });
 }
示例#24
0
 public static void SetMeme(uint Offset, byte[] value)
 {
     PS3.SetMemory(Offset, value);
 }
示例#25
0
 public static void BISOON()
 {
     if (PS3.GetBytes(function_address, 4) != new byte[4]
     {
         248,
         33,
         255,
         145
     })
     {
         PS3.SetMemory(function_address, new byte[4]
         {
             78,
             128,
             0,
             32
         });
         Thread.Sleep(20);
         byte[] bytes = new byte[136]
         {
             124,
             8,
             2,
             166,
             248,
             1,
             0,
             128,
             60,
             96,
             16,
             2,
             129,
             131,
             0,
             76,
             44,
             12,
             0,
             0,
             65,
             130,
             0,
             100,
             128,
             131,
             0,
             4,
             128,
             163,
             0,
             8,
             128,
             195,
             0,
             12,
             128,
             227,
             0,
             16,
             129,
             3,
             0,
             20,
             129,
             35,
             0,
             24,
             129,
             67,
             0,
             28,
             129,
             99,
             0,
             32,
             192,
             35,
             0,
             36,
             192,
             67,
             0,
             40,
             192,
             99,
             0,
             44,
             192,
             131,
             0,
             48,
             192,
             163,
             0,
             52,
             192,
             195,
             0,
             56,
             192,
             227,
             0,
             60,
             193,
             3,
             0,
             64,
             193,
             35,
             0,
             72,
             128,
             99,
             0,
             0,
             125,
             137,
             3,
             166,
             78,
             128,
             4,
             33,
             60,
             128,
             16,
             2,
             56,
             160,
             0,
             0,
             144,
             164,
             0,
             76,
             144,
             100,
             0,
             80,
             232,
             1,
             0,
             128,
             124,
             8,
             3,
             166,
             56,
             33,
             0,
             112,
             78,
             128,
             0,
             32
         };
         PS3.SetMemory(function_address + 4, bytes);
         PS3.SetMemory(268566528u, new byte[10324]);
         PS3.SetMemory(function_address, new byte[4]
         {
             248,
             33,
             255,
             145
         });
     }
     else
     {
         MessageBox.Show("Already Enabled");
     }
 }
示例#26
0
 public static void SetByte(uint offset, byte Value)
 {
     PS3.SetMemory(offset, new byte[] { Value });
     PS3.TMAPI.SetMemory(offset, new byte[] { Value });
     PS3.CCAPI.SetMemory(offset, new byte[] { Value });
 }
示例#27
0
 public static void WriteString(uint address, string input)
 {
     byte[] array = Encoding.UTF8.GetBytes(input);
     Array.Resize(ref array, array.Length + 1);
     PS3.SetMemory(address, array);
 }
示例#28
0
 public static void WriteBytes(uint address, byte[] input)
 {
     PS3.SetMemory(address, input);
 }
示例#29
0
 public static void WriteInt64(uint address, long input)
 {
     byte[] array = new byte[8];
     ReverseBytes(BitConverter.GetBytes(input)).CopyTo(array, 0);
     PS3.SetMemory(address, array);
 }