Foro especializado en Warcraft III y su editor
 
BuscarEntrar al ChatboxPortal del foroÍndiceSpellsRegistrarseConectarse
Eventos Actuales
No hay eventos actualmente
¡ Bienvenido Invitado !

Editar Perfil

Tus temas
Tus Mensajes ()

Enlaces rápidos








Comparte
 

 Reto de Programación: crear mecánica (aura)

Ver el tema anterior Ver el tema siguiente Ir abajo 
AutorMensaje
matchet
Capitán
matchet


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

Mensajes Mensajes : 123
Reputación Reputación : 19
Monedas de oro : 1829
Monedas de Platino : 3 Reto de Programación: crear mecánica (aura) Empty

Inventario :
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10

Reto de Programación: crear mecánica (aura) Empty
Mensaje(#) Tema: Reto de Programación: crear mecánica (aura) Reto de Programación: crear mecánica (aura) Clock10Miér Dic 18, 2013 2:05 pm

Tras casi un mes de buscar una manera de hacerlo funcionar sin éxito, he decidio exponer a la comunidad el reto de programación al que me enfrento, con la esperanza de que usuarios con mas experiencia que yo puedan proponer una solución al problema.

El reto consiste en hacer funcionar este spell:
Q: Réquiem del Oso
Pasiva: El equipo gana un 4% de reducir armadura de su rival con los ataques. Arzatros gana LS (LifeSteal) si alguien activa este efecto.
Activación: Arzatros suprime el efecto en área para ganar mayor probabilidad de reducir la armadura (20%), y conseguir la bonificación de LS mientras dure el efecto. Arzatros duplicará esta bonificación si consigue reducir la armadura a su objetivo
(corresponde a Arzatros el Bardo, héroe del proyecto Galerías Naga)

El spell se divide en dos partes:
Beneficio pasivo:
  • - Otorga a todas las unidades amistosas una probabilidad de que ocurra un efecto al atacar (en este caso, reducir la armadura del oponente).
  • - Si alguna unidad activa el efecto, Arzatros gana un efecto por unos segundos (en este caso, robo de vida)


Activación:
  • - Elimina los efectos del Beneficio pasivo para los aliados, pero aumenta la probabilidad de que el efecto (reducir armadura) ocurra en Arzatros
  • - Durante el tiempo de activación, Arzatros gana el efecto (en este caso robo de vida). En el caso de que ocurra el efecto (reducir armadura), Arzatros gana un efecto mayor (en este caso mayor robo de vida)


Cosas a tener en cuenta:
  • - Busco una manera eficiente de otorgar el Beneficio pasivo, es decir la probabilidad de reducir armadura, a ser posible evitando el evento "unit takes dmg" porque en el peor de los casos podríamos contar con la necesidad de que el juego ejecute hasta ~27 o más comprobaciones y efectos por segundo
  • - Olvidáos del efecto (en este caso, reducir armadura y robo de vida). Con aplicar los efectos no tengo problem. Solo necesito un código que haga funcionar la mecánica de aura
  • - Tampoco tendría problema para desactivar el Beneficio pasivo, eso es usar una boolean de comprobación


Qué ofrezco
Todos los usuarios que aporten algo útil a este hilo tienen, de partida, con mi agradecimiento y mis votos de karma para el foro
Como siempre, quien aporte datos de interés relevante contará con un espacio en los créditos del Mapa Galerías Naga, en donde será implementada esta mecánica que nos ocupa. Usuarios con mayor grado de colaboración también podrían contar con la posibilidad de modificar el nombre de algun elemento del proyecto.

Gracias a todos por colaborar,
-- Matchet


... ¿Sabíais que un doble negativo o un cálculo dentro de las condiciones hará fallar el spell? ...:
 

Proyecto: Galerías Naga
"Hazlo o no lo hagas, pero no lo intentes"
- Maestro Yoda

Mi filosofía:
 
Volver arriba Ir abajo
matchet
Capitán
matchet


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

Mensajes Mensajes : 123
Reputación Reputación : 19
Monedas de oro : 1829
Monedas de Platino : 3 Reto de Programación: crear mecánica (aura) Empty

Inventario :
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10

Reto de Programación: crear mecánica (aura) Empty
Mensaje(#) Tema: Re: Reto de Programación: crear mecánica (aura) Reto de Programación: crear mecánica (aura) Clock10Lun Abr 14, 2014 9:03 am

El reto sigue abierto y por desgracia sin respuestas todavía. Mantengo las esperanzas de que exista algun modo de hacer funcionar este spell. Aún hay tiempo, voy a dejar el desarrollo de este personaje para el final y así dar el máximo tiempo a este reto para que sea resuelto

Un saludo,
-- Matchet


... ¿Sabíais que un doble negativo o un cálculo dentro de las condiciones hará fallar el spell? ...:
 

Proyecto: Galerías Naga
"Hazlo o no lo hagas, pero no lo intentes"
- Maestro Yoda

Mi filosofía:
 
Volver arriba Ir abajo
Marcos_M

Marcos_M


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

Mensajes Mensajes : 3579
Reputación Reputación : 695
Monedas de oro : 11031
Monedas de Platino : 0 Reto de Programación: crear mecánica (aura) Empty

Inventario :
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10

Reto de Programación: crear mecánica (aura) Empty
Mensaje(#) Tema: Re: Reto de Programación: crear mecánica (aura) Reto de Programación: crear mecánica (aura) Clock10Lun Abr 14, 2014 1:22 pm

Damage de Sauron(Ruke) en la sección de Librerías permite detectar si un daño es mágico o físico
Volver arriba Ir abajo
lord_Dango
Soldado
lord_Dango


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

Mensajes Mensajes : 80
Reputación Reputación : 0
Monedas de oro : 126
Monedas de Platino : 0 Reto de Programación: crear mecánica (aura) Empty

Inventario :
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10

Reto de Programación: crear mecánica (aura) Empty
Mensaje(#) Tema: Re: Reto de Programación: crear mecánica (aura) Reto de Programación: crear mecánica (aura) Clock10Lun Abr 14, 2014 1:30 pm

yo no entiendo que es lo que necesitas en si, el spell inicia en pasivo y quieres que se vuelva casteable??, o como es la cosa, no entiendo. e_e


Reto de Programación: crear mecánica (aura) 2yy59a9
Volver arriba Ir abajo
angelcraft
Soldado
angelcraft


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

Mensajes Mensajes : 120
Reputación Reputación : 32
Monedas de oro : 453
Reto de Programación: crear mecánica (aura) Empty

Inventario :
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10

Reto de Programación: crear mecánica (aura) Empty
Mensaje(#) Tema: Re: Reto de Programación: crear mecánica (aura) Reto de Programación: crear mecánica (aura) Clock10Mar Abr 15, 2014 1:41 am

A ver, recien veo este post XD ...

Ehmm, explicare una forma de como se podria realizar para cada skill, comenzando por el Beneficio pasivo:
- Al parecer no quieres usar un sistema de daño, y lo mas cercano que se me ocurre es usar el spell Orb of Lighting o parecidos y agregarles a todas las unidades de tu mapa ese spell (El problema es que ya no podras combinar hechizos orbs), la ventaja es que podras detectar si una unidad lanzo un ataque y logro dañar a una unidad,esto  mediante el spell que lanza el Orb of Lighting. (Claro puedes detectar el spell lanzado por el Orb of Lighting mediante los eventos de lanzamientos de hechizos) (Tomando en cuenta esto, ya se entraria en la deteccion de spells, como dices tu tambien habria el problema de que se tomaria muchos recursos si son varias unidades lanzando un hechizo, bueno).
- Ahora para poder arreglar esa situacion, puedes darle dos niveles al spell Orb of Lighting, el nivel 1 sera de 0% de change de lanzar un conjuro y el nivel 2 seria por ejemplo 100% XD (los atributos del orb spell no son tan complicados de entender). Despues cuando el heroe Arzatros aprenda su skill, generas un evento timer de 1.0 segundos para que dentro de este deto, agrupes a las unidades en un area, asi podras aumentarle el nivel del Orb of Lighting de la unidades cercanas a 2, luego mediante condiciones de probabilidad y filtros de spells dentro del evento de deteccion de hechizos, si la unidad que lanzo el spell este con el buff del aura de Arzatros, la unidad que fue atacada GetSpellTarget() se le reducirá su defensa.
- El spell Orb of Lighting, estara dentro del spell - libro de hechizos la cual tendras que darle disable para todos los jugadores, osea el libro de hechizos no se vera en la interfaz de la unidad pero el hechizo orbs estara presente y oculto. Ese hechizo del libro lo pondras en el hero Arzatros en el editor de objetos como hechizo de unidad.

Pasando al segundo plano, el skill de Arzatros tambien es un activo... bueno para esto:
- Podras usar tambien el spell libro de hechizos para guardar el aura del pasivo la cual tendra dos niveles. Nivel 1 con 0 de alcanse y el nivel 2 con un area de alcanse, entonces cual seria el spell original que se usara?¿ puedes poner defensa (del soldado footmen)- como el spell original ya que posee activar y desactivar en su eventos de ordenes, medainte este podras crear un evento para detectar la orden de la unidad... Digamos Arzatros hace uso del spell defensa y activa, la cual esto representa a una orden "Defense" al realizar esto aumentas el skill del aura en 1, y cuando desactivas orden - "Undefense", reduces el skill en 2.
- Por otro lado tambien pides que la armadura sea en Porcentaje  Rolling Eyes , lo cual necesitas de otro sistema uhmmm y eso como que no lo encuentro en el foro XD (pero no se si habra uno hecho .3  ).

Espero que esta idea no sea tan desfasado a lo que pides  xD ... Lo que me falto podria mencionarlo aunque eso ya es algo mas amplio...
Saludos...
Volver arriba Ir abajo
Marcos_M

Marcos_M


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

Mensajes Mensajes : 3579
Reputación Reputación : 695
Monedas de oro : 11031
Monedas de Platino : 0 Reto de Programación: crear mecánica (aura) Empty

Inventario :
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10

Reto de Programación: crear mecánica (aura) Empty
Mensaje(#) Tema: Re: Reto de Programación: crear mecánica (aura) Reto de Programación: crear mecánica (aura) Clock10Mar Abr 15, 2014 11:30 am

Aguanten los sistemas de daño :v
Volver arriba Ir abajo
KoleshyEngine

KoleshyEngine


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

Mensajes Mensajes : 548
Reputación Reputación : 130
Monedas de oro : -215
Monedas de Platino : 0 Reto de Programación: crear mecánica (aura) Empty

Inventario :
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10
Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10 Reto de Programación: crear mecánica (aura) Empysl10

Reto de Programación: crear mecánica (aura) Empty
Mensaje(#) Tema: Re: Reto de Programación: crear mecánica (aura) Reto de Programación: crear mecánica (aura) Clock10Mar Abr 15, 2014 1:45 pm

Segun mi logica lo que pides es super facil ._.
almacena tu heroe al aprender la habilidad
usa algun sistema de daño para captar el ataque ocurrido, le sumas el % de probabilidad para afectar.
usa aura de devocion negativo con %, el robo de vida le puedes dar la habilidad robar vida de una manera temporal, y para la parte del incremento a esa misma hab. robar vida le incrementas el level x ejemplo n2...


Like a Star @ heaven  Desarrollador de Software Contactar
Volver arriba Ir abajo
http://koleshyengine.blogspot.com/
Contenido patrocinado




Reto de Programación: crear mecánica (aura) Empty
Mensaje(#) Tema: Re: Reto de Programación: crear mecánica (aura) Reto de Programación: crear mecánica (aura) Clock10

Volver arriba Ir abajo
 

Reto de Programación: crear mecánica (aura)

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

 Temas similares

-
» Nuevo modo de crear estadios !
» Viernes 6 de Mayo (Tabla)
» League of Legends (LoL)
» Ayuda con mazo verde rojo.
» Unidad militar del estado

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