Ajuda ao Novato

Tire suas dúvidas sobre programação em AutoHotkey

Moderator: Gio

Matrakinhabr
Posts: 2
Joined: 13 Dec 2020, 14:31

Ajuda ao Novato

Post by Matrakinhabr » 13 Dec 2020, 22:16

Boa noite pessoal, eu uso o AH faz um tempo pra comandos simples, em jogos.

Mas tem uma coisa que tu pensar fazer a tempos.

Então quero fazer um script que faça algumas ações pra mim, e até ai tudo bem, com o spy eu consigo fazer 80% delas.

Porem tem uma que ta quebrando minha cabeça. que é de andar pois o spy só acha a coordenadas do ponto que estou e caso apareça algo no caminho pode trancar o script. precisaria fazer um check antes de continuar.

Ai que vem minha pergunta: tem como achar coordenadas pra cada ponto? e tem uma forma que fazer um check se foi feita a ação?

https://ibb.co/mSZbQWj
esse é o mapa, e cada bandeira é um ponto onde tenho que ir e fazer uma ação.

se alguém conseguir me dar uma luz eu agradeço demais.

Muito obrigado desde já.
User avatar
Gio
Posts: 1116
Joined: 30 Sep 2013, 10:54
Location: Brazil

Re: Ajuda ao Novato

Post by Gio » 14 Dec 2020, 10:07

Bom dia Matrakinhabr.

Seja bem-vindo ao fórum da comunidade do AutoHotkey.

Ao descrever sua pergunta, quando se tratar da automação de alguma software/jogo, é importante ter em mente que as pessoas provavelmente não usam o mesmo software/jogo, então as descrições tem que ser o mais detalhadas possível para que um leigo possa entender.

Por exemplo, essa ação de "andar", como isso é feito, você clica no mapa, pressiona as teclas WASD ou algum outro gatilho semelhante?
tem como achar coordenadas pra cada ponto?

Pela foto que você mandou, eu suponho que a sua posição seja a cruz branca e os objetivos são as bandeiras certo? Então você quer que o script descubra a distância e o sentido de cada bandeira em relação à sua posição atual? Se for isso, pode fazer com alguns ImageSearch ou PixelSearch seguido de cálculos matemáticos pra determinar a distância e o sentido.

Por exemplo, suponha que o mapa da foto tem as seguintes dimensões: 200 pixels de altura e 200 pixels de largura. Suponhamos também que ele se localize na tela no ponto XY 700x800 (ou seja, o primeiro pixel do canto superior-esquerdo do mapinha está nessa coordenada na tela do computador). Suponhamos então que você localiza uma bandeira na posição 780x820 e a cruz na posição 750x840.

Neste caso, você precisaria andar 30 pixels para a esquerda e 20 pixels para cima para chegar nessa bandeira. Se pude clicar diretamente no minimapa, basta clicar na coordenada da bandeira (780x820), mas se não puder, deve ir movendo o personagem com as teclas WASD (ou outro controle) até chegar lá.
e tem uma forma que fazer um check se foi feita a ação?

Depende de como o jogo te informa se a ação foi feita. A bandeira some? Se sim, é só observar se (e quando) o ImageSearch falhará em detectar a bandeira.
Matrakinhabr
Posts: 2
Joined: 13 Dec 2020, 14:31

Re: Ajuda ao Novato

Post by Matrakinhabr » 14 Dec 2020, 18:05

Boa Noite Gio, agradeço a resposta em tão pouco tempo e vou melhorar as informações.

1- Teria que ser pelos awsd ou pelas setas direcionais, até pode ser clicando no map mas é mais fácil dar erro.( para movimentar o personagem )

2- As bandeirinhas não somem quando tu chega no local, elas são fixas. então pra fazer o imagem ou pixel acredito que teria uma chance maior de erro.

3- no caso a melhor solução seria assim eu acho:

Usar o awsd e a cada passo conferir se a ação foi feita mesmo, no meio do caminho pode aparecer monstros e se não tiver a conferencia pode dar um problema, a questão é que pensei fazer pelo spy, o problema é que não iria conferir. e conferindo ficaria perfeito.
Post Reply

Return to “Ajuda e Suporte Geral”