Eventos Actuales |
No hay eventos actualmente
|
| | Autor | Mensaje |
---|
Caballero

Barra de Salud : 
Mensajes : 420
Reputación : 26 Monedas de oro : 409 Monedas de Platino : 0 
Inventario :  
 | (#) Tema: Ayuda con una AI ! Jue Dic 20, 2018 10:44 pm | |
| Hola ,estoy desarrollandole una AI a un Mapa ,los heroes se mueven a los puntos principales antes de Salir a la base .
Pero no sale de ahi ,hago lo posible pero nada .
Podrían echarle un Vistazo a la AI y ver que tiene ? por favor ; disculpen la Molestia es que llevo 5 dias en esto .
Link : https://www.epicwar.com/maps/287997/
[i]Propiedad de : Locodavid15[/
Por favor analizen el Problema y diganme como resolverlo por favor |
|  | | 

Barra de Salud : 
Mensajes : 3543
Reputación : 677 Monedas de oro : 11074 Monedas de Platino : 0 
Inventario :  
 | (#) Tema: Re: Ayuda con una AI ! Vie Dic 21, 2018 8:54 pm | |
| Pues lo que pasa es que
[gui]AI R Ir a Carril Acontecimientos Tiempo - Every 0.90 seconds of game time Condiciones Acciones Grupo de jugadores - Pick every player in GrupoAIRebeldes and do (Actions) Bucle: Acciones If (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones AI_Is_Healing[(Player number of (Picked player))] Igual a False AI_is_Ahuyentado[(Player number of (Picked player))] Igual a False AI_is_Comprando[(Player number of (Picked player))] Igual a False AI_Is_Creeping[(Player number of (Picked player))] Igual a False AI_Orden_Actual[(Player number of (Picked player))] Igual a False Entonces: Acciones Set AI_Orden_Actual[(Player number of (Picked player))] = True Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Mover a AI_PuntosCarrilR[(Random integer number between 1 and 1)] Otros: Acciones [/gui]
este detonador está corriendo una única vez, enviandolo a la lane de top y luego
Luego tu detonador AI R Movimiento en top no anda para nada, porque [gui]((Region centered at AI_PuntosCarrilR[1] with size (200.00, 200.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a True [/gui]
[gui](Number of units in (Units within 50.00 of AI_PuntosCarrilR[1] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a True))) Mayor que o igual a 3 [/gui]
Esas dos condiciones son un desastre, primero porque son leaks, si quieres hacer una región utiliza una región con variable, o sino revisa la distancia entre puntos que es más fácil.
Y no comprendo tu segunda condición, asumo que quieres que el heroe solo avance cuando está rodeado de aliados, pero usas un area de busqueda muy pequeña, y puedes acortar la condición revisando que sean aliados de "Picked player" en lugar de owner of unit Pon esas cosas en variables, comprende las condiciones que planteas y tal vez funcionen tus detos de movimiento. También deberías inicializar todas esas variables booleanas en un detonador aparte, porque si su valor no está previamente colocado puede buguearse el if por ser booleanas sin valor asignado. |
|  | | Caballero

Barra de Salud : 
Mensajes : 420
Reputación : 26 Monedas de oro : 409 Monedas de Platino : 0 
Inventario :  
 | (#) Tema: Re: Ayuda con una AI ! Vie Dic 21, 2018 11:47 pm | |
| - @Marcos_M escribió:
- Pues lo que pasa es que
[gui]AI R Ir a Carril Acontecimientos Tiempo - Every 0.90 seconds of game time Condiciones Acciones Grupo de jugadores - Pick every player in GrupoAIRebeldes and do (Actions) Bucle: Acciones If (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones AI_Is_Healing[(Player number of (Picked player))] Igual a False AI_is_Ahuyentado[(Player number of (Picked player))] Igual a False AI_is_Comprando[(Player number of (Picked player))] Igual a False AI_Is_Creeping[(Player number of (Picked player))] Igual a False AI_Orden_Actual[(Player number of (Picked player))] Igual a False Entonces: Acciones Set AI_Orden_Actual[(Player number of (Picked player))] = True Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Mover a AI_PuntosCarrilR[(Random integer number between 1 and 1)] Otros: Acciones [/gui]
este detonador está corriendo una única vez, enviandolo a la lane de top y luego
Luego tu detonador AI R Movimiento en top no anda para nada, porque [gui]((Region centered at AI_PuntosCarrilR[1] with size (200.00, 200.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a True [/gui]
[gui](Number of units in (Units within 50.00 of AI_PuntosCarrilR[1] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a True))) Mayor que o igual a 3 [/gui]
Esas dos condiciones son un desastre, primero porque son leaks, si quieres hacer una región utiliza una región con variable, o sino revisa la distancia entre puntos que es más fácil.
Y no comprendo tu segunda condición, asumo que quieres que el heroe solo avance cuando está rodeado de aliados, pero usas un area de busqueda muy pequeña, y puedes acortar la condición revisando que sean aliados de "Picked player" en lugar de owner of unit Pon esas cosas en variables, comprende las condiciones que planteas y tal vez funcionen tus detos de movimiento. También deberías inicializar todas esas variables booleanas en un detonador aparte, porque si su valor no está previamente colocado puede buguearse el if por ser booleanas sin valor asignado. Desactivé las 2 Condiciones que Dices,que se suponía que se iba a mover sin verificar ninguna posicion ,pero sin embargo sigue sin Moverse,ni seteando las Booleanas Vacias. |
|  | | 

Barra de Salud : 
Mensajes : 3543
Reputación : 677 Monedas de oro : 11074 Monedas de Platino : 0 
Inventario :  
 | (#) Tema: Re: Ayuda con una AI ! Sáb Dic 22, 2018 1:14 am | |
| Para estas situaciones donde hay MUUUCHAS condiciones, y etc. Tienes que usar las acciones para mostrar mensajes en pantalla, poniendo mensajes en el entonces o en el "otros" de cada if para saber hacia donde va tu detonador, y así vas a saber con exactitud que hace. Y cuando sepas que hace, podemos avanzar a la parte de "Por qué lo hace?".
También, recomendaría no usar ifs con tantas condiciones, sino hacer Ifs anidados de la siguiente manera:
[gui]AI R Movimiento en Top Acontecimientos Tiempo - Every 0.70 seconds of game time Condiciones Acciones Grupo de jugadores - Pick every player in GrupoAIRebeldes and do (Actions) Bucle: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones AI_Orden_Actual[(Player number of (Picked player))] Igual a (==) True AI_Is_Creeping[(Player number of (Picked player))] Igual a (==) False AI_Listo[(Player number of (Picked player))] Igual a (==) True AI_is_Comprando[(Player number of (Picked player))] Igual a (==) False AI_Is_Healing[(Player number of (Picked player))] Igual a (==) False AI_is_Ahuyentado[(Player number of (Picked player))] Igual a (==) False AI_is_Atacando[(Player number of (Picked player))] Igual a (==) False Entonces: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[2] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[3] Otros: Acciones -------- VERIFICACION TORRE O NO -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones (Torre vigia|nBandida 0070 is alive) Igual a (==) True Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[4] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones (Torre vigia|nBandida 0070 is alive) Igual a (==) False Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[4] Otros: Acciones -------- ==NORMAL== -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[4] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0070 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[4] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[5] Otros: Acciones -------- VERIFICACION TORRE O NO 2 -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[5] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0069 is alive) Igual a (==) True (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[5] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 4 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[6] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[5] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0069 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[5] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[6] Otros: Acciones -------- ==NORMAL== -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[6] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0069 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[6] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[7] Otros: Acciones -------- VERIFICACION TORRE O NO 3 -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[7] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0068 is alive) Igual a (==) True (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[7] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 4 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[8] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[7] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0068 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[7] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 4 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[8] Otros: Acciones -------- ==FINAL== -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones (Torre vigia|nBandida 0068 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[8] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_PuntoRebeldeFinal Otros: Acciones Otros: Acciones [/gui]
Así todas las condiciones que se comparten están en el mismo lugar, no entorpecen la lectura, no alargan las líneas de tu detonadores y eso es bueno. Como dato adicional, puedes evitar el uso de la condición "And", simplemente pon las condiciones una tras otra, ya que funcionará como si fuera un And.
|
|  | | Caballero

Barra de Salud : 
Mensajes : 420
Reputación : 26 Monedas de oro : 409 Monedas de Platino : 0 
Inventario :  
 | (#) Tema: Re: Ayuda con una AI ! Lun Dic 24, 2018 2:14 pm | |
| - @Marcos_M escribió:
- Para estas situaciones donde hay MUUUCHAS condiciones, y etc. Tienes que usar las acciones para mostrar mensajes en pantalla, poniendo mensajes en el entonces o en el "otros" de cada if para saber hacia donde va tu detonador, y así vas a saber con exactitud que hace. Y cuando sepas que hace, podemos avanzar a la parte de "Por qué lo hace?".
También, recomendaría no usar ifs con tantas condiciones, sino hacer Ifs anidados de la siguiente manera:
[gui]AI R Movimiento en Top Acontecimientos Tiempo - Every 0.70 seconds of game time Condiciones Acciones Grupo de jugadores - Pick every player in GrupoAIRebeldes and do (Actions) Bucle: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones AI_Orden_Actual[(Player number of (Picked player))] Igual a (==) True AI_Is_Creeping[(Player number of (Picked player))] Igual a (==) False AI_Listo[(Player number of (Picked player))] Igual a (==) True AI_is_Comprando[(Player number of (Picked player))] Igual a (==) False AI_Is_Healing[(Player number of (Picked player))] Igual a (==) False AI_is_Ahuyentado[(Player number of (Picked player))] Igual a (==) False AI_is_Atacando[(Player number of (Picked player))] Igual a (==) False Entonces: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[2] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[3] Otros: Acciones -------- VERIFICACION TORRE O NO -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones (Torre vigia|nBandida 0070 is alive) Igual a (==) True Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[4] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones (Torre vigia|nBandida 0070 is alive) Igual a (==) False Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[4] Otros: Acciones -------- ==NORMAL== -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[4] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0070 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[4] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[5] Otros: Acciones -------- VERIFICACION TORRE O NO 2 -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[5] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0069 is alive) Igual a (==) True (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[5] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 4 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[6] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[5] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0069 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[5] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[6] Otros: Acciones -------- ==NORMAL== -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[6] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0069 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[6] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[7] Otros: Acciones -------- VERIFICACION TORRE O NO 3 -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[7] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0068 is alive) Igual a (==) True (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[7] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 4 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[8] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[7] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0068 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[7] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 4 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[8] Otros: Acciones -------- ==FINAL== -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones (Torre vigia|nBandida 0068 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[8] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_PuntoRebeldeFinal Otros: Acciones Otros: Acciones [/gui]
Así todas las condiciones que se comparten están en el mismo lugar, no entorpecen la lectura, no alargan las líneas de tu detonadores y eso es bueno. Como dato adicional, puedes evitar el uso de la condición "And", simplemente pon las condiciones una tras otra, ya que funcionará como si fuera un And.
Lo intentaré,pero no creo que solucione eso ,pero si tu dijiste que no use un And ,lo intentaré(r) entonces . |
|  | | Caballero

Barra de Salud : 
Mensajes : 420
Reputación : 26 Monedas de oro : 409 Monedas de Platino : 0 
Inventario :  
 | (#) Tema: Re: Ayuda con una AI ! Lun Dic 24, 2018 9:23 pm | |
| - @Marcos_M escribió:
- Para estas situaciones donde hay MUUUCHAS condiciones, y etc. Tienes que usar las acciones para mostrar mensajes en pantalla, poniendo mensajes en el entonces o en el "otros" de cada if para saber hacia donde va tu detonador, y así vas a saber con exactitud que hace. Y cuando sepas que hace, podemos avanzar a la parte de "Por qué lo hace?".
También, recomendaría no usar ifs con tantas condiciones, sino hacer Ifs anidados de la siguiente manera:
[gui]AI R Movimiento en Top Acontecimientos Tiempo - Every 0.70 seconds of game time Condiciones Acciones Grupo de jugadores - Pick every player in GrupoAIRebeldes and do (Actions) Bucle: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones AI_Orden_Actual[(Player number of (Picked player))] Igual a (==) True AI_Is_Creeping[(Player number of (Picked player))] Igual a (==) False AI_Listo[(Player number of (Picked player))] Igual a (==) True AI_is_Comprando[(Player number of (Picked player))] Igual a (==) False AI_Is_Healing[(Player number of (Picked player))] Igual a (==) False AI_is_Ahuyentado[(Player number of (Picked player))] Igual a (==) False AI_is_Atacando[(Player number of (Picked player))] Igual a (==) False Entonces: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[2] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[3] Otros: Acciones -------- VERIFICACION TORRE O NO -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones (Torre vigia|nBandida 0070 is alive) Igual a (==) True Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[4] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones (Torre vigia|nBandida 0070 is alive) Igual a (==) False Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[4] Otros: Acciones -------- ==NORMAL== -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[4] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0070 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[4] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[5] Otros: Acciones -------- VERIFICACION TORRE O NO 2 -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[5] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0069 is alive) Igual a (==) True (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[5] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 4 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[6] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[5] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0069 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[5] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[6] Otros: Acciones -------- ==NORMAL== -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[6] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0069 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[6] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[7] Otros: Acciones -------- VERIFICACION TORRE O NO 3 -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[7] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0068 is alive) Igual a (==) True (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[7] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 4 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[8] Otros: Acciones Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones ((Region centered at AI_Puntos_Rebelde[7] with size (10.00, 10.00)) contains AI_JugadorHeroe[(Player number of (Picked player))]) Igual a (==) True (Torre vigia|nBandida 0068 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[7] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 4 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_Puntos_Rebelde[8] Otros: Acciones -------- ==FINAL== -------- Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions) Si: Condiciones (Torre vigia|nBandida 0068 is alive) Igual a (==) False (Number of units in (Units within 50.00 of AI_Puntos_Rebelde[8] matching (((Matching unit) belongs to an ally of (Owner of AI_JugadorHeroe[(Player number of (Picked player))])) Igual a (==) True))) Mayor que o igual a (>=) 3 Entonces: Acciones Unidad - Order AI_JugadorHeroe[(Player number of (Picked player))] to Atacar-mover a AI_PuntoRebeldeFinal Otros: Acciones Otros: Acciones [/gui]
Así todas las condiciones que se comparten están en el mismo lugar, no entorpecen la lectura, no alargan las líneas de tu detonadores y eso es bueno. Como dato adicional, puedes evitar el uso de la condición "And", simplemente pon las condiciones una tras otra, ya que funcionará como si fuera un And.
No funciona  ,deberias primero probar el mapa . |
|  | | 

Barra de Salud : 
Mensajes : 3543
Reputación : 677 Monedas de oro : 11074 Monedas de Platino : 0 
Inventario :  
 | (#) Tema: Re: Ayuda con una AI ! Miér Dic 26, 2018 8:22 am | |
| Pusiste los carteles de texto que te dije? Si ninguno se activa es porque ninguna condición se cumple, esto puede pasar porque el grupo de jugadores no funcione o porque la gran condición inicial nunca se cumple |
|  | | Caballero

Barra de Salud : 
Mensajes : 420
Reputación : 26 Monedas de oro : 409 Monedas de Platino : 0 
Inventario :  
 | (#) Tema: Re: Ayuda con una AI ! Jue Dic 27, 2018 6:29 am | |
| - @Marcos_M escribió:
- Pusiste los carteles de texto que te dije?
Si ninguno se activa es porque ninguna condición se cumple, esto puede pasar porque el grupo de jugadores no funcione o porque la gran condición inicial nunca se cumple Posiblemente,tendré que ver que anula esa Variable. |
|  | |
 | (#) Tema: Re: Ayuda con una AI !  | |
| |
|  | | |
Temas similares |  |
|
| Permisos de este foro: | No puedes responder a temas en este foro.
| |
| |
| Últimos temas | » Hardcore Ninja [IA] Ayer a las 6:07 am por Satoshi» Generador de Nombres Lun Ene 18, 2021 3:40 am por Satoshi» Modelos Final Fantasy Tactics Lun Ene 18, 2021 3:34 am por Satoshi» Crear Oleadas de Unidades Dom Ene 17, 2021 10:40 pm por GhxBronie» Crear Respawn de Jungla al estilo Dota Dom Ene 17, 2021 10:39 pm por GhxBronie» Crear Bonificación a Coste de Maná/Segundo Dom Ene 17, 2021 10:38 pm por GhxBronie» APORTE MODELOS 3D DE EL JUEGO "SMITE"  Jue Ene 14, 2021 8:06 pm por israelxd03» Ayuda - Reunir unidades y hacer accion Miér Ene 13, 2021 7:08 pm por Lordarkangel» Buen dia, preguntando desdpues de tiempo Miér Ene 13, 2021 6:51 pm por neruvian» Unidad que no pueda ser atacado por aliados Miér Ene 13, 2021 6:39 pm por neruvian» Has Tu DOTA y no jodas mas [+IA] = By ArOn Miér Ene 13, 2021 1:01 pm por fernando54988» DotA 6.83d_AI 1.8 "Kokox" Español Miér Ene 13, 2021 12:53 pm por fernando54988» [Anuncio] Sistema de "Especialidades" o "Profesiones" del editor Jue Ene 07, 2021 9:16 am por PENSATIVO197» [TUTORIAL] Optimizar un mapa al 200%!!! • Jue Ene 07, 2021 9:07 am por PENSATIVO197» Explicación de Datos en Spells Estándar V2 Lun Ene 04, 2021 2:12 pm por GhxBronie |
Los posteadores más activos de la semana | |
|