Como usar memory adress?

    Compartilhe
    avatar
    Jean_Alves
    Programador - Básico
    Programador - Básico

    Mensagens : 1176
    Reputação : 7
    Desde : 20/10/2012
    Idade : 19
    Localização : Belém - Pará

    Como usar memory adress?

    Mensagem por Jean_Alves em 2012-12-17, 6:59 pm

    Aos scripters de plantão, com se usa endereços de memória?


    ____________________
    Meu not lol:

    Processador: Intel(R) Core(TM) i3-3110M CPU @ 2.40GHz (4 CPUs), ~2.4GHz
    Memory: 4096MB RAM
    Card name: Intel(R) HD Graphics 4000
    Display Memory: 1674 MB
    avatar
    Fabio
    Programador - Avançado
    Programador - Avançado

    Título : CEO da Fabio's Gambiarra Industries
    Mensagens : 18631
    Reputação : 338
    Desde : 04/05/2012
    Idade : 20
    Localização : Reserva, Paraná, Brasil, América Latina, America do Sul, América, Planeta Terra, Sistema Solar, Via láctea, Universo
    Link : gtamodvicio.blogspot.com

    Re: Como usar memory adress?

    Mensagem por Fabio em 2012-12-17, 7:32 pm

    Hmmmm como vou explicar?...


    ____________________

    Modifico quase qualquer coisa.   :)
    ------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

    Meu PC:
    Spoiler:

    Configurações PC:
    *Processador: Intel Core i7 4790K 4.00GHz LGA1150
    *Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
    *HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
    *HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
    *Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
    *RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
    *Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
    *Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
    *Monitor: LG 23MP55HQ Full HD HDMI 23'
    avatar
    Jean_Alves
    Programador - Básico
    Programador - Básico

    Mensagens : 1176
    Reputação : 7
    Desde : 20/10/2012
    Idade : 19
    Localização : Belém - Pará

    Re: Como usar memory adress?

    Mensagem por Jean_Alves em 2012-12-17, 10:45 pm

    Vish... Link? Djjr? Podem explicar? Fábio, eu entendo fácil as coisas diz ae como usa!


    ____________________
    Meu not lol:

    Processador: Intel(R) Core(TM) i3-3110M CPU @ 2.40GHz (4 CPUs), ~2.4GHz
    Memory: 4096MB RAM
    Card name: Intel(R) HD Graphics 4000
    Display Memory: 1674 MB
    avatar
    Fabio
    Programador - Avançado
    Programador - Avançado

    Título : CEO da Fabio's Gambiarra Industries
    Mensagens : 18631
    Reputação : 338
    Desde : 04/05/2012
    Idade : 20
    Localização : Reserva, Paraná, Brasil, América Latina, America do Sul, América, Planeta Terra, Sistema Solar, Via láctea, Universo
    Link : gtamodvicio.blogspot.com

    Re: Como usar memory adress?

    Mensagem por Fabio em 2012-12-17, 10:48 pm

    Usa com write, read, call, etc. pokerface

    Foi mal se não entendi bem a pergunta pokerface pokerface


    ____________________

    Modifico quase qualquer coisa.   :)
    ------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

    Meu PC:
    Spoiler:

    Configurações PC:
    *Processador: Intel Core i7 4790K 4.00GHz LGA1150
    *Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
    *HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
    *HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
    *Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
    *RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
    *Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
    *Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
    *Monitor: LG 23MP55HQ Full HD HDMI 23'
    avatar
    Jean_Alves
    Programador - Básico
    Programador - Básico

    Mensagens : 1176
    Reputação : 7
    Desde : 20/10/2012
    Idade : 19
    Localização : Belém - Pará

    Re: Como usar memory adress?

    Mensagem por Jean_Alves em 2012-12-17, 10:54 pm

    É que tipo, eu quero saber como se aplica em um script? Quero um exemplo e talz, sakou?


    ____________________
    Meu not lol:

    Processador: Intel(R) Core(TM) i3-3110M CPU @ 2.40GHz (4 CPUs), ~2.4GHz
    Memory: 4096MB RAM
    Card name: Intel(R) HD Graphics 4000
    Display Memory: 1674 MB
    avatar
    Fabio
    Programador - Avançado
    Programador - Avançado

    Título : CEO da Fabio's Gambiarra Industries
    Mensagens : 18631
    Reputação : 338
    Desde : 04/05/2012
    Idade : 20
    Localização : Reserva, Paraná, Brasil, América Latina, America do Sul, América, Planeta Terra, Sistema Solar, Via láctea, Universo
    Link : gtamodvicio.blogspot.com

    Re: Como usar memory adress?

    Mensagem por Fabio em 2012-12-17, 10:58 pm

    O source do mod embreagem tá cheio de exemplos, eu mandei ele pra você certo?

    Fala aí uma parte dele que você tenha dúvida que eu tento explicar


    ____________________

    Modifico quase qualquer coisa.   :)
    ------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

    Meu PC:
    Spoiler:

    Configurações PC:
    *Processador: Intel Core i7 4790K 4.00GHz LGA1150
    *Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
    *HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
    *HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
    *Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
    *RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
    *Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
    *Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
    *Monitor: LG 23MP55HQ Full HD HDMI 23'
    avatar
    Jean_Alves
    Programador - Básico
    Programador - Básico

    Mensagens : 1176
    Reputação : 7
    Desde : 20/10/2012
    Idade : 19
    Localização : Belém - Pará

    Re: Como usar memory adress?

    Mensagem por Jean_Alves em 2012-12-17, 11:05 pm

    Rapaz, eu perdi o source quando tava apagando uns scripts fails meu, ele tava no meio lá, mas continuando, eu quero saber tipo, pra que serve, e aqueles númerozinhos que ficam depois, tipo read memory 0x00ACV6 size 4 value 0 (só um exemplo)esses 4 e 0 pra que serve?


    ____________________
    Meu not lol:

    Processador: Intel(R) Core(TM) i3-3110M CPU @ 2.40GHz (4 CPUs), ~2.4GHz
    Memory: 4096MB RAM
    Card name: Intel(R) HD Graphics 4000
    Display Memory: 1674 MB
    avatar
    LINK/2012
    Programador - Avançado
    Programador - Avançado

    Título : Veterano
    Mensagens : 7857
    Reputação : 347
    Desde : 03/05/2012

    Re: Como usar memory adress?

    Mensagem por LINK/2012 em 2012-12-17, 11:12 pm

    é o tamanho do bloco de memoria a ser lido, e o virtual protect é so usado se você ta lendo\escrevendo em codigo.
    avatar
    Fabio
    Programador - Avançado
    Programador - Avançado

    Título : CEO da Fabio's Gambiarra Industries
    Mensagens : 18631
    Reputação : 338
    Desde : 04/05/2012
    Idade : 20
    Localização : Reserva, Paraná, Brasil, América Latina, America do Sul, América, Planeta Terra, Sistema Solar, Via láctea, Universo
    Link : gtamodvicio.blogspot.com

    Re: Como usar memory adress?

    Mensagem por Fabio em 2012-12-17, 11:12 pm

    Tamanho 4
    Valor 0

    Traduzindo tudo:

    Escrever na memoria tal tamanho 4 bytes valor 0




    pokerface

    EDIT: fórum bugado, não avisou que o LINK tinha postado pokerface


    ____________________

    Modifico quase qualquer coisa.   :)
    ------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

    Meu PC:
    Spoiler:

    Configurações PC:
    *Processador: Intel Core i7 4790K 4.00GHz LGA1150
    *Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
    *HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
    *HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
    *Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
    *RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
    *Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
    *Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
    *Monitor: LG 23MP55HQ Full HD HDMI 23'
    avatar
    Jean_Alves
    Programador - Básico
    Programador - Básico

    Mensagens : 1176
    Reputação : 7
    Desde : 20/10/2012
    Idade : 19
    Localização : Belém - Pará

    Re: Como usar memory adress?

    Mensagem por Jean_Alves em 2012-12-17, 11:15 pm

    Aaah tah, onde vcs acham esses endereços? Qual site? tá faltando isso no teu tuto ae LINK


    ____________________
    Meu not lol:

    Processador: Intel(R) Core(TM) i3-3110M CPU @ 2.40GHz (4 CPUs), ~2.4GHz
    Memory: 4096MB RAM
    Card name: Intel(R) HD Graphics 4000
    Display Memory: 1674 MB
    avatar
    Fabio
    Programador - Avançado
    Programador - Avançado

    Título : CEO da Fabio's Gambiarra Industries
    Mensagens : 18631
    Reputação : 338
    Desde : 04/05/2012
    Idade : 20
    Localização : Reserva, Paraná, Brasil, América Latina, America do Sul, América, Planeta Terra, Sistema Solar, Via láctea, Universo
    Link : gtamodvicio.blogspot.com

    Re: Como usar memory adress?

    Mensagem por Fabio em 2012-12-17, 11:17 pm

    Jean TUTB escreveu:Aaah tah, onde vcs acham esses endereços? Qual site? tá faltando isso no teu tuto ae LINK

    Desassemblando o GTA


    ____________________

    Modifico quase qualquer coisa.   :)
    ------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

    Meu PC:
    Spoiler:

    Configurações PC:
    *Processador: Intel Core i7 4790K 4.00GHz LGA1150
    *Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
    *HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
    *HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
    *Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
    *RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
    *Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
    *Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
    *Monitor: LG 23MP55HQ Full HD HDMI 23'
    avatar
    Jean_Alves
    Programador - Básico
    Programador - Básico

    Mensagens : 1176
    Reputação : 7
    Desde : 20/10/2012
    Idade : 19
    Localização : Belém - Pará

    Re: Como usar memory adress?

    Mensagem por Jean_Alves em 2012-12-17, 11:23 pm

    Ah, como faz isso badpokerface


    ____________________
    Meu not lol:

    Processador: Intel(R) Core(TM) i3-3110M CPU @ 2.40GHz (4 CPUs), ~2.4GHz
    Memory: 4096MB RAM
    Card name: Intel(R) HD Graphics 4000
    Display Memory: 1674 MB
    avatar
    LINK/2012
    Programador - Avançado
    Programador - Avançado

    Título : Veterano
    Mensagens : 7857
    Reputação : 347
    Desde : 03/05/2012

    Re: Como usar memory adress?

    Mensagem por LINK/2012 em 2012-12-17, 11:23 pm

    Jean TUTB escreveu:tá faltando isso no teu tuto ae LINK
    lol, isso é avançado serious?
    avatar
    Pylm
    Veterano
    Veterano

    Título : Linuxer
    Mensagens : 18207
    Reputação : 116
    Desde : 03/06/2012

    Re: Como usar memory adress?

    Mensagem por Pylm em 2012-12-17, 11:31 pm

    Jean TUTB escreveu:Ah, como faz isso badpokerface
    Acho que é abrindo o main.scm badpokerface


    ____________________
    Some
    avatar
    LINK/2012
    Programador - Avançado
    Programador - Avançado

    Título : Veterano
    Mensagens : 7857
    Reputação : 347
    Desde : 03/05/2012

    Re: Como usar memory adress?

    Mensagem por LINK/2012 em 2012-12-17, 11:32 pm

    não, é abrindo o exe
    avatar
    Jean_Alves
    Programador - Básico
    Programador - Básico

    Mensagens : 1176
    Reputação : 7
    Desde : 20/10/2012
    Idade : 19
    Localização : Belém - Pará

    Re: Como usar memory adress?

    Mensagem por Jean_Alves em 2012-12-17, 11:49 pm

    E como abre o exe? pokerface badpokerface


    ____________________
    Meu not lol:

    Processador: Intel(R) Core(TM) i3-3110M CPU @ 2.40GHz (4 CPUs), ~2.4GHz
    Memory: 4096MB RAM
    Card name: Intel(R) HD Graphics 4000
    Display Memory: 1674 MB
    avatar
    Pylm
    Veterano
    Veterano

    Título : Linuxer
    Mensagens : 18207
    Reputação : 116
    Desde : 03/06/2012

    Re: Como usar memory adress?

    Mensagem por Pylm em 2012-12-17, 11:51 pm

    @LINK/2012 escreveu:não, é abrindo o exe
    Uma curiosidade meu bom homem, como é que se abre o exe? O máximo que já fiz foi extrair ele com o universal extractor Fuch That Guy


    ____________________
    Some
    avatar
    LINK/2012
    Programador - Avançado
    Programador - Avançado

    Título : Veterano
    Mensagens : 7857
    Reputação : 347
    Desde : 03/05/2012

    Re: Como usar memory adress?

    Mensagem por LINK/2012 em 2012-12-18, 12:23 am

    Com um disassembler, o fabio ja falou, é um programa que te da o codigo assembly do executavel
    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21618
    Reputação : 635
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: Como usar memory adress?

    Mensagem por Junior_Djjr em 2012-12-18, 2:21 am

    vou tentar explicar o basico disso:

    Código:
    0A8D: VAR = read_memory ENDEREÇO size BYTES virtual_protect VP //ler
    0A8C: write_memory ENDEREÇO size BYTES value VALOR virtual_protect VP //escrever

    por exemplo... usando esta lista simples de endereços por exemplo, lah tem os endereços de memoria do jogo, por exemplo esta linha:

    0xC81320 - [word] Current weather.
    ENDEREÇO - [TAMANHO] Clima atual.

    aqui temos o endereço e o tamanho, word = 2 bytes
    byte = 1 byte
    word = 2 bytes
    dword = 4 bytes
    qword = 8 bytes
    ...

    bom, aqui no caso deste endereço, vamos ler o clima atual do jogo

    Código:
    0A8D: 0@ = read_memory 0xC81320 size 2 virtual_protect 0
    aqui lemos o endereço 0xC81320 q eh onde fica armazenado o valor do clima atual do jogo, num tamanho de 2 bytes (pois eh um word neh?) com proteção virtual desativada (naboa, melhor perguntar oq eh isso pro link2012 pois nao sei explicar ;-; eu sempre deixo desativado msm...)

    depois disso, o valor da variavel 0@ fica sendo o valor do clima atual do jogo
    Spoiler:
    0 = EXTRASUNNY_LA
    1 = SUNNY_LA
    2 = EXTRASUNNY_SMOG_LA
    3 = SUNNY_SMOG_LA
    4 = CLOUDY_LA
    5 = SUNNY_SF
    6 = EXTRASUNNY_SF
    7 = CLOUDY_SF
    8 = RAINY_SF
    9 = FOGGY_SF
    10 = SUNNY_VEGAS
    11 = EXTRASUNNY_VEGAS (heat waves)
    12 = CLOUDY_VEGAS
    13 = EXTRASUNNY_COUNTRYSIDE
    14 = SUNNY_COUNTRYSIDE
    15 = CLOUDY_COUNTRYSIDE
    16 = RAINY_COUNTRYSIDE
    17 = EXTRASUNNY_DESERT
    18 = SUNNY_DESERT
    19 = SANDSTORM_DESERT
    20 = UNDERWATER (greenish, foggy)
    21 = EXTRACOLOURS_1 (very dark, gradiented skyline, purple) Used for interiors?
    22 = EXTRACOLOURS_2 (very dark, gradiented skyline, green) Used for interiors?
    como por exemplo... 8 ou 16 eh clima chuvoso, entao deste modo vc poderá checar se está chovendo ou nao no jogo

    Script exemplo:
    Código:
    {$CLEO}
    0000:

    while true
        wait 0
        player.defined($player_char)
        jf continue
       
        0A8D: 0@ = read_memory 0xC81320 size 2 virtual_protect 0
        if or
        0@ == 8
        0@ == 16
        jf continue

        0ACC: show_text_lowpriority "Esta chovendo!" time 1000
    end




    aprendemos a ler e agr? vamos aprender a escrever..

    vamos usar um outro endereço de memoria mais legal agr... o endereço onde fica a gravidade do jogo (0x863984) e ele eh um float (tipo, 1.0, 0.541 etc, saka?) o numero padrao deste endereço eh 0.008 (vc pode usar o read_memory pra ler e saber qual era o endereço original tbm, mas lah na lista logo no inicio jah tem)

    Código:
    0A8C: write_memory 0x863984 size 4 value 0.01 virtual_protect 0

    aqui escrevi o valor de 0.01 na gravidade, entao a gravidade irá aumentar um pouco (pois antes era 0.008)
    simples, sem segredo, sabendo ler endereços jah sabe escrever neles neh?

    agr um script legalzinho e simples pra editar a gravidade do jogo e deixar o jogo doidao com tudo mundo voando, arvores se retorcendo etc...
    Código:
    {$CLEO}
    0000:

    0A8D: 0@ = read_memory 0x863984 size 4 virtual_protect 0

    while true
        wait 0
       
        if 0AB0:  key_pressed 107
        then 0@ += 0.01
        end
       
        if 0AB0:  key_pressed 106
        then 0@ -= 0.01
        end

        0A8C: write_memory 0x863984 size 4 value 0@ virtual_protect 0
       
        0AD0: show_formatted_text_lowpriority "Gravidade: ~r~%f" time 2000 0@
    end
    use as teclas + e - para editar a gravidade do jogo :)

    duvidas?


    ____________________
    avatar
    LINK/2012
    Programador - Avançado
    Programador - Avançado

    Título : Veterano
    Mensagens : 7857
    Reputação : 347
    Desde : 03/05/2012

    Re: Como usar memory adress?

    Mensagem por LINK/2012 em 2012-12-18, 2:26 am

    Eu ja respondi na primeira pagina que virtual protect é usado pra desproteger o codigo assembly do jogo pra poder escrever\ler ele.
    O OS protege as partes de codigo pra não ter viadage, mas a viadage ainda rola solta, ruindows
    Os lugares que não precisa de vp são os lugares que não são codigo... gravidade não é codigo, é uma variavel, não tem vp, ok.
    avatar
    Jean_Alves
    Programador - Básico
    Programador - Básico

    Mensagens : 1176
    Reputação : 7
    Desde : 20/10/2012
    Idade : 19
    Localização : Belém - Pará

    Re: Como usar memory adress?

    Mensagem por Jean_Alves em 2012-12-18, 10:09 am

    Vlw ae, aprendi, pode dar closed!


    ____________________
    Meu not lol:

    Processador: Intel(R) Core(TM) i3-3110M CPU @ 2.40GHz (4 CPUs), ~2.4GHz
    Memory: 4096MB RAM
    Card name: Intel(R) HD Graphics 4000
    Display Memory: 1674 MB
    avatar
    Pylm
    Veterano
    Veterano

    Título : Linuxer
    Mensagens : 18207
    Reputação : 116
    Desde : 03/06/2012

    Re: Como usar memory adress?

    Mensagem por Pylm em 2012-12-18, 10:18 am

    Vou usar o mod da gravidade :)


    ____________________
    Some
    avatar
    EduardoJ.
    Mensagens Nível 5
    Mensagens Nível 5

    Título : Aspirante a matemático
    Mensagens : 607
    Reputação : 34
    Desde : 04/05/2012
    Idade : 20
    Localização : Anápolis - Goias

    Re: Como usar memory adress?

    Mensagem por EduardoJ. em 2012-12-18, 10:40 am

    Jean TUTB escreveu:Vlw ae, aprendi, pode dar closed!
    closed!

    Conteúdo patrocinado

    Re: Como usar memory adress?

    Mensagem por Conteúdo patrocinado


      Data/hora atual: 2017-06-29, 2:21 am