Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

Wphx 2.1


Posts Recomendados

Wphx.2.1

 

Mesma coisa de antes, mas agora compativel com a nova versão do jogo

 

 

Update 2:

Aparentemente nao mudou muita coisa, mas a nivel de codigo é quase outro programa, é a versão mais completa até agora, com menos erros (acredito eu que nenhum, pelo menos não visivel. e olha que foi muito testado).

Em breve também pretendo postar pacotes falsos aqui (modelos) como o do pacote de usar skill

 

 

Por gentileza, leia tudo antes de ter qualquer duvida ou fazer qualqer comentário, o programa nao tem nada muito complexo para se entender mas... é sempre bom ler tudo =P

 

s6txex.png

 

 

O programa permite que voce monitore o trafego de packets do WYD, fornecendo o conteudo do pacote (desencryptado), o ID, o tamanho e possivelmente informações adicionais (contidas na database do programa, que pode ser acessada em \WPhx_data\).

 

O programa também permite o envio de pacotes falsos para o servidor. O pacote falso deve ser escrito byte por byte, em hexadecimal. O programa irá encryptar o pacote antes de envia-lo ao servidor, por isso nao ha razão para se preocupar com a encriptação.

 

Como usar:

1- Extraia todo o conteudo na pasta do WYD e substitua o conteudo existente (faça backup de todos os arquivos que serão substituidos antes caso queira retornar ao original posteriormente)

2- Todas as dlls na pasta PLUGINS serão carregadas, mesmo que não sejam plugins do wphx (inclusive o tal whook). NOTA: o whook causa conflito com o wphx, impedindo-o de funcionar devidamente!

3- Execute o wyd normalmente, o programa deve abrir junto

 

Sinta-se livre para contribuir com a database (localizada no \WPhx_data\) os arquivos são .INI e extremamente faceis de voce entender, o nome do arquivo é o ID do pacote (em hexadecimal)

 

Nota: Existem pacotes que o cliente recebe e os que ele envia, pacotes que voce recebe estão na pasta \WPhx_data\recv\ e os que envia \WPhx_data\send\

 

Quaisquer bug/erro poste NESTA THREAD, não envie PMs porque elas serão recusadas

 

Se voce deseja contribuir com a expansão da database, zipe a pasta \WPhx_data\ e envie para mim em forma de PM com o titulo "Database".

Como esta versão esta sendo postada em publico, e poderá ir para outras comunidades, enviem a pasta para o email "[email protected]"

 

2 notes:

.Boa parte do codigo de compatibilidade com plugins por DLL foi re-escrito devido à alguns problemas de ineficacia e alguns erros, agora tudo funcional

.Novas funções exportadas para plugins, export do Send_Packet agora nao necessariamente depende do export da dll, e pode ser importado pelo plugin como zSendPacket

.Inicialização consertada para trabalhar com multiplos clients ao mesmo tempo

.Nova api na unit do plugin ,função hStr()

.Otimização do codigo do hook, agora mais estavel

.Pequenos consertos/modificações na GUI

.Alguns crashes resolvidos

.Consertado erro relacionado ao sistema de log e o uso de varios clients simultaneos

.Resolvido erro de plugins que usavam a função zSendPacket (Send_Packet) dentro dos hooks (hook_recv e hook_send)

.Funções exportadas nao contém mais SEH

 

2 notes:

.Re-escrito o sistema de plugins com DLL (havia um erro que causava um loop infinito, agora consertado, sendo possivel enviar pacotes falsos sem erro direto do plugin)

.Função de enviar pacotes falsos melhorada em diversos sentidos, ela agora aceita tambem uma sintaxe basica para adicionar BYTE, WORD, DWORD e alguns valores especiais como PLAYER.X, PLAYER.Y e CLIEND_ID (leia mais abaixo)

.Pequenos trechos do codigo melhorados para melhor desempenho

.Alguns bugs resolvidos (eram bugs? .-.)

 

1.1b notes:

.Re-escrito a forma a qual o programa indexa os buffers, tornando-o mais eficiente (gasta menos memoria, armazena mais informação)

.Estabilidade quase que absoluta (antes, o programa mal conseguia capturar 5.000 packets sem crash, agora ele atinge 50.000 com facilidade sem erros)

.Sistema de log modificado para detectar alguns bugs melhor

.Pequenas modificações na janela do log

.SEH separados para cada seção espefica

.Uso de threads separadas para indexar itens na lista (isso tem pros e contras, mas em troca de informação eu optei por estabilidade)

 

1.1 notes:

.Todas as funções do programa são completamente funcionais agora

.Varios bugs pequenos consertados, incluindo um relacionado ao envio de pacotes

.Interface grafica modificada, adicionados componentes graficos novos para facilitar analises

.Adicionado função de flood de pacotes falsos (totalmente funcional)

.Sistema de plugins de DLL foi melhorado de diversas formas, adicionado uma nova função à dll para enviar pacotes falsos

.Alinhamento de 16 bytes/linha (em hex, 2 digitos) na janela de hexadecimal, e 16 digitos ASCII na janela de texto

.Sistema de log implementado (log do programa, com ele é possivel detectar possiveis erros que possam vir a ocorrer

.Consertado um erro no precedimento de envio de pacotes falsos, agora a função está 100% funcional e foi testada exaustivamente

 

Sobre a sintaxe na função de enviar pacotes falsos

Agora é possivel usar palavras-chave especiais para designar valores dentro do pacote falso, antes só era aceito valores HEX, agora também são aceitos simbolos especiais, entre esses:

#db valor byte

#dw valor word

#dd valor dword

#px posição X do jogador (word)

#py posição Y do jogador (word)

#id Client ID

 

 

Breve exemplo do uso desse sistema

É necessário se cadastrar para acessar o conteúdo.

 

Neste exemplo, o seu personagem vai usar a skill com id "SKILLID" (se voce nao modificar este valor para um ID valido de skill, nao vai dar certo... mas é sempre bom constatar o obvio)

 

Sobre o sistema de plugins com DLL

Todas as dlls na pasta PLUGINS é carregada pelo programa, e ele procura pelo export "hook_recv" e "hook_send", ambos são uma função do tipo procedure (Packet,Size:dword); STDCALL; (Documentação será adicionada depois, junto com exemplos e APIs especificas)

 

Adicionado agora export no wphx.dll como zSendPacket(Buffer,Size:dword); stdcall;

 

Função hStr adicionada à api dos plugins (hStr(PACKET , STRING) capaz de transformar uma string em data dentro do buffer, exemplo:

 

É necessário se cadastrar para acessar o conteúdo.

 

Vai escrever a array de bytes 00 00 00 00 66 06 começando no endereço de MeuPacote em breve também aceitará a mesma sintaxe do packet hack (#id, #px, #py...)

 

Também ha agora a função Send_Packet:Procedure (Buffer,Size:dword); stdcall; que pode ser usada para enviar pacotes falsos direto do plugin.

 

Toda esta informação pode ser encontrada no plugin de exemplo contido no rar, mais funções podem ser encontradas no wphx.pas (várias funções pra deixar mais facil a manipulação dos pacotes)

 

Foi feito um exemplo também em ASM, bem facil de entender, mas este não tem unit de suporte =P é só ver no TESTE.ASM na pasta do plugin_developing, a sintaxe usada é do FASM.

 

Sobre o sistema de plugin INI

O sistema nao tem nada de complexo, é bem intuitivo e eu adicionei ele pois nem todos os usuarios são programadores, tendo em vista isso, decidi criar um sistema que permitisse alteração dos packets (com detour/hook) sem que o usuario precisasse programar algo.

O formato do ini é o seguinte:

 

[p0]

packet_id=ID DO PACKET

offset=OFFSET DA MUDANÇA

size=TAMANHO DA MODIFICAÇÃO (pode ser 1,2 ou 4, respectivamente byte, word e dword)

value=VALOR QUE SERA POSTO

isrecv=0 se for SEND, 1 se for RECV (se a informação for ENVIADA para o servidor, é 0 se ela é recebida é 1, simples assim)

 

[p0] <<< Identificação do HOOK, pode ser de p0 até p1000 (p1,p2,p3...p999,p1000)

 

Exemplo de hook, para deixar minha senha em branco no processo de login

Código:

É necessário se cadastrar para acessar o conteúdo.

 

Pacotes falsos

Teleporte (testado e funcionando 100%)

É necessário se cadastrar para acessar o conteúdo.

 

Move

Código:

É necessário se cadastrar para acessar o conteúdo.

 

Use skill (buff)

Código:

É necessário se cadastrar para acessar o conteúdo.

 

Add stat

Código:

É necessário se cadastrar para acessar o conteúdo.

 

2hxpzpi.png

 

Ex. se voce quer adicionar a stat DEX, o TIER é 0 e stat é 2

 

A principio, este aplicativo foi postando na area premium, mas como este projeto é algo relativamente grande, e precisa de suporte, como um cético, vi que nao seria possivel tocar o projeto de uma area premium, então decidi disponibiliza-lo numa area publica, para que o proprio publico seja capaz de ajudar o desenvolvimento do programa.

A versão final do programa, porém, deve ser destinada à premium do forum, mas isso é mais politica do que praticidade.

 

Sintam-se livre para difundir o programa em outras comunidades se desejarem, quanto mais gente puder contribuir para o projeto, melhor no fim das contas =P

Se algum programador desejar saber mais sobre o sistema de plugins por dll, mande-me uma PM, mas tenha em mente que NÃO VOU ENSINAR VOCE A PROGRAMAR, se voce não é um programador, nem tente...

 

Update versão 2

[DOWN]

É necessário se cadastrar para acessar o conteúdo.
[/DOWN]

 

[sCAN]

É necessário se cadastrar para acessar o conteúdo.
[/sCAN]

 

Nota: Foi consertado um erro meu grotesto no sistema de injetar a dll no jogo, e eu só percebi agora...

 

E pro dinossauro que falou que estava "patched" era só editar o INI com novos addresses que o programa voltava a funcionar, ignorancia é foda...

 

Creditos~SarahWalker,vennom

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.