Une première version alpha

La version alpha1 vient d’être publiée, c’est une version de développement qui implémente la majeure partie des fonctionnalités annoncées, mais qui n’est pas fonctionnelle dans le sens où tous les anciens appels n’ont pas étés modifiés et que le jeu n’est pas utilisable en tant que tel.

Pour les développeurs, c’est l’occasion de découvrir la refonte. Les nouveaux développements sont intégralement orientés objet, la gestion des planètes et des ressources en sont de parfaits exemples.

Le code se trouve sur Github, sur le dépôt dédié au projet.

Un peu d’actu….

Pour donner quelques nouvelles à propos de l’état du développement de XNova:Legacies, je vous donne ci-dessous la liste des tâches avec la mise à jour de leur état de réalisation. J’y ai ajouté la refonte de la gestion de l’affichage des pages qui n’était pas présente. Je l’ai jugé nécessaire pour simplifier l’avancement et permettre de nettoyer le code “sale” à réécrire dans les versions à venir.

  • Support des grands nombres [100% réalisés, testé]
  • Programmation événementielle [100% réalisés, testé]
  • Gestion des planètes [100% réalisés, testé]
  • Mise à jour des ressources [100% réalisés, testé]
  • Constructions de bâtiments [100% réalisés, en phase de tests]
  • Constructions de vaisseaux et défenses [100% réalisés, en phase de tests]
  • Marquage des méthodes obsolètes [100% réalisés]
  • Accès aux données, passage sous PDO [90% réalisés, en phase de tests]
  • Gestion d’utilisateur [100% réalisés, en phase de tests]
  • Refonte de la gestion des templates [100% réalisés, testé]
  • Compatibilité ascendante [75% réalisés]
  • Documentation de code [20% réalisés]
  • Nettoyage du code obsolète [40% réalisés]
  • Reprise des templates [20% réalisés]
    • Récap des ressources en haut de page [OK]
    • Overview [OK]
    • Bâtiments
    • Chantier spatial
    • Défenses
    • Laboratoire
    • Flottes
    • Login
  • Reprise de l’installeur [0% réalisés]

Le nouveau moteur de templates

Cette nouvelle méthode pour générer des pages s’appuie très fortement sur PHP lui-même. Le code qui sera présent dans les nouveaux templates pourra contenir du PHP et tirer parti de ses avantages, comme l’utilisation de conditions et de boucles, ou bien de permettre de mieux protéger vos pages en échappant les caractères spéciaux du html contenu dans les données affichées, ce qui en majeure partie n’était pas le cas. Plus besoin de développements particuliers pour modifier une page, tout se fait dans le template, vos fichiers sources resteront tels que vous les aurez téléchargés et seront donc faciles à migrer d’une version à l’autre.

Autre particularité, ce nouveau moteur de génération de pages utilisera un fichier de définition de layout, qui permettra à ceux qui souhaitent ajouter une nouvelle fonctionnalité au jeu de ne pas modifier le code source standard. Cette fonctionnalité est inspirée des layouts de Magento, elle peut être comparée aux Partial Views du Zend Framework, c’est une fonctionnalité qui a été reprise de One.Platform et simplifiée.

Mais encore…

Lors de la sortie de la première version beta, un univers de jeu sera mis en place. Il permettra de tester en conditions réelles XNova:Legacies et de corriger les éventuels bugs avant de finir de stabiliser le code pour obtenir une version plus robuste.

Plus tard, d’autres refontes seront programmées. Un nouveau design, les alliances et la galaxie pourraient en être les axes principaux.