Page 1 of 1

Neural Network no ahk?

Posted: 23 Mar 2018, 19:22
by juanmuscaria
Tava pensando em tenta fazer uma inteligencia artificial para jogar jogos simples no emulador(tipo mario ou bomberman).
Teria uma forma de fazer uma neural network no ahk que lê a tela,identifique os sprites e faça o personagem andar de acordo com o que tem na tela,e ir aprendendo a jogar com o tempo?
E também teria uma forma rápida e eficiente de localizar uma imagem na tela e passar o xy da imagem?

Re: Neural Network no ahk?

Posted: 24 Mar 2018, 08:23
by Gio
Bom dia Juan.

Acredito que sua ideia é possível sim, mas talvez ela vá na contramão do que seria recomendado no caso. Um programa que reconhecesse todos os sprites possíveis na tela de um jogo como Super Mario World seria bem demorado de fazer, sem contar que provavelmente ficaria pesado demais para rodar em um computador comum. A melhor solução seria encontrar um meio de "conectar" ao jogo e buscar as informações através de objetos, por exemplo. Mas para fazer isso, acredito que você precisaria de um emulador com suporte para esse tipo de ação.

No tutorial de Neural Networks que fiz para o fórum em inglês tem até alguns links para projetos semelhantes. Um deles é este aqui. O autor do video até mesmo disponibilizou o código fonte, que está escrito em Lua, na descrição do video.

Olhando nos comentários do código, vemos que ele usou um emulador chamado BizHawk. E pesquisando um pouco mais, descobri que o BizHawk oferece suporte nativo para scripts em Lua. Isso com certeza ajudou muito no projeto dele. Então, se você encontrar um emulador pronto com uma API adequada, que tenha suporte para conexões via COM ou DllCall() por exemplo, podemos até pensar em usar AutoHotkey focando apenas no desenvolvimento da rede, do contrário você terá que escrever um emulador em AutoHotkey antes. Outra opção é, claro, usar Lua, que já vai ter o emulador pronto e até um exemplo de código para você se basear.