Adresses et Offsets BO3 1.03 + mise à jour toutes versions

Statut
N'est pas ouverte pour d'autres réponses.
J'utilise se RPC, il fonctionne très bien:
Pour Enable le RPC: Init();

Code:
public static uint function_address = Offsets.R_SetFrameFog;

        public static int Init()
        {
            if (function_address == 0) return -1;
            Enable_RPC();
            return 0;
        }

        public static void Enable_RPC()
        {
            PS3.SetMemory(function_address, 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(function_address + 0x4, func);
            PS3.SetMemory(0x10050000, new byte[0x2854]);
            PS3.SetMemory(function_address, new byte[] { 0xF8, 0x21, 0xFF, 0x91 });
        }

        public static int Call(uint func_address, params object[] parameters)
        {
            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.Extension.ReadBytes(0x10050050, 4);
            Array.Reverse(ret);
            return BitConverter.ToInt32(ret, 0);
        }
je dois louper quelque chose, je vais comparer avec le tien
 
Voilà, faire un CLIENT REFRESH ect, checkbox gmod, mun ect ^^


Croit moi tu développera de très bonne chose après,c'est pas pour faire chier mais si tout le monde lirait un cours sur ocr le modding serait plus beau
 
Byte[] Memory = new Byte[0x7FFFFFF];
Int32 Start = 0;
for(UInt32 Address = 0x388FE94F; Address < 0x389009A9; Address++)
{
Start += 1;
Memory[Start] = 0xFF;//Write 0xFF To Memory
PS3.Extension.WriteByte(Address, Memory[Start]);//Write Byte To Memory
}
Cette fonction peut marcherai instantanément si vous codder comme ça : (j'ai du faire un pastebin y avais trop de caractères pour le forum :crazy:)

Oui je sais c'est long :troll:, mais c'est instantané :p.
 
Cette fonction peut marcherai instantanément si vous codder comme ça : (j'ai du faire un pastebin y avais trop de caractères pour le forum :crazy:)

Oui je sais c'est long :troll:, mais c'est instantané :p.
J'ai pas réelement compris de quelle function tu parlais (d)
edit : ah my bad du unlock all j'avais pas vu,mais c'est moche de fairecomme ça
 
J'utilise se RPC, il fonctionne très bien:
Pour Enable le RPC: Init();

Code:
public static uint function_address = Offsets.R_SetFrameFog;

        public static int Init()
        {
            if (function_address == 0) return -1;
            Enable_RPC();
            return 0;
        }

        public static void Enable_RPC()
        {
            PS3.SetMemory(function_address, 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(function_address + 0x4, func);
            PS3.SetMemory(0x10050000, new byte[0x2854]);
            PS3.SetMemory(function_address, new byte[] { 0xF8, 0x21, 0xFF, 0x91 });
        }

        public static int Call(uint func_address, params object[] parameters)
        {
            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.Extension.ReadBytes(0x10050050, 4);
            Array.Reverse(ret);
            return BitConverter.ToInt32(ret, 0);
        }
je dois louper quelque chose, je vais comparer avec le tien
J'utilise se RPC, il fonctionne très bien:
Pour Enable le RPC: Init();

Code:
public static uint function_address = Offsets.R_SetFrameFog;

        public static int Init()
        {
            if (function_address == 0) return -1;
            Enable_RPC();
            return 0;
        }

        public static void Enable_RPC()
        {
            PS3.SetMemory(function_address, 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(function_address + 0x4, func);
            PS3.SetMemory(0x10050000, new byte[0x2854]);
            PS3.SetMemory(function_address, new byte[] { 0xF8, 0x21, 0xFF, 0x91 });
        }

        public static int Call(uint func_address, params object[] parameters)
        {
            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.Extension.ReadBytes(0x10050050, 4);
            Array.Reverse(ret);
            return BitConverter.ToInt32(ret, 0);
        }
j'ai essayé avec ton RPC, je n'ai aucune fonction qui fonctionne, je ne sais pas où je merde
 
J'ai pas réelement compris de quelle function tu parlais (d)
edit : ah my bad du unlock all j'avais pas vu,mais c'est moche de fairecomme ça
Sur GTA dans le French Tool le no water contient à la louche autant de bytes, à la base ont avais fait un codage similaire mais pas exactement, ont avais utiliser un while. Seul hic comme sont codage ça prenais 2 à 3 minutes, relou.... Du coup en fesant comme ça c'est instantané :p. Puis comme ce codage fait ramer VS, ont l'a mis dans une class à part, comme ça ça nous gêne pas :ok:.

Sa c'est que sa sort d'un lib mod
Non ça sort de moi :crazy:.
 
connaissant un minimum @Popomo (pas personnelement par ces releases) je pense pas qu'il aurait utilisé un lib mod pour un offsets déjà release,thx
Quand sa sort comme sa avec des 0xff x10000 je pence pas que se soit manuellement que se soit fait
 
Cette fonction peut marcherai instantanément si vous codder comme ça : (j'ai du faire un pastebin y avais trop de caractères pour le forum :crazy:)

Oui je sais c'est long :troll:, mais c'est instantané :p.
merci, je vais essayé de suite ;)
 
Quand sa sort comme sa avec des 0xff x10000 je pence pas que se soit manuellement que se soit fait
Ou alors il peut dev une app qui lui met autant de FF qu'il veut.

Sur GTA dans le French Tool le no water contient à la louche autant de bytes, à la base ont avais fait un codage similaire mais pas exactement, ont avais utiliser un while. Seul hic comme sont codage ça prenais 2 à 3 minutes, relou.... Du coup en fesant comme ça c'est instantané :p. Puis comme ce codage fait ramer VS, ont l'a mis dans une class à part, comme ça ça nous gêne pas :ok:.


Non ça sort de moi :crazy:.

c'est bizzare le c# (d)
 
je dois louper quelque chose, je vais comparer avec le tien

j'ai essayé avec ton RPC, je n'ai aucune fonction qui fonctionne, je ne sais pas où je merde
C'est peut être t'es fonction qui sont mauvaise ;)
 
Quand sa sort comme sa avec des 0xff x10000 je pence pas que se soit manuellement que se soit fait
Et bien cherche sur le web où j'aurais pu C/C ça alors, à part sur le pastebin que je vient de faire tu le trouvera pas :crazy:. Bref crois ce que tu veut.
Je te fait un petit cours rapido pour que tu capte :p :

Adresses de départ : 0x388FE94F, que j'ai converti en décimal à l'aide de , qui donne donc : 948955471.
Adresses de fin : 0x389009A9, que j'ai converti en décimal à l'aide de , qui donne donc : 948963753.

Ensuite tu fait 948963753-948955471 = 8282.

Il faut alors 8282 fois 0xFF :tchuss:. Et avec un logiciel je rentre "0xFF, " et je lui dit de me le coller 8282 fois, voilà vite fait bien fait ;).


Ou alors il peut dev une app qui lui met autant de FF qu'il veut.
c'est bizzare le c# (d)
Oui y à des outils qui aide bien.
 
Cette fonction peut marcherai instantanément si vous codder comme ça : (j'ai du faire un pastebin y avais trop de caractères pour le forum :crazy:)

Oui je sais c'est long :troll:, mais c'est instantané :p.
je viens de faire une petite partie, mon arme s'est remis niveau 2, on a tjs le même soucis, les armes ne restent pas au max. Par contre, je confirme ce que tu dis, dès que tu actives l'Unlock all armes avec ton codage cela est instantané :ok:
 
Statut
N'est pas ouverte pour d'autres réponses.
Retour
Haut