Jump to content

ATME : scheduleFunction et respawnGroup


CougarFFW04

Recommended Posts

Dans ton log, je vois que ta mission a deux modules.

Oui deux modules suite a mon pb et vos conseils.

cf https://forums.eagle.ru/showthread.php?t=229653

 

Dans le premier module tout les handlers sont a nil et il n'y a rien d'autre

 

Pour commencer, supprime le module qui ne gère pas le respawn pour voir si le bug existe toujours.

 

Déjà essayé sans résultat mais je vais réessayer un peu plus tard au cas ou j'aurais laissé passer un truc...

Pour la 1.46 j'attends que ce soit dispo.

 

As tu lu tes messages privés?

 

Oui. Merci. Je passerais sur le Discord a l'occasion si je ne m'en sort pas.

Link to comment
Share on other sites

Oui deux modules suite a mon pb et vos conseils.

cf https://forums.eagle.ru/showthread.php?t=229653

 

Dans le premier module tout les handlers sont a nil et il n'y a rien d'autre

 

 

Dans ce cas, il n'y a aucune raison... Je vais approfondir quelques tests sur le sujet dès que je pourrai, mais avec la 1.46 et la mission que j'ai envoyée. Tu fais le respawn 2 groupes au même moment ? Si, oui essaie avec un .... et si ca marche il y a un soucis effectivement.

Link to comment
Share on other sites

Hello,

 

Transmettre les choses dont j'ai besoin par des privateData me semble la bonne façon de faire mais je ne comprends pas trop si et comment on peut les définir...

De ce que je comprends ce sont en quelques sorte des attributs qu'on peut définir selon ses besoin. Par exemple je pourrais vouloir définir un attribut "couleur" qui aurait la valeur "rouge" à mon alarme (je dis évidement n'importe quoi ici c'est juste pour prendre un exemple). Du coup je m'attendais a trouver un truc du genre

 

setUserPrivateDatas mais ca n'existe pas...

 

Ou alors pour reprendre ton exemple :

datas.objectgroup = _Group

 

j'aurais trés bien pu faire par exempe

datas.couleur = "rouge"

oui ? / non ? Je suis a coté de la plaque ?

 

Ton petit exemple au dessus donne déjà des indication mais a partir de seulement ca je ne sais pas (et je ne trouve pas dans le manuel) ce que sont exactement ces privateDatas...

 

Un peu d'aide sur la question serait la bienvenue,

 

Merci d'avance


Edited by CougarFFW04
Link to comment
Share on other sites

Salut,

 

c'est get... pas set, tu l'as dans l'exemple.

Les privates datas c'est un pointeur sur une table liée au module. Donc avec le getUserPrivateDatas tu obtiens l'entrée de la table pour un module donné. Et de là tu l'utilises comme tu veux. C'est une table vide au début.

 

Et oui tu peux y mettre une table, ou des variables simples ce que tu veux

Link to comment
Share on other sites

Hello ATME Gurrus,

 

Bon ben ca veut vraiment pas...

Je suis passé par les privateData comme suggéré.

 

Toujours le même plantage...

 

@snowsniper: mission et script lua envoyé par mail comme demandé.

C'était du 1.45 mais je viens d'essayer en 1.46 en virant le onSpawnhandler qui n'existe plus et ca ne change rien... J'ai aussi viré des bouts de code donc ne pas se soucier de onTakeoffAIUnit ni du onLandingAIUni ca ne vient pas de la.

 

 

@sunski34: j'essaye ta mission d'ici demain et je te dis...

 

 

Tenez moi au courant,

 

Merci


Edited by CougarFFW04
Link to comment
Share on other sites

Salut,

 

Si le nom du groupe que tu mettais dans le nom de l'alarme est bon ta solution doit fonctionner, l'utilisation des privates datas est "plus joli" car c'est justement fait pour ca. Mais effectivement, aucune raison que celà résolve le soucis selon ce que je pense deviner pour l'instant.

 

Mon idée sur le "bug" : J'ai vu que tu respawnais 2 groupes après destruction. Essaie ma mission qui doit fonctionner et après supprime un des deux groupes de la tienne... Et essaie. Je pense qu'il y a un soucis là. Si c'est confirmé, je regarderai ce WE avec des tests plus approfondis. sur ce sujet précis.

 

On se tient au courant.

Link to comment
Share on other sites

Hello,

 

Je vais essayer ta mission ce soir si j'ai le temps.

 

C'est vrai que, dans le cadre de ces tests, je fais un respawn des 5 groupes quasiment en même temps. ca ne sera probablement jamais le cas dans une vraie mission. Je vais modifier un peu le code pour voir si le problème subsiste en espaçant les respaw...

 

C'est vrai qu'avec les privateData c'est beaucoup plus pratique et plus propre.

 

Joliment pensé. Je l'ai déjà dit mais je dois le redire : avec ATME vous avez vraiment fait un truc de fou. Ca simplifie grandement la lecture du code en déportant tout les détails de l'usine a gaz DCS et en évitant de ré-inventer la roue.

Bravo :thumbup:

Link to comment
Share on other sites

Hello,

 

 

Bon je ne veux pas être complétement affirmatif dés maintenant mais apparemment le bug ATME se produit si plusieurs groupes sont respawné quasi simultanément.

 

 

En effet j'ai espacé les respawn et sur le test fait je n'ai plus le plantage...

A confirmer...

Link to comment
Share on other sites

Oui c'est possible... Je vais approfondir ca ce WE, ca doit etre une betise .... dans le code du Core

 

J'ai pourtant tester avec plusieurs groupes mais pas simultanément.

 

Bon si c'est isolé, pour l'instant contourne le bug en évitant les actions simultanées.

Je te tiendrai au courant de la correction.

Link to comment
Share on other sites

Bon si c'est isolé, pour l'instant contourne le bug en évitant les actions simultanées.

Je te tiendrai au courant de la correction.

Juste un petit message pour dire que j'ai refait plusieurs tests et je n'ai plu de plantage donc a priori c'est bien lié a des respawn quasi simultanés.

Bon courage et merci :smilewink:

Link to comment
Share on other sites

Avec des scripts de bourrin comme ca on va pouvoir debugger atme dans ses limites c est cool lol . Ca va changer de mes scripts de noob hello world. Lol

Vas y envois du lourd ;-)

 

 i7-10700KF CPU  3.80GHz - 32 GO Ram - - nVidia RTX 2070 -  SSD Samsung EVO with LG  TV screen 40"  in 3840x2150 -  cockpit scale 1:1

- MS FFB2 Joystick  - COUGAR F16 throttle  - Saitek Pro Flight Rudder Pedals

 

Link to comment
Share on other sites

Hello,

 

Avec des scripts de bourrin comme ca on va pouvoir debugger atme dans ses limites c est cool lol .

Bon j'espère que vous en avez pas marre car la je bombarde a donf niveau question :music_whistling::D

 

Ca va changer de mes scripts de noob hello world.

Tes scripts sont vraiment parfait pour comprendre le fonctionnement d'ATME. Sans tes scripts je serais encore en galère totale...

 

Vas y envois du lourd ;-)

DynaMO (Dynamic campaign Model) (mini) campagne dynamique en gestation... Ca avance bien :smartass:

Et ca grace a votre boulot de dingue car ATME c'est du lourd :thumbup:

 

Thanks


Edited by CougarFFW04
Link to comment
Share on other sites

tout le travail, c'est sun. (pas moi.)

 

moi j'utilise avec grand plaisir il est vrai, et promote le travail quand je peux, et je lance des nouveaux défis challenges idées, dans le meilleur des cas.( mais je me freine, parce que ... sun part au quart de tour sur les nouvelles idées, et dès que j'aboutie sur un turnaround sur un concept à moi après moult difficultés et débuggage et 2 semaine de cassage de tête ,si concept non implémenté en base , pas le temps de faire ouf qu'il y a déjà une nouvelle fonction qui règle en 2 ligne de code, un proto de 400 lignes bancal, et une nouvelle version ATME du core béta. ahah.

 

et dans le pire des cas je détourne l'idée de base ou le concept de sun, dans une programmation à l'arrache et sans trop de rigueur... en faisant fi (enfin presque) des consignes et règles .

 

mais ou je m'amuse beaucoup ça c'est sur.;-)

 

ravi que ça te plaise.en tout cas.

 

 i7-10700KF CPU  3.80GHz - 32 GO Ram - - nVidia RTX 2070 -  SSD Samsung EVO with LG  TV screen 40"  in 3840x2150 -  cockpit scale 1:1

- MS FFB2 Joystick  - COUGAR F16 throttle  - Saitek Pro Flight Rudder Pedals

 

Link to comment
Share on other sites

Juste un petit message pour dire que j'ai refait plusieurs tests et je n'ai plu de plantage donc a priori c'est bien lié a des respawn quasi simultanés.

Bon courage et merci :smilewink:

 

Je vais approndir ca ce we si je peux.

 

Merci à toi. Comme le dis snow, on a fait des tests mais bien sur pas pour tous les cas possibles, ce serait un travail de fou. Je sais aussi qu'il y a de l'optimisation de code à faire au regard des contraintes DCS en terme de traitements. Il faut que ce reste fluides jusqu'à des limites acceptables.

 

A+

Link to comment
Share on other sites

Ok, je reproduis le problème avec deux groupes d'hélico. Le problème n'existe pas pour les véhicules au sol. il ne concerne que les aéronefs. Tests faits sur la 1.45

 

Je livrerai un correctif dès que je pourrai sur ce point.

 

Merci à toi

 

A+

 

Sun

Link to comment
Share on other sites

Problème corrigé dans la V1.47 publiée ce jour. Attention à la fonction setAutoRespawn qui prend maintenant 2 paramètres, rules devenant obligatoire. Le deuxième paramètre est optionnel. Il correspond à la définition d'une callback qui sera appelée lors du respawn après la création du groupe par onGroupCreateHandler. Son usage est le même que pour la callback de spawn utilisée dans la classe ATME.C_CloningContext. Dans le cas d'un autorespawn, il n'y a pas d'instance de ATME_CloningContext, aussi, le premier paramètre de cette callback sera nil dans ce cas.

 

Je te joins un exemple.

ATME_direct_menu_spawn_destroy.lua

ATME direct menu spawn and destroy.miz


Edited by sunski34
Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...