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=8d0ce82a2b94c6715fd95e2f9fd668d6Mé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

Le pandaren qui tourne, tourne ...
Aller à la page Précédente  1, 2, 3  Suivante
 
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Aide sur les déclencheurs
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 XaMaRo
Amateur de graphisme


Inscrit le: 28 Aoû 2007
Messages: 280
Sujets: 29
Spécialité en worldedit: Je cherche encore ...


MessagePosté le: 14/09/07 20:03    Sujet du message: Citer

Ok je commence à comprendre un petit peu Smile , quelqu'un pourrait t'il me montrer une base de declencheur svp ? Car je pense qu'il faut utiliser les boucles et je ne s'est pas trop les utilisre :s
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 profet
Instanton Gravitationnel Singulier


Inscrit le: 21 Aoû 2007
Messages: 1633
Sujets: 53
Spécialité en worldedit: Pain d'épice multitâche (terrain, scripts, textures, modèles...)
Médailles: 2 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Profet (Quantité : 1)

MessagePosté le: 14/09/07 22:24    Sujet du message: Citer

En gros l'idée c'est de créer une unité invisible, à l'emplacement de ton héros, et qui lance un sort, pour faire croire que le lanceur est le héro lui même.

On utilise des "dummy unit" dans plusieurs cas dont les principaux sont :
- lancement d'un "sort de masse", ex: bloodlust sur plusieurs unités en même temps.
- transformation d'un sort à cible en sort instantané : on utilise un sort qui ne fait rien, instantané (pas de cible), on détecte par trigger son lancement, et ensuite le dummy lance le sort réel (feu intérieur par exemple) sur l'unité choisie (le héros par exemple).
- pour enchainer des lancements de sorts très rapidement (le lancement d'un sort prend toujours un temps minimum où le héros est bloqué sur place (même quand on règle la durée à 0), du coup on créé plusieurs unités pour lancer ces sorts séparément.

Ce n'est que quelques exemple mais avec un peu d'imagination tu peux réussir à en trouver plein d'autres Wink



En ce qui concerne les triggers, le principe est très simple :
Gui:
Trigger:
Feu interieur personnel
Collapse Evénements
Unité - A unit Achève le lancement d'une compétence
Collapse Conditions
(Ability being cast) Egal à  Feu intérieur (dummy)
Collapse Actions
Unité - Create 1   My_Dummy_Unit    for (Owner of (Casting unit)) at (Position of (Casting unit)) facing Orientation bâtiment par défaut degrees
Unité - Add Feu intérieur to (Last created unit)
Unité - Order (Last created unit) to Prêtre humain - Feu intérieur (Casting unit)
Unité - Add a 5.00 second Générique expiration timer to (Last created unit)



Ce trigger marche, bien qu'il y ait plusieurs choses qui puissent être améliorées, comme le "memory leak" sur la location (Position of (Casting unit)) ou un système de recyclage des dummy unit, pour éviter d'en créer et supprimer à chaque fois des nouveaux, mais bon, c'est plus par chichi qu'autre chose car vu la fréquence de lancement des sorts, c'est gadget et ça ne causera pas d'amélioration de performances réel.
(Certains disent que les unités leak, mais ce n'est probablement pas le cas Question )

Ce que tu as à créer pour ce genre de trigger, c'est :

1 unité "dummy unit" :
Personnelement je prend la ferme des humains car elle ne se déplace pas, n'attaque pas, etc.. mais n'importe laquelle fera l'affaire (sauf un héros bien sur). Il faut juste faire attention à certains paramètres :
- ajouter le sort Infestation à cette unité, qui la rendra insélectionnable et invulnérable.
- supprimer son modèle en mettant comme modèle utilisé un simple _
- supprimer son ombre ("image ombre batiment" pour la ferme, etc...)
- éventuellement décocher la case "est un bâtiment"
- mettre à 0 sa portée de vue de jour et de nuit
Avec tout cela, tu as normalement une unité quasi "inexistante" sur la map.

1 sort Feu intérieur (dummy) :
A partir du sort Canaliser (Channel en anglais) : Neutre hostile > Héros
Quelques réglages à faire sur ce sort :
* Stats - Compétence héros = FALSE
* Stats - Niveaux = 1
* Donnée - Durée graphisme = 0.00
* Donnée - Désactiver autres compétences = FALSE (si tu ne veux pas que tous les sorts disparaissent du panneau de commande pendant le lancement du sort, utile dans certain cas, mais même le mouvement est impossible si on laisse à TRUE)
* Donnée - ID ordre de base (tu peux changer l'ordre si tu utilises plusieurs sorts basés sur Canaliser pour éviter toute interférence entre eux)
* Donnée - Options : la case "obligatoire" est visible, sinon l'icone sera masquée, "image de visée" si tu veux un sort de zone comme Blizzard de l'archimage), "Sort physique" pour en faire un sort physique justement c'est à dire qu'il ne sera pas désactivé par un silence, "Sort universel" il me semble que si cette case est cochée, ce sort sera lançable sur une unité invulnérable à la magie, notez que c'est aussi le cas avec les sorts physiques, "Incantation unique" je n'ai pas encore réussi à savoir ce que cette option fait, peut être un rapport avec l'option suivre dans la durée mais je n'ai pas testé.
* Donnée - Suivre dans la durée : il s'agit du temps de canalisation du sort, met le à 0.00 si tu ne fais pas un sort de genre "drain".
* Donnée - Type de cible : là tu mets ce dont tu as besoin, dans notre cas "Instantané (Pas de cible)"
* Stats - Compétence de héros = FALSE


1 sort (réel) :
Ici pas grand chose à modifier, si ce n'est une portée de 99999 (pour éviter des éventuels problèmes mais qui ne devrait pas arriver), et SURTOUT, mettre le coût de mana à 0 (la ferme n'a pas de mana !).
Bien penser aussi à supprimer tout prérequis (Arbre des technologies - Conditions)
Mettre en sort d'unité si ce n'est pas déjà le cas.


Voila voila, si j'ai oublié quelque chose fait le moi savoir, je me ferais un plaisir de corriger le tir Wink
_________________

Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70%


Dernière édition par profet le 15/09/07 14:07; édité 1 fois
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
 Rommstein60
MODÉRATEUR À LA RETRAITE


Inscrit le: 23 Aoû 2007
Messages: 4766
Sujets: 136
Spécialité en worldedit: Keskesapeutfout'
Médailles: 1 (En savoir plus...)
Rédacteur de tuto #1 (Quantité : 1)

MessagePosté le: 15/09/07 07:48    Sujet du message: Citer

Justemant profet tu n'a pas vu mes messages d'avant, il vaut mieux créér des dummys dès le début en haut de la Map avec 99999999 de portée de sort.
Je vous donne le déclo... Veuillez patienter... ... ... ... ...

Merci d'avoir patienté...
Gui:
Trigger:
Initialisation Dummys
Collapse Evénements
Map initialization
Conditions
Collapse Actions
Set Point_quelconque[1] = (Point(6144.00, 6144.00))
Collapse For each (Integer A) from 1 to 30, do (Actions)
Collapse Boucle - Actions
Unité - Create 1 Dummy Auras for Neutre Passif at Point_quelconque[1] facing 0.00 degrees
Set Unite_dummy[(Integer A)] = (Last created unit)
Custom script:   call RemoveLocation(udg_Point_quelconque[1])

Gui:
Trigger:
Collapse Evénements
Unité - A unit Est attaqué
Collapse Conditions
(Unit-type of (Attacked unit)) Egal à  Sorcière des mers Naga 2
(Level of Roots Aura (Sorcière des mers Naga) for (Attacked unit)) Egal à  1
Collapse Actions
Set Entier_quelconque[1] = (Random integer number between 1 and 20)
Set Entier_quelconque[2] = 5
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
Entier_quelconque[1] Egal à  Entier_quelconque[2]
Collapse Alors - Actions
Set Entier_quelconque[100] = (Entier_quelconque[100] + 1)
Collapse If (All Conditions are True) then do (Then Actions) else do (Else Actions)
Collapse Si - Conditions
Entier_quelconque[100] Egal à  31
Collapse Alors - Actions
Set Entier_quelconque[100] = 1
Sinon - Actions
Unité - Change ownership of Unite_dummy[Entier_quelconque[100]] to (Owner of (Attacked unit)) and Garder couleur
Unité - Order Unite_dummy[Entier_quelconque[100]] to Gardien du bosquet elfe de la nuit - Sarments (Attacking unit)
Collapse Sinon - Actions


_________________
Leçon n°1 du WorldEdit : « Le violet > Troll-Brain »
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Keitaro_Ura
Floodozaurus


Inscrit le: 21 Aoû 2007
Messages: 2073
Sujets: 38
Spécialité en worldedit: Oui
Médailles: 1 (En savoir plus...)
Rédacteur de tuto #2 (Quantité : 1)

MessagePosté le: 15/09/07 07:59    Sujet du message: Citer

Je trouve que ça sert a rien ton truc rommstein, tu peux aussi utiliser les variables locales tu sais Wink

Et profet, moi j'ai déja fait un dummy hero, et ça pose aucun problème ^^
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Rommstein60
MODÉRATEUR À LA RETRAITE


Inscrit le: 23 Aoû 2007
Messages: 4766
Sujets: 136
Spécialité en worldedit: Keskesapeutfout'
Médailles: 1 (En savoir plus...)
Rédacteur de tuto #1 (Quantité : 1)

MessagePosté le: 15/09/07 08:08    Sujet du message: Citer

Si ça sert ==> moins de leak --'
De plus je ne peux pas utiliser les variables locales pour ça oO
Ou alors donne moi le déclo ^_^

_________________
Leçon n°1 du WorldEdit : « Le violet > Troll-Brain »
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Keitaro_Ura
Floodozaurus


Inscrit le: 21 Aoû 2007
Messages: 2073
Sujets: 38
Spécialité en worldedit: Oui
Médailles: 1 (En savoir plus...)
Rédacteur de tuto #2 (Quantité : 1)

MessagePosté le: 15/09/07 13:37    Sujet du message: Citer

Les unités ça fait pas du leak (en dummy) si tu les fait mourir ><
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 XaMaRo
Amateur de graphisme


Inscrit le: 28 Aoû 2007
Messages: 280
Sujets: 29
Spécialité en worldedit: Je cherche encore ...


MessagePosté le: 15/09/07 13:46    Sujet du message: Citer

Je vous remercie de ces reponses plus précise Smile je vais essayer de faire mon propre sort . Si je rencontre quelques problèmes que se soit je me permeterai de poster mon ou mes declencheurs ici Wink
_________________
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7143
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1) Rédacteur de tuto #3 (Quantité : 1)

MessagePosté le: 15/09/07 13:55    Sujet du message: Citer

Keitaro_Ura a écrit:
Les unités ça fait pas du leak (en dummy) si tu les fait mourir ><


copie colle dans un trigger nommé test et observe la mémoire.
Il faut appuyer sur la touche echap.
c'est certes mineur comme leak mais plusieurs fois utilisés ca peut devenir génant
Jass:
function Trig_test_Actions takes nothing returns nothing
  local unit u = null
  local integer i = 0
  local location loc = Location(0,0)
    loop
      set i = i + 1
      set u = CreateUnitAtLoc(Player(0),'hpea',loc,0.0)
      call RemoveUnit(u)
      set u = null
    exitwhen i == 50
      call RemoveLocation(loc)
      set loc = null
    endloop
endfunction

//===========================================================================
function InitTrig_test takes nothing returns nothing
    set gg_trg_test = CreateTrigger(  )
    call TriggerRegisterPlayerEventEndCinematic( gg_trg_test, Player(0) )
    call TriggerAddAction( gg_trg_test, function Trig_test_Actions )
endfunction


et si tu remplaces RemoveUnit par :
Jass:
call UnitApplyTimedLife(u,'BTLF',1.0)
c'est beaucoup plus flagrant (même aprés que le cadavre se soit décomposé totalement).

et quand bien même il n'y aurait pas de leak c'est plus performant d'utiliser déjà des unités existantes, que d'en créer/supprimer à chaque fois
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 profet
Instanton Gravitationnel Singulier


Inscrit le: 21 Aoû 2007
Messages: 1633
Sujets: 53
Spécialité en worldedit: Pain d'épice multitâche (terrain, scripts, textures, modèles...)
Médailles: 2 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Profet (Quantité : 1)

MessagePosté le: 15/09/07 14:06    Sujet du message: Citer

Rommstein60 a écrit:
Justemant profet tu n'a pas vu mes messages d'avant, il vaut mieux créér des dummys dès le début en haut de la Map avec 99999999 de portée de sort.


Le problème avec ta méthode c'est que tu crées 30 unités qui ne servent à rien dès le début, qui surchargent la map pour rien.
De plus ton deuxième trigger est ... Shocked

Le principe de recyclage de dummy dont je parlais serait un systeme de fonctions et de globales qui permetteraient de creer si besoin et de stocker des dummy inutilisés en les réutilisant quand on en aurait besoin.

Mais c'est pas très utile, en tout cas dans votre cas.


Keitaro_Ura a écrit:
Et profet, moi j'ai déja fait un dummy hero, et ça pose aucun problème ^^
Ca marche, sans aucun doute, mais si tu donnes le héros au joueur une icône apparaitra sur la gauche, ce qui ne rend pas l'unité réellement "invisible".
De plus il n'y a pas de grand intérêt à ca pour un dummy caster Wink
_________________

Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70%


Dernière édition par profet le 15/09/07 14:13; édité 1 fois
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7143
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 15/09/07 14:08    Sujet du message: Citer

Profet a écrit:
De plus il n'y a pas de grand intérêt à ca pour un dummy caster Wink

si si, on la flemme de transformer un sort héros en sort unité Razz
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Rommstein60
MODÉRATEUR À LA RETRAITE


Inscrit le: 23 Aoû 2007
Messages: 4766
Sujets: 136
Spécialité en worldedit: Keskesapeutfout'
Médailles: 1 (En savoir plus...)
Rédacteur de tuto #1 (Quantité : 1)

MessagePosté le: 15/09/07 15:07    Sujet du message: Citer

Oui désolé profet, le délencheur est pas dans l'élément du sujet.
Le sort : Le Héros a 5% de chances que l'unité qui l'attaque soit prise par des sarments.
Enfin bon le système est là et ça fait beaucoup moins de leak en mettant 30 unités dès l'initialisation que si tu créé un dummy chaque fois que le sort est activé.
Enfin tu dois te poser des questions sur le "Entier_quelconque[100]", c'est pour faire une ptite compression de variable.

_________________
Leçon n°1 du WorldEdit : « Le violet > Troll-Brain »
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7143
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Grand mage créateur de sort (Quantité : 1) Rédacteur de tuto #3 (Quantité : 1)

MessagePosté le: 15/09/07 15:09    Sujet du message: Citer

Citation:
Le sort : Le Héros a 5% de chances que l'unité qui l'attaque soit prise par des sarments.

Et ce même si l'attaque est abandonnée hihi
Citation:
Enfin tu dois te poser des questions sur le "Entier_quelconque[100]", c'est pour faire une ptite compression de variable

Euh ouai ...
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Rommstein60
MODÉRATEUR À LA RETRAITE


Inscrit le: 23 Aoû 2007
Messages: 4766
Sujets: 136
Spécialité en worldedit: Keskesapeutfout'
Médailles: 1 (En savoir plus...)
Rédacteur de tuto #1 (Quantité : 1)

MessagePosté le: 15/09/07 15:12    Sujet du message: Citer

Laisse tomber pour la compression stp Troll
Quant à l'attaque, tu crois pas qu'on s'en fout un peu dans une Footy, où t'as des centaines d'unités qui attaquent -_-
Enfin bon si tu as une solution envoie Razz

_________________
Leçon n°1 du WorldEdit : « Le violet > Troll-Brain »
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 Troll-Brain
Ri1kamoua


Inscrit le: 23 Aoû 2007
Messages: 7143
Sujets: 147
Spécialité en worldedit: le troll, le flood, la vulgarité, mon coeur balance
Médailles: 2 (En savoir plus...)
Rédacteur de tuto #3 (Quantité : 1) Grand mage créateur de sort (Quantité : 1)

MessagePosté le: 15/09/07 15:20    Sujet du message: Citer

Citation:
Quant à l'attaque, tu crois pas qu'on s'en fout un peu dans une Footy, où t'as des centaines d'unités qui attaquent -_-

Bah justement oho ca a beaucoup plus de chance de se produire.
en plus se faire sermenter avant de subir des dégâts c'est pas trés fair play ^^
Le seul moyen plus ou moins fiable est d'utiliser un buff trés court.
Lorsque l'unité subit des dégâts on vérifie si elle possède le buff, et on sait qui est l'attaquant
_________________
Le violet, c'est moche.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
 profet
Instanton Gravitationnel Singulier


Inscrit le: 21 Aoû 2007
Messages: 1633
Sujets: 53
Spécialité en worldedit: Pain d'épice multitâche (terrain, scripts, textures, modèles...)
Médailles: 2 (En savoir plus...)
Profet (Quantité : 1) Rédacteur de tuto #3 (Quantité : 1)

MessagePosté le: 15/09/07 21:40    Sujet du message: Citer

@troll: ouai enfin "la flemme" n'est pas un avantage :p

Rommstein60 a écrit:
Oui désolé profet, le délencheur est pas dans l'élément du sujet.
Le sort : Le Héros a 5% de chances que l'unité qui l'attaque soit prise par des sarments.

Pour ça tu pourrais plus intelligemment utiliser le sort d'orbe de foudre, avec comme sort sarment et comme chance de lancer 5%...

Rommstein60 a écrit:
Enfin bon le système est là et ça fait beaucoup moins de leak en mettant 30 unités dès l'initialisation que si tu créé un dummy chaque fois que le sort est activé.

Avant d'avancer des choses comme ça il faudrait que tu saches de quoi tu parles...
Le peu de leak que des dummy casters créeraient (si leak il y a), est ridicule, de plus créer quelques unités pour un lancement de sort n'est pas spécialement très gourmand en ressources.
Ce n'est pas inutile d'avoir un recyclage de dummy, mais ta méthode n'en est pas une et est terriblement horrible si l'on réfléchi a ce que peut engendrer 30 unités de plus sur certaines map (surtout qu'elles seront pour la plupart inutiles).

Et ton truc avec ta variable et tes random int sont complètement farfelus.

Rommstein60 a écrit:
Enfin tu dois te poser des questions sur le "Entier_quelconque[100]", c'est pour faire une ptite compression de variable.
o_O
_________________

Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70%
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Worldedit Index du Forum -> Aide sur les déclencheurs Toutes les heures sont au format GMT + 1 Heure
Aller à la page Précédente  1, 2, 3  Suivante
Page 2 sur 3

 
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