Worldedit
  Worldedit
Le site sur l'éditeur de warcraft 3 !
 
  FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres    Groupes d'utilisateursGroupes d'utilisateurs   medals.php?sid=c22235e92b49f5dc4d24253924a83623Médailles   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 
  FAQFAQ World Editor   UploadUploader une map ou une image    UploadAjouter sa map à l'annuaire   UploadConsulter l'annuaire

Passif de Geardon, le Marine

 
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Les sorts
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 Skyzen
Membre actif


Inscrit le: 07 Jan 2017
Messages: 119
Sujets: 16
Spécialité en worldedit: Tout en Gui, rien en Jass : This is my random life.


MessagePosté le: 09/01/17 23:16    Sujet du message: Passif de Geardon, le Marine Citer

Bonjour tout le monde ! J'espère que vous allez bien et que vous êtes prêts à vous cassez la tête avec mon problème du jour sur l'édition de mon MobA/MMO chelou ^^

J'ai entrepris de faire un tireur pour le joueur humain (car il n'avait majoritairement accès qu'à des héros Combattant / Paladin / Mage) et je me suis rabattu sur le Fichier modèle du Marine (comme ça tout est déjà fait youpi). Je lui ai trouvé un nom (Gaerdon, car c'est classe pour un mitrailleur humain), et j'ai rapidement importé un icone d'unité qui lui correspond (car l'icone de base est celui du fusiller LOL). Jusque là, tout va bien : je vous ai juste fait perdre 2 minutes de votre vie pour vous raconter la mienne :p

Bon centrons nous sur le vrai sujet de se topic : Sur ma map, les héros sont jouable avec 4 spells et un passif. Pour notre fameux Marine Gaerdon, je souhaiterais inclure un passif qui soit en rapport avec son arme (OMG Im captain obvious) et notamment au fait qu'il n'utilise pas de "magie" mais uniquement des munitions (même lors de ces sort car c'est des roquettes tout ca) et donc transformer la barre de mana en "compteur de munitions" (bleu mais bon osef).

Ca rendrait le gameplay du champion assez rechercher, avec des sort à "x munitions" en coup de mana et un sort qui permet de recharger (faire regagner x munition de mana à Gaerdon, mais l'immobilise 3 secondes). Ca m'oblige gérer le mana du héros au début et son gain avec les items et les niveau par la suite, pour que la régénération de mana ne donne pas "balles illimités".

BREF C'EST LA QUE J'AI BESOIN DE VOUS :

J'aimerais que Gaerdon perde 100 de mana par auto-attaque, même lorsqu'elle n'est pas initié par le joueur (donc en mode "vraiment" automatique). J'aimerais aussi que les auto-attaques en questions infligent (1.5 x l'intelligence) de Gaerdon à chaque fois (donc forcément par déclo, avec l'utilisation de la variable "intel_humain[1(max)]" de type Réel). Et cela de manière automatique (bah oui c'est le passif du champion lol) donc sans pouvoir utiliser l’événement "initie l'effet d'une capacité" car cela nécessite une action du joueur.

EN GROS J'veux que le passif de Gaerdon lui fasse perdre 100 de mana et inflige (1.5 x son Intelligence) de dégâts à chaque auto-attaque. En restant un "passif".

Très sincèrement je me suis déjà bien cassé la tête : j'ai essayer d'utiliser des compétences objets comme "orbe de lenteur" passées en compétence unités qui activent Poison (sans dégats ni buff) sur la cible à chaque auto-attaque, mais ça ne consomme pas le mana (alors que dans l'éditeur de sort j'ai indiqué 100 de mana en coût à Poison, ainsi qu'au sort de lenteur modifié pour voir). En plus en utilisant par déclo "initie l'effet d'une compétence" pour demander au jeu d'appliquer (1.5 x Intel) de dégats à la cible du sort (poison modifié), ça ne fonctionne pas non plus.
PIRE ca fait que le Marine tire mais n'inflige même plus les dégats de ces attaques de base x) Juste il tire dans le vent lol. Je présume qu'il s'agit d'un bug, où alors d'une incompréhension de ma part dans le fonctionnement du sort Orbe de lenteur passé en unité, ou du sort Poison (qu'Orbe de lenteur est sensé appliquer).

Bref voilà j'aimerais que vous éclairiez ma lanterne ^^ Je suis vraiment en galère là :/
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Toc@rd
Membre actif


Inscrit le: 14 Avr 2009
Messages: 175
Sujets: 17
Spécialité en worldedit: Décors


MessagePosté le: 10/01/17 03:10    Sujet du message: Citer

Salut,

J'ai essayé de faire ce que tu voulais là vite fait en 5 minutes avant de me coucher ; j'ai pas réussi car pour une raison qui m'est obscure la fonction "arithmetic", au sein des actions "unit - damage target" et même "unit- set life" ne veut pas me prendre de variable de type "entier" mais "réel". (alors que pour beaucoup d'autres fonction que j'utilise c'est possible.
Je ne connais pas les réels mais pour une autre raison obscure on ne peut pas y charger la fonction "héros - hero attribute" (l'intelligence en l'occurrence) contrairement aux entiers.
Je te mets quand même la piste que j'ai essayée au cas où ça puisse t'aider, j'essayerai mieux demain. Il y a peut-être moyen de faire quelque chose avec les hashtable mais je maîtrise pas encore.
Gui:
Trigger:
marine skyzen
Collapse Evénements
Unité - A unit Est attaqué
Collapse Conditions
(Unit-type of (Attacking unit)) Egal à  Marine
Collapse Actions
Unité - Set mana of (Attacking unit) to ((Mana of (Attacking unit)) - 100.00)
Set EntierCOMP[1] = (Intelligence of (Attacking unit) (Inclure bonuses))
Unité - Set life of (Attacked unit) to ((Vie of (Attacked unit)) - 1.00)
Unité - Cause (Attacking unit) to damage (Attacked unit), dealing (VariableReel x 1.50) damage of attack type Normal and damage type Normal

En gros il faudrait juste arriver soit à charger un entier dans la fonction arithmetic des réels, soit charger la fonction "Héros attribute" directement dans un réel...

Ah oui sinon faudrait juste faire un autre déclo pour empêcher ton marine de tirer s'il n'a plus assez de mana / munition parce qu'avec le "mana -100" ça descend juste le mana à 0.

PS : Le marine a une icone à lui dans le worldedit : ReplaceableTextures\CommandButtons\BTNMarine.blp
_________________


Dernière édition par Toc@rd le 10/01/17 15:28; édité 1 fois
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Toc@rd
Membre actif


Inscrit le: 14 Avr 2009
Messages: 175
Sujets: 17
Spécialité en worldedit: Décors


MessagePosté le: 10/01/17 15:28    Sujet du message: Re: Passif de Geardon, le Marine Citer

En fait tu avais déjà la fonction que je cherchais, j'avais lu trop vite ton message :

Citation:
(donc forcément par déclo, avec l'utilisation de la variable "intel_humain[1(max)]" de type Réel).


Du coup avec un truc comme ça il te manque quoi ? (y'a juste à remplacer mage de sang par ton marine)
Gui:
Trigger:
marine skyzen
Collapse Evénements
Unité - A unit Est attaqué
Collapse Conditions
(Attacking unit) Egal à  Mage de sang 0088 <gen>
Collapse Actions
Unité - Set mana of (Attacking unit) to ((Mana of (Attacking unit)) - 100.00)
Unité - Cause (Attacking unit) to damage (Attacked unit), dealing ((Real((Intelligence of Mage de sang 0088 <gen> (Inclure bonuses)))) x 1.50) damage of attack type Perçant and damage type Normal

_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Skyzen
Membre actif


Inscrit le: 07 Jan 2017
Messages: 119
Sujets: 16
Spécialité en worldedit: Tout en Gui, rien en Jass : This is my random life.


MessagePosté le: 10/01/17 16:48    Sujet du message: Citer

Oua parfait ! J'ai encore jamais utiliser l'évent "attaked unit" auparavant ! Ni même cette condition ! Ca va surement ma facilité la vie ^^

Mais attention ! Mon unitée est un héros, es ce que si Gaerdon envois un sort (et donc attaque une unité) cela va déclencher le déclo ? Car j'aimerais bien que ça ne marche que sur l'auto-attak moi :/

Ah et comment je fait pour désactivé les autoattak de gaerdon lorsque sa barre tombe à zéro ? Puis pour la réactivé dès qu'elle repasse au dessus de 100?
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Toc@rd
Membre actif


Inscrit le: 14 Avr 2009
Messages: 175
Sujets: 17
Spécialité en worldedit: Décors


MessagePosté le: 10/01/17 17:31    Sujet du message: Citer

Skyzen a écrit:

Mais attention ! Mon unitée est un héros, es ce que si Gaerdon envois un sort (et donc attaque une unité) cela va déclencher le déclo ? Car j'aimerais bien que ça ne marche que sur l'auto-attak moi :/


Non, en lançant des sorts ça ne déclenche pas l'évènement, je viens de (re)tester avec chaine d'éclair, coup de tonnerre et choc de flammes.

Skyzen a écrit:

Ah et comment je fait pour désactivé les autoattak de gaerdon lorsque sa barre tombe à zéro ? Puis pour la réactivé dès qu'elle repasse au dessus de 100?

Par contre pour ça à la base j'avais mis"remove classification" mais après test ça ne marche pas, donc j'ai plutôt pensé à une compétence personnalisée basée sur une transformation (une qui soit activable et désactivable comme celle des druides par exemple), mais on modifierait la forme transformée pour qu'elle soit exactement identique à la normale mis à part qu'elle n'aurait aucune attaque d'activée.
Ensuite tu pourrais gérer la fin des munitions comme ça :
Gui:
Trigger:
Collapse Evénements
Map initialization
Conditions
Collapse Actions
Joueur - Désactiver Ours for Joueur 1 (Rouge)

Gui:
Trigger:
Collapse Evénements
Unité - Mage de sang 0088 <gen>'s mana becomes Inférieur à  100.00
Conditions
Collapse Actions
Joueur - Activer Ours for Joueur 1 (Rouge)
Unité - Order Mage de sang 0088 <gen> to Druide-griffes elfe de la nuit - Forme d'ours
Joueur - Désactiver Ours for Joueur 1 (Rouge)


Et puis quand le joueur retrouve des munitions :
Gui:
Trigger:
Collapse Evénements
Unité - Mage de sang 0088 <gen>'s mana becomes Supérieur ou égal à  100.00
Conditions
Collapse Actions
Joueur - Activer Ours for Joueur 1 (Rouge)
Unité - Order Mage de sang 0088 <gen> to Elfe de la nuit Druide-ours - Forme de druide
Joueur - Désactiver Ours for Joueur 1 (Rouge)

Tu peux aussi utiliser Unité - add ability / remove ability, je pense que ça marcherait aussi. Mais si tu utilise Joueur - enable ability / disable ability comme dans les déclencheurs que j'ai mis, il faut que tu mette le sort de transformation au héros dans l'éditeur d'objet.

Et puis tu pourrais aussi créer une compétence passive sans effet, qui a sa position X - Y à la place du bouton attaquer et qui prendrait sa place pendant la "forme sans munition" (pour indiquer au joueur pourquoi y'a plus rien qui marche quoi) et / ou lui diffuser un message de quête.

Le seul problème avec ce déclencheur c'est que si tu as des sorts qui ont une durée de lancé ou qui sont des canalisations et si c'est en lançant un de ces sorts que le Marine descend sous 100 de mana, alors l'ordre de transformation va annuler le sort lancé. Si c'est le cas faudra affiner le déclencheur.

Utiliser une transformation n'est peut-être pas très élégant pour empêcher une unité d'attaquer mais j'ai eu que ça comme idée, donc si quelqu'un en a une meilleure qu'il n'hésite pas !
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Skyzen
Membre actif


Inscrit le: 07 Jan 2017
Messages: 119
Sujets: 16
Spécialité en worldedit: Tout en Gui, rien en Jass : This is my random life.


MessagePosté le: 10/01/17 19:07    Sujet du message: Citer

C'est pas tant une question d'élégance, mais plutôt de praticité. Il est déconseillé de transphormé une unité héros avec Chaos car la capacité additionne les stats des objets du héros a ces stats de base à chaques transformations, et oui je veux qu'il reste dans le même état pour ne pas affecter ses sort en courts, ses cooldowns etc.

Il n'existe pas une capacité où un déclencheur qui désactive en jeu Attaque 1 du gaerdon x) ? genre un truc comme une capacité orbe peut-être où bug exploit ?
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Tirlititi



Inscrit le: 21 Fév 2010
Messages: 1785
Sujets: 22
Spécialité en worldedit: La modestie
Médailles: 1 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 10/01/17 19:11    Sujet du message: Citer

Le problème, c'est que l'évènement "A unit Est attaqué" se déclenche au moment où ton héros initie l'animation d'attaque.
En spammant la touche "Stop" pendant que le héros attaque, il va initier plein d'attaques sans jamais aller jusqu'au bout mais en déclenchant cet évènement à chaque fois.

Il faudrait utiliser l'évènement "Reçoit des dommages", mais ça n'existe (n'existait?) pas pour un évènement général. Il faut donc passer par un système plus élaboré : un Damage Detection System.

Tu en as un là par exemple :
http://www.hiveworkshop.com/threads/gui-damage-engine-v3-6-0-1.201016/

Par contre, peut-être qu'il y a des solutions plus simples avec le nouveau patch.
_________________
Warcraft III, c'était mieux avant. Y'avait des purs chefs-d'oeuvres du mapping !
Road Of Glory (par moi)
Casse-briques (par moi)
Temple de Glace (par moi)
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Toc@rd
Membre actif


Inscrit le: 14 Avr 2009
Messages: 175
Sujets: 17
Spécialité en worldedit: Décors


MessagePosté le: 10/01/17 19:56    Sujet du message: Citer

Sans l'évènement est attaqué et sans transformation ça dépasse mes compétences désolé.

Par contre Skyzen la compétence chaos et la transformation en ours ça n'est pas la même chose. Chaos j'ai jamais trop testé mais ours ça n'annule pas les cooldowns. Pour ne pas interrompre les sorts en cours ça doit être faisable en modifiant le déclencheur que j'ai mis.

Par contre il reste le problème qu'a vu Tirlititi, qui est sans doute le plus important car ça permettrait le bug exploit qu'il a souligné.
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 rgf
Membre reconnu


Inscrit le: 09 Mar 2009
Messages: 1154
Sujets: 54
Spécialité en worldedit: Croâ ?


MessagePosté le: 10/01/17 22:24    Sujet du message: Citer

Tirlititi a écrit:
Le problème, c'est que l'évènement "A unit Est attaqué" se déclenche au moment où ton héros initie l'animation d'attaque.
En spammant la touche "Stop" pendant que le héros attaque, il va initier plein d'attaques sans jamais aller jusqu'au bout mais en déclenchant cet évènement à chaque fois.

Il faudrait utiliser l'évènement "Reçoit des dommages", mais ça n'existe (n'existait?) pas pour un évènement général. Il faut donc passer par un système plus élaboré : un Damage Detection System.

Tu en as un là par exemple :
http://www.hiveworkshop.com/threads/gui-damage-engine-v3-6-0-1.201016/

Par contre, peut-être qu'il y a des solutions plus simples avec le nouveau patch.


C'est du détail mais le marine devrait perdre le mana au moment où le projectile est parti, pas au moment où il est arrivé. Dans ce cas l'évènement "Reçoit des dommages" n'est pas adapté.
Ca compliquerait un peu mais il faudrait plutôt utiliser l'évènement "Une unité est attaquée" et attendre une durée fixe (à déterminer en fonction de la durée entre le moment où le marine attaque et celui où le projectile est lancé). Pendant cette durée d'attente on détecte si l'unité attaquante ne reçoit pas un ordre contradictoire avec une attaque (par exemple "stop" ou "smart" sur une autre unité ou le sol, etc...). Si elle en reçoit un pendant la durée, le retrait de mana ne s'exécute pas à la fin de la durée.
J'avais déjà utilisé cette méthode pour faire un truc similaire et ça marche très bien, et avec la bonne durée d'attente tout fonctionne sans problème Smile
_________________
Croâh ?
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Tirlititi



Inscrit le: 21 Fév 2010
Messages: 1785
Sujets: 22
Spécialité en worldedit: La modestie
Médailles: 1 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 10/01/17 22:58    Sujet du message: Citer

Heu... ça marche très bien? Genre tu pauses l'unité attaquante pendant son attaque et ça marche toujours? Genre elle se prend un disable et ça marche toujours? ^^"

En plus, je ne suis pas sûr que le temps entre le moment où l'unité attaque et le moment où le projectile part est simple à calculer. Il est possible que ce soit uniquement le "temps de lancer" (et encore, faut trouver par déclencheur laquelle des 2 attaques est utilisée si l'unité a 2 attaques), mais je crois que c'est quand même influencé par des buffs du genre Frénésie Impie.

Je suis d'accord avec toi dans l'absolu, mais à mon sens, essayer de faire comme ça rend les choses pires ^^

Question connexe d'ailleurs : si une unité se téléporte (ou devient invisible) pendant qu'un projectile la poursuit, l'attaque échoue ou bien c'est seulement entre les moments "Est attaqué" et "Projectile lancé" qu'une attaque peut échouer?
_________________
Warcraft III, c'était mieux avant. Y'avait des purs chefs-d'oeuvres du mapping !
Road Of Glory (par moi)
Casse-briques (par moi)
Temple de Glace (par moi)
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Skyzen
Membre actif


Inscrit le: 07 Jan 2017
Messages: 119
Sujets: 16
Spécialité en worldedit: Tout en Gui, rien en Jass : This is my random life.


MessagePosté le: 11/01/17 00:41    Sujet du message: Citer

De tout façon, le principe de se marine serais avoir une forte vitesse d'attaques, mais nombre de balles limités permettant de courtes mais dévastatrices salves de dégats, et se regarder en munitions avec un sort "rechargement". Tout en envoyant quelques spells qui coûtent en munition si on veux (genre roquette et mine).

Bref sa vitesse d'attaque serais de l'ordre de 0.5 où 0.4 dès le début et le type d'attaque serais instantané (bah ouai on parle d'une mitrailleuse quoi) et je crois qu'avec se type d'attaque il n'y a pas de "projectile" à proprement parler, juste une animation d'attaque. Corriger moi si j'me trompe ^^

Ça ne pose donc pas de problème que l'on puisse utilisé le bouton pause pour spamer le déclencheur, car dans tout les cas le héros serais normalement amener à tirer plus vite que toi en cheatant de base ^^

Mon seul vrai problème n'est plus d'appliquer la perte de mana et d'appliquer les dégats intel, mais belle et bien d'empècher le marine d'utiliser ses auto-attaques sans les point de mana nécéssaire. N'y aurait-il pas un moyen d'impliquer aussi le mana restant dans la condition d'un boucle du passif, et de faire un Si mana>100 taper intelx1.5 mana-100 Sinon "heee cancel l'auto-attack en faisait pause" ?
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 rgf
Membre reconnu


Inscrit le: 09 Mar 2009
Messages: 1154
Sujets: 54
Spécialité en worldedit: Croâ ?


MessagePosté le: 11/01/17 01:10    Sujet du message: Citer

Tirlititi a écrit:
Heu... ça marche très bien? Genre tu pauses l'unité attaquante pendant son attaque et ça marche toujours? Genre elle se prend un disable et ça marche toujours? ^^"

En plus, je ne suis pas sûr que le temps entre le moment où l'unité attaque et le moment où le projectile part est simple à calculer. Il est possible que ce soit uniquement le "temps de lancer" (et encore, faut trouver par déclencheur laquelle des 2 attaques est utilisée si l'unité a 2 attaques), mais je crois que c'est quand même influencé par des buffs du genre Frénésie Impie.

Je suis d'accord avec toi dans l'absolu, mais à mon sens, essayer de faire comme ça rend les choses pires ^^

Question connexe d'ailleurs : si une unité se téléporte (ou devient invisible) pendant qu'un projectile la poursuit, l'attaque échoue ou bien c'est seulement entre les moments "Est attaqué" et "Projectile lancé" qu'une attaque peut échouer?


L'attaque, ou plutôt le fait d'attaquer vraiment ne peut échouer qu'entre les deux évènements. Et honnêtement ça n'est pas si lourd que ça à mettre en place ^^. De plus lorsque l'unité attaquante est mise en pause ou disabled elle effectue l'ordre "(null)" donc oui ça marche assez bien.
Et oui j'ai supposé que le marine n'avait qu'une attaque ^^
Par contre effectivement la seule chose que la méthode ne prend pas en compte à priori (en tout cas ça compliquerait beaucoup la donne) c'est les effets tels que frénésie impie.
Mais je pense quand même que cette méthode a un vrai intérêt étant donné qu'elle permet d'appliquer l'effet au moment du lancer du projectile plutôt que de se contenter d'appliquer l'effet au moment où le projectile touche l'unité attaquée (qui peut arriver plusieurs secondes plus tard tout de même), ce qui manque de "réalisme" je trouve !

Mais bon de toute manière peu importe vu que comme Skyzen vient de le préciser l'attaque est instantanée, dans ce cas il vaut mieux utiliser un DDS comme l'a conseillé Tirlititi !
_________________
Croâh ?
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Skyzen
Membre actif


Inscrit le: 07 Jan 2017
Messages: 119
Sujets: 16
Spécialité en worldedit: Tout en Gui, rien en Jass : This is my random life.


MessagePosté le: 12/01/17 00:12    Sujet du message: Citer

ALORS C'EST BON CA MARCHE Very Happy

Effectivement, Gaerdon perd bien 100 mana et inflige 1.5 x son intelligence (en plus de ses dommage de base) par auto-attaque, et ne peut plus attaquer quand il a plus de mana !

Voilà comment j'ai fait !

Event : Une unité est attaqué

Condi : (Attacking unit) égal à Héros_humain AND (Triggering unit) différent de héros_humain
(une variable unité dans laquelle je met le héros jouer par le joueur humain, et Gaerdon est un héros humain)

Actions :
Set humain-intel = (Réal(Intelligence of heros_humain (inclure bonus)) Ca c'est pour réinitialisé la variable intel car on récupère du stuff
If / Then do / Else do
Si : Mana of heros_humain supérieur ou égal à 100
Alors : Cause (heros_humain) to damage (Attacked unit), dealing (1.5 x humain_intel) attak type (percant) and damage type (normal)
Et mana of heros-humain = (mana of heros_humain - 100)
Sinon : Make (Triggering Unit) Invulnérable
Wait 0.1 secondes
Make (Triggering Unit) Vunérable

Voilà merci tout le monde de m'avoir aidé maintenant mon Marine Gaerdon c'est un bon héros avec des mécaniques de jeu vachement sympas ^^ J'espère que mon déclo pourras aider d'autre gens à faire des héros qui tournent au munitions ! Bisous et encore MERCIIIIII <3

[EDIT IMPORTANT : Au final y'a un bug VRAIMENT RELOU, c'est à dire que lorsque que Gaerdon change automatiquement de cible, le jeu lui applique 1.5x son intel à lui aussi ! En gros tout marche très bien jusqu'à se que gaerdon tus l'unité en question et change d'unité automatiquement, car là il se prends une ligne de dégats venus de nul part. Donc j'adapte le game play du Marine avec, j'ai pas encore trouvé le moyen de résoudre le problème. D'ailleurs je sais même pas si c'est le fait de changé automatiquement d'unité qui fait ça, ou juste le fait de tué une unité. J'fait une série de test et je revien édit se message]

[EDIT 2 : Alors j'ai essayer, et bizarrement le bug ne se fait pas tout le temps ! Tuer une unité seul n'inflige pas les -1.5 x l'intel de dégats, ni changer automatiquement d'unité parfois. Mais parfois si !! C'est tellement à ne rien y comprendre que je vais ouvrir un autre topic pour ça, maintenant que le sort marche, un topic pour le bug de se déclo. je l'ouvre dans la section déclencheur, merci d'y faire un tour si vous pouvez ^^]
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 rgf
Membre reconnu


Inscrit le: 09 Mar 2009
Messages: 1154
Sujets: 54
Spécialité en worldedit: Croâ ?


MessagePosté le: 19/07/17 22:59    Sujet du message: Citer

Salut !

Je reviens juste là-dessus si jamais ça peut intéresser quelqu'un :
rgf a écrit:
Ca compliquerait un peu mais il faudrait plutôt utiliser l'évènement "Une unité est attaquée" et attendre une durée fixe (à déterminer en fonction de la durée entre le moment où le marine attaque et celui où le projectile est lancé). Pendant cette durée d'attente on détecte si l'unité attaquante ne reçoit pas un ordre contradictoire avec une attaque (par exemple "stop" ou "smart" sur une autre unité ou le sol, etc...). Si elle en reçoit un pendant la durée, le retrait de mana ne s'exécute pas à la fin de la durée.


Comme le disait Tirlititi il y avait deux problèmes liés à cette technique, le premier étant qu'on ne connaît pas le délai à attendre entre l'évènement "A attaqué" et le moment où le projectile est lancé, le deuxième étant que ce délai est affecté par des buffs tels que frénésie impie.

En fait il y a une formule qui code précisément ce délai et qui prend en compte des changements de vitesse d'attaque de l'unité !

Dans l'éditeur d'objets il y a deux champs qui paramètrent la vitesse d'attaque :
Combat - Attaque 1/2 - Temps de rechargement
Combat - Attaque 1/2 - Animation point de dégâts

Le premier, bien connu, détermine le temps entre deux attaques lancées par une unité. Donc pour faire deux attaques par seconde il suffit de mettre 0.5 par exemple.
Le deuxième, moins connu, code le temps entre le moment où l'unité commence l'animation d'attaque et le moment où les dégâts sont infligés pour une unité de mélée/le projectile part pour une unité à distance.

Il est à noter d'ailleurs que si le temps de rechargement est plus petit que le point de dégâts, alors il sera automatiquement réajusté au point de dégâts (du moins c'était le cas dans mes tests).
Un exemple : Si on met un temps de rechargement de 0.5 et un point de dégâts de 0.8, l'unité lancera un projectile toutes les 0.8 secondes et non pas toutes les 0.5 secondes, il faut donc faire attention avec ce champs !

C'est donc le champs "point de dégâts" qui représente ce délai entre le moment où l'unité déclenche l'évènement "A attaqué" et le moment où le projectile part tout simplement.

Mais le point de dégâts est également modifié quand on ajoute ou enlève de la vitesse d'attaque à une unité, la formule est la suivante (avec la vitesse d'attaque exprimée en %) :

Point de dégâts = Point de dégâts de base/(1 + vitesse d'attaque/100)

Donc pour une vitesse d'attaque bonus de 0 on retrouve le délai d'avant, et pour une vitesse d'attaque bonus non-nulle, le délai est calculé à partir de cette formule. C'est notamment la formule qu'il faudrait utiliser lorsque des buffs comme frénésie impie entrent en jeu !

Voila c'était histoire de perfectionner le système et d'en savoir un peu plus sur la vitesse d'attaque ^^

EDIT :
1) J'ai pas testé mais il semblerait logique que ce soit la même formule pour le temps de rechargement modifié par la vitesse d'attaque :
Temps de rechargement = Temps de rechargement de base/(1 + vitesse d'attaque/100)

2) Je pense que le bonus de vitesse d'attaque conféré par l'agilité est comptée comme de la vitesse d'attaque, à vérifier également !
_________________
Croâh ?
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Les sorts Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1
La question posée dans ce topic a été résolue !

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com