60 posts :: Page 1 of 6
Par:    (Read 29484 times)  

Anonymous


Bonjour,

je viens de mettre au point mon premier patch avec interraction graphique. Il utilise la base du correctif "watch console". Cette commande additionnelle (made in Goulp) permet de centrer l'écran sur l'endroit où un joueur (au sens compagnie) effectue des actions de construction.

L'objectif premier de cette commande est de permettre à l'administrateur d'un serveur de vérifier si certains joueurs ne respectent pas les règles. Ensuite, ça permet aussi de regarder comment un joueur construit son réseau et éventuellement de le conseiller en direct.

L'inconvénient majeur est que l'on peut s'occuper que d'UN SEUL joueur. Après avoir publié sur tt-forum le code, un des contributeur a émit l'excellente idée d'utiliser les fenêtres de visualisation. Challenge très intéressant, dans la mesure où je n'avais jamais touché à la partie "GUI" d'openTTD.

C'est maintenant chose faite. Le correctif est en cours de test. Il a déjà fait l'objet d'une publication dans un ensemble de correctifs, et je pense que cette nouvelle version avec fenêtre va en intéresser plus d'un.

Maintenant, pour ceux que cela intéresse, il ne me reste plus qu'à mettre à disposition le code source, et un ensemble exécutable.

Par:     

Anonymous


Intéressent comme patch

Jolie travail j'ai hate de voir tourner sa

Par:     

Anonymous


[quote author=[FR] Benoit link=topic=957.msg9247#msg9247 date=1254949117]
Maintenant, pour ceux que cela intéresse, il ne me reste plus qu'à mettre à disposition le code source, et un ensemble exécutable.
[/quote]

Voici un aperçu de la fenêtre



Sur le coté gauche de la fenêtre, 15 boutons disponibles, qui s'activent en fonction du nombre de compagnies dans le jeu.
Il suffit d'appuyer sur le bouton dont la couleur correspond à la compagnie que l'on veut observer.
Il est possible d'ouvrir une autre fenêtre avec le 16ème bouton. ça permet d'observer plusieurs joueurs à la fois.
J'ai conservé les fonction Zoom In et Out de la fenêtre "Vue supplémentaire".

Pour l'ensemble exécutable, + traduction il faut que je mette à jour la version française, c'est un minimum, et aussi que je ponde une version linux. En effet, travaillant avec Visual Studio, je me suis limité, pour le moment, à la version windows.

Coté améliorations, évidemment, il y en a quelques-unes :



    Et si vous avez d'autres idées, faites m'en part.

    Par:     

    Anonymous


    [quote author=[FR] Benoit link=topic=957.msg9249#msg9249 date=1254990229]

    Coté améliorations, évidemment, il y en a quelques-unes :



      [/quote]

      Nouvelle version mise au point avec les améliorations citées avec en plus un bouton permettant de déplacer l'écran principal sur la vue de la fenêtre.

      Aperçu de la nouvelle fenêtre



      Edit 12:17

      Je vous ai mis un exécutable + fichiers lng pour Windows à cet endroit : http://openttd.goulp.net/download/openttd_073_win32_watch_patch.zip

      Comment l'utiliser, tout en gardant intact la version 0.7.3 ?

      [*]Dupliquer le répertoire dans lequel se trouve la version 0.7.3
      [*]Appeler ce répertoire "0.7.3_watch"
      [*]Eventuellement copier le openttd.cfg (qui devrait se trouver dans le dossier "Mes Documents\openttd"Wink dans ce nouveau répertoire "0.7.3_watch"
      [*]Décompresser l'archive Zip dans ce répertoire en confirmant le remplacement des fichiers
      [*]Démarrer l'openttd.exe
      [*]Démarrer une partie local avec des AI activées ou connectez vous à une partie multi-joueurs (avec des joueurs connectés bien sur)
      [*]Ouvrir la console (touche ²) ou menu ?/afficher console
      [*]Taper "watch" et <Entrée>
      [*]La fenêtre watch s'affiche, la console peut être fermée.
      [*]Sélectionner la compagnie à suivre parmi les compagnies actives

      Et bien sûr, faites un petit retour ici pour donner votre avis et les améliorations que l'on pourait y apporter !

      Par:     

      Anonymous


      [quote author=[FR] Benoit link=topic=957.msg9249#msg9249 date=1254990229]

      Coté améliorations, évidemment, il y en a quelques-unes :



        [/quote]

        Et bien sur, un indicateur de présence pour chaque compagnie (voyant vert)
        L'indicateur d'activité est en rouge.

        Je n'avais pas pris le temps de mettre à jour par ici (alors que c'était fait sur tt-forums).

        Donc version 3 disponible en téléchargement à cet endroit : http://openttd.goulp.net/download/openttd_073_win32_watch_patch_v3.zip

        Même mode opératoire que précédemment.

        Coté look, ça donne ceci (en mode opengfx)

        Par:     

        Anonymous


        Wow, je viens de découvrir ça, c'est franchement une excellente idée!

        Félicitations pour ton premier patch!  ggg

        Par:     

        Anonymous


        Mhhh... Rubidium, Yexo, Smatz qui participent...  Ok Ok, ca veux rien dire, mais c'est un quand même une bonne chose  ggg
        On peut toujours espérer pour toi  siflote

        PHP Formatted Code
        +       /* Send information to the Watching windows */<br />+   // Search for all watching windows...

        serait mieux :
        PHP Formatted Code
        +       /* Send information to the Watching windows
        +      * Search for all watching windows... */


        Et ailleurs aussi.  La regle #1 : si c'est un commentaire écrit en bout de ligne, utilise "//"
        Si le commentaire est seul sur une ligne (ou plusieurs), utilise "/* ... */"
        Mais je vois que tu l'applique deja ici et la.  Un oubli passager, j'imagine...

        PHP Formatted Code
        <br />+         if ( c->name != NULL ) {<br />+                 SetDParamStr( 0, c->name );<br />+              } else {<br />+                 SetDParamStr( 0, "unnamed" );

        serait mieux ainsi :

        PHP Formatted Code
        +               SetDParamStr( 0, c->name != NULL ? c->name : "unnamed");

        Mais... je me demande s'il ne serait pas plus "gracieux" d'utiliser le système de traductoin de l'application...
        Beau travail

        Par:     

        Anonymous


        [quote author=Belugas link=topic=957.msg9286#msg9286 date=1259981163]

        PHP Formatted Code
        <br />+         if ( c->name != NULL ) {<br />+                 SetDParamStr( 0, c->name );<br />+              } else {<br />+                 SetDParamStr( 0, "unnamed" );

        serait mieux ainsi :

        PHP Formatted Code
        +               SetDParamStr( 0, c->name != NULL ? c->name : "unnamed");


        Mais... je me demande s'il ne serait pas plus "gracieux" d'utiliser le système de traductoin de l'application...

        Beau travail
        [/quote]

        Merci pour le compliment ainsi que les conseils concernant les règles de codage. C'est en effet une étape importante avant de proposer le code pour une intégration dans le tronc.

        Concernant l'utilisation des fichiers lang, j'ai déjà mis quelques affaires.

        Par contre, le bout de code cité... n'est pas un bon exemple de ce qu'il faut faire....

        je l'ai remplacé par le bout de code suivant (non publié encore...) :

        PHP Formatted Code
        <br />  if ( this->watched_company == INVALID_COMPANY || !IsValidCompanyID(this->watched_company) ) {<br />             SetDParamStr( 0, "nothing" );<br />     } else {<br />          c = GetCompany( this->watched_company );<br />          SetDParam(0, c->index);<br />           GetString(company_name, STR_COMPANY_NAME, lastof(company_name));<br />          SetDParamStr( 0, company_name );<br />  }<br />


        Et puis il faut que je passe "nothing" dans la moulinette de traduction.

        Par:     

        Anonymous


        Voici quelques nouvelles du Patch "Watch Company GUI"

        La discussion autour de ce patch est toujours disponible sur tt-forums : http://www.tt-forums.net/viewtopic.php?f=33&amp;t=45221

        J'ai modifié le code pour les versions suivantes :



          avec les améliorations suivantes :



            Il faudrait que je mette à jour les sources qui fonctionnent pour la dernière version stable 0.7.5 afin que tout le monde puisse en profiter (récupérer, compiler, et s'amuser).

            Par contre, si vous être intéressés par un package complet (exécutable + fichiers lang), faites moi signe et mettrai tout celà sur le site du Goulp avec les bonnes affaires (et la licence qui va bien - GNU Stuff).

            Edit de 20:22

            Un package <binaire Windows + lang + GNU> est dispnible ici : http://openttd.goulp.net/download/openttd_075_win32_watch_v6.zip

            Par:     

            Anonymous


            J'aimerais bien essayer la nouvelle fonctionnalité. Mais je suis pas sûr de comment, je suis pas un fin technicien.  ^^

            60 posts :: Page 1 of 6