Journal Comment je suis devenu chef de projet

Posté par  (site web personnel) . Licence CC By‑SA.
72
8
oct.
2017
Ce journal a été promu en dépêche : Comment je suis devenu chef de projet.

Quand je ne suis pas au boulot, quand je ne suis pas en train de faire des photos, je travaille petitement sur un projet qui m’enthousiasme beaucoup. C’est un jeu vidéo qui s’appelle Unvanquished et c’est un projet de passionnés : chacun venant d’un peu partout sur la planète et chacun contribuant un peu quand il peut. Le projet doit avoir au moins cinq ans. Je m’y suis intéressé très rapidement et ai commencé à contribuer en 2013 (de simples corrections de traduction) ; pour ensuite m’y impliquer plus significativement en 2015 (du code améliorant l’ergonomie de l’interface). Et puis, de fil en aiguille, ce 3 octobre 2017, je suis devenu chef de projet. Nous sommes trois à nous partager cette fonction.

Le jeu n’a pas une grande base de joueurs pour le moment parce que nous n’avons pas vraiment fait de publicité encore, mais travailler sur ce projet est très excitant. Le développement libre c’est déjà un jeu en soi.

Construction Kit
Construire un jeu de construction… c’est déjà un jeu !

En fait, ma nouvelle place était informelle depuis six mois, lorsqu’un membre du triumvirat a dû prendre de la distance avec le projet pour se concentrer sur certaines préoccupations de sa vie, et qu’il m’a demandé de prendre sa place. Étant du genre très effacé, je n’avais pas du tout formalisé les choses. Ce qui me gênait beaucoup, c’était qu’ayant les droits d’édition sur l’organigramme, c’était à moi de mettre mon nom tout en haut, chose que je ne suis pas tellement habitué à faire. Et surtout, je n’aime pas du tout me mettre en avant. Donc voilà, ce mardi, pour mon trente-et-unième anniversaire, j’ai réveillé la discussion et j’ai été pressé avec une telle insistance d’y prendre ma place que voilà, c’est fait. ;-)

Voici donc mon nom dans la catégorie “Project Leadership” ; et sous mon nom, il y a comme fonction “Asset Management”. En gros, je m’occupe des relations avec l’équipe de contributeurs artistiques (modèles 3D, textures, sons…), l’élaboration de méthodes de travail, l’organisation des données et l’aspect légal qui va avec : vérifier la licence de chacun des fichiers, relancer les auteurs lorsque quelque chose n’est pas clair et clarifier, etc. Celui que je remplace s’occupait aussi des relations sociales et communications, ainsi que du recrutement ; j’hérite de cette fonction également, même si c’est un peu tout le monde qui le fait par bouche à oreille.

Ce genre de projet ne se limite pas à jouer le rôle du « community manager » ou du « chief happiness officer » (lol) comme le faisait très bien kharnov avant moi, ni à seulement relancer les uns ou les autres et faire de la revue légale de contribution. Nous avons tous un gros bagage technique et c’est le cœur de notre passion. J’ai donc non seulement élaboré la nouvelle méthode de gestion de nos données artistiques (avec de jolis dépôts tout propres), mais j’ai aussi écrit certains outils qui nous permettent de mettre en œuvre cette méthode de travail. En fait, je contribue avec du code à pratiquement tous les aspects du projet. Par exemple, j’ai amélioré le VFS (système de fichier virtuel) afin de permettre à des développeurs d’autres jeux d’envisager une migration plus facile de leur propre jeu vers notre moteur, ces mêmes développeurs venant ensuite proposer et implémenter à leur tour des améliorations, c’est rusé ! ;-) Ça va aussi de l’écriture d’outils de gestion de données, comme je viens de l’expliquer, à l’amélioration des logiciels d’édition.

Par exemple je contribue à un logiciel de modélisation de niveau en 3D afin de rendre son intégration dans le flux de travail plus ergonomique. En fait, vous trouverez ma patte dès qu’une chose peut être améliorée dans la chaîne de production, que ce soit dans la méthode ou dans les outils eux-mêmes. Je suis convaincu que c’est une clé de réussite : nous avons tous la main dans le cambouis, et nous n’avons vraiment l’étiquette de « leadership » que parce que ce service doit être rendu. Mais ce qui nous anime d’abord, c’est la joie de « hacker » des trucs qui nous passionnent ; « hacker», c’est-à-dire résoudre intelligemment des problèmes passionnants ou, dit autrement, résoudre avec passion des problèmes intelligents. Je crois que c’est ici que se tient la solution au principe de Peter : aucune responsabilité n’enlève à personne sa capacité à contribuer là où sa compétence technique s’exprime au mieux.

Ce sont aussi les personnes intéressantes et talentueuses avec lesquelles je suis amené à collaborer qui rendent ce projet aussi passionnant. Menant un consciencieux audit de nos données, je discutais ces derniers jours avec certains de nos contributeurs. Et j’étais très impressionné de voir que l’un était aujourd’hui chez Ubisoft Montréal (le studio qui fait les séries Splinter Cell, Far Cry, Assassin's Creed par exemple), un autre chez Creative Assembly (le studio qui a fait Rome: Total War par exemple) un autre chez NetherRealm (ayant lui-même travaillé sur Mortal Kombat X) ou encore un autre chez Feral Interactive (le studio ayant porté les derniers Warhammer, Tomb Raider ou Mad Max sur Mac et Linux par exemple). Certains ont contribué un jour dans le but de remplir leur book et de se faire embaucher dans une grosse boîte ; d’autres sont toujours à même de contribuer, aujourd’hui, à notre projet, en parallèle de leur métier. Certains sont des freelancers établis dans le domaine et quand ils ne travaillent pas pour des clients, ils travaillent avec nous pour ce petit hobby commun.

D’autres sont des ingénieurs de très haut niveau. Je pense en particulier à quelqu’un ayant pour fonction de développer des technologies 3D dans le navigateur web Chrome chez Google, ou d’écrire les standards de demain. Mais en fait, toutes ces personnes sont vraiment très discrètes sur ce qu’elle font, aucune ne met cela en avant ; ce sont vraiment leur qualité humaine, leur passion et leur talent qui font d’elles des personnes vraiment appréciables et avec lesquelles il est agréable et passionnant de travailler. Pour découvrir ces choses, il faut avoir lurké longtemps. En fait, j’ai été très étonné de trouver des personnes fortes de leur talents, mais aucune personnalité forte c’est-à-dire animées par l’orgueil et le « moi je ». Il semble que les potentielles personnalités toxiques soient parties très vite au tout début du projet. Il règne donc sur les canaux de discussion une ambiance très agréable où chacun est à sa place. Il faut dire que kharnov (celui que je remplace) avait tout compris au principe de subsidiarité.

Dans le cadre d’un projet professionnel pour lequel j’ai travaillé précédemment, nous avions fait tout un travail pour passer d’une logique de gestion de « ressources humaines » (une ressource étant littéralement faite pour être usée) à une politique de « développement des qualités humaines ». À vrai dire, c’est déjà ce qui se passe dans le cadre d’Unvanquished, puisqu’on m’a non seulement accueilli mais aussi donné le cadre qui m’a permis de m’épanouir, de découvrir et de développer des capacités que j’ignorais jusque-là. C’est précisément dans cette manière de faire fructifier les qualités de chacun que je compte investir. Comme je le disais, la seule chose qui semble plus importante que les talents que j’ai vus, c’est la discrétion de chacun sur soi-même. Il y a beaucoup à faire fructifier encore, et des talents bien cachés j’en suis sûr. Et nous péchons par trop d’humilité peut-être. ;-)

Ce qui est passionnant, aussi, ce sont les bases de code sur lesquelles je suis amené à travailler. Par exemple, on a hérité d’Id Software le moteur de jeu, l’éditeur de niveau et certains formats. Et bien que tout cela ait été profondément remanié depuis deux décennies, et même si certaines parties ont été complètement réécrites, l’héritage est toujours là et très préhensible. Dans la chaîne d’édition, il m’arrive encore de traiter avec un ancien d’Id Software. Tout cet héritage est vraiment passionnant. Ça m’a permis aussi de toucher à plein de technologies intéressantes, puisque c’est dans ce cadre que j’ai fait mes premières armes en C++ par exemple, étant plus habitué au C et au Python.

L’équipe est profondément internationale comme vous le verrez sur l’organigramme : l’un ou l’autre vient de Nouvelle-Zélande, des États-Unis, de Russie, d’Allemagne, d’Angleterre, d’Espagne, d’Ukraine, de Belgique, du Brésil, du Canada, des Pays-Bas, d’Australie, de Pologne, et bien sûr de France et j’en oublie.

La vocation du jeu est aussi d’être un jeu libre. Actuellement, l’intégralité du code est disponible et réutilisable librement ; pour les données (modèles 3D, textures, sons…), la grande majorité l’est et j’espère qu’un jour l’intégralité le sera. Ainsi, ce n’est pas seulement un projet de développement mais aussi une aventure humaine et, je le pense, civilisationnelle : produire un jeu avec une haute exigence de qualité sans empêcher l’intelligence d’autrui de se nourrir et de s’exercer sur ce que nous élaborons. En fait, c’est important que de tels projets existent et montrent que l’intelligence peut se déployer autrement qu’en privant son prochain de connaissance.

Comment en suis-je arrivé là ? Grâce à McMic< qui, en 2013, avait proposé de contribuer à un jeu libre pendant l’été. Il n’avait pas listé Unvanquished, et je m’étais attribué la tâche de ressusciter le logiciel XQF, un logiciel qui permet de parcourir les serveurs de jeu en ligne. Désirant ajouter la prise en charge d’Unvanquished, je me suis un jour pointé sur le canal de développement et ne l’ai plus jamais quitté…

En regardant les trois-quatre dernières années, je me rends compte aujourd’hui comment et à quel point ce projet m’a épanoui. L’un des plus grands signes est celui-ci : qui aurait cru il y a quelques années qu’un jour, je serais chef de quelque chose ? J’aurais été le dernier à le croire, car je croyais n’en avoir pas la capacité. Dans une équipe qui marche dans une même direction, je me suis toujours défini comme quelqu’un qui pousse, et non quelqu’un qui tire. Mais un jour, sans m’en rendre compte, quelqu’un m’a dit que j’étais un chef. En fait, il ne m’a pas dit exactement que j’étais un chef ; il a dit que j’étais celui qu’il voulait pour le remplacer, et c’était vraiment un chef. Et deux autres ont insisté pour que je me reconnaisse à ma place. Alors j’ai regardé le chemin parcouru, j’ai vu la place où j’étais parvenu, et j’ai fait « ouaouh », et je me suis dit « c’est que ça doit être vrai ».

Alors voilà, je développe un jeu vidéo, et pour mes trente-et-un ans, je suis devenu chef de projet.

Grrrr
Si les données ne sont pas encore toutes libres, cette scène l’est déjà intégralement…

Unvanquished est un jeu mêlant stratégie en temps réel, gestion de ressource, prise de territoire, et combat nerveux en vue subjective. Nous cherchons des contributeurs en effet sonore et en composition musicale, ainsi que des animateurs de modèle 3D. C’est juste un projet bénévole, et si vous êtes intéressés, la condition c’est que votre production artistique soit contribuée sous licence CC By SA 3.0 ou plus permissive. Cela signifie aussi que vous n’aurez pas à abandonner vos droits sur votre propre production, nous tenons particulièrement à respecter cela. Certes il n’y a rien à gagner financièrement, mais personne n’achètera le renoncement à votre dignité d’auteur. Vous êtes libre d’utiliser les outils que vous préférez tant que la production est dans un format que nous pouvons réutiliser, mais nous encourageons aussi fortement l’usage de logiciel libre parce que personne ne vous contraindra à développer une compétence sur un outil qu’un tiers pourrait vous retirer. C’est aussi en cela cela que nous pouvons parler de liberté.

Je disais qu’on pouvait aujourd’hui trouver ma patte dès que quelque chose de la chaîne d’édition pouvait être améliorée, mais en fait quasiment toutes mes modifications sont des petites contribution très facile à réaliser, souvent triviales. C’est l’ensemble de ces petites contributions qui changent réellement la vie. Je disais que ma première contribution avait été une correction de traduction, et ma seconde une amélioration de l’ergonomie de l’interface (du simple html et css en réalité), mais mes premières contributions furent peut-être d’abord des rapports de bug. J’aime beaucoup traquer les bugs les plus improbables, la plupart du temps je ne sais pas le corriger, mais je sais dire comment il a été introduit, et je laisse la correction à qui est plus compétent, ce qui est la base de la subsidiarité. Et puis un jour de fil en aiguille j’ai écrit un outil qui permet de construire l’intégralité des données avec un simple make, et un jour, je suis devenu chef de projet. Alors voilà, si vous avez envie de vous faire de l’expérience, dans quelque domaine que ce soit, n’hésitez pas : installez le jeu, jouez, jouez encore, et lorsque quelque chose vous semble améliorable, essayez de voir ce que vous pouvez en faire ! Mais je dois vous prévenir que ça peut vous mener loin. ;-)

  • # Merci pour ce partage

    Posté par  (Mastodon) . Évalué à 7.

    Et ce logiciel qui promet.

  • # qui veut une dépêche ?

    Posté par  (site web personnel) . Évalué à 10.

    Merci pour cet excellent article… On en fait une dépêche ?

    "La liberté est à l'homme ce que les ailes sont à l'oiseau" Jean-Pierre Rosnay

    • [^] # Re: qui veut une dépêche ?

      Posté par  (site web personnel) . Évalué à 5.

      Si vous voulez, à part quelques travaux de mise en forme obligées (le découpage en châpo/corps de texte, le "lien de dépêche") il ne devrait y avoir rien à reprendre, le journal ayant été déjà consciencieusement relu par deux personnes et repris soigneusement.

      ce commentaire est sous licence cc by 4 et précédentes

      • [^] # Re: qui veut une dépêche ?

        Posté par  (site web personnel) . Évalué à 3.

        C'est en modération ! Benoît et son regard acéré ont corrigé qq fautes!

        "La liberté est à l'homme ce que les ailes sont à l'oiseau" Jean-Pierre Rosnay

        • [^] # Re: qui veut une dépêche ?

          Posté par  (site web personnel) . Évalué à 8.

          Merci grammalecte surtout.

          • [^] # Re: qui veut une dépêche ?

            Posté par  (site web personnel) . Évalué à 7.

            Prudence, grammalecte relève deux faux positifs sur mon texte :

            trois-quatre dernières← années

            À vrai dire je ne sais pas comment il se plante là.

            des contributeurs en effet sonore←

            Il ne s’agit pas de contributeurs qui sont, en effet, sonores, mais de personnes qui contribuent avec de l’effet sonore. Le singulier est volontaire, je l’emploi ici comme un indénombrable comme on peut dire « j’écoute de la musique », une matière en quelque sorte. Évidemment mettre un pluriel calme grammalecte et par chance n’introduit pas de faute, mais le singulier est volontaire ici. ;-)

            De même le singulier est volontaire quand j’écris « ce sont vraiment leur qualité humaine, leur passion et leur talent » même si on se doute qu’il y a plusieurs qualités etc. il s’agit là d’un singulier exactement comme si on disait de quelqu’un « c’est vraiment son humanité ».

            Notez que j’ai mis un lien sur préhensible exprès pour prévenir les méprises (les correcteurs orthographiques ne connaissent habituellement pas ce mot). Je me souviens d’une fois où j’avais placé le mot dissentir à propos d’un fork qui tournait à la guerre de religion je crois, l’opposé valide mais peu usité de consentir et qui donne dissension (mot plus courant celui-là), et il était passé au bistouri. :-) Autant dissentir est considéré comme du moyen français (je kiffe grave l’exemple “historique“ donné dans le littré), autant préhensible est encore considéré comme du français contemporain, mais assez rare pour être ignoré des correcteurs orthographiques usuels (ne pas confondre avec préhensile ni compréhensible). Ici on peut entendre le mot préhensible dans un sens proche de « palpable » mais en plus fort (on peut le saisir).

            ce commentaire est sous licence cc by 4 et précédentes

            • [^] # Re: qui veut une dépêche ?

              Posté par  (site web personnel) . Évalué à 7.

              Il ne s’agit pas de contributeurs qui sont, en effet, sonores, mais de personnes qui contribuent avec de l’effet sonore.

              À titre personnel j'aurais mis "effets sonores". Si on parlait de cinéma libre, j'imagine qu'on dirait "des contributeurs en effets spéciaux" ; même si on peut parler d'un effet spécial au singulier (ex: "tel effet spécial a été réalisé avec Blender"), il me semble qu'on en parle au pluriel en général.

              Après ça n'est que mon avis.

              • [^] # Re: qui veut une dépêche ?

                Posté par  . Évalué à 4.

                C’est mon avis aussi, c’est plus logique. Les effets sonores sont ici dénombrables, et à l’évidence plus d’un, vu qu’on parle de l’ensemble des contributions des contributeurs.

                Cela dit ça ne me choque pas non plus au singulier, je trouve que ça ne devrait pas être considéré comme une faute. « effet sonore » déterminé (si je puis dire) comme un indénombrable ne peut avoir que le même sens que « effets sonores »…

                Après, ce n’est que mon avis de linguiste du dimanche ! :)

                • [^] # Re: qui veut une dépêche ?

                  Posté par  (site web personnel) . Évalué à 4.

                  Le pluriel est carrément plus commun mais les deux sont justes, les deux formes sont à disposition du rédacteur qui peut en jouer. Le fait d’utiliser un singulier là où le pluriel est commun permet d’y placer une emphase discrète. C’est le cas pour « effet sonore ». Quelqu’un peut dire « Je suis un pro en dessin », ce qui désigne surtout la matière (quelque chose qu’il peut et sait travailler), désignant moins le produit de son travail que son domaine de compétence.

                  Dans d’autre cas le passage au singulier indénombrable peut l’absolutiser en quelque sorte. Pour le singulier de « qualité » c’est le cas, cette différence est du même ordre que la différence entre « le bien » et « les biens » : le premier est un absolu (un principe transcendantal en philosophie), les seconds sont monnayables et contingents.

                  Cela peut dans certains cas complètement changer le sens. Dans la liturgie sacrificielle, le presbytre qui dirait « agneau de Dieu qui enlève les péchés du monde » (au lieu du singulier « qui enlève le péché du monde ») enlèverait pour le coup toute sa dimension au sacrifice qui se trouverait réduit à un passage de serpillière : incapable de désigner le mal dans son absolu, il ne s’y attaquerait pas dans son principe et ne pourrait le vaincre. Le combat entre le bien et le mal serait un non-lieu. Linguiste du dimanche, linguiste du dimanche et demi. ^_^

                  ce commentaire est sous licence cc by 4 et précédentes

                  • [^] # Re: qui veut une dépêche ?

                    Posté par  . Évalué à 5. Dernière modification le 10 octobre 2017 à 10:36.

                    « le bien » et « les biens » : le premier est un absolu (un principe transcendantal en philosophie), les seconds sont monnayables et contingents.

                    Il est bon d'ajouter que les seconds sont la source de tous nos maux, comme l'expose très clairement ce précepte médiateur de la pensée Richenou : « tout bien que tu détiens est un soucis qui te retient ». Heureusement Skippy est là pour nous ôter tous nos soucis en procédant à la quête donatoire transcendantale à l'issue de chaque cérémonie. Il ne te reste plus qu'à propager à travers le monde cette totale liberté de pensée cosmique vers un nouvel âge réminiscent : ite missa est ! :-D

                    P.S : parler de principe transcendantal ici, concept qui relève de la métaphysique, c'est de la folie. On veut bien parler de métaprogrammation, métadonnées, métadiscussion, mettre du méta à toutes les sauces… mais la métaphysique, voyons ! ;-)

                    Sapere aude ! Aie le courage de te servir de ton propre entendement. Voilà la devise des Lumières.

                    • [^] # Re: qui veut une dépêche ?

                      Posté par  . Évalué à 4.

                      « Avant j’étais délinquant, je volais…
                      - Et maintenant vous ne volez plus ?
                      - Si, mais je donne tout à Skippy. »

                      :)

  • # Recette ?

    Posté par  . Évalué à 10.

    Il semble que les potentielles personnalités toxiques soient parties très vite au tout début du projet.

    Si tu arrives à trouver pourquoi/comment, je pense que beaucoup seront intéressés.

    • [^] # Re: Recette ?

      Posté par  (site web personnel) . Évalué à 10. Dernière modification le 08 octobre 2017 à 19:12.

      Voir mon article d’il y a cinq ans : « Une histoire de fork ». Le projet est parti avec un sale bagage de fork sauvage en pagaille. Mais en gros, une personne a exclu tout le monde (elle voulait que ce soit “son projet et que les autres y contribuent”), donc en fait cette personne s’est effectivement retrouvée tout seul… C’est à ce moment-là que le site unvanquished.net a été créé et que le nouveau nom « Unvanquished » a été pris, car c’est ce qu’est devenu l’intégralité de l’équipe moins un après avoir été viré. On peut comparer ça à la façon dont Oracle a géré avec OpenOffice : tout le monde s’est retrouvé sur LibreOffice, le seul truc qui manque c’est le nom d’origine, et l’entité toxique.

      Quelques personnes ont probablement été bloquées au début aussi, parce que grosso-modo, la do-ocratie n’est pas un dogme : être productif ne donne pas le droit à être irrespectueux, on ne peut pas acheter un comportement de merde avec du code. Cinq ans c’est trop vieux pour ma mémoire, mais sur les quatre dernières année je n’ai aucun souvenir de truc pourri. C’était déjà complètement assaini quand j’ai rejoint le canal #unvanquished-dev, et kharnov avait un excellent relationnel qui rejaillissait sur tout le monde mais a aussi sû être très ferme. Certaines personnes moins « faciles » se sont regroupées sur d’autres projets et ça les occupe ailleurs.

      ce commentaire est sous licence cc by 4 et précédentes

  • # Trugarez

    Posté par  (site web personnel) . Évalué à 10. Dernière modification le 08 octobre 2017 à 21:48.

    Un grand merci pour ce journal passionnant, mêlant passion, code et humanisme. Je ne sais pas trop comment exprimer ça mais il se dégage de ce journal un ton de calme sérénité admirable. Ça donne envie !

    Oh, et merci de m'avoir fait découvrir le Principe de subsidiarité !

  • # comparaison

    Posté par  . Évalué à 7.

  • # Libération des données

    Posté par  . Évalué à 4.

    J'ai toujours pensé que les devs de unvanquished n'étaient pas très chauds pour libérer les données, mais tu sembles dire le contraire en indiquant que faire un jeu libre est l'objectif du projet. Dans mes souvenirs, le projet était prêt à accepter à peu près n'importe quoi comme données tant que c'était redistribuable et que ça collait à la ligne artistique du projet. Quitte à rendre le jeu très difficile voire impossible à libérer par la suite (la probabilité de tomber sur des remplacements libres de qualité équivalente étant très faible pour certains fichiers). Bref de ma lucarne ça ressemblait vraiment à "YOLO, on prend tout ce qui vient et qui a l'air cool, si c'est libre tant mieux sinon osef tant que ça reste gratuit".

    Est-ce que tu peux nous donner plus d'infos sur le projet de libération des données, ton rôle au sein de celui-ci, et les différences de point de vue des membres sur le sujet, s'il y en a eu, et comment elles ont été gérées ?

    *splash!*

    • [^] # Re: Libération des données

      Posté par  (site web personnel) . Évalué à 10. Dernière modification le 09 octobre 2017 à 22:34.

      Tu remarqueras que j’ai employé le mot de « vocation » et non celui d’ « objectif », parce que sincèrement je pense qu’Unvanquished est appelé à être un jeu libre.

      Il y a une assez forte volonté dans ce sens, mais ce n’est pas une volonté de « faire changer les choses », mais plutôt de « faire ainsi ». En ce sens il n’y a pas de projet de « libération de données ». Sur le plan du code, les licences les plus permissives sont préférées, il y a plein de GPL de part l’héritage id Tech, mais tout nouveau code est en BSD et toute réécriture est en BSD. Sur le plan des données, les données non-libres n’étaient pas préférées mais tolérées et pour le moment rien de contraire n’a été statué, et si un jour le jeu complet est libre, il le deviendra certainement sans avoir à statuer autre chose, parce simplement la méthode aura changé.

      La position officielle a été définie de manière très claire il y a 4 ans :

      In order to be able to ship your work as a part of the game (and attribute you as the author properly), we need you to release it under a free public license that allows distribution and further modification to the general public. In order to do so, just leave a line like this in the relevant thread in the Assets & Artwork section:

      This work is licensed under a license, attribute it to .

      As the , we prefer one of the following:

      • CC-BY-SA 3.0 (recommended)
      • CC-BY 3.0
      • CC0 1.0

      You may also choose any newer version of any of these licenses or choose another license that is atleast equally permissive as CC-BY-SA. If you are unsure which license is best, choose CC-BY-SA 3.0 (since it is the least permissive that works for us and you can always decide to release under a more permissive license later on).

      There are a few exceptions where we accept a less permissive license:
      Concept art isn't shipped with the game and doesn't need to be licensed, except when we need to modify or distribute it further (e.g. a logo or promotional material).
      Artwork that isn't shipped as a part of the main game but downloaded seperately may also choose CC-BY-NC-SA 3.0. This applys to maps and texture sets. However, this license is considered "unfree" by some linux distributions (e.g. Debian), so we can't put any asset with it in the core game if we want it to be packaged inside their official repositories.

      Il y a donc toujours eu une volonté très claire de faire du “CC By-SA 3.0 compatible” pour le cœur du jeu (c’est à dire ce qui ne peut pas être retiré sans dénaturer le jeu ni le rendre injouable). Maintenant le vrai problème n’était pas les données non-libre, mais de laisser le choix de la licence, ce qui a amené la situation suivante : plein de contributeurs sont venus, ont travaillé dur pendant des mois, ont publié leur travail et ont disparu avant d’avoir statué la licence. Et sans licence libre, c’est pas libre.

      J’ai donc pris sur moi de relancer un par un tous ces contributeurs pour obtenir la licence. Mais je n’ai pas pris de risque, j’ai fait au plus simple : je leur ai dit à chacun que je n’avais pas trouvé de mention légale et que pour permettre au projet Unvanquished d’utiliser leur travail en confiance nous avions besoin qu’ils confirment que leur travail été distribué sous CC By-SA 3.0. Tous ceux qui m’ont répondu m’ont répondu oui.

      Le vrai problème, c’était de ne pas poser une licence comme condition, mais d’offrir un panel de licences possibles. Cela change beaucoup de chose parce que ça reporte le choix de la licence après publication du travail. La politique que je pousse est de faire comme pour un wiki : en contribuant, le contributeur place sa contribution sous telle licence. Fini les problèmes.

      Xonotic est un bon exemple pour ça. Ils ont une licence et une seule, quelqu’un se pointe sur le forum, montre une musique qu’il a composé en pensant à Xonotic, un développeur se pointe et dit « woaw, c’est cool, si tu la mets en GPLv2 on peut l’intégrer », le musicien répond « sérieux, ma musique dans Xonotic ? ok pour la licence alors ! ». Voilà, c’est fait.

      Si tu dis aux gens, « alors, c’est ça, ça, ça ou ça », tu prends le risque de recevoir comme seule réponse de l’indécision, si tu dis aux gens « on a besoin de ça », les gens disent « oui ».

      J’ai donc une volonté très claire qu’à partir de maintenant on pose une licence par principe (CC By-SA 3.0 parce que c’est la majorité de ce qu’on a) et personne n’est contre cela vu que maintenant on sait combien ça complique les choses si on fait autrement. Il faut que la licence soit statuée avant contribution, pas après. Si le gars fait un modèle et se prend un platane en sortie de route ou bien devient ermite avant d’avoir fait les textures, on doit pouvoir garder ce qu’on a déjà…

      Maintenant passons à l’état actuel des choses… Comme on a 2 sets de textures en CC By-SA 4.0 et vu que la 3.0 est compatible vers la 4.0, je vais parler de « CC By-SA 4.0 compatibilité ».

      L’état actuel c’est : 80% de nos modèles sont CC By-SA 4.0 compatibles, 80% de nos set de textures sont CC By-SA 4.0 compatible (un seul ne l’est pas), 8% de nos cartes sont CC By-SA 4.0 compatible (une seule en fait) un saut à 41% est attendu vu qu’un mapper a annoncé vouloir relicencier toutes ses cartes en libre, c’est juste pas encore fait. Pour les sons hérités de Tremulous, quasi tout est à refaire, et il y a toujours eu volonté de faire cela en libre, il ne s’agit donc pas de libérer mais de réaliser.

      Excepté ces sons, la seule chose qui aujourd’hui nous empêche d’être un jeu libre, c’est ce 20% de modèles non-libres. Cela ne concerne en fait que 3 personnes seulement. Un contributeur a 7 modèles rien que pour lui et a utilisé la CC By-NC-SA 3.0 à cause d’un doute qu’il a sur sa capacité à ne pas mettre une clause non-commerciale sur sa contribution à cause d’un contrat tiers. C’est un point légal à tirer complètement au clair, je m’en charge. Ce contributeur n’est pas un contributeur extérieur (qui vient, qui publie un truc et qui disparaît) c’est juste que ce point n’est pas encore complètement tiré au clair. L’avantage c’est que ça compte comme un seul cas : c’est 7 modèles pas libre ou 7 modèles libres, d’un seul coup. Ensuite il reste deux personnes, ces deux cas ne sont pas libres tout simplement parce que je n’ai pas encore reçu de réponse de leur part. Les 30~40 autres modèles sont déjà en CC By-SA 3.0.

      Excepté les sons, en fait ces trois seuls cas sont la seule chose qui empêchent Unvanquished d’être libre, car il n’est pas possible de jouer sans eux. Unvanquished est libre si au moins une seule carte est libre, les textures qu’utilise cette carte sont libres et que tous les sons et les modèles sont libres. Dans ce cas le reste ne sont que des données compatibles non-libres, par exemple Trisquel pourrait distribuer le jeu sans ces données que le jeu serait entièrement jouable, Debian pourrait distribuer le jeu dans main ou contrib, et faire un paquet optionnel dans non-free.

      On a déjà une carte entièrement libre (Vega) qui utilise son propre set de textures (Vega), donc quand on aura tous nos modèles et nos sons libres, Unvanquished sera automatiquement libre. D’autres cartes et d’autres set de textures pourraient être libérés et cela est déjà prévu pour certaines cartes, cela ne fera que diversifier l’expérience de jeu (plus de cartes). Ce serait préférable mais ça n’ajoutera pas de liberté au joueur qui souhaite se restreindre à ce qui n’est que libre.

      Pour les sons, il n’y a rien à libérer, il faut remplacer. Le contributeur de Tremulous n’a jamais prouvé qu’il avait les droits sur ces sons, donc ces sons ne peuvent être considérés comme libre, donc Tremulous n’a jamais été libre. Donc tout ce dont nous avons besoin, c’est de contributions sonores sous CC By-SA 3.0 ou plus permissif.

      Dans la dépêche je parle de musique aussi parce qu’on a trois musiques et pour l’une d’entre elle le musicien a écrit dans son README qu’il mettait sa musique sous licence CC By-SA 3.0 et qu’il donnait l’exclusivité à Unvanquished, sauf que cette seconde clause invalide la CC By-SA 3.0, donc poubelle. Quand j’ai découvert ça, le musicien avait disparu et son adresse mail était devenue invalide. On peut se satisfaire de 2, mais 3 apporte plus de diversité donc voilà… Ça donne un aperçu des situations vraiment absurdes que je rencontre parfois et de ce que je dois résoudre.

      Ce qu’il faut pour qu’Unvanquished soit libre :

      • retirer la clause -NC sur les fichiers d’un contributeur de modèle. Note que cette clause va à l’encontre de ce qui a toujours été voulu, car c’est un modèle non optionnel.
      • obtenir la réponse de deux contributeurs de modèle, ou refaire ces deux modèles (il faudrait donc remodeler, réanimer etc. depuis zéro, j’espère qu’on aurait pas à en venir là)
      • remplacer les effets sonores.

      Si on peut se permettre de distribuer ces deux modèles parce qu’ils ont été clairement réalisés et livrés pour qu’on puisse le faire, on n’a pas de licence claire donc c’est pas libre, et accessoirement, ce serait bloquant pour une distribution sur une plateforme de distribution comme Steam , libre ou pas libre.

      Le ponpon étant cette musique avec le readme qui invalide sa licence… Wat? On sait qu’on a le droit de distribuer, mais le contrat est invalide.

      Bref, j’ai encore fait un journal. En fait je ferai probablement un journal sur ce sujet, écrit autrement, ne serait-ce que pour faire un retour avec plus de recul plus tard, mais rédiger ce commentaire m’a permit de mettre de l’ordre ces idées. ;-)

      Il y a un dernier point, je travaille à montrer combien il est très important que toutes nos données utilisent des licences compatibles entre elles. Il est tout à fait légal de distribuer un jeu avec des données qui ont des licences incompatibles entre elles (comme une musique et une textures avec des licences incompatibles entre elles) et il est tout à fait légal d’y jouer, mais certains usages ne le sont pas, comme le cas du [machinima].

      C’est pourquoi si certaines licences non-libres pouvaient être tolérées, il y a très très peu de chance que ça se reproduise à nouveau, pas à cause de l’aspect non-libre, mais à cause de son incompatibilité légale avec le reste. C’est exactement pour cette raison qu’il y a de très forte chance que tous les modèles soient libre à moyen terme, pas pour les libérer, mais pour n’avoir aucune incompatibilité de licences. C’est pour ça que je dis qu’il n’y a pas de plan de libération des données, il y a un plan de rendre le jeu légal, et sa liberté est un effet de bord. C’est pour cela aussi que je parle de vocation : si on poursuit ce chemin de compatibilité entre licence afin de rendre possible certaines œuvres dérivées et réduire les potentielles zones grises, alors le jeu sera libre. Si je continue ce travail d’audit légal que je fait et si des contributeurs continuent de contribuer, un jour on se réveillera et le jeu sera libre.

      Ma capture d’écran avec le Tyrant est une œuvre couverte par la licence CC By-SA 3.0, c’est une œuvre dérivée des textures et du modèle de carte de Stijn Buys (Ingar) sous CC By-SA 3.0, de l’arme et de ses textures par Ludwig Dresch (Geno527) sous CC By-SA 3.0, du modèle de joueur humain et de ses textures par Angel Bedolla (Angelo) sous CC By-SA 3.0. La texture du modèle humain a été modifiée par Jan van der Weg (Stannum) dans le cadre de la licence CC By-SA 3.0. Le cadrage original a été réalisé par Thomas Debesse (illwieckz) sous CC By-SA 3.0.

      ce commentaire est sous licence cc by 4 et précédentes

      • [^] # Re: Libération des données

        Posté par  . Évalué à 2.

        Je commence par les broutilles :

        Xonotic est un bon exemple pour ça. Ils ont une licence et une seule, quelqu’un se pointe sur le forum, montre une musique qu’il a composé en pensant à Xonotic, un développeur se pointe et dit « woaw, c’est cool, si tu la mets en GPLv2 on peut l’intégrer », le musicien répond « sérieux, ma musique dans Xonotic ? ok pour la licence alors ! ». Voilà, c’est fait.

        Je pense que c'est quand même important de prévoir l'intégration au jeu (et donc la liberté) en amont du travail à réaliser. Par exemple dans les musiques de Xonotic, si on considère que les fichiers lossless sont les sources, tu as des musiques dont les sources sont dispo (celles qui ont été réalisées pour être intégrées au jeu, par exemple via un concours) et des musiques sans sources (celles qui ont été ajoutées après avoir été découvertes, ou celles qui sont issues de nexuiz).

        Après on peut aussi prévoir la liberté sans forcément prévoir l'intégration au jeu, par exemple avec des plateformes comme opengameart dans lesquelles les développeurs de jeux libres peuvent piocher (malheureusement en réalité il n'est pas nécessaire de publier les sources sur OGA, mais c'est pour l'exemple).

        Unvanquished est libre si au moins une seule carte est libre, les textures qu’utilise cette carte sont libres et que tous les sons et les modèles sont libres.

        J'espère au moins que les objectifs du projet contiennent "fournir un set de maps conséquent". C'est l'une des raisons principales pour lesquelles Xonotic n'est pas une 1.0 : les devs considèrent que le nombre maps est trop faible pour que Xonotic soit un jeu complet. Il existe certes un nombre incalculable de maps non-officielles (plusieurs centaines je crois) mais celles-ci ne sont pas intégrées au jeu, soit parce que non-libres, soit parce que la qualité n'est pas suffisante.

        Je dis ça parce qu'il y a une vraie différence entre Xonotic/Nexuiz/OA avec leurs centaines de maps non-libres, mais avec lesquels on peut déjà s'amuser pendant une bonne éternité et demie avec les quelques dizaines de maps libres incluses dans le projet, et des projets comme cube2 qui dispose d'un petit paquet de données libres contenant une map de démonstration qui est loin de fournir une expérience de jeu satisfaisante (voir le paquet cube2-data dans Debian).

        Le ponpon étant cette musique avec le readme qui invalide sa licence… Wat? On sait qu’on a le droit de distribuer, mais le contrat est invalide.

        Oui ça arrive souvent dans le monde de l'art mais aussi du logiciel : des gens qui publient sous une licence libre et qui écrivent à côté que c'est pas sous licence libre. Des projets comme debian recommandent de clarifier la situation ou de ne pas accepter l'œuvre en cas de situation ambigue comme celle-ci, même dans des cas où la licence libre prévaut.

        Ensuite le truc important :

        Si le gars fait un modèle et se prend un platane en sortie de route ou bien devient ermite avant d’avoir fait les textures, on doit pouvoir garder ce qu’on a déjà…
        […]
        Ce contributeur n’est pas un contributeur extérieur (qui vient, qui publie un truc et qui disparaît) c’est juste que ce point n’est pas encore complètement tiré au clair. L’avantage c’est que ça compte comme un seul cas : c’est 7 modèles pas libre ou 7 modèles libres, d’un seul coup. Ensuite il reste deux personnes, ces deux cas ne sont pas libres tout simplement parce que je n’ai pas encore reçu de réponse de leur part. Les 30~40 autres modèles sont déjà en CC By-SA 3.0.

        En fait il ya deux façon de gérer les objectifs d'un projet : A) les conditions doivent être vraies dès le début et B) les conditions qui doivent être vraies à la fin du projet. Souvent les projets libres mettent la liberté en A) et la qualité artistique ou technique en B).

        Pour la plupart des jeux libres, wesnoth, 0ad, etc. on le voit bien : les fichiers sont restés libres depuis le début, et le jeu s'est construit petit à petit (si on regarde les screenshots on voit bien l'augmentation progressive dans la qualité des graphismes par exemple).

        Unvanquished fait partie de ces rares jeux qui ont mis la qualité artistique en A) et la liberté en B). C'est un pari risqué, en témoignent les deux exemples cités plus haut : si on n'arrive pas à obtenir la licence, on perd tout.

        Note: Unvanquished n'est pas le seul dans ce cas, il y a d'autres projets qui ont tenté le coup de poker d'intégrer des assets non-libres pour les faire libérer ensuite (UFO:AI, Red Eclipse, M.A.R.S….), et même l'inverse, des projets qui ont commencé libres et ont intégré des assets non-libres ensuite (freegish, Zero-K…) et dont on ne sait pas à l'heure actuelle s'ils seront libérés un jour.

        Cependant il est important de noter que mettre l'art en A) et la qualité artistique ou technique en B) peut être très dangereux aussi. Par exemple, freedoom entre dans cette catégorie, l'objectif était que l'art soit libre dès le début (en réalité un contributeur a introduit des fichiers non-libres dans les versions antérieures à la 0.7, il s'agissait d'un vandalisme indépendant de la volonté des développeurs, et ces versions ne sont plus distribuées aujourd'hui), et que les maps soient vanilla-compatibles à la fin du projet. Et alors que les développeurs commencent à s'intéresser à la vanilla-compatibilité, crac, il s'avère qu'on ne peut pas l'assurer sans refaire toutes les maps. (Pour rappel le problème a été résolu en changeant l'objectif en "quasi-vanilla-compatibilité".)

        Du coup je pose la question : qu'est-ce qui est le mieux ? Être intransigeant sur la liberté et avancer petit à petit vers l'objectif de qualité attendu ? Ou demander de la qualité dès le début et essayer d'atteindre la liberté ensuite ?

        Enfin la seule question vraiment importante dans tout mon commentaire :

        remplacer les effets sonores.

        Comment qu'on fait ?

        Est-ce qu'il faut aller sur opengameart et trouver un fichier de son qui fait la même longueur que le fichier qu'on veut remplacer et qui sonne à peu près pareil ? Ou c'est plus compliqué ?

        *splash!*

        • [^] # Re: Libération des données

          Posté par  (site web personnel) . Évalué à 4.

          Par exemple dans les musiques de Xonotic, si on considère que les fichiers lossless sont les sources, tu as des musiques dont les sources sont dispo

          Bah, non.
          C'est ce que je reproche au domaine libre artistique, c'est que la notion de source est rarement respectée. Il suffit de fournir le fichier final avec l'indication comme quoi c'est libre et basta. Bah non. Même un fichier musical sans perte ne peut pas être la source. C'est un bon début, mais pas suffisant.

          Car, une musique c'est aussi une partition, des paroles, parfois des enregistrements sur plusieurs canaux (plus que les deux du stéréo), la piste du chant séparé de la piste de la musique. Il faut libérer cela aussi en guise de source, car partir du fichier final pour retrouver ces informations est difficile voire impossible.

          Pareil pour une image (type logo, affiche ou autre dessin réalisé avec un éditeur d'image), il faut non seulement l'image sans perte, mais aussi les différents calques pour la même raison. Pour un film c'est globalement un agglomérat des deux cas précédents et la Blender Foundation l'a dans l'ensemble bien compris quand il a libéré les sources de ses œuvres, tu as tous les éléments (sauf les musiques je crois) pour les refaire entièrement si tu veux sans devoir essayer de passer du résultat final aux sources exploitables par les outils de création.

          • [^] # Re: Libération des données

            Posté par  . Évalué à 5.

            Pareil pour une image (type logo, affiche ou autre dessin réalisé avec un éditeur d'image), il faut non seulement l'image sans perte, mais aussi les différents calques pour la même raison.

            Ben justement, comment tu définis la source quand il n'y a pas ça ? Par exemple :

            • Je fais une image très complexe en n'utilisant qu'un seul calque au lieu de plusieurs -> on ne peut pas décomposer l'image
            • je dessine sur papier, ensuite je scanne, au lieu de dessiner avec inkscape sur tablette graphique -> on n'a pas accès à l'historique de mes coups de crayon
            • j'utilise inkscape mais je dessine un truc en ne levant le crayon qu'une ou deux fois alors que je pourrais l'avoir fait en levant le crayon bien plus souvent -> difficile de décomposer le dessin
            • je prends une photo d'un tableau
            • etc.

            Je pense que pour l'art il n'y a pas de définition universelle d'une source et il ne peut pas y en avoir. C'est donc à chaque projet de définir clairement ce qu'est une source, et de s'y tenir (de n'accepter que des fichiers qui ont une source correspondant à la définition donnée). Évidemment si la définition de "source" est faible (ex: fichiers flac pour la musique, png lossless pour une image) on aura l'avantage de pouvoir piocher dans une grande quantité de fichiers, au détriment de peu de liberté, si la définition de source est moyenne (ex: pistes séparées/fichier tracker pour de la musique, calques/fichier xcf pour une image) ou forte (ex: partition/fichier midi pour musique, fichier de travail inkscape pour l'image) on aura plus de liberté, mais une quantité de fichiers plus restreinte à notre disposition. Les projets "de base" (ex: jeux) auraient une définition de source "forte" afin de maximiser la liberté des utilisateurs, et les projets de projets (ex: distros) auraient une définition de source "faible" pour accepter le plus de projets possibles.

            Après je pense que le fichier lossless est la limite basse à ne pas dépasser dans la définition d'une source, en tout cas pour la musique et les graphismes. Il existe peut-être des types de données où il est impossible d'obtenir un fichier lossless, mais dans l'ensemble ça me semble être LE critère indiscutable pour les sources artistiques.

            *splash!*

            • [^] # Re: Libération des données

              Posté par  (site web personnel, Mastodon) . Évalué à 2.

              En fait pour moi ce que demande Renaud, ça ressemble assez rapidement à un historique de commit de code, et plus à une source. Un exemple concret : les calques d'un dessin sont souvent juste un outil de travail et n'ont pas d'intérêt en tant que « source ».

              La connaissance libre : https://zestedesavoir.com

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.