See site in english Voir le site en francais
Website skin:
home  download  forum  link  contact

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

Author Topic: Programmation W32 <-> ORBITER SDK , possible ou pas ?  (Read 13637 times)

0 Members and 1 Guest are viewing this topic.

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #25 - 22 July 2010, 10:00:46
Vu comme çà ...
C'est sûr !
Ma raison me commande d'initier des échanges interprocessus en local , et une fois que le format des données
et les méthodes seront sures , déployement vers sockets ....
Je ne sais pas encore ce qui est le moins Lourd pour la boucle de Orbiter , ni comment m'y insérer .
Mais le fait de disposer des PIPES est pour moi une super OPTION .
J'étais un peu inquiet au niveau du fonctionnement : Bloquant ? Pas Bloquant ?
EN fait , le programmeur a le choix .
On peut même créer un thread qui tourne dans le processus d'Orbiter , commandé par un simple Booleen ou
un appel de fonction qui indique quand ecriture dans le pipe , à partir de la fonction Oapipostmachin ... .
De l'autre coté , la lecture peut être automatique ... ou pas .
Bref,  de quoi bien s'amuser .
Bonne journée ,spock !


Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline tofitouf

  • Legend
  • ******
  • Posts: 1380
  • Karma: 0
Reply #26 - 22 July 2010, 14:02:06
t'es vraiment un extra terrestre. Et le pire c'est que je comprends tout ton langage donc moi aussi j'en suis un, c'est un fait avéré.


---------------------------------------------

PC en rade, codage en panne.... Nom de Zeus

Offline ganlhi

  • Sr. Member
  • ****
  • Posts: 358
  • Karma: 0
Reply #27 - 22 July 2010, 14:35:57
Là je n'ai pas trop le temps de chercher (ben oui, je bosse ^^) mais il me semble bien qu'il y a un SDK, mais qui a son propre site il me semble (ce n'est pas sur le site de OC).

Après je disais ça par rapport à ton clin d'oeil sur les home-cockpits, vu que c'est un domaine que je commence à bien connaitre et que la référence est OC.

Mais si tu ne cherches pas de communication réseau, les pipes c'est une très bonne idée.



Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #28 - 22 July 2010, 16:18:31
Quote
Mais si tu ne cherches pas de communication réseau, les pipes c'est une très bonne idée.
Merci pour la confirmation .
N'étant pas spécialisé dans les réseaux ( j'ai une connection Internet depuis moins d'un an ... ) mais ayant bricolé
des applications sur un serveur Apache dans mon réseau local , j'ai une vague idée des " branchements " à concevoir .
Tofitouf a abordé un sujet primordial concernant ce mode multijoueur , c'est la syncronisation de " la map " .
Sans un système efficace de mise à niveau , difficile d'avoir une expérience agréable en réseau .
Le fait d'avoir eu l'idée de se connecter directement sur les sites proposant des addons est génial , et pour obtenir les autorisations il fallait être respecté dans la communauté . Je suis jeune pilote ...
J'estime donc disposer de suffisamment de temps pour digérer l'Api d'Orbiter , et apprendre de tout ce qui a été accompli
jusqu'à ce jour . Je ne pense pas avoir la capacité d'inventer un bon système de transaction , d'autres l'ont fait dans d'autres applications ou simulateurs ,mais je crois avoir la capacité de les comprendre et d'en tirer partie .

 J'ai dans l'idée de me reconstruire un cockpit ( hé oui ....) mais c'est possible que ce ne soit plus pour un Cessna ou un Baron ( il me fallait des hélices... ). Bref , c'est un florilège ( super ce mot ...) d'idées que j'ai , et qui je pense sont interdépendantes . J'essaye de les faire évoluer dans ce sens , et qu'elles puissent être partagées .
AU départ , j'étais lancé vers un protocole UDP , puis en voulant aider TOFITOUF , j'ai trouvé les PIPES .Comme Dan le disait , c'est possible de beaucoup progresser grâce à Orbiter et sa communauté.
Je peux témoigner déjà que c'est vrai .
Donc , aprés ton boulot , et si par hasard tu retrouves le SDK , ce sera une pièce de plus SUPER INTERRESSANTE dans
mon " cahier des charges " .
Je me dis aussi qu'à force de lacher des idées ici , quelqu'un d'autre finira bien par s'y mettre .
Quelqu'un qui a la main verte ?
Merci pour ton idée , c'est déjà très PRO ! Pour l'évolutivité de mon code , j'ai besoin d'avoir ce genre d'avis .
Merci !
SPOCK .


Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #29 - 23 July 2010, 11:37:35
Bon , ben pas le choix ...
Je dois tout réapprendre sous VisualStudio , me voilà revenu .... 10 ans en arrière .
Le c++ reste du c++ , mais l'interface , le compilateur , etc ...
Je vais faire en sorte que vous profitiez de mes déboires pour en tirer qqchose , si vous aspirez à utiliser VisualStudio 2005 . Je ferais peut-être un fil parrallèle à celui de BiBi , un genre de "Truc et Astuces " .
Bonne Journée à tous.
Spock !


Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline ganlhi

  • Sr. Member
  • ****
  • Posts: 358
  • Karma: 0
Reply #30 - 23 July 2010, 15:49:27
Tu as bien du courage, je n'ai jamais pu me faire aux IDE de Microsoft... Je préférais faire du c++ soit sous un "simple" éditeur de texte avancé avec une console ouverte à côté pour la compilation et le debuggage, soit sous Code::Blocks.



Offline Apofis

  • Sr. Member
  • ****
  • Posts: 349
  • Karma: 0
Reply #31 - 23 July 2010, 15:55:12
avec l'autocomplétion, le débugeur et tout le bardas s'est plutôt agréable VC.

essaye l'éditeur de vba dans office... la s'est l'enfer sur terre...


"Oups c quoi se bruit" Fred Haise, apollo 13 :P

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #32 - 23 July 2010, 16:35:16
Quote
essaye l'éditeur de vba dans office... la s'est l'enfer sur terre...
Ah AH AH ....

Compris ! Je programme mon MFD pour l'éviter !

Quote
Tu as bien du courage, je n'ai jamais pu me faire aux IDE de Microsoft... Je préférais faire du c++ soit sous un "simple" éditeur de texte avancé avec une console ouverte à côté pour la compilation et le debuggage, soit sous Code::Blocks.

Merci Ganlhi !
COmme toi , j'ai éssayé diverses alternatives ( sur mon disque dur DEVC++ et CODE:BLOCS , entre autre...) .
Mais comme DAN s'est décarcassé pour qu'on arrive à sa cheville , et comme de toute manière j'ai toujours besoin d'apprendre , j'y vais ...
Mais la vache , un truc qui prends 2 minute sur Borland me prend ... presque 1 heure chez le concurrent .
J'espère vraiment que ça va se tasser .
J'ai bossé toute l'aprés midi sur le "taf" des variables externes , et c'est bon , je commence à sortir de la boue ...
 J'avais presque oublié les PIPES ! Heureusement que je me relis ...
Merci pour vos commentaires et votre interêt ,
Pilote Spock !


Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline tofitouf

  • Legend
  • ******
  • Posts: 1380
  • Karma: 0
Reply #33 - 23 July 2010, 18:37:22
accroche toi, ca en vaux la peine.


---------------------------------------------

PC en rade, codage en panne.... Nom de Zeus

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #34 - 23 July 2010, 18:40:39
Merci Tof'
:fou:
Spock


Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #35 - 24 July 2010, 13:17:50
Salut !
Episode d'aujourd'hui ? Ben je crois que je digère la leçon de la PORTABILITé d'un code , et qu'il faudra bien
que je m'y fasse . Mais ... Je crois qu'en développant des parties complexes sur Borland , je ne perdrai pas un temps ,
si précieux pour la recherche .Toujours le même problème : La recherche c'est passionnant mais légitimé par les applications ...
Donc je vais me grouiller de bricoler des systèmes Hors Orbiter , et je sais que j'aurais le soutien de plusieurs pour
l'intégrer dans Orbiter . Pourquoi pas déléguer, d'Ailleurs ? ( J'y avais pas pensé ...) .

 _Ordre du JOUR : Mise en place pour commencer d'une App serveur et d'une cliente liée par un PiPe anonymous ( unidirectionnel)  . La méthode de transport est la même que celle utilisée lors des écritures/lectures
de fichier , mais en mémoire ( pour le transfert, pas d'accès disque à priori ... ).
Objectif ? Créer un système simple et rapide de transaction d'Orbiter vers un client local . Format final : Dll .
Spock


Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #36 - 24 July 2010, 16:44:08
YOUHOUU !!
Aprés quelques frayeurs ( notamment un Reboot forcé de xp du trés certainement à une violation d'accés de mémoire...Ooops ) , j'ai réussi à faire transiter entre une Application Serveur et Client la structure example de Dan
Quote
typedef struct{
   double dAltitude;         // altitude en metre
   double dVitesse;         // vitesse en m/s
   double dVitesseKmh;         // vitesse en km/h
   double dVitesseVerticale;   // vitesse verticale en m/s
   double dAtmPressure;      // pression atmosphere en pascal (101300 Pa =terre au sol)
   double dDynPressure;      // Pression dynamique
   double dAirSpeedKmh;      // Vitesse en Km/h
   double dMachNumber;         // nombre de mach
   double dAOA;            // AOA En radian (angle d'attaque) (Data.dAOA*DEG pour degré)
   double dPitch;            // pitch En radian Data.dPitch*DEG pour degré)
   double dBank;            // Bank En radian Data.dBank*DEG pour degré)
   int      iTimeWarp;         // Acceleration du temps (1= normal sinon 10,1000,10000 etc etc)
   // vecteur vitesse (voir doc orbiter)
   char cNomPlanete[255];      // nom planete pres de laquelle vous etes (SOI) en anglais
   bool bAirRespirable;      // Si l'air est respirable a l'endroit ou est votre vaisseau (terre et <10000m)
   double dMass;            // Masse totale de votre vaisseau en kg
   double dGVert;            // acceleration "G" composante vertical seulement (tete/pied pour un pilote assis)
   double dGTotal;            // acceleration "G" composante total (tout vecteur)
}DATASIMULATION;

Il est 16h41 , et j'ai de l'espoir .
Prochaine étape , mettre à genoux mon Pc avec un test de PIPE streaming avec au menu Capture d'image de webCam
et retransmission par le Tube . Une sorte d'avant goût pour la capture d'images d'Orbiter ...
A+,
Spock.


Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline tofitouf

  • Legend
  • ******
  • Posts: 1380
  • Karma: 0
Reply #37 - 26 July 2010, 17:08:54
Oui un des danger des PIPE est ce genre de plantage si on les maitrise pas totalement. c'est ce qui 'mavais fait fuir dans un passé lointain. quand une sockette se plante on a juste droit à un ptit crash to desktop.

sinon pour répondre à une de tes vieilels question ma méthode de connection socket est entirement basée sur de l'ascii !!!!

 au niveau performance c'est pourris mais coté stabilité c'est bien plus sur. mais c'est un point de vu très discutable.
je ne fait transiter que des touts petits paquets de données et c'est voulu (en gros le résultat des objectifs) donc je n'ai pas besoin d'une super connexion de la mort


---------------------------------------------

PC en rade, codage en panne.... Nom de Zeus

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #38 - 26 July 2010, 18:13:41
Quote
ma méthode de connection socket est entirement basée sur de l'ascii !!!!

Je m'en doutais un peu ...
c'est vrai que dans l'exemple que je donne, j'utilise la méthode qui parait être la plus simple (Unnamed Pipe), trés rapide à mettre en place , mais qui néccéssite UN SYSTEME DE CONTROLE personnalisé ( ex :CancelSynchronousIo function).
Quand le serveur envoie un paquet , il bloque le programme jusqu'à ce que le Buffer soit vidé, par une lecture de l'autre
coté . Si je me rappelle bien, la taille max d'un paquet est de 6500 bytes Donc prévoir une procédure d'annulation en cas de pépin ...
 
Mais ce test m'a permit d'entrer dans le vif du sujet , car je louche sur les NAMED PIPES qui disposent de procédures
Asyncrones , non-bloquantes , et pouvant être distantes ... Miam miam .
Quand à leur application , je ne manque pas d'imagination .

Quote
je n'ai pas besoin d'une super connexion de la mort
C'est noté !:diable:
Quoi d'autre ?
Je suis ton projet avec autant d'interêt . :hot:



Message modifié ( 27-07-2010 04:23 )

Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline tofitouf

  • Legend
  • ******
  • Posts: 1380
  • Karma: 0
Reply #39 - 27 July 2010, 10:51:22
pour els histoire de synchronisme et tout, la solution est toujours d'avoir un thread dédié. c'ets ce que j'ai ajouté dans mon plugin pour al gestion de socket et ca amrche très bien. même si orbiter se fige (pour w raison) je dépile toujours mes messages que j'empile pour que le mfd quand il en a besoin puisse en disposer rapidement (une fifo toute con).


---------------------------------------------

PC en rade, codage en panne.... Nom de Zeus

Offline pilote334

  • Sr. Member
  • ****
  • Posts: 300
  • Karma: 5
Reply #40 - 27 July 2010, 15:49:29
Moi, ton histoire de connexion asynchrone non bloquante m'interresse vivement. Si tu as une routine portable client <-> serveur (sous forme de fonction ou de classe), je suis preneur. Tiens-moi au courant par MP.

Merci à toi...

Yves


Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #41 - 27 July 2010, 16:21:13
Super !
Tu m'offres une occasion légitime de continuer dans ce sens !
Je pense à toi et te MP !
Mr Spock ...
:wor:


Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #42 - 27 July 2010, 17:24:35
Quote
pour els histoire de synchronisme et tout, la solution est toujours d'avoir un thread dédié. c'ets ce que j'ai ajouté dans mon plugin pour al gestion de socket et ca amrche très bien. même si orbiter se fige (pour w raison) je dépile toujours mes messages que j'empile pour que le mfd quand il en a besoin puisse en disposer rapidement (une fifo toute con).

R2-D2 est entrain de décoder ton message , je retiens pour l'instant "un thread dédié" , donc ton plugin est
multithread ... Bon à savoir .
Il se fige ? Mmmh ... je vais y réfléchir , de toute façon c'est là où je suis censé arriver ( Asyncrone , non-bloquant , multithread .)
MrSpock .
;)


Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #43 - 27 July 2010, 19:50:03
Quote
même si orbiter se fige (pour w raison) je dépile toujours mes messages que j'empile pour que le mfd quand il en a besoin puisse en disposer rapidement (une fifo toute con).

DEFINITION :

Quote
L'acronyme FIFO est l'abréviation de l'expression anglaise First In, first Out, que l'on peut traduire par « premier arrivé, premier servi » (littéralement « premier entré, premier sorti »). Ce terme est employé en informatique pour décrire une méthode de traitement des données. Cette méthode correspond à une méthode de traitement des éléments d'une file (calculs d'un ordinateur, stocks). Selon Donald E. Knuth1 les premiers à considérer ce concept comme digne d'étude étaient sans doute les cost accountants.

Problème de " figé " (...même si orbiter se fige (pour w raison)
Quote
Si l'avantage de cette politique d'ordonnancement réside dans sa simplicité, elle pénalise les processus à temps bref d'exécution. En effet, si un processus demandant beaucoup de temps de calcul est lancé, suivi directement par une petite tâche (l'utilisateur appuie sur retour dans son traitement de texte) la petite tâche devra attendre la fin de l'autre pour s'exécuter.

No comment ...
:blbl:
MrSpock .


Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #44 - 27 July 2010, 21:25:46
Suite aux nombreux échanges ayant eu lieu entre TOFITOUF et mon AVATAR , je suis plus à même d'imaginer une
solution multijoueur avec les pipes .
L'AddonManager de TOFITOUF est une application externe , qui s'occupe entre autre de niveller les Addons entre
utilisateurs et de télécharger sur le web les fichiers manquants . Bonne initiative , et je vais m'en inspirer .
A LA DIFFERENCE QUE :

Dans ma perspective , c'est le serveur d'Orbiter qui détient les Addons , et qui distribue aux clients les fichiers manquants . Ceci devrait permettre une simplication du code et son intégration dans un plugin .
C'est au WebMaster ou au propriétaire du Serveur d'enrichir sa base de donnée et sa bibliothèque d'addon .
Une partie est lancée quand tous les clients ont un status Ready .
Un time-out permettrait de Kicker un Client trop lent ... " désolé , mais votre connection au Serveur semble disfonctionner . Nous vous prions de vérifier votre connection ... " et retour au Mess . Genre ...

Le nombre de clients reste à calculer :
BandePassanteDuServeur/( (Nombre de threads * (TailleDUMessageEnBits * NombreDeMessagesParSeconde)).
Etc ....

MrSpock.



Message modifié ( 28-07-2010 00:24 )

Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline tofitouf

  • Legend
  • ******
  • Posts: 1380
  • Karma: 0
Reply #45 - 28 July 2010, 00:57:59
tout cela peu être une évolution de mon système en place. Le coté démarrage synchro d'une partie et attente d'autre joueur peut se faire sur le site web tout simplement.

pour les add-on, là aussi c'est le fonctionnement de mon ptit site, le webmaster aidé par des modérateurs met à jour la base d'add-on, les 'créateurs de challenges' peuvent en proposer de nouveaux en combinant des add-ons et en proposant une version modifiée de l'install d'orbiter. Les modérateurs valident les nouveautés en testant la config en question et les challenges. tout cela est déjà en place 'techniquement' il faut paufiner encore par contre al présentation sur le site.

pour l'install d'add-ons par contre le serveur ne peux pas envoyer directement les binaires pour une question de droits des auteurs. notre serveur ne peux en héberger à l'insu des créateurs d'add-ons par respect pour eux.
donc on ne pourra jamais faire en sorte que el serveur envoie de lui même les add-ons mais on peux lancer des téléchargements sur les sites hébergeurs (ce qui av incrémenter leur compteur ou ouvrir la page web dans le navigateur pour que l'utilisateur lance le download.

après avoir bien questionné les auteurs et notamment Dan. ce système est indispensable pour le respect des créateur bénévole d'orbiter.

Mon manager donc sais aller chercher un add-ons tout seul ou ouvrir une page web selon le type d'add-on (un flag à cocher sur le manager pour celui qui proposera un nouvel add-on à la liste)

avant de lancer une partie je garantie que tous les add-on sont là, prête à être installé (si besoin) que la config est cohérente.

pour éviter des tricherie (modif de la config à la main pour arranger mon score) j'écrase tous les fichier de conf avec les valeurs trouvé dans les zip. c'est al seule manière que j'ai trouvé pour vérifier qu'on modifie rien à al main. plus tard je vérifierai les date de fichiers peut être tout simplement. à voir.

j'insère systématiquement aussi mon plugin pour les objectifs.

donc voila, là dessus je lance la partie sans passer par le panel de config d'orbiter standard.
pour un potentiel jeu multijouer en temps réel, il suffirait d'attendre la présence de tous les participant avant de lancer la partie.

le plugin à insérer sera alors non pas dédié aux bête calcul de score mais s'occuperait des connections avec les autres joueurs.

on pourrait même combiner avec les challenges.
si la partie collaborative réussie alors on gagnerait des médailles spéciales !!!! la coupe d'honneur.
tout ca serait bien sympa, y'a plus qu'à rêver ou à se remettre au boulot !!!



Message modifié ( 28-07-2010 01:01 )

---------------------------------------------

PC en rade, codage en panne.... Nom de Zeus

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #46 - 28 July 2010, 01:57:06
Quote
pour l'install d'add-ons par contre le serveur ne peux pas envoyer directement les binaires pour une question de droits des auteurs. notre serveur ne peux en héberger à l'insu des créateurs d'add-ons par respect pour eux.
donc on ne pourra jamais faire en sorte que el serveur envoie de lui même les add-ons mais on peux lancer des téléchargements sur les sites hébergeurs (ce qui av incrémenter leur compteur ou ouvrir la page web dans le navigateur pour que l'utilisateur lance le download.

Hein ? De Quoi ? Dis moi pas que c'est pas vrai !
Mais les créateurs d'AddOn vont me supplier de bien vouloir agréer leurs sentiments distingués !
Non mais .
Sans rire ...
Il n'en est pas question !
Mais je vous en prie !
... you talkin' to me ?


Si tu envoies un post sur OrbitHangar présentant ton projet et invitant les créateurs à y déposer leurs oeuvres ,
alors que tu te proposes à les faire connaitre MONDIALEMENT , tu crois que c'est leur manquer de respect ?
Quote
donc on ne pourra jamais
S'il ya un truc chez les humains qui m'énerve , c'est bien çà !
Spoiler  :
SCROGNEUGNEU !!!!!

Enfin , chacun sa stratégie ...
J'en étais où ?
Quote
après avoir bien questionné les auteurs et notamment Dan. ce système est indispensable pour le respect des créateur bénévole d'orbiter.
Spoiler  :
SCROGNEUGNEU !!!!!
Mouais , çà sent le mauvais Lobbying tout çà !!
Enfin , je comprends l'idée de rassembler dans le but de rendre accessible et facile à trouver des Addons de multiple provenance . Mais de là à faire main basse dessus !! J'Hallucine ... faut que j'arrête de fumer le carburant d'Alexandre et Bibi Uncle, çà va me tuer !!
C'est vraiment TOUS LES CREATEURS d'AddOn qui veulent çà ?
Décidémment , cette communauté n'arrête pas de me surprendre .
Etre replié sur soi , ce n'est pas se déployer ... m'enfin !
Spoiler  :
SCROGNEUGNEU !!!!!
Et si c'est juste une question de compteur ...
Vous cherchez à savoir qui est le Meilleur ?
Vous cherchez à savoir qui est le plus grand?
Ils sont fous ces humains ??
Spoiler  :
SCROGNEUGNEU !!!!!
Pas tant que çà ...
Quote
Mon manager donc sais aller chercher un add-ons tout seul ou ouvrir une page web selon le type d'add-on (un flag à cocher sur le manager pour celui qui proposera un nouvel add-on à la liste)
Au moins çà aura servi à te faire créer cette fonction super sympa .
Quote
avant de lancer une partie je garantie que tous les add-on sont là, prête à être installé (si besoin) que la config est cohérente.
C'est fort çà aussi !!
Quote
pour éviter des tricherie (modif de la config à la main pour arranger mon score) j'écrase tous les fichier de conf avec les valeurs trouvé dans les zip.
Bien fait !
Quote
j'insère systématiquement aussi mon plugin pour les objectifs.
Là , je n'ai pas compris .
Quote
donc voila, là dessus je lance la partie sans passer par le panel de config d'orbiter standard.
pour un potentiel jeu multijouer en temps réel, il suffirait d'attendre la présence de tous les participant avant de lancer la partie.
Détail trés interressant , merci !
Quote
le plugin à insérer sera alors non pas dédié aux bête calcul de score mais s'occuperait des connections avec les autres joueurs.
J'y travaille ...
Quote
on pourrait même combiner avec les challenges.
si la partie collaborative réussie alors on gagnerait des médailles spéciales !!!! la coupe d'honneur.
tout ca serait bien sympa, y'a plus qu'à rêver ou à se remettre au boulot !!!
J'ai pas arrêté , je te signale ... :)
Bon , demi-terrien , tout cela n'est pas si mal ...
C'est même plutôt bien !
N'empêche , je commence à comprendre la fuite des cerveaux ...
Un conseil : n'arrête pas de rêver !



MrSpock.



Message modifié ( 28-07-2010 02:30 )

Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline tofitouf

  • Legend
  • ******
  • Posts: 1380
  • Karma: 0
Reply #47 - 28 July 2010, 09:35:29
Pour les add-on ca ne me choque pas et c'est bien compréhensible, les créateurs choisissent d'être hébergé sur orbit hangar, sur frnacophone ou montent leur propre site. Faut juste respecter cet ordre des chose et s'y insérer proprement.

l'avantage énorme de ne pas héberger les add-on est que ca allège infiniment notre bande passante. docn ca nous fait moins de boulot du coup.

les add-ons sur orbit hangar et orbiter francophone sont téléchargé directement et automatiquement. ceux sur les autres site j'ai pour règle d'ouvrir leur page. ils se sont donné du mal pour présenter leur création, on leur doit bien que les joueur voient ca.

pour orbit hangar et francophone j'ai ajouté un module d'export dans les deux site pour que la création de fiche soit complètement automatisée. (en gros un clic et ca ajoute un nouvel add-on dans notre base). j'ai été aidé par le webmaster d'orbit hangar et comme je suis webmaster de francophone c'était facile.

------------

Pour répondre à l'insertion du plugin, c'est juste qu'au passage j'ajoute le plugin dédié dans le répertoire plugin et que je l'active dans al liste des modules, tout cela est transparent pour l'utilisateur mais ca fait que quelque soit le scénario lancé y'a toujours mon module de disponible dans la liste des MFD.

Je vais tenter de faire une petite release du manager assez rapidement que tu voie bien de quoi il retourne.

------------------

et je n'arrete pas de réver c'est mon moteur.


---------------------------------------------

PC en rade, codage en panne.... Nom de Zeus

Offline MrSpock

  • Legend
  • ******
  • Posts: 1593
  • Karma: 0
Reply #48 - 28 July 2010, 13:07:43
Salut Tof' , et encore bravo pour la version Alpha du Site .
La présentation me plait beaucoup .
Pour en finir avec mes propos de hier , j'imaginais de toute façon pour moi un module peer To peer servant par exemple
de plugin d'écolage .
Le partage d'Addon se faisant de serveur à client pour simplifier le tout .
A+ , MrSpock .

REEDDIT :
Quote
Pour répondre à l'insertion du plugin, c'est juste qu'au passage j'ajoute le plugin dédié dans le répertoire plugin et que je l'active dans al liste des modules, tout cela est transparent pour l'utilisateur mais ca fait que quelque soit le scénario lancé y'a toujours mon module de disponible dans la liste des MFD.

Merci pour l'explication .
J'aimerais quand tu auras le temps que tu me fasses un petit topo des fonctions du SDK que tu utilises dans ce cas.
AU moins çà que je n'aurais pas à chercher ...



Message modifié ( 28-07-2010 15:06 )

Mr Spock ,
Consultant de VULCAN TECH INDUSTRY.
( et accessoirement chatouilleur de PLAYMOBILS@tm )
http://kenai.com/projects/spacetechs-mecanos

Offline tofitouf

  • Legend
  • ******
  • Posts: 1380
  • Karma: 0
Reply #49 - 28 July 2010, 15:35:01
Quote
MrSpock a écrit:

Merci pour l'explication .
J'aimerais quand tu auras le temps que tu me fasses un petit topo des fonctions du SDK que tu utilises dans ce cas.
AU moins çà que je n'aurais pas à chercher ...

Pas de soucis,

voici déjà un premier niveau d'explication.

Il y a deux sortes de plugin dans orbiter : les vaisseaux et les modules.
les vaisseaux sont chargé quand il sont néccéssaire dans le scénario. chaque vaisseau correspond à un fichier .cfg qui donne els caractéristiques de ce derner (Mesh texture, poid et le nom d'une dll à charger)
les dll doivent être dans le répertoire "modules"

pour les autres plugins ils doivent être mis dans le répertoire plugin et être activé via l'interface d'orbiter avant de alncer la mission;

au démarrage orbiter liste els modules disponible en scannant son répertoire.
Les modules sont alors proposé à l'utilsateur et ils sont chargé au démarrage de la simulation.

Le hic dans notre cas c'est qu'on aimerai bien se passer de l'interface de lancement d'orbiter. donc pour éviter ca je patche le fichier de config d'orbiter. je reviendrai là dessus par la suite en ajoutant mon module à la liste. et ce à chaque démarrage de mission( je vérifie qu'il est bien dans la liste)

et je copie la dll dans le répertoire modules/plugins.

ensuite je démarre le scenario en lancant orbiter avec l'option '\s' qui permet justement de lancer sans l'interface initiale (merci amrtin pour cette option non documentée mais qui existe depuis le début)

voila pour le lancement des dll.


pour aller plus loins, avec lme SDK pose moi des question plus précise.

pour info dans mon MFDLib  j'ai une classe qui intercepte tous les appels que fait orbiter et les redirige dans une classe virtuelle.
Cela me permet de ne rien oublier et d'avoir un bon fonctionnement bien c++ (j'aime le language objet on ne se refait pas)


---------------------------------------------

PC en rade, codage en panne.... Nom de Zeus