Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
Bantas Anomalie floodiforme
Inscrit le: 21 Aoû 2007 Messages: 1524 Sujets: 37
Médailles: 1 (En savoir plus...)
|
Posté le: 19/11/09 00:12 Sujet du message: |
|
|
Je sais que le post est plus que mort, mais le problème mentionné dans le dernier post de profet n'est il pas plutôt lié au nombre limité de texttags ? (100 pour mémoire) _________________
|
|
Revenir en haut |
|
|
Diedskill Ptit Nouveau
Inscrit le: 26 Sep 2009 Messages: 25 Sujets: 5 Spécialité en worldedit: Passer 2 heures à faire un truc qui prend 3 minutes
|
Posté le: 21/11/09 17:30 Sujet du message: |
|
|
Peut importe le nombre de fois où je réessaye, moi ça ne marche pas.
Cela m'affiche un message d'erreur et désactive le trigger.
J'ai essayer d'ajouter des espaces, d'en enlever, rien ne marche.
Je convertie n'importe quel déclencheur en texte et il ne fonctionne plus de toute façon ...
J'ai cru comprendre qu'il y avait des logiciels pour éviter cela, mais le seul que j'ai trouvé ne fonctionne pas ... _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 24/11/09 02:00 Sujet du message: |
|
|
Bantas a écrit: | Je sais que le post est plus que mort, mais le problème mentionné dans le dernier post de profet n'est il pas plutôt lié au nombre limité de texttags ? (100 pour mémoire) |
Non je ne pense pas, le lag ne survient que très tard dans la partie, alors que je créais de nombreux texttags toutes les secondes _________________
Bêta Systems: 70%
Bêta Spells: 13%
Bêta Arts & graphics: 70% |
|
Revenir en haut |
|
|
DarkOne Ptit Nouveau
Inscrit le: 25 Jan 2010 Messages: 3 Sujets: 0
|
|
Revenir en haut |
|
|
Bantas Anomalie floodiforme
Inscrit le: 21 Aoû 2007 Messages: 1524 Sujets: 37
Médailles: 1 (En savoir plus...)
|
Posté le: 30/01/10 13:58 Sujet du message: |
|
|
Le problème vient des variables locales. En GUI, tu n'as accès qu'aux globales, qui sont en théorie tout le temps utilisées et modifiées. Nullifier les variables globales n'est donc pas nécessaire. _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 30/01/10 14:16 Sujet du message: |
|
|
Ca faisait longtemps que n'avais pas étalé mon savoir alors je vais modérer les propos de Bantas.
C'est certes négligeable dans l'hypothèse ou la variable globale sera tôt ou tard setté à une nouvelle valeur, empêchant ici un leak de référence d'handle.
Mais il existe aussi un leak (très mineur) quand un handle est détruit et que la variable qui pointait encore dessus n'est pas immédiatement nullifié.
Par contre il est nécessaire de nullifier la variable si l'handle ainsi référencé est susceptible d'être détruit et qu'il s'agit d'une variable local (même si ce n'est pas aussi simple, mais généraliser ce principe ne fait rien de mal) _________________
Le violet, c'est moche. |
|
Revenir en haut |
|
|
Tirlititi
Inscrit le: 21 Fév 2010 Messages: 1785 Sujets: 22 Spécialité en worldedit: La modestie Médailles: 1 (En savoir plus...)
|
Posté le: 27/02/10 14:47 Sujet du message: |
|
|
J'ai une question !
Est-ce que ça, ça créer du leak :
Jass: | function DestroyZarb takes group g returns nothing
call TriggerSleepAction(1)
call DestroyGroup(g)
set g=null
endfunction
function PreDestroyZarb takes nothing returns nothing
local group g=CreateGroup()
call DestroyZarb(g)
endfunction |
Le truc c'est que je ne nullifie pas la variable local mais elle ne pointe plus (enfin, je crois) sur le groupe lorsque je le détruis...
EDIT : A d'accord, merci. Moi qui utilisait ExecuteFunc à tout vas parceque je trouvais ça vachement pratique, je vais éviter dans les boucles alors ^^. _________________
Dernière édition par Tirlititi le 27/02/10 15:24; édité 1 fois |
|
Revenir en haut |
|
|
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...)
|
|
Revenir en haut |
|
|
Brissou de Mourièssou Créateur de sorts, depuis 1936.
Inscrit le: 30 Aoû 2007 Messages: 1510 Sujets: 26 Spécialité en worldedit: Développer des jeux vidéos pour le fun, donc world edit c'est comme faire une addition. Médailles: 2 (En savoir plus...)
|
Posté le: 27/02/10 15:58 Sujet du message: |
|
|
Troll-Brain a écrit: | Et ExecuteFunc est le mal absolu, trompe toi de nom de fonction et tu auras un crash in game difficile à identifier.
De plus, c'est lent. |
C'est extrêmement pratique pour les sorts ne l'oublions pas, nom du sort == nom de la fonction, et void pour les sorts qui n'ont pas de fonctions associés. Je me vois très mal avec un seul déclencheur et une centaine de If / elseif, pour lancer la bonne fonction liée au sort.
Je trouve qu'au contraire le crash est facilement identifiable, c'est toujours un fatal error avec un code d'erreur 0x00000005. _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 27/02/10 16:30 Sujet du message: |
|
|
Brissou de Mourièssou a écrit: | Troll-Brain a écrit: | Et ExecuteFunc est le mal absolu, trompe toi de nom de fonction et tu auras un crash in game difficile à identifier.
De plus, c'est lent. |
C'est extrêmement pratique pour les sorts ne l'oublions pas, nom du sort == nom de la fonction, et void pour les sorts qui n'ont pas de fonctions associés. Je me vois très mal avec un seul déclencheur et une centaine de If / elseif, pour lancer la bonne fonction liée au sort.
Je trouve qu'au contraire le crash est facilement identifiable, c'est toujours un fatal error avec un code d'erreur 0x00000005. |
Il existe d'autres alternatives tel que SpellEvent.
Même si je l'ai recodé moi même car je ne l'aime pas ...
Tu peux absolument te passer de ExecuteFunc, n'oublions pas le power des function interface.
Je veux bien admettre que c'est toujours la même erreur, mais encore faut t'il la retrouver dans le script cela dit. _________________
Le violet, c'est moche. |
|
Revenir en haut |
|
|
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...)
|
Posté le: 27/02/10 17:30 Sujet du message: |
|
|
Comme le test était faussé par l'emploi de TriggerSleepAction, je confirme que l'id n'est pas recyclé :
Jass: | function DestroyZarb takes group g returns nothing
//call TriggerSleepAction(1)
call DestroyGroup(g)
set g=null
endfunction
function PreDestroyZarb takes nothing returns nothing
local group g=CreateGroup()
call BJDebugMsg(I2S(GetHandleId(g)))
call DestroyZarb(g)
//set g = null
endfunction
|
Enlève les "//" dans PreDestroyZarb et tu verras toujours le même id recyclé. _________________
Le violet, c'est moche. |
|
Revenir en haut |
|
|
Brissou de Mourièssou Créateur de sorts, depuis 1936.
Inscrit le: 30 Aoû 2007 Messages: 1510 Sujets: 26 Spécialité en worldedit: Développer des jeux vidéos pour le fun, donc world edit c'est comme faire une addition. Médailles: 2 (En savoir plus...)
|
Posté le: 27/02/10 20:24 Sujet du message: |
|
|
Tant que ça fonctionne très bien je garde l'existant. Une seule fois j'ai réalisé de grands changements pour utiliser ton système de Timer ^^ _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 27/02/10 20:28 Sujet du message: |
|
|
Brissou de Mourièssou a écrit: | Tant que ça fonctionne très bien je garde l'existant. Une seule fois j'ai réalisé de grands changements pour utiliser ton système de Timer ^^ |
Oui bien sûr je peux me permettre de me mettre au goût du jour sachant que je n'ai pondu la moindre map, c'est facile pour moi.
Mais sache qu'en utilisant ExecuteFunc de la sorte, tu ne pourras pas utiliser wc3mapoptimizer, en effet comment peut t'il deviner comment gérer les appel de ExecuteFunc tout en raccourcissant les noms de fonctions ?
A propos, tu crois que le système de Timer t'apporte quelque chose ou c'est basiquement le même résultat que X timers avec TimerUtils ? _________________
Le violet, c'est moche.
Dernière édition par Troll-Brain le 28/02/10 00:48; édité 1 fois |
|
Revenir en haut |
|
|
Brissou de Mourièssou Créateur de sorts, depuis 1936.
Inscrit le: 30 Aoû 2007 Messages: 1510 Sujets: 26 Spécialité en worldedit: Développer des jeux vidéos pour le fun, donc world edit c'est comme faire une addition. Médailles: 2 (En savoir plus...)
|
Posté le: 28/02/10 00:48 Sujet du message: |
|
|
Troll-Brain a écrit: | Oui bien sûr je peux me permettre de me mettre au goût du jour sachant que je n'ai pondu la moindre map, c'est facile pour moi.
Mais sache qu'en utilisant ExecuteFunc de la sorte, tu ne pourras pas utiliser wc3mapoptimizer, en effet comment peut t'il deviner comment gérer les appel de ExecuteFunc tout en raccourcissant les noms de fonctions ? |
En effet je n'utilisais pas cette option, je n'utilise même plus l'optimizer depuis le patch de la mort, ça plante tout.
Troll-Brain a écrit: | A ce propos, tu crois que le système de Timer t'apporte quelque chose ou c'est basiquement le même résultat que X timers avec TimerUtils ? |
Ca me donne bonne conscience surtout, et donner de l'intérêt à ce que tu fais xD. Même avant j'utilisais seulement quelques timers pour faire du regroupement. Franchement je n'ai pas constaté de différences, on gagne peut être un 1 centième de temps en temps.
Donc pour le joueur aucune différence. J'espère que tu nous sortiras une map sous SC2 et ne surtout pas t'engouffrer dans du speedfreak, need faire un topic "Mon avis sur le speedfreak - à méditer" _________________
|
|
Revenir en haut |
|
|
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...)
|
Posté le: 28/02/10 00:53 Sujet du message: |
|
|
Citation: | Ca me donne bonne conscience surtout, et donner de l'intérêt à ce que tu fais xD. Même avant j'utilisais seulement quelques timers pour faire du regroupement. Franchement je n'ai pas constaté de différences, on gagne peut être un 1 centième de temps en temps.
Donc pour le joueur aucune différence. J'espère que tu nous sortiras une map sous SC2 et ne surtout pas t'engouffrer dans du speedfreak, need faire un topic "Mon avis sur le speedfreak - à méditer" |
Loul, tellement vrai.
Ce qui est sûr, c'est que je ne mapperais pas tant que l'on n'aura pas un vGalaxy, Vexorian ne se dit pas partant pour le faire mais je ne doute pas qu'il y a d'or et déjà des personnes sur le starting block.
Ca me fait un peu <grossièreté> la syntaxe C like, mais je m'adapterais. _________________
Le violet, c'est moche. |
|
Revenir en haut |
|
|
|