Opa pessoal…
To fazendo um bot para um jogo, só para brincar msmo…
Fiz uma função chamada looter (ele pega um item que o bixo “dá” quando morre e coloca na bp)
Eu uso a classe robot, que bate fotos da tela do jogo, procura determinada foto do item que a pessoa quer que pegue na pasta do projeto…
Ae ele compara, se for igual ele move o mouse até o lugar, clica, e arrasta para onde a pessoa deseja…
Mas eh limitado trabalhar com a classe robot pq ele não interage com a aplicação… Se a pessoa diminui a tela do jogo por exemplo, ele vai parar…
Exemplo: Quando aperto f1 o bot inicia, e f2 ele para (seta o flag para false)…
private void iniciaRobo() {
new Thread(new Runnable() {
public void run() {
while (flag == true) {
robot.mouseMove(1135, 540); // leva o mouse ateh o item
robot.mousePress(InputEvent.BUTTON1_MASK); // clica nele
robot.mouseMove(540, 395); //arrasta ele
robot.mouseRelease(InputEvent.BUTTON1_MASK); //solta ele
robot.delay(2000);
}
}
}).start();
}
Mas quando ele começa a pegar os itens, o “focus” vai para a aplicação, então se eu apertar o f2, o bot logicamente não vai parar…
[color=red]Eu quero:[/color]
Que o mouse fique parado durante a aplicacao… Ele vai ficar movimentando os itens, mas a seta do mouse fica parado para o usuario… Ele pode ficar mechendo em suas aplicacoes, enquanto o Bot realiza o trabalho no jogo…
Existe algum modo de fazer isso usando java? (A pessoa pode ficar mechendo em outras aplicações)
Se não, que linguagem eu deveria usar?
Eu estava fazendo isso antes das férias, e até criei um tópico, e me lembro que disseram para:
- Usar a API do Windows
- Manipular o protocolo do jogo
- Usar um “sniffer”
Não entendi nada disso…
Então, venho pedir a ajuda de vocês… Não quero código pronto, quero entender como funciona…
Estou disposto a aprender uma outra linguagem caso necessário.
Mas quero um ponto de iniciação, para eu poder ter 1 base!
Alguém pode me ajudar?