16 de mai. de 2015

Encontrar address do new client PXG

Olá amigos, tirei um tempo da minha sexta feira para ler as address do ot pokemon, consegui, e o melhor é que vou disponibilizar a source do código que usei e abaixo estarei explicando a lógica para a leitura dos endereços de memória.



Vamos lá, como podem ver na imagem está mostrando a address utilizada para leitura e a leitura da mesma, o que acontece que muitas pessoas não conseguiam achar ela ao usar o cheat engine se da ao fato de que os endereços de memória mudam a cada vez que o cliente é aberto (randômicos), porém todo endereço randômico tem uma forma de ser gerado, e o sistema aqui é bem simples, existe um endereço estático (que não se altera) quando o cliente é aberto e fechado, este endereço estático: 006C03B0 (4 bytes), que possui como valor um número em hexadecimal é sempre a base para alguns dos endereços de memória estáticos, entre eles os que estão na imagem.
Outro problema que leigos no cheat engine devem ter se deparado é o fato de não encontrarem nenhuma address, isso se dá porque os endereços de memória (pelo menos os que encontrei) estão no tipo double.
Ok, mas e agora? Você já possui o endereço de memória base para encontrar as address sempre que o cliente for aberto, possui o tipo de variável usando nos endereços de memória, como fazer para encontra-las?
Vamos lá, o método usado para os endereços de memória é bem simples, o valor do endereço de memória 006C03B0 (em hexadecimal) somado com o valor de uma offset vai nos resultar o endereço de memória que queremos saber, o offset é um valor que será somado também em hexadecimal, ao valor do endereço de memória 006C03B0, a soma desses valores nos resultará no endereço de memória que procuramos.
Por exemplo, o offset referente a vida do personagem é 348 (não se esqueça que esse valor está em hexadecimal), vamos imaginar que o valor de 006C03B0 é 0C99DA08, ao somarmos o valor $0C99DA08 + $348 obteremos  0C99DD50, o endereço de memória da vida do personagem, sobre o resultado dessa conta se lermos ele como double na linguagem que estivermos usando obteremos a vida atual do personagem como resposta.

Informação importante: 
  • O jogo pode alterar o endereço estático que informei após alguma atualização, até hoje não alteraram, esse endereço é do tipo 4 bytes e resulta um valor do tipo hexadecimal.
Para mais informações ou dúvidas contacte-me por e-mail.

Link para download do source: http://www.speedyshare.com/GD9tM/leraddress.rar

16 de mar. de 2015

[Teste] PXG Bot

Uma primeira versão de testes para o bot já está disponível no seguinte link com o tutorial e o link para download, uma versão mais completa devo estar fazendo o upload entre hoje e amanhã!

http://gamerbalf.blogspot.com.br/p/pxg-bot.html

8 de mar. de 2015

[PROJETO] PXG Bot

Depois de tanto tempo sem programar, estou desenvolvendo um bot para o famoso PXG, um video demonstrativo abaixo e as funções que ele já possui:



Funções atuais: 
Anti-afk;
Feed pokemon;
Fish;
Auto attack.

Em breve estarei liberando para testes!

3 de dez. de 2014

Link novo - Walker sem tibia api

Não esqueça que agora a janela do tibia mudou então na função "findwindow" deve ser colocado "Tibia - Nome do personagem", isso pode ser feito por um Edit Box, na edição do source ou lendo as address do jogo, mas isso fica para vocês aperfeiçoarem o conhecimento de vocês! 

Link

21 de abr. de 2013

Moobot Source - LINK NOVO

O link de download antigo estava quebrado, abaixo o novo link de download:

Link

17 de abr. de 2013

Pressionar F1, F2, F3 com intervalo de tempo.

Eai galera quanto tempo!
Então, fiz um programinha basico à pedido de um leitor que pressiona F1, F2, F3, F1 com um intervalo de tempo de 1 segundo entre cada pressionamento e após terminar a série ele espera 60 segundos antes de começar o pressionamento novamente.
É apenas necessario configurar a janela em que o pressionamento será efetuado!

Video:

Link de Download:
http://www.speedyshare.com/ddXA4/Programa-Pedido.rar

Senha para descompactar:
balf

6 de jan. de 2013

Fórum

GALERA, VENHO ANUNCIAR AQUI QUE NÃO ESTAREI MAIS POSTANDO CONTEÚDO AQUI, TUDO QUE POSTAREI SERÁ POSTADO NO SEGUINTE FÓRUM:

HTTP://WWW.CLICKGAMERS.COM.BR

LÁ TERÁ TANTO OS CONTEÚDOS DE DELPHI, COMO OUTRAS LINGUAGENS E ASSUNTOS SOBRE JOGOS.
PEÇO A TODOS QUE PUDEREM, SE CADASTRAREM E AJUDAREM A COMUNIDADE A CRESCER CADA VEZ MAIS, OBRIGADO.

ATENCIOSAMENTE,
BRUNO ADRIANO.

18 de nov. de 2012

[SOURCE] Walker Tibia

É isso ai galerinha, muita gente procura isso há tempo e agora vou postar um walker bem simples que fiz, que simula apenas mouse click.
Fiz até um video simples demonstrando ele:



Quando chega no final das listbox ele volta para primeira e repete os comandos enviados, espero que sirva de estudo para alguem!

Link de Download: Link

Bluesky OT




Bluesky OT 8.6

- Novas Quests
- Novas Armas
- Mapa próprio 8.6
- Exp: 5000x
- Skills: 200x
- Loot: 2x
- Versão: 8.6

Para criar conta: Account Manager 1/1


IP: blueskyot.servegame.com

Site: www.blueskyot.com

Moobot Source - (Neobot Clone)

Postado originalmente por Cupquake em: 21/02/2012
Quote
When i heard about neobot going down, i thought: "hmm, it would be nice to get that full market of his... lets do a clone so people dont need to learn new stuff... cuz people doesnt like changes...".

But after a while, my company took my all free time, and i resigned from finishing this bot...

Whats already done:
- tibia 9.44!
- independent HUD display (transparent and AA)
- full mouse and keyboard simulation.
- most of the container control and reading (all by mouse)
- most of the map control and reading
- most of chat stuff
- FULL packet parser (thx flash)
- hotkeys
- dat reader
- log
- lib loader
- almost fully functional neobot config loader (with virtual treeview)
- buggy healer
- job queue with prioritys and overriding
- lua 5.1 ready with most of the "presistant hotkey" functions done
- servercount(), itemcount and more
- and many many more...

Done with "Delphi XE2". A little bit of firemonkey too.

Have fun, im out of bot making... after 5 years of exp, im booored...

Esse bot foi feito por um membro do tp e ele disponibilizou o source porém o link quebrou, e a pouco tempo consegui o source então vou compartilhar com vocês, as funções estão bem legais e foi programador em Delphi XE2.

Tradução:

Quando eu ouvi sobre o fim do neobot, eu pensei: "hmm, seria uma boa dominar todo o mercado que ele já tem... vamos fazer um clone então pessoas não precisarão aprender a utilizar novos aplicativos... porque pessoas não gostam de mudanças..."

Mas depois de um momento, minha companhia tomou todo meu tempo livre, e eu desisti de terminar o bot...

O que já está pronto:
- Tibia 9.44
- HUD display independente (Transparente e AA)
- simulação de teclado e mouse completa.
- maioria das leituras de containers (tudo por mouse)
- maioria do controle de mapa e leitura
- maioria das coisas do chat
- hotkeys
- data reader
- log
- lib loarder
- carregador de configurações do neobot completo (com treeview)
- servaccount(), itemcount e mais
- e muito mais...

Programado com "Delphi XE2". Um pouco de firemonkey também.
Se divirta, estou fora de criar bots... depois de 5 anos de experiência, estou entediado...

Bem...
Boatos por ai dizem que esse source foi utilizado como base para criação do atual "IBot", como vocês sabem, boatos são boatos, então não posso declarar nada concreto. Eu já estudei esse source e tem bastante funções e formulas, para quem pretende criar um bot será uma mão na roda!

Link de Download:  Link

Criando um Mini-Bot de Tibia

Inicialmente vou dar logo os créditos de onde tirei o conteúdo:
Kimoszin - www.tibiaking.com
Quando eu comecei a utilizar o delphi esse foi o primeiro aplicativo que criei exatamente com esse tutorial, espero que ajude alguém!

Agora vamos ao que interessa:
Nesse mini-bot você terá um mana trainer, um anti-kick e um eat food!



Componentes, vamos precisar de:

1 TGroupBox
1 TButton
2 TLabeledEdit
2 TCheckBox
1 TCombobox
2 TLabel
4 TTimer

Renomeando componentes, para renomear você deve ir ate a propriedade name:

Button -> StartButton
Timer1 -> CastSpell
Timer2 -> EndereçoTimer3 -> Kick
Timer4 -> Food
LabeledEdit1 -> Spell
LabeledEdit2 -> Mana

Arrumando Componentes, quando já estiverem renomeados:

CastSpell.Enabled.False CastSpell.Interval.700
Kick.Enabled.False
Kick.Interval.60000
Food.Enabled.False
Food.Interval.30000
Combobox1.Style.csDropDownListForm1.Caption 'Escolha um Nome para o Bot'

Variáveis Globais, declare embaixo do Form1 : TForm1
PH : THandle;
PID, ThID: DWORD;
H : THandle;

Variaveis Globais, declare embaixo do Form1 : TForm1
PH : THandle;
PID, ThID: DWORD;
H : THandle;

Funções usadas, declare elas embaixo do {$R *.dfm},

//Função para escrever na janela do Tibia
function say(mensagem: string):string;
 var
  h: HWND;
  letra: Integer;
  B: Byte;
 begin
  h := FindWindow(nil, 'tibia');
  for letra := 1 to Length(mensagem) do
  begin
        B := Byte(mensagem[letra]);
        SendMessage(h, WM_CHAR, B, 0);
  end;
        SendMessage(h, WM_CHAR, 13, 0);
  end;

//Função para ler endereço de memoria do Tibia
  function LerInt(Address: Integer): Integer;
var
  value:integer;
  ler :dword;
begin
H := FindWindow(nil, 'Tibia');
ThID := GetWindowThreadProcessId(H, @PID);
PH := OpenProcess(PROCESS_ALL_ACCESS,FALSE,PID);
ReadProcessMemory(PH, Ptr(Address), @Value, 4, Ler);
Result:=value;
end;

//Função para aperta uma determinada tecla na janela do Tibia
function hotkey(x :string): string;
         var
  h: HWND;
  i : integer;
begin
 if x ='F1' then
  i := 112
  else if x ='F2' then
  i := 113
  else if x ='F3' then
  i := 114
  else if x ='F4' then
  i := 115
  else if x ='F5' then
  i := 116
  else if x ='F6' then
  i := 117
  else if x ='F7' then
  i := 118
  else if x ='F8' then
  i := 119
  else if x ='F9' then
  i := 120
  else if x ='F10' then
  i := 121
  else if x ='F11' then
  i := 122
  else if x ='F12' then
  i := 123;

  h := FindWindow(nil, 'Tibia');  // acha a janela do tibia
  SendMessage(h, WM_KEYdown, i, 0);   //pressiona a tecla
  SendMessage(h, WM_KEYUP, i, 0);  //solta tecla
  end;

Depois de botar os componentes, renomeá-los e declarar as funções,
Vamos botar os devidos códigos nos respectivos componentes
Lembrando que é tudo dentro do begin e end, se tiver Var você deve excluir o begin, e adiciona-lo depois

CastSpell
if StrToInt(Label2.Caption) > (StrToInt(Mana.Text)) then
say(Spell.text)
// Se a mana do player for maior que a mana que foi digitada no component mana, entao vai falar a magia

Endereço
Label2.caption := IntToStr(Lerint($0081CE5C));
// Vai ler o endereço da mana do personagem e transforma em numero para o label2

Kick
Var
TibiaHandle : THandle;
begin
TibiaHandle:=FindWindow(nil,'Tibia'); // Pega a janela do Tibia
SendMessage(TibiaHandle,WM_KEYDOWN,VK_CONTROL,1); // Pressiona o Ctrl
SendMessage(TibiaHandle,WM_KEYDOWN,VK_UP,1); // Pressiona a tecla para cima
SendMessage(TibiaHandle,WM_KEYUP,VK_UP,1); // Libera a tecla
SendMessage(TibiaHandle,WM_KEYDOWN,VK_DOWN,1); // Pressiona a tecla para baixo
SendMessage(TibiaHandle,WM_KEYUP,VK_DOWN,1); // Libera a tecla
SendMessage(TibiaHandle,WM_KEYUP,VK_CONTROL,1); // Libera o Ctrl
end;

Food
hotkey(Combobox1.Text)
// Pressiona oque tiver no Texto do Combobox

StartButton
CastSpell.Enabled := not(CastSpell.Enabled);
Food.Enabled := not(Food.Enabled);
Kick.Enabled := not(Kick.Enabled);
if Checkbox1.checked then
Kick.Enabled := true
else
Kick.Enabled := false;
if Checkbox2.checked then
Food.Enabled := true
else
Food.Enabled := false;
if (Spell.Text <> '') and (Mana.Text <> '') then
CastSpell.Enabled := true
else
CastSpell.Enabled := false;
if (Kick.Enabled) or (Food.Enabled) or (CastSpell.Enabled) then
StartButton.Caption := 'Stop'
else
StartButton.Caption := 'Start';

Qualquer dúvida que tiverem estou aqui para esclarecer!
Novamente, Créditos: Kimoszin!

Atenciosamente,
Bruno Adriano

Piadinha

Só para descontrair..
.
Programador encontrado morto na banheira cinco dias após ter sido dado como desaparecido. Junto a ele foi encontrado um shampoo com as seguintes instruções:
Lavar, enxaguar, repetir.


Morri com essa pidinha sem graça KKKKKKKKKKKKKKK

17 de nov. de 2012

[DELPHI] Source YouBot Tibia

Depois de algumas semanas trabalhando nele eu desisti de continuar com o projeto então vou liberar o source aqui para vocês.
Obs: Bot programador no Delphi 7.

Funções Prontas:

  • Trade Helper;
  • Reconnect;
  • Auto Hotkey;
  • Alerts;
  • Infos;
  • HealerItem1;
  • As formulas utilizadas para a criação do walker;
Address Utilizadas
  •   Start = $948008; - Atualizada no 9.70
  •   StepCreatures = $B0; - Atualizada no 9.70
  •   MaxCreatures = 250; - Atualizada no 9.70
  •   DistanceName = 4; - Atualizada no 9.70
  •   DistanceId = 0; - Atualizada no 9.70
  •       PlayerId = $97CEA4; - Desatualizada
  •   adrXOR = $7B2E90; - Atualizada no 9.70
  •   adrMyHP = $948000; - Atualizada no 9.70
  •   adrMyMaxHP = $97FE9C; - Atualizada no 9.70
  •   adrMyMana = $7B2EE4; - Atualizada no 9.70
  •   adrMyMaxMana = $7B2E94; - Atualizada no 9.70
  •       adrExp = $97EE94; - Desatualizada
  •   adrSoul = $7B2ED0; - Atualizada no 9.70
  •       adrMl = $7B0098; - Desatualizada
  •       adrStamina = $7B00EC; - Desatualizada
  •       adrXp = $7B0060; - Desatualizada
  •       adrLevel = $7B0090; - Desatualizada
  •   adrOnline = $7BCCC4; - Atualizada no 9.70
  •   adrXGo = $97FEA0; - Atualizada no 9.70
  •   adrYGo = $97FE98; - Atualizada no 9.70
  •   adrZGo = $948004; - Atualizada no 9.70
  •   adrPosX = $97FEA8; - Atualizada no 9.70
  •   adrPosY = $97FEAC; - Atualizada no 9.70
  •   adrPosZ = $97FEB0; - Atualizada no 9.70

As funções basicas de healer spell e mana healer podem ser encontradas no Source do YouBot Healer, eu apenas tinha deixado elas para depois por serem mais simples, mas como não vou dar continuidade ao projeto nem inseri elas.
YouBot Healer -> Link


Download: Link







Apostila controle de estoque no Delphi

Vou postar o link com 4 arquvios .PDF ensinando a criar um controle de estoque 100%.
Os créditos não aparecem na apostila, e não me lembro de onde baixei pois faz algum tempo.

Link de Download: Link
Scan: Link

[DELPHI] Source Jogo Simples

Galerinha fiz um jogo bem simples onde você foge de uma criatura e pega os itens na tela do programa, cada vez que você pega um item soma mais 1 ponto no seu scoore.


Cracking

Inicialmente vamos organizar o post em 4 tópicos:

1 - O que é cracking?
2 - Por que o cracking existe?
3 - O que posso fazer?
4 - Conclusão.

Lembrando antes de tudo, que isso não é fonte de nenhum site nem pesquisa, é apenas minha opinião  pois há algum tempo venho lendo na internet sobre vários programas sendo crackiados e gerando muita polemica.

1 - O que é cracking?
  É o simples ato de burlar uma licença, utilizar programas, códigos, seja o que for para conseguir utilizar programas pagos ou de acesso restrito gratuitamente.

2 - Por que o cracking existe?
 O cracking vem sendo muito praticado hoje em dia, e não será agora que irá parar, sempre haverá uma forma de burlar os sistemas, uma forma de utilizar softwares gratuitamente.
 Uma resposta utilizada por muitos para a utilização de cracks (principalmente no Brasil), é alegar que os impostos são extremamente altos e impossibilitando o acesso a alguns produtos pelo alto preço, afinal não é qualquer um que tem condições de pagar 200R$ em um jogo quando se pode pagar apenas dez.
 O cracking a cada dia que passa vem sendo mais comum, sendo utilizado desde programas como Bots de Tibia até a falsificação de jogos.
Afinal quem não prefere obter algo caro com um preço bem mais em conta ou até gratuitamente.

3 - O que posso fazer?
 Simplesmente você não pode fazer nada, sempre haverá os crackers, eles estão por toda parte, e não há como negar que você acabará utilizando de programas crackiados, pois os principais programas e mais conhecidos mundialmente são pagos e são bem caros.

4 - Conclusão
Agora vou expor exatamente minha opinião:
Pessoalmente eu detesto a hipocrisia¹, então vou tentar ser o mais 'mente aberta' possível, devemos dar valor ao trabalho das outras pessoas e sempre que possível poder contribuir para que ela continue a fornecer bons conteúdos, aqui no blog mesmo, sempre que tenho conteúdos novos eu posto eles, sou muito a favor do conteúdo Open Source², o problema é que somos atingidos por uma sociedade onde todos querem tudo na mão e querem na hora, ninguém tem vontade de correr atras, querem tudo rápido porém não fazem o minimo para terem.
Diariamente eu me deparo com pessoas pedindo apostilas exatamente explicadas, com tudo direcionado para aquele conteúdo, mas espera ai, vamos por parte. Se eu aprendi na raça por que você tem que ter tudo na mão? Você deve ter a mesma vontade de aprender que eu tive, sempre que recebo e-mails de leitores do blog eu respondo falando que qualquer dúvida que eles tenham eu vou tentar ajudar, qualquer programa que eles tenham vontade de criar eu vou criar programas similares Open Soucers para eles estudarem e aprenderem, eu tento tornar os tutoriais e videos que crio o mais auto-explicativos possível, e vou continuar fazendo isso enquanto for possível, não vou abrir mão de incentivar o conteúdo open source, só acho que deveria ter uma gratificação, não sair divulgando o trabalho de outras pessoas sem credito, não utilizar métodos que possam prejudicar o criador do trabalho, afinal todos trabalham duro todo dia, e quando temos nossas ideias magnificas é horrível a sensação de alguém derrubar a gente.

Resumindo:
Deem valor aos criadores, afinal se eles se cansarem de tanta criancice eles irão parar de atualizar o programa e ai acabou a utilização daquele programa.

Hipocrisia¹ - é o ato de fingir ter crenças, virtudes, ideias e sentimentos que a pessoa na verdade não as possui. Em outras palavras, você falar que faz algo, mas não fazer.

Open Source² - Conteúdo de código aberto.

Até a próxima!
Atenciosamente,
Bruno Adriano.