Bienvenue invité ( Connexion | Inscription )
Blu3dr4g0n |
17 Jun 2008, 21:02
Message
#1
|
Messages : 85 Inscrit : 16/03/08 Lieu : Castres Membre n° 2,983 |
Bonjour à tous !
Je viens de faire l'acquisition d'un X52 Pro de saitek, et c'est la possibilité de programmer le joystick qui m'interesse. Depuis le 1.1X il est presque possible de récupérer tout ce qui est interessant (lock radar, failures, etc.). Je sais que ça va prendre du temps et que ça va pas être simple, mais je compte sur les âmes charitables pour fournir de la doc utile si vous en connaissez Je mettrais à jour directement ce post à ce propos et peut-être y attacherai des mini-betas ^^ Ressources LUA : LUA Users Top level wiki Livre online : Programmer en LUA version 1 Ressources lockon export LUA : la page officielle lockon.co.uk concernant l'export LUA Explication succinte sur l'export L'openWiki du 3rd Wing Dev Zone Default Export LUA lockon ver 1.12 Projet LOSIOC, protocole SIOC pour Lockon Ressources programmation X52 Pro: Exemple de wrapper C# pour le SDK X52Pro [Dev Diary History] [SCREENS] Debug menu, bridge statut sur le menu general (on voit bien que le serveur LOSIOC est pas online) Debug Menu, Bridge statut, en vol (replay) [01.07.08 :: Statut du code => Pre-alpha, unstable] [BRIDGE]Refactoring du code et architecture de communication modifiée. Optimisation sur la consommation CPU. Configuration des pages du X52Pro par XML. [BUFFERING.LOSIOC]Problème de buffering LOSIOC réglé. Communication en reception avec losioc déporté sur un thread différent, TCP Socket bloquante pour éviter un CPU HOG. [THREAD] Recriture et reconception du programme sur un concept multithreadé. [LOSIOCNET] Communication avec LOSIOC OK, problème de buffering des réponses [BRIDGE] Support de la pause pendant la simulation [BRIDGE] Bridge fonctionnel. X52<-->Bridge<-->LOSIOC<-->LockOn. [LUA] Utilisation du serveur LOSIOC1.1.5 comme source de données d'export/import LockOn [X52SDK]W rapper C# de Fugazi fonctionnel pour DirectOutput => affichage de texte dans le MFD et detection de l'appuie des touches en C# pur avec safe code fonctionnel [LUA] lecreole propose d'utiliser LOSIOC -> a etudier [LUA] rapatriement et formatage des donnees dans un LogFile [partiel] [LUA]Redefinition des fonctions builtin, export lua dans un fichier tiers, ajout d'un fichier de log pour debug dans temp Ce message a été modifié par Blu3dr4g0n - 2 Jul 2008, 11:49. --------------------
Knowledge Is Power |
DArt |
18 Jun 2008, 07:45
Message
#2
|
I am LotAtc Indicatif : JR-01 Messages : 6,274 Inscrit : 30/11/06 Lieu : Savoie Membre n° 999 |
Très bonne initiative, tu as mon appui, tu trouveras ton bonheur dans ce zip: http://download.dartsite.org/Lockon/DPRO/
Par contre, c'est "en l'état" pas sur que cela fonctionne, mais tu as ce qu'il faut pour débuter (lua+prog). Si t'as des questions, n'hésites pas --------------------
|
Blu3dr4g0n |
18 Jun 2008, 21:25
Message
#3
|
Messages : 85 Inscrit : 16/03/08 Lieu : Castres Membre n° 2,983 |
Très bonne initiative, tu as mon appui, tu trouveras ton bonheur dans ce zip: http://download.dartsite.org/Lockon/DPRO/ Par contre, c'est "en l'état" pas sur que cela fonctionne, mais tu as ce qu'il faut pour débuter (lua+prog). Si t'as des questions, n'hésites pas Merci Dart ! je vais regarder ça de très près. J'ai créé mon script d'Export LUA hier soir et redefini les fonctions par default de lockon pour garder le export.lua par defaut propre (si ce n'est rajouter à la fin un petit 'dofile("./Config/Export/DragonX52ExportFlamingCliffs.lua")'. C'est compatible avec Tacview 0.92 (pour l'instant), et j'ai rajouté un fichier de log (qu'on peut désactiver par une variable dans mon script d'export LUA) afin de tracer les communications (je pense inserer un niveau de debug, car si je log à chaque frame, ça va faire mal ^^) Donc pour l'instant, j'ai la base de l'export et j'arrive à faire fonctionner le refresh personnalisé à la seconde (paramétrable par variable toujours). Je vais m'attaquer à la recuperation des variables du jeu. Ensuite, je créerais une socket LUA qui enverra les données à un serveur en ecoute. Pour le serveur en écoute, je compte le développer en .Net 3 / C# (WCF oblige ^^), qui sur une reception de commande créera un thread pour la mise à jour vers le X52 Pro (pour éviter les queues ou les bottleneck de communication). Enfin je réfléchi encore sur l'archi et me monte petit à petit ma solution, je vous préviendrais de la suite des evennements en editant le premier post --------------------
Knowledge Is Power |
M0RpH3u5 |
18 Jun 2008, 22:53
Message
#4
|
Messages : 33 Inscrit : 11/04/08 Membre n° 3,007 |
heu j'arrive pas trop à déchiffrer ce que vous racontez, mais sa m'intéresse beaucoup alors je vous apporte ce que je peut : des encouragements!
|
Blu3dr4g0n |
18 Jun 2008, 23:45
Message
#5
|
Messages : 85 Inscrit : 16/03/08 Lieu : Castres Membre n° 2,983 |
heu j'arrive pas trop à déchiffrer ce que vous racontez, mais sa m'intéresse beaucoup alors je vous apporte ce que je peut : des encouragements! Merci bien ^^ Le but c'est de faire afficher sur le MFD du X52 Pro, des infos issu du jeu lockon, comme la vitesse, le nom du pilote, les RPM des moteurs gauche et droite, leur temperature, etc. etc. Voici les données que j'arrive à extraire (pour l'instant) par exemple : CODE UpdateInfosEveryCustomTick() called at 20080619-001900 LoGetModelTime()->64 LoGetMissionStartTime()->54000 LoGetPilotName()->Pilot1 LoGetPlayerPlaneId()->16779008 LoGetIndicatedAirSpeed()->63.568788521656 LoGetTrueAirSpeed()->65.991134643555 LoGetAltitudeAboveSeaLevel()->248.64329528809 LoGetAltitudeAboveGroundLevel()->11.566818237305 LoGetAngleOfAttack()->12.349461073153 LoGetAccelerationUnits()->1.1329257488251 LoGetVerticalVelocity()->-1.7782878875732 LoGetADIPitchBankYaw()->0.18339471699839 LoGetMagneticYaw()->4.5870559053463 LoGetGlideDeviation()->-1 LoGetSideDeviation()->-1 LoGetSlipBallPosition()->-0.0020762626175586 LoGetBasicAtmospherePressure()->760 LoGetControlPanel_HSI()->[ADF:0.95554631948471|RMI:0.87181288003922|Compass:4.5870559053463] LoGetEngineInfo()->[RPM_L:67.468170166016|RPM_R:77.429496765137] LoGetEngineInfo()->[TEMP_L:513.88220214844|TEMP_R:442.20919799805] LoGetEngineInfo()->[HYDPRESS_L:215|HYDPRESS_R:215] LoGetMCPState()->[LeftEngineFailure:true] LoGetMCPState()->[RightEngineFailure:false] LoGetMCPState()->[HydraulicsFailure:true] LoGetMCPState()->[ACSFailure:false] LoGetMCPState()->[AutopilotFailure:true] LoGetMCPState()->[AutopilotOn:false] LoGetMCPState()->[MasterWarning:true] LoGetMCPState()->[LeftTailPlaneFailure:false] LoGetMCPState()->[RightTailPlaneFailure:false] LoGetMCPState()->[LeftAileronFailure:false] LoGetMCPState()->[RightAileronFailure:false] LoGetMCPState()->[CanopyOpen:false] LoGetMCPState()->[CannonFailure:false] LoGetMCPState()->[StallSignalization:false] LoGetMCPState()->[LeftMainPumpFailure:false] LoGetMCPState()->[RightMainPumpFailure:false] LoGetMCPState()->[LeftWingPumpFailure:false] LoGetMCPState()->[RightWingPumpFailure:false] LoGetMCPState()->[RadarFailure:false] LoGetMCPState()->[EOSFailure:false] LoGetMCPState()->[MLWSFailure:false] LoGetMCPState()->[RWSFailure:false] LoGetMCPState()->[ECMFailure:false] LoGetMCPState()->[GearFailure:false] LoGetMCPState()->[MFDFailure:false] LoGetMCPState()->[HUDFailure:false] LoGetMCPState()->[HelmetFailure:false] LoGetMCPState()->[FuelTankDamage:false] Voilou voilou, ^^ je vais rajouter les doses de carburant dispos. Par contre, je sais pas comment obtenir les infos sur les statut des volets, train d'aterrissage ou autre (ouvert/fermé par exe.) ^^ Ce message a été modifié par Blu3dr4g0n - 19 Jun 2008, 00:15. --------------------
Knowledge Is Power |
DArt |
19 Jun 2008, 07:19
Message
#6
|
I am LotAtc Indicatif : JR-01 Messages : 6,274 Inscrit : 30/11/06 Lieu : Savoie Membre n° 999 |
A noter, que tu peux aussi utiliser le MFD du X52 pour saisir des valeurs, (regarde le SDK), pratique pour choisir le cap de tel ou tel aéroport , ou activer les volets, larguer les armes....
--------------------
|
Blu3dr4g0n |
19 Jun 2008, 10:02
Message
#7
|
Messages : 85 Inscrit : 16/03/08 Lieu : Castres Membre n° 2,983 |
A noter, que tu peux aussi utiliser le MFD du X52 pour saisir des valeurs, (regarde le SDK), pratique pour choisir le cap de tel ou tel aéroport , ou activer les volets, larguer les armes.... Je viens recevoir le monstre ce matin avant d'arriver au boulot. Je pense jouer avec le SDK maintenant. Pour le MFD, je savais pas qu'on pouvais faire ça ! (remarque je ne l'avais pas encore ) Effectivement, serait une super idée --------------------
Knowledge Is Power |
DArt |
19 Jun 2008, 10:10
Message
#8
|
I am LotAtc Indicatif : JR-01 Messages : 6,274 Inscrit : 30/11/06 Lieu : Savoie Membre n° 999 |
C'est là le grand avantage, je voulais faire un système de gestion par page (on peut le faire dans le SDK) et afficher plein d'infos et de paramètres à définir. Les LEDS aussi, changer la couleur quand un bandits s'approche.... Attention, sans faire de cheat, c'est important, ce ne doit pas être de la triche mais un complément aux instru de bord... bref ya plein de trucs à faire...
--------------------
|
Blu3dr4g0n |
19 Jun 2008, 11:44
Message
#9
|
Messages : 85 Inscrit : 16/03/08 Lieu : Castres Membre n° 2,983 |
C'est là le grand avantage, je voulais faire un système de gestion par page (on peut le faire dans le SDK) et afficher plein d'infos et de paramètres à définir. Les LEDS aussi, changer la couleur quand un bandits s'approche.... Attention, sans faire de cheat, c'est important, ce ne doit pas être de la triche mais un complément aux instru de bord... bref ya plein de trucs à faire... Je suis open pour des idées ^^ d'affichage et/ou de modif le temps que j'apprenne à exploiter le X52 Pro de manière fonctionnelle. Par contre chez saitek ils ont pas beaucoup d'infos quand même sur la programmation de leur joystick ! ça franchement limite quand même pour des professionnels. Pour les infos ou les données sans cheater je suis d'accord ! le but d'afficher ou de tranformer le X52 en sapin de noel, c'est séduisant, mais si ça gache le plaisir du jeu, je n'y vois pas non plus l'interet (comme la pluspart des vrais simmeurs d'ailleur ^^) Si tu as des idées sur ce qui serait utile à afficher sur le saitek, les infos à setter depuis le MFD ou autre (leds sur action/reaction) je suis preneur, en effet je me concentre plus sur l'archi et la programmation de l'ensemble pour l'instant, que la fonctionnalité finale ^^ En tout cas, c'est bien agréable d'avoir des retour à ce sujet de ta part Dart, ça met du beaume au coeur ! par contre je ne peux travailler dessus que le soir... ^^ --------------------
Knowledge Is Power |
DArt |
19 Jun 2008, 14:37
Message
#10
|
I am LotAtc Indicatif : JR-01 Messages : 6,274 Inscrit : 30/11/06 Lieu : Savoie Membre n° 999 |
A ce propos, je ne sais pas tes connaissances et tes envies, mais si tu as besoin d'un serveur SVN pour mettre ton projet, je peux héberger ton code sur mon serveur (celui de LOME). Ma seule contrainte, c'est que ton code soit sous licence GPL. Rien d'obligé, c'est au cas où tu en ai besoin.
--------------------
|
Haut de page · Retour à l'accueil · Contacter le Webmestre | Nous sommes le : 11/05/24 - 16:49 |