URL: https://linuxfr.org/news/dernieres-evolutions-autour-de-0-a-d--2 Title: Dernières évolutions autour de 0 A.D. Authors: eingousef BAud, ZeroHeure, olivierweb, Thomas Debesse, patrick_g, bubar🦥, Nÿco, palm123, come et claudex Date: 2014年04月16日T14:37:32+02:00 License: CC By-SA Tags: rts, jeux_linux, 0ad, jeu_libre et jeu_vidéo Score: 106 0 A.D., le fameux jeu de stratégie historique en temps réel et en 3D, développé par Wildfire Games, avait fait l'objet d'une dépêche [en décembre 2013](https://linuxfr.org/news/dernieres-evolutions-autour-de-0-a-d). Les avancées des versions alpha 12, alpha 13, et -- dans une moindre mesure -- alpha 14 y avaient été développées.  La sortie récente de la version alpha 16 de 0 A.D. est l'occasion de récapituler les évolutions de ce projet ambitieux sur ses trois dernières alphas. _NdM : 0 A.D. est un jeu libre dont le code source est sous licence GNU GPL v.2 tandis que le contenu artistique est sous licence CC-BY-SA._ ---- [Site officiel de 0 A.D.](http://play0ad.com/) [Annonce officielle de la sortie de 0 A.D. alpha 14](http://play0ad.com/indiegogo-crowdfunding-campaign-new-release-alpha-14-naukratis/) [Annonce officielle de la sortie de 0 A.D. alpha 15](http://play0ad.com/alpha-15-osiris/) [Annonce officielle de la sortie de 0 A.D. alpha 16](http://play0ad.com/alpha-16-patanjali/) ---- # 0 A.D. Alpha 14 : **Naukratis** 0 A.D. Alpha 14 est sortie [le 4 septembre 2013](http://play0ad.com/indiegogo-crowdfunding-campaign-new-release-alpha-14-naukratis/). Son nom de code est [Naukratis](https://fr.wikipedia.org/wiki/Naucratis), une ville du delta du Nil qui fut un important port de commerce, ainsi qu'un centre politique et religieux lors de la période couverte par 0 A.D. (-500 à -1 pour la Partie 1).  *TL;DR :* Le développement de *Naukratis* a été surtout focalisé sur le gameplay, avec l'apparition d'un nouveau bâtiment (la forge), de nombreuses technologies et bonus de civilisation, et l'introduction de changement radicaux dans le calcul des dégâts, de la ligne de mire et des revenus agricoles et commerciaux. Il s'est aussi focalisé dans une moindre mesure sur l'esthétique visuelle, avec l'implémentation de plusieurs effets graphiques (encore désactivés par défaut). *Naukratis* apporte les changements suivants : ## Code/interface utilisateur : - Bouton de héros : lorsque le joueur entraîne un héros, un bouton d'accès rapide apparaît dans l'interface pour pouvoir sélectionner celui-ci rapidement - Choix de la vitesse du jeu : on peut désormais changer la vitesse du jeu en cours de partie via un menu - Raccourcis clavier supplémentaires : des raccourcis claviers ont été ajoutés pour annuler, mémoriser une zone de la carte, arrêter une action - Affichage d'informations supplémentaires : une bulle affiche le nombre d'unités en garnison dans un bâtiment ou une arme de siège lorsqu'on appuie sur `Ctrl`, l'interface affiche le nombre maximum de bâtiments d'un certain type que le joueur est autorisé à construire, le nombre de ramasseurs est affiché lorsqu'on sélectionne une ressource  ## Code/gameplay : - **Nouveau bâtiment :** la forge. Ce bâtiment est dédié au développement de technologies liées à l'armement. Certaines technologies militaires de la caserne y ont été déplacées. - Armure exponentielle : introduction d'un nouveau système de calcul de la résistance des unités aux attaques : - On passe de : `dégâts = attaque - armure` - à : `dégâts = attaque ⨯ 0,9^armure` - Soit par exemple, avec une armure de 4, et une attaque de 8 : - 8 ⨯ 0,9^4 = 8 ⨯ 0,66 ≃ 5 points de dégâts Ce nouveau système permet de mieux niveler la puissance des unités, d'éviter d'avoir des unités déjà fortes qui deviennent invulnérables, ou des unités faibles qui deviennent subitement fortes après une amélioration technologique. [Détails](http://www.wildfiregames.com/forum/index.php?showtopic=16985entry264049) - Fermes infinies : dans les versions précédentes, une ferme était grosso-modo une ressource qui pouvait être construite par le joueur pour 100 points de bois, et dont l'exploitation lui rapportait 2000 points de nourriture avant de s'épuiser. Désormais les fermes sont infinies, et leur taux de production diminue peu à peu lorsque des ramasseurs travaillent dessus, et remonte progressivement lorsque ceux-ci s'arrêtent. Le nombre de ramasseurs sur chaque ferme est maintenant limité à 5. Pour un revenu en nourriture à peu près stable, il est conseillé de mettre 2 à 3 ramasseurs sur chaque ferme. Ce nouveau système oblige à construire beaucoup plus de fermes qu'auparavant pour garder une économie stable, et pousse les joueurs à une expansion territoriale plus agressive. Ce changement n'est pas définitif, d'autres modèles agricoles sont à l'étude. - Calcul de la ligne de mire et de la portée des unités et des bâtiments en fonction de l'altitude : celles-ci sont plus grandes si on est en hauteur par rapport à la cible, réduites si on est plus bas. [Détails](http://www.wildfiregames.com/forum/index.php?showtopic=17358) [](http://pix.toile-libre.org/upload/original/1398633230.jpg) - Partage des gains de commerce : quand vous commercez avec un allié, vous produisez 50% de ressources en plus que lorsque vous commercez avec vous-même, et ces 50% sont partagés entre vous et votre allié. - Nouveau héros spartiate : [Brasidas](https://fr.wikipedia.org/wiki/Brasidas) - Amélioration des points de ralliement : on peut désormais placer des points de ralliement pour des bâtiments en cours de construction, il est également possible de placer des points de ralliement via la minicarte. - Garnison des unités allées : un joueur peut maintenant placer des unités en garnison dans les bâtiments de ses alliés.  - **Nouvelles technologies :** * _Paniers d'osier_ : ramassage de fruits 50% plus rapide * _Vitesse de guérison 2_ ("Serment d'Hippocrate" chez les grecs) et * _Portée de guérison 2_ ("Akademia" chez les grecs) : mêmes effets que _Vitesse de guérison 1_ ("Sphagia" chez les grecs) et _Portée de guérison 1_ ("Panthéon olympique" chez les grecs) de la phase 2, mais à la phase 3 (guérison +25 plus rapide, +4 de portée pour les guérisseurs) * _Conscription_ : tous les soldats sont entraînés 25% plus rapidement * _Déblocage des unités championnes_ ("Agèma" chez les grecs, "Regio Cohors" chez les romains) : permet d'entraîner des champions dans les casernes et les forteresses * _Capitaines mercenaires celtes_ + _Généraux mercenaires gaulois_, _Capitaines mercenaires lusitaniens_ + _Généraux mercenaires celtibères_, _Capitaines mercenaires italiens_ + _Généraux mercenaires italiens_ : les mercenaires celtes, ibères et italiens (respectivement) coûtent 25% de métal en moins. (carthaginois uniquement), appariés avec : * _Alliance celtique_ + _Hégémonie gauloise_, _Alliance ibère_ + _Hégémonie hispanique_, _Alliance italienne_ + _Hégémonie italienne_ : les mercenaires celtes, ibères et italiens (respectivement) s'entraînent 20% plus vite. * _Pigeons voyageurs_ : augmente la ligne de mire des postes avancés de 50% * _Recyclage des gravats_ : les murs sont construits 20% plus rapidement, et perdent 1 point d'armure, apparié avec : * _Maçonnerie géométrique_, murs contruits 10% plus lentement, +2 pts d'armure * _Architectes navals_ : ("Architectes navals phéniciens" chez les carthaginois) le temps de construction des navires est réduit de 1 seconde * [_Agoge_](https://fr.wikipedia.org/wiki/%C3%89ducation_spartiate) : la caserne et le syssition sont construits 2⨯ plus rapidement, mais ont 1 point d'armure en moins. (Spartiates uniquement) * [_Thesmophoria_](https://fr.wikipedia.org/wiki/Thesmophories) (fête de la fertilité) : les maisons peuvent produire des villageoises (grecs uniquement). * _Rotation des cultures_ : augmente de 25% le rendement des fermes à proximité du moulin (celtes uniquement). - **Nouveaux bonus de civilisation :** * Celtes – _Structures en bois_ : les bâtiments celtes sont contruit 20% plus vite, mais sont 20% moins résistants. * Carthaginois – _Murs triples_ : les murs carthaginois sont 3⨯ plus résistants que ceux des autres civilisations, mais sont 2⨯ plus coûteux et 2⨯ plus longs à construire. * Mauryas –_Murs de bois_ : les murs sont construits 20% plus vite, mais sont 20% moins résistants. * Les carthaginois ne peuvent maintenant plus construire qu'un seul type d'ambassade (déterminé par la première ambassade construite), mais peuvent commercer par la mer dès la première phase du jeu. * Athéniens – [_Chouette d'argent_](https://fr.wikipedia.org/wiki/Monnaie_grecque_antique) : minage du métal 10% plus rapide à chaque changement de phase. * Athéniens – [_Ligue du Délos_](https://fr.wikipedia.org/wiki/Ligue_de_D%C3%A9los) : les navires de guerre sont construits 25% plus rapidement. Ce bonus devrait s'appliquer aux alliés aussi (le partage des bonus entre les équipes n'est pas encore ajouté au moteur). ## Code/moteur : - Son : le gestionnaire de musique a été partiellement réécrit et amélioré, avec gestion des _playlists_ (et couplage à la détection de batailles introduite dans l'Alpha 13). L'interface utilisateur s'enrichit de retours sonores lorsqu'on clique sur les boutons. - Gestion des ancres et des _props_ flottantes : les grosses unités (béliers, balistes, cavaliers...) et les accessoires attachés aux bâtiments (_props_) suivent la pente du terrain (au lieu de rester à l'horizontale). Pour les _props_, seuls quelques bâtiments sont compatibles pour l'instant (les plus récents : forges, bâtiments ptolémaïques). - Gestion des auras (héros ou bâtiments qui changent certaines caractéristiques des unités à proximité). Les auras elles-mêmes ne sont pas encore implémentées. - Gestion de la régénération de points de vie. - Assouplissement des restrictions de construction des murs/palissades en fonction du terrain : il est maintenant possible de prolonger un mur sur quelques mètres dans un obstacle infranchissable (falaise, étendue d'eau), et ainsi prendre avantage du terrain pour empêcher les ennemis de passer. _TL;DR_ : les murs servent enfin à quelque chose :o  ## Code/éditeur : - Nouveau modificateur de terrain : _Atlas_ se dote d'un outil permettant de faire des montagnes pointues. ## Code/Performances : Lors du développement de la version alpha 13, les problèmes de performances de 0 A.D. ont été considérés comme un bug prioritaire. Cette version avait alors vu apparaître des petites optimisations de calcul et une nouvelle IA légèrement plus rapide. Dans *Naukratis*, les principales améliorations se situent au niveau du calcul de l'exploration de la carte et de la désactivation du tri de distance des objets transparents. Cette dernière optimisation est particulièrement significative sur les cartes contenant des forêts denses. ## Art/objets : - **Forges :** ajout des forges ibère, romaine, celte, carthaginoise, perse, grecque, maurya. - Prêtre maurya. - Embellissements divers : ajout de quelques effets graphiques sur la quasi-totalité des bâtiments et cartes (diffuse maps, ambient occlusion maps, normal maps, parallax maps, specular maps), ajout de variations spécifiques aux factions sur certains bâtiments.  ## Art/animations : - Naufrages plus réalistes : les bateaux oscillent légèrement avant de couler. - Décollage et atterrissage plus réalistes pour les unités volantes (en principe, il n'y a pas d'unités volantes dans 0 A.D., mais dans _Atlas_ ou en utilisant des code de triche, on peut faire mumuse avec un joli Mustang P-51).  ## Art/cartes : - Nouveau scénario : Gold Oasis 3 - Nouveau scénario : Sahel ## Art/musique et son : - Nouvelle piste d'ambiance maurya : [Karmic Confluence]( https://raw.githubusercontent.com/0ad/0ad/master/binaries/data/mods/public/audio/music/Karmic%20Confluence.ogg) ## Communauté : - Compatibilité Clang/LLVM : 0 A.D. peut maintenant être compilé avec Clang/LLVM - Nouveau nom : _0 A.D. : Empires Ascendant_ est maintenant le nom officiel de 0 AD Partie 1.  - Levée de fonds : la sortie de l'alpha 13 a été l'occasion pour Wildfire Games de mettre en place une levée de fonds pour accélérer le développement du jeu, notamment en ce qui concerne la résolution des problèmes de performances. Une campagne de dons a été mise en place sur Indiegogo, avec un objectif de financement flexible de 160 000$ et une durée de 45 jours. Plus d'informations dans la [section dédiée](#amélioration-des-performances-et-campagne-de-dons). # 0 A.D. Alpha 15 : **Osiris** 0 A.D. Alpha 15 est sortie [le 24 décembre 2013](http://play0ad.com/alpha-15-osiris/). Son nom de code est [Osiris](https://fr.wikipedia.org/wiki/Osiris), dieu principal du panthéon égyptien.  *TL;DR :* C'est probablement sur le plan artistique qu'*Osiris* apporte ses plus gros changements, avec l'arrivée des égyptiens comme onzième faction du jeu. Le gameplay et l'interface utilisateur sont aussi à l'honneur, avec l'ajout de notifications sonores dans l'interface, l'introduction des escarmouches et surtout l'apparition d'un lobby multijoueur. *Osiris* apporte les changements suivants : ## Code/interface utilisateur : - Lobby multijoueur : un lobby (ou salle d'attente) multijoueur, interface permettant aux joueurs d'organiser un match à plusieurs, a été intégré au jeu. Ce lobby repose sur le protocole [[XMPP]] en se connectant à un [[MUC]] donc, situé sur les serveurs de Wildfire Games. La fonctionnalité d'hébergement de match prend en charge aussi l'[[UPnP]] désormais. [](http://play0ad.com/images/news_images/lobby_1.png) - **Nouveau type de match :** escarmouche. Les escarmouches sont comme des scénarios (donc avec des cartes faites à la main, et non générées automatiquement), où les joueurs peuvent choisir les factions avec lesquelles ils joueront. La plupart des cartes utilisées pour les scénarios ont une version "escarmouche". - Notification d'attaque : une notification visuelle (point clignotant sur la carte) et sonore avertit le joueur qu'il est attaqué. - Notification de fin de recherche technologique : une notification sonore signale au joueur qu'une technologie a fini d'être recherchée ou qu'un changement de phase a été effectué. ## Code/gameplay : - **Nouvelle faction :** les [égyptiens ptolémaiques](https://fr.wikipedia.org/wiki/%C3%89gypte_ptol%C3%A9ma%C3%AFque). Le [Design Document](http://trac.wildfiregames.com/wiki/Civ%3A_Ptolemies) complet sur le wiki. En résumé, les égyptiens sont très proches des macédoniens sur le plan militaire : avec leurs machines de guerre et leurs piquiers, ils héritent de la puissance et du savoir-faire de l'armée d'Alexandre en terme de siège et de contre-cavalerie. Ils se rapprochent aussi des carthaginois par leurs capacités à recruter des mercenaires de diverses peuplades méditerranéennes et à utiliser des éléphants de guerre au combat. La possibilité de construire un phare, qui élimine le brouillard de guerre sur l'ensemble des zones maritimes, et de mettre à flots le redoutable [Tessarakontère](https://en.wikipedia.org/wiki/Tessarakonteres), véritable forteresse flottante, devrait leur assurer une quasi-suprématie sur les mers. Sur le plan économique, des bâtiments de base (maisons, dépôts, corrals) gratuits ainsi que de puissantes technologies agricoles devraient leur donner un gros avantage sur les autres factions. Leurs trois héros sont [Ptolémée I^er](https://fr.wikipedia.org/wiki/Ptol%C3%A9m%C3%A9e_Ier) (éléphant de guerre), [Ptolémée IV](https://fr.wikipedia.org/wiki/Ptol%C3%A9m%C3%A9e_IV) (lancier de cavalerie) et [Cléopâtre VII](https://fr.wikipedia.org/wiki/Cl%C3%A9op%C3%A2tre_VII) (archère). Leur merveille est le [temple d'Edfu](https://fr.wikipedia.org/wiki/Temple_d%27Horus_%28Edfou%29). [](http://pix.toile-libre.org/upload/original/1400007814.jpg) - Auras : les auras des temples ont été implémentées (ils soignent maintenant les unités à proximité), les auras des monuments ibères aussi (les unités dans leur champ de vision ont +2 d'attaque tranchante en mélée et +3 d'attaque perçante à distance), ainsi que la plupart des auras des héros. Ces auras ne sont par contre plus visibles au sol, cette fonctionnalité a été retirée temporairement. - Nouvelle unité pour les romains : les auxiliaires de cavalerie légère ("[Sociae Equitis](https://fr.wikipedia.org/wiki/Socii)"). Il s'agit de javelinistes de cavalerie, une unité qui leur faisait défaut jusqu'ici. - Nouvelle restriction de construction pour les tours : celles-ci doivent désormais respecter une distance minimale entre elles. - Ajout d'un ordre escorter (une unité)/garder(un bâtiment). - Mises en garnison facilitées : les navires se déplacent jusqu'à la côte lorsqu'on veut mettre des unités en garnison à l'intérieur, et le point de ralliement d'un bâtiment peut désormais être placé sur ce bâtiment. Les unités nouvellement entraînées y seront automatiquement placées en garnison.  - **Nouvelles technologies :** * _Armure matelassée_ ("Spolas") : l'infanterie gagne 1 point d'armure contre les armes tranchantes, et * _Bouclier contre-plaqué_ ("Aspidiskè" chez les grecs) : l'infanterie gagne 2 points d'armure contre les armes perforantes * [_Linothorax_](https://fr.wikipedia.org/wiki/Linothorax) ("Linothorakes") : l'infanterie gagne 1 point d'armure contre les armes tranchantes, et * _Bouclier renforcé_ ("Aspides" chez les grecs) : les lanciers d'infanterie gagnent 1 point d'armure contre les armes perforantes * _Armure d'écailles_ ("Lorica Squamata" chez les romains): l'infanterie gagne 1 point d'armure contre les armes tranchantes, et * _Revêtement de bouclier en bronze_ ("Chrysaspides" chez les macédoniens, "Chalkaspides" dans les autres factions grecques) : les lanciers d'infanterie gagnent 1 point d'armure contre les armes perforantes * _Cuirasse de bronze_ ("Lorica Musculata" chez les romains) : l'infanterie gagne 1 point d'armure contre les armes tranchantes, mais coûte 10% de métal en plus, et * _Boucliers d'argent_ ("Argyraspides" chez les grecs) : les lanciers d'infanterie gagnent 2 points d'armure contre les armes perforantes, mais coûtent 20% de métal en plus * _"Tradition archère"_: pour bénéficier du talent des archers perses et mauryas, il faut désormais rechercher cette technologie, qui donne 10 points de portée en plus, mais aussi 20% de points de vie en moins et 20% de temps d'entraînement en plus à tous les archers. * _Convois de marchands_ : les charrettes de commerce sont 25% plus rapides * _Transports équestres_ (perses uniquement) : permet d'entraîner des unités de cavalerie depuis des trirèmes phéniciennes - **Nouveaux bonus de civilisation :** * La limite de construction des ambassades carthaginoises passe de 1 à 2, on peut donc en construire deux du même type ou deux différentes (sur les trois existantes). * Les bretons bénéficient du moulin rotatif, comme les gaulois. * Les gaulois ont désormais la taverne, qui donne +10 points de population, et permet de recruter une nouvelle unité spéciale, les [fanatiques nus](https://fr.wikipedia.org/wiki/G%C3%A9sates).  ## Code/moteur : - Gestion des technologies pouvant modifier la vitesse des unités - Gestion de la vitesse relative et de l'expansion des particules ## Code/IA : - Nouvelle version d'_Aegis_. ## Code/Performances : Le travail sur la résolution de performances du jeu initié lors de l'alpha 13 se poursuit, avec une optimisation assez importante du moteur de rendu et un lot d'optimisations mineures liées à l'interface utilisateur. Avec ces améliorations on peut gagner une bonne dizaine de FPS en début de jeu sur certaines machines. Les performances restent cependant très mauvaises en milieu-fin de partie et au cours des combats. ## Art/objets : - **Bâtiments ptolémaïques :** maisons, statues, forteresse, centre ville, temple, dépôt de nourriture, entrepôt, tours, phare (bâtiment spécial, basé sur le [phare d'Alexandrie](https://fr.wikipedia.org/wiki/Phare_d%27Alexandrie)), murs et portes, Temple d'Edfu (merveille), marché (brouillon), forge, port (brouillon), corral, caserne. - **Unités ptolémaïques :** lancier de cavalerie (cavalerie championne), chamelier (cavalerie légère), archer, Ptolémée IV. - Charrette de commerce maurya - Chandragupta Maurya - Différentiation des factions gauloise et bretonne : nouvelles maisons et nouveau marché gaulois, nouvelle caserne et nouvelles tours bretonnes - Diverses améliorations sur les modèles des bâtiments celtiques - Merveille bretonne : Stonehenge - Nouvelles variations pour les temples et les tours carthaginois - Fermes en 3D - Nouvel animal : tigre du Bengale (modélisé et animé)  ## Art/animations : - Nouvelles animations pour les éléphants d'Asie, tigre ## Art/cartes : - Nouvelle carte aléatoire : Mainland. Optimisée pour éviter le lag (arbres espacés, pas d'eau...) - Nouvelle carte aléatoire : Sahel - Amélioration de la vitesse de génération de certaines cartes aléatoires - Carte d'escarmouche exclusive : Vallée alpine  ## Art/musique et son : - Deux pistes d'ambiance pour les égyptiens : [Valley of the Nile](https://raw.githubusercontent.com/0ad/0ad/master/binaries/data/mods/public/audio/music/Valley_of_the_Nile.ogg) et [Ammon-Ra](https://raw.githubusercontent.com/0ad/0ad/master/binaries/data/mods/public/audio/music/Ammon-Ra.ogg) - Une nouvelles piste d'ambiance pour les celtes : [Tavern in the Mist](https://raw.githubusercontent.com/0ad/0ad/master/binaries/data/mods/public/audio/music/Tavern_in_the_Mist.ogg) - Remastering et réinterprétation de nombreuses autres pistes. ## Art/autre : - Ajout de nouvelles citations pour l'écran de chargement. Celles-ci sont [issues de Wikiquote](https://en.wikiquote.org/wiki/Category:Deaths_BCE). Mais ça ne sert à rien, parce que les cartes se chargent tellement vite qu'on a pas le temps de lire :o ## Communauté : - Une plateforme de traduction a été mise en place, pour une internationalisation future de 0 A.D. Les traducteurs peuvent d'ores et déjà contribuer (mais gardez en tête que le jeu est amené à changer beaucoup). - Levée de fonds : voir ci-dessous! # Amélioration des performances et campagne de dons Lors du développement de l'alpha 13, la résolution des problèmes de performances était devenue une tâche prioritaire. L'équipe des développeurs de Wildfire Games avait identifié les principaux problèmes de performances et s'était donnée une série d'objectifs pour les résoudre : * Pathfinder affreusement lent. Principale source de lag. Provoque des ralentissements en milieu-fin de partie, quand le maximum de population a été atteint et que beaucoup d'unités sont sur la carte. Provoque aussi de grands pics de lag insupportables (freeze) lorsque de grosses armées se déplacent ou se combattent. * IA très lente. La réécrire partiellement en C++ pourrait être une solution * `unitAI` lente. là aussi, joue sur les ralentissements en cours de combat. * Moteur de rendu vieillot. Nécessite de passer à OpenGL 2.1, laisser tomber les ARB shaders. Gros travail, qui va conduire à abandonner la prise en charge de vieux GPU. * Rendu de l'eau très lent. Source d'importants ralentissements sur les cartes maritimes. * Code Javascript généralement peu optimisé * Le jeu est monothreadé car le moteur est très ancien. La résolution de ce problème nécessite de résoudre les autres problèmes de perfs d'abord (ce qui est plus facile quand le jeu est en monothread). * La subdivision spatiale n'est pas optimale (je sais pas vraiment ce que c'est, mais apparemment il y en a besoin pour optimiser `AI` ou `unitAI`). Peu de temps après, RedFox, un ancien membre l'équipe de développement de 0 A.D. réapparaît sur les forums, proposant de travailler à la résolution des problèmes de performances du moteur. L'équipe décide d'exploiter au mieux ses compétences poussées en développement [en l'embauchant à plein temps](http://www.wildfiregames.com/forum/index.php?showtopic=17442). RedFox [suggère de nombreuses améliorations](http://www.wildfiregames.com/forum/index.php?showtopic=17274), en plus de [celles qui étaient déjà envisagées par l'équipe](http://www.wildfiregames.com/forum/index.php?showtopic=16991), comme l'implémentation d'un Quadtree pour accélérer le détecteur de collisions, un cache binaire pour les fichiers XML, la réécriture de UnitAI en C++, etc. Redfox publie ensuite sur les forums des [rapports](http://www.wildfiregames.com/forum/index.php?showtopic=17522) [réguliers](http://www.wildfiregames.com/forum/index.php?showtopic=17580) de l'avancée de son travail. Devant un départ aussi prometteur, Wildfire Games décide de mettre en place une levée de fonds via Indiegogo pour pouvoir financer le travail de Redfox plus longtemps. Et à partir de là c'est le gros bordel. Le fundraiser ne donne pas les résultats escomptés. L'objectif minimal (40 000 $ pour payer 6 mois de travail sur les problèmes de performances) [n'est pas atteint](https://www.indiegogo.com/projects/support-0-a-d-an-open-source-strategy-game). Redfox publie son travail sous la forme d'un "megapatch", très difficile à exploiter, l'équipe lui demande de le diviser en plusieurs patchs, ce que Redfox commence à faire. Philip, qui travaille à la migration du projet sur git, place le megapatch sur une branche git afin de faciliter cette tâche. Pendant tout ce temps, un autre contributeur, Tan Kuranes, fait son apparition et publie une poignée de patchs censés améliorer les performances. Il devient difficile pour l'équipe de tester et de valider les patchs. Peu après, les news sur l'avancée du travail de Redfox s'interrompent. L'équipe de développement communique peu sur le sujet, le reste de la communauté s'interroge. On apprendra quelques mois plus tard que Redfox a décidé de ne plus travailler sur le projet, car il a retrouvé du travail ailleurs, et que la période de travail que lui proposait Wildfire Games à l'issue de la levée de fonds lui semblait trop courte. Philip continue à travailler un peu sur la dissection du megapatch de Redfox, mais ayant de moins en moins de temps à consacrer au projet, il finit par arrêter peu de temps après. Résultat : le fundraiser et le travail de Redfox n'ont pas eu les conséquences espérées. La quantité de travail abattu est colossale, mais une bonne partie de ce qui a été produit est quasiment inexploitable. Le projet 0 A.D. se retrouve dans la même situation que lorsque Philip avait travaillé à réécrire le pathfinder jusqu'à ce qu'il n'y ait plus d'argent et qu'il ne puisse plus s'y consacrer à plein temps pour finir le travail. Mais malgré ces péripéties peu encourageantes, le projet continue d'avancer. D'autres membres de l'équipe poursuivent le travail de migration vers git, amorcé par Philip. Wraitii et d'autres contributeurs continuent d'améliorer les performances par petits incréments. La dernière grosse amélioration en date est la mise à jour du moteur javascript, Spidermonkey, de la version 1.8.5 à la version 24. Bien que cette mise à jour n'apporte rien de positif en terme de performances, elle est nécessaire pour la résolution d'autres problèmes critiques (dont des problèmes qui impactent les performances). # 0 A.D. Alpha 16 : **Patañjali** 0 A.D. Alpha 16 est sortie [le 17 mai 2014](http://play0ad.com/alpha-16-patanjali/). Son nom de code, [Patañjali](https://fr.wikipedia.org/wiki/Pata%C3%B1jali), évoque un linguiste indien du III^ème siècle avant J.-C.. [](http://media.moddb.com/images/games/1/11/10298/shipwreckwip.jpg) *TL;DR :* Les grosses avancées de cette version Alpha 16 se situent avant tout au niveau du code. La mise en place de l'internationalisation et la mise à jour de Spidermonkey sont le fruit d'un travail énorme qui s'est étalé sur plusieurs alphas. Même si les bénéfices de la mise à jour du moteur javascript ne se font pas encore sentir pour l'utilisateur final, celle-ci laisse présager de bonnes nouvelles concernant les performances des alphas suivantes. Sur le jeu en lui-même, on peut noter l'implémentation de la cloche du village, un lot de nouvelles technologies et de nombreux changements esthétiques qui améliorent toujours un peu plus l'expérience des joueurs. *Patañjali* apporte les changements suivants : ## Code/interface utilisateur : - **Internationalisation** : la gestion de l'i18n a été implémentée, et des traductions complètes sont déjà disponibles dans 12 langues ! - Nouveau look pour l'interface utilisateur : un redesign complet de l'interface est en cours, et quelques changements ont été intégrés dans cette alpha (principalement esthétiques pour l'instant). _Note: certains boutons ont été déplacés, donc oubliez vos vieux réflexes._ - _Cloche de village_ / _Retour au travail_ : de nouveaux boutons dans le centre-ville permettent de mettre en garnison automatiquement les unités se trouvant à proximité et de les renvoyer au travail ensuite. Cette cloche dispose de deux niveaux d'alerte permettant de mettre en garnison les simples citoyens ou les citoyens-soldats, suivant les besoins. - Gestion centralisée des échanges commerciaux : désormais, la nature et la quantité des ressources à échanger se fait via une fenêtre dédiée, plutôt qu'en assignant manuellement une ressource à chaque marchand  - Gestion des routes de commerce : il est désormais possible de définir des points de passage sur le chemin des charrettes de commerce. - Améliorations cosmétiques diverses : le bouton de héros dispose d'une barre de vie et clignote lorsque le héros est attaqué, et nouveaux curseurs symbolisent l'ajout et le retrait d'un point de ralliement  ## Code/gameplay : - Nouvelle unité spartiate : la cavalerie alliée grecque ("Hippeús Symmakhikós"). Il s'agit de lanciers de cavalerie. Les spartiates se sont également vu accorder les oxybèles. - Réduction de la puissance d'attaque des garnisons : seule l'infanterie à attaque distante augmente le nombre de flèches lancées par les bâtiments. L'intérêt de mettre des fantassins et des cavaliers en garnison s'en trouve considérablement réduit.  - **Nouvelles technologies :** * _Armure de fer_ ("Sidi̱ró Panoplía" chez les grecs et dérivés, "Lorica Ferrea" chez les romains) : +2 d'armure contre les armes tranchantes et les armes perforantes pour tous les héros, mais ceux-ci coûtent 50 points de métal en plus * _Médecins militaires_ : les unités organiques voient leurs points de vie se régénérer lentement (de pair avec les offrandes, qui augmentent de 50% la vitesse de soin des garnisons des temples) * _Logistique romaine_ (romains) : élimine la dégénérescence des camps retranchés et des contrevallations * _Mercenaires {celtes,ibères,italiens} avancés_, suivis de * _Mercenaires {celtes,ibères,italiens} d'élite_ : promeuvent tous les mercenaires celtes, ibères et italiens au rang avancé et au rang d'élite, respectivement, les rendant plus fort au combat, mais moins efficaces pour ramasser des ressources * _Infanterie de citoyens-soldats avancée_, suivie de _Infanterie de citoyens-soldats d'élite_, et _Cavalerie de citoyens-soldats avancée_, suivie de _Cavalerie de citoyens-soldats d'élite_ : technologies similaires pour promouvoir les citoyens-soldats au rang avancé et au rang d'élite, respectivement. * Modification de _Cuirasse de bronze_ et _Boucliers d'argent_ (quatrième paire de technologies d'armure) : ces technologies concernent maintenant uniquement les champions (au lieu de toute l'infanterie) * _Métier à tisser_ : +50% de point de vie pour les citoyennes (apparié avec _Thesmophoria_ introduite dans *Naukratis*) - **Bonus de civilisation :** * Implémentation de deux bonus : ceux apportés par le théâtre grec (+20% d'expansion territoriale pour tous les bâtiments) et le [palais perse](https://en.wikipedia.org/wiki/Apadana) (versement automatique d'une petite quantité de chaque ressource à intervalle régulier). - Nouvelle faction : Les séleucides ont été intégrés dans le jeu, en tout cas pour ce qui est de la partie code et données non-artistiques. Les bâtiments et les unités utilisent actuellement des modèles grecs et perses, certains brouillons d'unités séleucides ont déjà été inclus. Les caractéristiques de cette faction, encore susceptibles de changer, seront développées dans une prochaine dépêche. ## Code/moteur : - **Mise à jour de Spidermonkey** : l'interpréteur javascript utilisé dans le jeu passe de la version 1.8.5 à la version 24. Cette mise à jour est [le fruit d'un gros travail](http://www.wildfiregames.com/forum/index.php?showtopic=17289) de la part d'Yves (un des principaux développeurs de Wildfire Games), qui dure depuis au moins l'alpha 14. Malheureusement elle n'apporte pas le gain de vitesse escompté, elle aurait même parfois tendance à [réduire les performances](http://www.wildfiregames.com/forum/index.php?showtopic=17289&page=5#entry271427) ! Cette mise à jour était malgré tout nécessaire pour plusieurs raisons : - l'équipe ne pouvait pas se permettre de maintenir une version obsolète du moteur javascript, - les nouvelles versions de Spidermonkey apportent des fonctionnalités intéressantes (certaines pourraient aider les développeurs à améliorer les performances), - le travail effectué pour cette mise à jour permettra de mettre à jour Spidermonkey plus facilement par la suite. Des tests ont déjà montré qu'avec la version 26, les régressions de performances introduites lors du passage à la version 24 [disparaissent](http://www.wildfiregames.com/forum/index.php?showtopic=17289&page=6#entry282345). Un travail de mise à jour à la version 31 [est déjà en cours](http://www.wildfiregames.com/forum/index.php?showtopic=18466). Pour les décideurs pressés, trois graphiques comparant les performances du jeu avec les différentes versions de Spidermonkey, dans un replay non-visuel sur la carte Oasis 4 avec quatre IA _Aegis_ (sur 15 000 tours pour le troisième graphique) : [version 24](http://www.wildfiregames.com/forum/uploads//monthly_06_2013/post-7202-0-71037200-1371843265.gif), [version 26](http://www.wildfiregames.com/forum/uploads//monthly_01_2014/post-7202-0-01581800-1389120404.png), [version 31](http://www.wildfiregames.com/forum/uploads//monthly_04_2014/post-7202-0-53293200-1396707010.png). - Implémentation d'une condition de victoire par la merveille, en vue de créer un jour de nouveaux types de matchs (autres que le combat à mort). - Malus de précision variable : le malus de précision des unités à attaque distante dépend désormais de la distance par rapport à la cible. ## Code/IA : - Améliorations et corrections de bugs diverses : _Aegis_ est maintenant plus intelligente, gère mieux ses échanges commerciaux et se débrouille mieux dans les batailles - **Nouvelle IA :** _Petra_. Celle-ci n'est pas vraiment nouvelle puisqu'elle est basée sur _Aegis_ et utilise la même API, mais apporte d'importants changements sur la façon dont elle gère ses ressources. ## Code/Performances : Côté performances, 0 A.D. alpha 16 apporte aussi son lot d'améliorations, dont la principale devrait être une optimisation du calcul de la portée des unités. ## Art/objets : - Bâtiments ptolémaïques : marché, port, [Klēroukhia](https://fr.wikipedia.org/wiki/Cl%C3%A9rouquie). - La Klēroukhia (colonie militaire) remplace maintenant le camp de mercenaires chez les égyptiens. Alors que ce dernier était une sorte d'ambassade/caserne pouvant être construite en territoire neutre, la colonie est une sorte de camp militaire doté d'une influence territoriale, à mi-chemin entre le camp retranché romain et le centre-ville. Il est à peu près sûr que les séleucides disposeront de cette même colonie militaire ; en revanche, les égyptiens pourraient revenir au camp de mercenaires dans les futures versions. - Unités ptolémaïques : bateau de pêche, piquier, citoyenne, mise à jour des éléphants de guerre, prêtre, birème, trirème, quinquérème, navire marchand, Cléopâtre. - Nouvelle merveille carthaginoise : le [Mausolée d'Atban](https://fr.wikipedia.org/wiki/Mausol%C3%A9e_libyco-punique_de_Dougga) est remplacé par le [temple de Ba'al Hammon](https://fr.wikipedia.org/wiki/Ba%27al_Hammon) - Nouveaux modèles et variations : tours romaines, dépôts de nourriture gaulois et carthaginois, corral ibère - Ornements : tentes, épaves de bateaux - Animaux : faucon, crocodile du Nil, loup d'Eurasie   de niveaux basique, avancé et élite, cavaliers de la garde royale, Ptolémée IV, éléphants de guerre. Petit jeu n°1 : faut trouver oukissont :o Petit jeu n°2 : faut trouver lesquels sont absents :o") ## Art/animations : - animaux : requin, grand éléphant d'Afrique, loup, oiseaux en vol.  - les animations pour les formations tortue et syntagme sont prêtes. Dis gon b gud :) Cependant il s'agit d'une modification purement cosmétique, les formations ne sont pour l'instant pas exploitables en situation de combat.  ## Art/cartes : - Nouvelles escarmouches : Rivière de savane, Baie de l'Acropole, Bactriane. ## Art/musique et son : - Nouvelle musique d'ambiance celte : [Water's Edge](https://raw.githubusercontent.com/0ad/0ad/master/binaries/data/mods/public/audio/music/Water%27s_Edge.ogg). ## Communauté : - L'équipe de développement a [mis en place](http://www.wildfiregames.com/forum/index.php?showtopic=18355) un serveur [Jenkins](https://fr.wikipedia.org/wiki/Jenkins_%28informatique%29). Le rôle de cet outil est de tester automatiquement la compilation et le fonctionnement du logiciel dans diverses configurations après un nouveau commit. Cela permettra aux développeurs de repérer rapidement les commits qui introduisent des bugs critiques dans des configurations exotiques et de les corriger avant que de nouveaux changements basés sur le code buggué ne soient faits. - Comme pratiquement tous les jeux libres ici bas (100% libres, ou du moins qui tentent de l'être :/ ), 0 A.D. souffre de problèmes de saioukonafoutulaisources quand vient le temps de réutiliser les fichiers de travail d'un modèle, d'une texture, d'une animation, d'une musique, etc. La plupart des données artistiques issues des vieilles alphas sont dépourvues de sources. Pour remédier à ce problème, les développeurs ont mis en place un dépôt _Art_source_ où les contributeurs de données artistiques sont invités à déposer les sources de leurs créations. # Conclusion : ## Le point sur les performances javascript Les mauvaises performances de la version 24 de Spidermonkey ont désagréablement surpris les développeurs du jeu. Celles-ci sont dues au fait que l'interpréteur javascript de Mozilla a surtout été optimisé pour accélérer le code javascript typiquement utilisé par les sites web, qui diffère beaucoup de celui utilisé dans le jeu. Des régressions de performances sur certains types de code sont donc apparues dans Spidermonkey sans que personne ne s'en soucie. Les développeurs de Spidermonkey ont depuis été notifiés de ces régressions et les ont corrigées. Les développeurs de 0 A.D. testeront désormais les versions de développement du moteur javascript, et collaboreront avec Mozilla pour s'assurer que les futures versions de Spidermonkey soient bénéfiques aux performances du jeu. ## Qu'attendre de 0 A.D. alpha 17 ? - Le prochaine version du moteur javascript Spidermonkey devrait sortir [en juillet](https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey). Elle sera donc très certainement incluse dans l'alpha 17. Cette fois, le nouveau moteur javascript devrait apporter des améliorations de performance significatives. - De nouvelles améliorations d'interface, les développeurs continuant à travailler sur le nouveau GUI - Un lot de nouvelles contributions artistiques pour la faction séleucide, qui devrait être annoncée officiellement - _Petra_ devrait s'améliorer pour devenir l'IA par défaut. ... et plein d'autres choses ! \o/ ## Contribuez ! Quel que soit votre domaine de compétences, vous pouvez contribuer à 0 A.D. . Il y a de la place pour tout le monde ! \o/ - Vous connaissez le C++ ou le javascript ? Vous avez des compétences en programmation dans le domaine des jeux 3D ? Aidez à améliorer le code ! - Vous maîtrisez Blender ? Vous pouvez dessiner des textures, concevoir des modèles et les animer ? Proposez vos embellissements ou vos icônes, animez la faune et les soldats, ou participez à la modélisation de la faction séleucide ! - Vous jouez d'un instrument acoustique ? Vous composez de la musique traditionnelle ou symphonique ? Contactez Omri Lahav et contribuez à la bande originale de 0 A.D. ! - Vous êtes plus branchés MAO ? Vous pouvez créer, enregistrer et mixer des sons ? Aidez à donner vie aux cités antiques et aux terres vierges de 0 A.D. ! - Vous étudiez les langues anciennes ? Vous connaissez la prononciation de mots latins, grecs, hébreu, sanskrits ou gaéliques ? Aidez à donner de la voix aux unités du jeu ! - Vous êtes passionné d'histoire antique ? Venez discuter sur [les forums](http://www.wildfiregames.com/forum/) et proposer vos améliorations en matière de gameplay ou de graphisme ! - Vous êtes plutôt calé géo ? Familiarisez-vous avec l'éditeur et concevez des cartes réalistes et fun à jouer ! - Vous parlez plusieurs langues dont l'anglais ? Participez à la traduction et à la documentation ! - Vous savez compiler un logiciel ? Téléchargez la version [SVN](http://trac.wildfiregames.com/wiki/BuildInstructions) et profitez des nouvelles améliorations et des nouveaux bugs avant tout le monde ! \o/ - Vous utilisez un OS kipulapomme ? Aidez les développeurs à faire des binaires stables pour MacOS ! - Vous voulez aider à faire connaître 0 A.D. ? Vous aimez faire de jolis screenshots ? Participez à l'élaboration de dépêches de qualitaÿ sur LinuxFr.org ! \o/