BuscarEntrar al ChatboxPortal del foroÍndiceSpellsRegistrarseConectarseGrupos de Usuarios
Eventos Actuales
¡ Bienvenido Invitado!

Editar Perfil

Tus temas
Tus Mensajes ()

Enlaces rápidos








Comparte | .
 

 Ayuda (Mejoramiento de Spell) [Aleteo del Fenix]

Ver el tema anterior Ver el tema siguiente Ir abajo 
AutorMensaje
Feixzero
Soldado
avatar


Barra de Salud : Su salud está al 100% - Este usuario no ha recibido infracciones

Mensajes Mensajes : 85
Reputación Reputación : 10
Monedas de oro : 413
Monedas de Platino : 0

Inventario :



Mensaje(#) Tema: Ayuda (Mejoramiento de Spell) [Aleteo del Fenix] Vie Sep 08, 2017 3:00 pm

Buenas! vengo a pedir una recomendación para mejorar mi spell, este habilidad consiste en lanzar tres ondas hacia al frente del héroe que causa "x" daño a las unidades dentro del area de las ondas, casi igual que onda expansiva pero con tres ondas. Sin embargo me siento inconforme con el movimiento que hacen las ondas, ya que se ve como si se movieran pausadamente de un punto a otro. Les dejo mi spell para que vean y me recomienden como hacer para que el movimiento de los misiles sea mas fluido.

[gui]Aleteo del Fenix
   Acontecimientos
       Unidad - A unit Inicia el efecto de una habilidad
   Condiciones
       (Ability being cast) Igual a Aleteo del Fenix
   Acciones
       Set Hero[1] = (Casting unit)
       Set Point[1] = (Target point of ability being cast)
       Unidad - Create 1 Dummy for (Owner of Hero[1]) at (Position of Hero[1]) facing (Facing of Hero[1]) degrees
       Set Dummy[1] = (Last created unit)
       Unidad - Turn collision for Dummy[1] Encendido
       Unidad - Create 1 Dummy for (Owner of Hero[1]) at ((Position of Hero[1]) offset by (-15.00, 0.00)) facing ((Facing of Hero[1]) - 15.00) degrees
       Set Dummy[2] = (Last created unit)
       Unidad - Turn collision for Dummy[2] Encendido
       Unidad - Create 1 Dummy for (Owner of Hero[1]) at ((Position of Hero[1]) offset by (0.00, 15.00)) facing ((Facing of Hero[1]) + 15.00) degrees
       Set Dummy[3] = (Last created unit)
       Unidad - Turn collision for Dummy[3] Encendido
       Detonador - Turn on Aleteo Loop
[/gui]

[gui]Aleteo Loop
   Acontecimientos
       Tiempo - Every 0.13 seconds of game time
   Condiciones
   Acciones
       Set FlameP[1] = (Position of Dummy[1])
       Set FlameP[10] = (FlameP[1] offset by 200.00 towards (Facing of Dummy[1]) degrees)
       Unidad - Move Dummy[1] instantly to FlameP[10]
       Set FlameP[2] = (Position of Dummy[2])
       Set FlameP[11] = (FlameP[2] offset by 200.00 towards (Facing of Dummy[2]) degrees)
       Unidad - Move Dummy[2] instantly to FlameP[11]
       Set FlameP[3] = (Position of Dummy[3])
       Set FlameP[12] = (FlameP[3] offset by 200.00 towards (Facing of Dummy[3]) degrees)
       Unidad - Move Dummy[3] instantly to FlameP[12]
       Grupo de unidad - Pick every unit in (Units within 150.00 of FlameP[1] matching (((Matching unit) belongs to an enemy of (Owner of Hero[1])) Igual a True)) and do (Unidad - Cause Hero[1] to damage (Picked unit), dealing 50.00 damage of attack type Perforante and damage type Fuego)
       If (All Conditions are True) then do (Then Actions) else do (Else Actions)
           Si: Condiciones
               (Distance between (Position of Dummy[1]) and Point[1]) Mayor que o igual a 800.00
           Entonces: Acciones
               Unidad - Kill Dummy[1]
               Unidad - Kill Dummy[2]
               Unidad - Kill Dummy[3]
               Detonador - Turn off (This trigger)
               Custom script:   call RemoveLocation(udg_Point[1])
               Custom script:   call RemoveLocation(udg_FlameP[1])
               Custom script:   call RemoveLocation(udg_FlameP[10])
           Otros: Acciones
[/gui]


Volver arriba Ir abajo
Marcos_M

avatar


Barra de Salud : Su salud está al 100% - Este usuario no ha recibido infracciones

Mensajes Mensajes : 2629
Reputación Reputación : 408
Monedas de oro : 8096
Monedas de Platino : 0

Inventario :



Mensaje(#) Tema: Re: Ayuda (Mejoramiento de Spell) [Aleteo del Fenix] Vie Sep 08, 2017 4:15 pm

Cambia el bucle a 0.03. Y también tienes que limpiar los puntos, dejan leaks y el grupo también deja leaks. Leaks en un spell de misiles, causará lag
PD: Por qué usas 0.13???
Volver arriba Ir abajo
En línea
Feixzero
Soldado
avatar


Barra de Salud : Su salud está al 100% - Este usuario no ha recibido infracciones

Mensajes Mensajes : 85
Reputación Reputación : 10
Monedas de oro : 413
Monedas de Platino : 0

Inventario :



Mensaje(#) Tema: Re: Ayuda (Mejoramiento de Spell) [Aleteo del Fenix] Vie Sep 08, 2017 6:00 pm

Listo Gracias! aqui esta la mejora del Loop y bueno la razón por la cual use 0.13 es porque hice este detonador hace un buen tiempo y hace poco me entero que lo mejor es poner 0.03, ya que es lo mas adecuado según la memoria del editor (eso es lo que entiendo). Por cierto ahora si mi spell esta aprobado? Para ponerlo en la sección de Spells.

[gui]Aleteo Loop
   Acontecimientos
       Tiempo - Every 0.03 seconds of game time
   Condiciones
   Acciones
       Set FlameP[1] = (Position of Dummy[1])
       Set FlameP[10] = (FlameP[1] offset by 50.00 towards (Facing of Dummy[1]) degrees)
       Unidad - Move Dummy[1] instantly to FlameP[10]
       Set FlameP[2] = (Position of Dummy[2])
       Set FlameP[11] = (FlameP[2] offset by 50.00 towards (Facing of Dummy[2]) degrees)
       Unidad - Move Dummy[2] instantly to FlameP[11]
       Set FlameP[3] = (Position of Dummy[3])
       Set FlameP[12] = (FlameP[3] offset by 50.00 towards (Facing of Dummy[3]) degrees)
       Unidad - Move Dummy[3] instantly to FlameP[12]
       Grupo de unidad - Pick every unit in (Units within 300.00 of FlameP[1] matching (((Matching unit) belongs to an enemy of (Owner of Hero[1])) Igual a True)) and do (Unidad - Cause Hero[1] to damage (Picked unit), dealing (Real(((Fuerza of Hero[1] (Incluir bonuses)) x 50))) damage of attack type Conjuros and damage type Fuego)
       If (All Conditions are True) then do (Then Actions) else do (Else Actions)
           Si: Condiciones
               (Distance between (Position of Dummy[1]) and Point[1]) Mayor que o igual a 800.00
           Entonces: Acciones
               Unidad - Kill Dummy[1]
               Unidad - Kill Dummy[2]
               Unidad - Kill Dummy[3]
               Detonador - Turn off (This trigger)
               Custom script:   call RemoveLocation(udg_Point[1])
               Custom script:   call RemoveLocation(udg_FlameP[1])
               Custom script:   call RemoveLocation(udg_FlameP[2])
               Custom script:   call RemoveLocation(udg_FlameP[3])
               Custom script:   call RemoveLocation(udg_FlameP[10])
               Custom script:   call RemoveLocation(udg_FlameP[11])
               Custom script:   call RemoveLocation(udg_FlameP[12])
           Otros: Acciones
[/gui]


Volver arriba Ir abajo
Marcos_M

avatar


Barra de Salud : Su salud está al 100% - Este usuario no ha recibido infracciones

Mensajes Mensajes : 2629
Reputación Reputación : 408
Monedas de oro : 8096
Monedas de Platino : 0

Inventario :



Mensaje(#) Tema: Re: Ayuda (Mejoramiento de Spell) [Aleteo del Fenix] Vie Sep 08, 2017 6:23 pm

Eliminas mal los leaks, te explico

[gui]Aleteo Loop
   Acontecimientos
       Tiempo - Every 0.03 seconds of game time
   Condiciones
   Acciones
       Set FlameP[1] = (Position of Dummy[1])
       Set FlameP[10] = (FlameP[1] offset by 50.00 towards (Facing of Dummy[1]) degrees)
       Unidad - Move Dummy[1] instantly to FlameP[10]
       Set FlameP[2] = (Position of Dummy[2])
       Set FlameP[11] = (FlameP[2] offset by 50.00 towards (Facing of Dummy[2]) degrees)
       Unidad - Move Dummy[2] instantly to FlameP[11]
       Set FlameP[3] = (Position of Dummy[3])
       Set FlameP[12] = (FlameP[3] offset by 50.00 towards (Facing of Dummy[3]) degrees)
       Unidad - Move Dummy[3] instantly to FlameP[12]
       Grupo de unidad - Pick every unit in (Units within 300.00 of FlameP[1] matching (((Matching unit) belongs to an enemy of (Owner of Hero[1])) Igual a True)) and do (Unidad - Cause Hero[1] to damage (Picked unit), dealing (Real(((Fuerza of Hero[1] (Incluir bonuses)) x 50))) damage of attack type Conjuros and damage type Fuego)
       If (All Conditions are True) then do (Then Actions) else do (Else Actions)
           Si: Condiciones
               (Distance between (Position of Dummy[1]) and Point[1]) Mayor que o igual a 800.00
           Entonces: Acciones
               Unidad - Kill Dummy[1]
               Unidad - Kill Dummy[2]
               Unidad - Kill Dummy[3]
               Detonador - Turn off (This trigger)
               Custom script:   call RemoveLocation(udg_Point[1])
               Custom script:   call RemoveLocation(udg_FlameP[1])
               Custom script:   call RemoveLocation(udg_FlameP[2])
               Custom script:   call RemoveLocation(udg_FlameP[3])
               Custom script:   call RemoveLocation(udg_FlameP[10])
               Custom script:   call RemoveLocation(udg_FlameP[11])
               Custom script:   call RemoveLocation(udg_FlameP[12])
           Otros: Acciones
[/gui]

De esta manera, estás destruyendo los puntos, cuando la condición se cumple. Esta condición(que tiene un leak), sólo se cumple al final del spell. Pero los puntos se crean cada vez que el spell corre, fijate que haces Set Punto = blablabla, cada vez que corre el detonador. Simplemente tienes que sacar afuera del if(por debajo de este) la destrucción de los puntos FlameP[1].[2],[3],[10],[11] y [12]

Point[1] es diferente ya que tiene el Set solamente en el primer detonador y nunca en el segundo.

[gui](Distance between (Position of Dummy[1]) and Point[1]) Mayor que o igual a 800.00[/gui]

->

[gui](Distance between FlameP[10] and Point[1]) Mayor que o igual a 800.00[/gui]
Estas condiciones son iguales, ya que TU cambiaste la posición de la unidad Dummy a FlameP[10] y esa es la única fuente de movimiento

Por último, te olvidaste del leak de grupo, lo que puedes hacer es usar el siguiente custom script
[gui]Custom script: set bj_wantDestroyGroup = true[/gui]
Que destruirá el grupo tan pronto termine de ser usado.


Y lamento decirte que si quieres que sea aprobado en el foro, un requisito es que sea MUI, lo que este spell no es :\
Quizás esto pueda ayudarte:
https://www.hiveworkshop.com/threads/mui.242000/
También puedes revisar la sección de creación de spells para aprender a hacer MUI tu spell
Volver arriba Ir abajo
En línea
Feixzero
Soldado
avatar


Barra de Salud : Su salud está al 100% - Este usuario no ha recibido infracciones

Mensajes Mensajes : 85
Reputación Reputación : 10
Monedas de oro : 413
Monedas de Platino : 0

Inventario :



Mensaje(#) Tema: Re: Ayuda (Mejoramiento de Spell) [Aleteo del Fenix] Vie Sep 08, 2017 6:46 pm

Vale creo que es así si no me equivoco.

[gui]Aleteo Loop
   Acontecimientos
       Tiempo - Every 0.03 seconds of game time
   Condiciones
   Acciones
       Set FlameP[1] = (Position of Dummy[1])
       Set FlameP[10] = (FlameP[1] offset by 50.00 towards (Facing of Dummy[1]) degrees)
       Unidad - Move Dummy[1] instantly to FlameP[10]
       Set FlameP[2] = (Position of Dummy[2])
       Set FlameP[11] = (FlameP[2] offset by 50.00 towards (Facing of Dummy[2]) degrees)
       Unidad - Move Dummy[2] instantly to FlameP[11]
       Set FlameP[3] = (Position of Dummy[3])
       Set FlameP[12] = (FlameP[3] offset by 50.00 towards (Facing of Dummy[3]) degrees)
       Unidad - Move Dummy[3] instantly to FlameP[12]
       Grupo de unidad - Pick every unit in (Units within 300.00 of FlameP[1] matching (((Matching unit) belongs to an enemy of (Owner of Hero[1])) Igual a True)) and do (Unidad - Cause Hero[1] to damage (Picked unit), dealing (Real(((Fuerza of Hero[1] (Incluir bonuses)) x 50))) damage of attack type Conjuros and damage type Fuego)
       If (All Conditions are True) then do (Then Actions) else do (Else Actions)
           Si: Condiciones
               (Distance between FlamePoint[10]) and Point[1] Mayor que o igual a 800.00
           Entonces: Acciones
               Unidad - Kill Dummy[1]
               Unidad - Kill Dummy[2]
               Unidad - Kill Dummy[3]
               Custom script:   call RemoveLocation(udg_Point[1])
               Detonador - Turn off (This trigger)
           Otros: Acciones
       Custom script:   call RemoveLocation(udg_FlameP[1])
       Custom script:   call RemoveLocation(udg_FlameP[2])
       Custom script:   call RemoveLocation(udg_FlameP[3])
       Custom script:   call RemoveLocation(udg_FlameP[10])
       Custom script:   call RemoveLocation(udg_FlameP[11])
       Custom script:   call RemoveLocation(udg_FlameP[12])
       Custom script:   set bj_wantDestroyGroup = true
[/gui]




Última edición por Feixzero el Vie Sep 08, 2017 6:51 pm, editado 1 vez
Volver arriba Ir abajo
Marcos_M

avatar


Barra de Salud : Su salud está al 100% - Este usuario no ha recibido infracciones

Mensajes Mensajes : 2629
Reputación Reputación : 408
Monedas de oro : 8096
Monedas de Platino : 0

Inventario :



Mensaje(#) Tema: Re: Ayuda (Mejoramiento de Spell) [Aleteo del Fenix] Vie Sep 08, 2017 6:50 pm

[gui]Custom script: set bj_wantDestroyGroup = true[/gui]
Este tiene que ir justo arriba del grupo. Perdona, pensé que lo había aclarado xD

(También revisa el If que debes cambiarle una cosilla, te lo escribí en el post anterior)
Volver arriba Ir abajo
En línea
Feixzero
Soldado
avatar


Barra de Salud : Su salud está al 100% - Este usuario no ha recibido infracciones

Mensajes Mensajes : 85
Reputación Reputación : 10
Monedas de oro : 413
Monedas de Platino : 0

Inventario :



Mensaje(#) Tema: Re: Ayuda (Mejoramiento de Spell) [Aleteo del Fenix] Vie Sep 08, 2017 6:55 pm

Ok. Ahora si, muchas gracias!

[gui] Aleteo Loop
   Acontecimientos
       Tiempo - Every 0.03 seconds of game time
   Condiciones
   Acciones
       Set FlameP[1] = (Position of Dummy[1])
       Set FlameP[10] = (FlameP[1] offset by 50.00 towards (Facing of Dummy[1]) degrees)
       Unidad - Move Dummy[1] instantly to FlameP[10]
       Set FlameP[2] = (Position of Dummy[2])
       Set FlameP[11] = (FlameP[2] offset by 50.00 towards (Facing of Dummy[2]) degrees)
       Unidad - Move Dummy[2] instantly to FlameP[11]
       Set FlameP[3] = (Position of Dummy[3])
       Set FlameP[12] = (FlameP[3] offset by 50.00 towards (Facing of Dummy[3]) degrees)
       Unidad - Move Dummy[3] instantly to FlameP[12]
       Custom script:   set bj_wantDestroyGroup = true
       Grupo de unidad - Pick every unit in (Units within 300.00 of FlameP[1] matching (((Matching unit) belongs to an enemy of (Owner of Hero[1])) Igual a True)) and do (Unidad - Cause Hero[1] to damage (Picked unit), dealing (Real(((Fuerza of Hero[1] (Incluir bonuses)) x 50))) damage of attack type Conjuros and damage type Fuego)
       If (All Conditions are True) then do (Then Actions) else do (Else Actions)
           Si: Condiciones
               (Distance between FlameP[10] and Point[1]) Mayor que o igual a 800.00
           Entonces: Acciones
               Unidad - Kill Dummy[1]
               Unidad - Kill Dummy[2]
               Unidad - Kill Dummy[3]
               Custom script:   call RemoveLocation(udg_Point[1])
               Detonador - Turn off (This trigger)
           Otros: Acciones
       Custom script:   call RemoveLocation(udg_FlameP[1])
       Custom script:   call RemoveLocation(udg_FlameP[2])
       Custom script:   call RemoveLocation(udg_FlameP[3])
       Custom script:   call RemoveLocation(udg_FlameP[10])
       Custom script:   call RemoveLocation(udg_FlameP[11])
       Custom script:   call RemoveLocation(udg_FlameP[12])
[/gui]


Volver arriba Ir abajo
Contenido patrocinado




Mensaje(#) Tema: Re: Ayuda (Mejoramiento de Spell) [Aleteo del Fenix]

Volver arriba Ir abajo
 

Ayuda (Mejoramiento de Spell) [Aleteo del Fenix]

Ver el tema anterior Ver el tema siguiente Volver arriba 
Página 1 de 1.

 Temas similares

-
» (ayuda) Spell
» Ayuda para Matar a Gigginox y Capturar a Uragan (3 Estrellas)
» AYUDA con Jhen Mhoran *** (URGENTE RC30) ***
» Ayuda y dudas Barroth
» Ayuda en el Tomb Raider Underworld T____T

Permisos de este foro:No puedes responder a temas en este foro.
Warcraft III - WorldEditor :: Zona de Aprendizaje(Dudas) :: GUI (Detonadores)-