EL problema aqui es que lo unico que he logrado avanzar es en que el programa reconozca las imagenes del juego tales como enemigos y objetos para recojer pero mas nada.
Lo que necesito es un ejemplo de como interactuar con esa informacion.
Sigo sin entender bien de qué hablas, quizá ignoro demasiado del tema.
Me imagino por ejemplo que si el enemigo está a la derecha y tu bot quiere escapar de él entonces debería moverse hacia la izquierda esquivando obstáculos, ideando un trayecto para no quedar en un hueco, aunque eso último es un tanto difícil de lograr, por ejemplo en Age of Empires 2 no lo lograron del todo...
También deberías considerar varios enemigos a la vez porque si hay uno en la izquierda y otro en la derecha entonces le convendrá moverse hacia abajo o arriba.
Lo de agarrar objetos es cosa más bien tuya, los eliminas de la pantalla y de la lista de cosas en la pantalla. Y los agregas en la lista de objetos de tu bot.
Exacto pero no logro encajar esos datos con instrucciones.( ni me imagino siquiera como)
Creo que haciendo muchas funciones. Función huir, función atacar, función buscar enemigo, acercarse a objeto...
Adermás, olvido esto pero creo que se puede, en vez de usar ifs, hacer llamadas a funciones variables. Por ejemplo: Llamar función "Peligro"+poderenemigo. Creo que requiere eval, no sé si tu lenguaje lo permite. Lo que logras con eso es que se active Peligro1, o Peligro2, etc, según el caso. Puedes sumar cosas en la llamada de modo que abarques todas las situaciones posibles que te interesen. Tenés que ver qué cosas te interesan y si puedes manifestarlas con un número o palabra, en lo posible sin usar ifs.
Un ejemplo:
BotfunciónBLFFFR
Significa:
El enemigo nro1 está cerca de tu Base, y cerca de ti, en Left.
El enemigo nro2 está Far de tu base, y Far de ti.
El enemigo nro3 está Far de tu base, y carca de ti, en Right.
Con eso armas la función como quieras, o sea pones en ella qué quieres que se haga. Y así con cada función posible. Puedes usar subfunciones para evitar repetir cosas.
No sé hasta qué punto es un buen método, pero a falta de otras respuestas...
En eso pense porque la idea ( o lo que creo) es que el programa tenga la menor asistencia posible.
¿A qué llamas asistencia? ¿que no requiera constantes instrucciones de ti como jugador?
Los humanos no somos perfectos ni hacemos las cosas exactamente es por eso que deberia tener comportamientos erráticos espontáneos que simulen a un ser humano.
Entonces en tu caso una IA que aprenda me parece ultra complicada, no puedo ayudarte, nunca pensé ni me interesa hacer una que cometa "errores a propósito" xD
Ponele random, o sea, posibilidad de hacer ciertas tonterías en ciertos casos.
A ver, me imagino un juego de este estilo:
https://www.youtube.com/watch?v=MO9Buh0B494Capaz que en tu caso se pueden mover en diagonal o se ve en diagonal (tipo Final Fantasy Tactics), aunque te recomiendo este
https://www.youtube.com/watch?v=PJ2KJc61WZ4¿Lograste que tu tanque se mueva según lo indiques?
¿que no pueda pasar por obstáculos?
¿que agarre los ítems y tengan efecto o se agreguen a la lista de usables, y realmente sean usables y tengan efecto?
¿que dispare cuando lo indiques?
¿que el disparo rompa cosas?
------------------
¿aparecen tanques enemigos?
¿se mueven?
¿chocan con obstáculos?
¿te buscan?
¿te disparan?
¿sus disparos te matan?
¿tú los matas con tus disparos?
----------------
¿tu bot se mueve en busca de enemigos?
¿les dispara?
¿sus disparos los matan?
¿lo pueden matar?
¿huye?
¿te ayuda si ve que estás en peligro?
¿busca ítems?
¿tienen efecto?
¿algo más?