¿¿Existe alguna manera para que los enemigos que controla la CPU respondan a disparos,
patadas... esquivandose, o que ataquen en el momento oportuno... que no sea que uno
mismo tenga que calcular todas las posibilidades??
creo que no.
lamentablemente... o por fortuna (según la óptica)... tu puedes y tienes que hacerlo manualmente :)
saludos
Usa redes neuronales, con eso puedes entrenar una red y hacer que responda a distintos estimulos. De hecho segun como plantees todo podras hacer que aprenda a medida que juega para que mejoren los enemigos. Tienes la opcion de ,si no tienes idea de como plantear el problema para llegar a una solucion, usar algoritmos evolutivos. Mas faciles de programar, mas faciles de plantear, pero es mas dificil que converjan a una solucion. :S
Quote from: animanegra on July 02, 2009, 07:31:27 AM
Usa redes neuronales, con eso puedes entrenar una red y hacer que responda a distintos estimulos. De hecho segun como plantees todo podras hacer que aprenda a medida que juega para que mejoren los enemigos. Tienes la opcion de ,si no tienes idea de como plantear el problema para llegar a una solucion, usar algoritmos evolutivos. Mas faciles de programar, mas faciles de plantear, pero es mas dificil que converjan a una solucion. :S
Ok parece una buenisima idea animanegra
pero... ¿Cómo lo hago? ¿Tienes a mano un ejemplo de redes neuronales?
gracias!!
No he entendido lo de calcular todas las posibilidades. :(
;D debes definir todos los eventos y asi contruir tu IA
es como Windows tiene definidos todos los eventos posibles al usuario tu debes hacer lo mismo
La IA por script es lo más sencillo para empezar no te recomiendo redes neuronales todavía.
Debes declarar todas las acciones de importancia como globales, que los enemigos sepan que acción estas haciendo, si implica daño, el rango de ataque, en que posición estas (esta es vital para moverse a tu alrededor) y ellos deben saber su própio estado y actuar en consecuencia.
Lo que es básicamente una IA que reaccione a los estimulos, puedes usar la función aleatoria para hacer que reaccione de formas distintas y cambiar el rango aleatorio para que dependa de diferentes factores (para darle más prioridad a un resultado que a otro, pero no total).
por supuesto hay decenas de juegos en el bennupack que pueden servir de
referencia..
:o
http://animanegra.blogspot.com/2007/05/libreria-de-redes-neuronales-en-fenix.html
Ahi tienes la libreria, corta pega e include, los ejemplos de uso los tendre en algun almacen. Estaba hecha para fenix 8.4 :S y rulaba bien. No la he vuelto a probar tras eso.
Quotehttp://animanegra.blogspot.com/2007/05/libreria-de-redes-neuronales-en-fenix.html
Ahi tienes la libreria, corta pega e include, los ejemplos de uso los tendre en algun almacen. Estaba hecha para fenix 8.4 :S y rulaba bien. No la he vuelto a probar tras eso.
wow, suena genial, pero al ponerla en bennu no quiere muy bien, no quiere compilar...
este método de ia suena muy interesante, sería bueno tener los ejemplos.
saludos...
En cuanto los logre localizar los ejemplos los subo a algun lado. Pero los ejemplos son sencillotes, no esperes nada impresionante porque son ejemplos de uso de la libreria.
OK, siguiendo pues los consejos de Prg y BoMbErLiNk
y visto k no he cogido del todo la idea d las redes neuronales ??? ???
me parece k empezare por calcular todas las posibilidades
Ya colgare mis primeros resultados y...
;D GRACIAS ;D
Vamos a ver.... es que... dependiendo de como va a ser tu juego sería recomendable usar una inteligencia u otra.
Yo empecé con un juego de baloncesto y ahí requería matrices que se modificaban con funciones. Y luego con uno de estrategía, me pareció que necesitaba lo mismo. Pero esos son juegos complicados, si vas a poner algo sencillito, pues con ramificaciones de if y switch es suficiente.
Vamos, creo yo.
hola
he estado probando como dijo windgate utilizando rand, if y cosas asi
aki dejo la ultima version
http://www.mediafire.com/download.php?zmhtmnygzhz
el codigo esta en TAD/1vs1 en las lineas 300 y pico
para probarlo en el menu dadle a modos de juego, 1vs1, 1 jugador
funciona regular, gracias por mirarlo
Está interesante ;) suerte.
Estoy mirándome un poco lo de las redes neuronales, pero buf, no sé si es que estoy espeso por la calor o que es complicadillo de por sí...
De momento con números aleatorios y comprobación de condiciones se puede hacer una IA decente para un juego de peleas, donde básicamente hay distancias de separación y unos pocos golpes distintos que ejecutar.
Por supuesto si quieres hacer un juego de estrategia que sea capaz de ganarte valorando todas las posibilidades y tomando la decisión más correcta... La cosa se complica.
A ver cuándo saco rato para ponerme con un juego que requiera una IA en condiciones y exploto más esa rama, por ahora todo lo que conozco sobre IA se basa en árboles, y sirve para juegos de puzzle, pero poco más.