Galactae: Space Age Dawn

Un jeu de stratégie spatiale sur navigateur aux gameplay divers

a marqué ce sujet comme résolu.

Logo

Introduction

Salut à tous ! Je suis Elanis alias Axel, j’ai 19 20 21 ans, j’ai fait du développement mon hobby depuis maintenant quelques années. Je suis ici pour vous présenter ce qui est actuellement le projet le plus important que j’ai entrepris, il se nomme Galactae: Space Age Dawn.

Galactae kesako ? C’est une marque de chocolat ?

Galactae est un jeu de stratégie en ligne sur navigateur, où vous incarnez un des 3 types de dirigeants politiques proposés afin d’étendre l’influence de votre nation dans la galaxie. Selon le type de gouvernement que vous dirigerez, les options de conquêtes et de colonisations, mais aussi le moral de votre peuple ou l’état économique de votre nations, seront plus ou moins difficile à gérer. C’est sur un principe de grande diversité de gameplay que le jeu est conçu.

Choix du gouvernement
Choix du gouvernement

En effet, il existe de nombreux jeu de stratégie en ligne sur navigateur ou application mobile mais le gameplay de la plupart d’entre eux est répétitif et simpliste. C’est l’une des différences que je souhaite développer dans Galactae.
Cette envie de développer un gameplay riche à poser un problème sérieux, en effet, il faut avoir un comportement proche de la réalité mais il faut pas pour autant multiplier les détails superflus qui perdraient l’utilisateur. J’ai du donc abandonner au passage certaines de mes idées - telles que les besoins en eau ou nourriture - pour un système plus simple, par exemple, maintenant seul la nourriture est présente, elle est théorique (aucun chiffre affiché) et ne fait qu’influencer le moral de la population.

Vue de la planète
Vue de la planète

Les flottes aussi n’echappent pas à ce principe, les vaisseaux seront tous dans une certaine mesure customisable par le joueur: les moteurs, armes et génerateurs devront être appliqué sur une "coque" choisie parmis les differents types de vaisseaux. Mais attention, n’avoir qu’un seul type de vaisseau n’est pas la solution, chaque type a sa spécialité: defendre les autres vaisseaux, attaquer, piller, espionner, etc

Creation de vaisseaux - Panel en construction
Creation de vaisseaux - Panel en construction

Afin d’augmenter les possibilités du jeu, un arbre de recherche complet a été mis en place et continuera a évoluer à travers les versions. Vous y débloquerez enormément de choses allant de l’optimisation de la production de ressources aux moteurs interstellaires en passant par differentes recherches de la physique actuelle (Ex: Physique Quantique).

Panel de recherches
Panel de recherches

Il y’a aussi une carte galactique composée de plusieurs dizaines de milliers de systemes et centaines de milliers d’astres (uniquement planètes et étoiles pour le moment).

Map globale
Map globale
Map des systemes
Map des systemes

Histoire de la conception du jeu

Parce que chaque projet possède son lot d’histoires, Galactae n’échappe pas à la règle. Les premières versions du jeu ont vu le jour en juin 2016 alors que je commençais mon apprentissage de NodeJS, j’ai souhaité développer mes connaissances sur quelque chose de concret. C’est donc ainsi que de fil en aiguille, sont nées les premières fonctionnalités du jeu (Chat, production de ressources, premiers bâtiments) avec l’arrivée de l’Alpha 0.1.0 en juillet 2016, mais suite à cette version le développement du jeu s’est arrêté.
C’est en décembre 2016, alors que je devais rendre un projet de web design en Licence d’informatique, que j’ai décidé de créer le site vitrine dédié à ce projet qui était abandonnée, puis par la suite, j’ai décidé de le reprendre en main et de pousser plus loin le développement. Durant les mois qui ont suivit, les versions se sont enchainées ainsi que les ajouts de fonctionnalités telles que les créations d’unités, les recherches, la refonte complète de l’interface utilisateur, etc .

Technologies utilisées

Galactae utilise differentes technologies afin de fonctionner, la génération du site en lui même ainsi que de la page de jeu sont faites avec du PHP. Quant au serveur du jeu, c’est un serveur NodeJS lié une base de données PostgreSQL.
Le client web, lui est crée en HTML5/CSS3/JS. Le seul framework utilisé au niveau client est socket.io.

Il y a aussi une version mobile en développement qui est basé sur le framework Apache Cordova et qui pour l’instant est en alpha test sur Android seulement. Il y’a de grandes chances que cette version mobile (crée en 0.3.5) soit revue au complet.

L’équipe de développement

Plusieurs personnes m’ont rejoint durant l’alpha afin de m’aider à tester et un ami graphiste m’a aidé a créer les maps des planètes et à améliorer mon niveau sur Photoshop. Je souhaite les remercier, car ils m’ont donné envie de pousser mon projet au delà de ce que je pensais possible pour quelqu’un de seul. Hormis ces aides précieuses, je suis seul à travailler sur Galactae (mais c’est plus un choix qu’une contrainte).

Trailer (Francais)

Liens utiles

Site Officiel
Reddit
Twitter
Devblog
Bug Tracker
Discord

Merci d’avoir lu, et n’hésitez pas à répondre au sujet si vous avez des questions/remarques.

+8 -0

Bonjour à tous !

Le travail a légèrement ralenti avec la reprise des cours mais voici les principales nouveautés des dernières semaines:

Le Portail

Depuis la version 0.2, le portail d’accès aux différentes galaxies (serveurs) était très simpliste. Une nouvelle interface vient donc de faire son apparition, plus complète.

Nouveau portail

Les maps

Après plusieurs mois d’attente, la première version des différentes cartes du jeu a fait son apparition. Elles sont au nombre de 4, la carte la plus "dézoomée", est la carte galactique, elle est composée de 4 quadrants, chaque quadrant est découpé en 13 à 20 secteurs, dans lesquels sont répertoriés les systèmes solaires.

Aperçu des cartes

Au niveau composition des étoiles et des planètes, j’ai suivi globalement les chiffres donnés par la NASA et d’autres instituts de recherche pour notre galaxie. Les seules exceptions sont les objets stellaires rares tels que les trous noirs et les supergéantes (rouge et bleues) dont la probabilité d’apparition a été boostée étant donnée la faible population de systèmes stellaires du jeu par rapport à la vraie galaxie (environ 45000 contre environ 200 à 400 milliards en réalité). Pour ce qui est des systèmes à étoiles multiples, la même règle a été appliquée.

Rééquilibrage des versions

Après quelques réflexions, certaines tâches principales ont été deplacées entre les versions afin que la charge de travail soit équivalente. Vous pouvez voir les tâches publiques attribuées à chaque version ici: https://bugs.elanis.eu.

Merci à tous ceux qui me suivent et me soutiennent !

Ca arrive doucement mais sûrement, ne t’inquiètes pas :D

Le truc, c’est qu’avant de passer en ouvert au public, je souhaite que les combats soient disponibles (quitte a les améliorer par la suite) ainsi que quelques autres tâches secondaires, ca sera une version réellement jouable. Pour l’instant, malgré le boulot qui a été fait, on fait vite le tour sans avoir d’autre interactions avec les autres joueurs que le chat :p

+0 -0

Bonjour à tous !

Nous voici pour la news de début novembre, où je vais présenter les ajouts et améliorations du mois passé.

Sécurité, Sessions, Privilèges et maintenance

Le mois d’octobre fut le mois de la sécurité, en effet, de nombreuses mises à jour on portées sur la sécurité afin de supprimer un maximum de failles, mais aussi de glitchs dans le jeu.

Ce mois a vu aussi une restructuration quasi complète de la base de donnée utilisateur, les privilèges accordés à chacun sont beaucoup plus maniables ce qui me permettra facilement d’accréditer des modérateurs. Cette restructuration a permis aussi des améliorations de la rapidité et de la sécurité du site.

Le système de maintenance a été mis en place, maintenant, les serveurs n’acceptent un joueur que s’ils ne sont pas en mode maintenance (logique) ou si ce joueur est whitelisté. Ces ajouts m’ont permis d’ouvrir le portail au public, avec l’ajout prochain des pages telles que le forum, le support, etc, la communauté pourra commencer a se préparer à l’ouverture du premier serveur.

Interface

De nombreux bugs d’interfaces ont été résolus tels que les tooltips (bulles d’informations) qui étaient partiellement invisibles.

La plus grande avancé de l’interface ce mois-ci reste la transformation des boutons sur les bords de l’écran en barres de taches en bas de l’écran.

Nouvelle UI

L’amélioration du design responsive est aussi une priorité de la 0.5 (dont le développement est toujours en cours), ainsi le site mobile et l’application mobile sont de plus en plus jouables. Le but étant de rattraper la jouablité de la version pc d’ici l’ouverture en bêta public.

Cette news est déjà terminée mais j’espère en refaire une d’ici quelques semaines avec les interfaces de créations d’unités et de flottes, et bien plus encore …

N’oubliez pas que vous pouvez retrouver à tout moment la roadmap à l’adresse: https://bugs.elanis.eu

Pour ceux qui souhaitent s’inscrire, et être prévenu lors de l’ouverture de la bêta, ca se passe par là: Inscription

Merci à tous ceux qui me soutiennent !

PS: la bêta ouverte approche, il ne reste qu’environ 110 taches … Peut-être une ouverture pour noël si je bosse bien ? :D

+0 -0

Bonjour à tous !

Déjà 3 mois depuis ma dernière news par ici, ca passe très vite, il y’a eu beaucoup de travail supplémentaire, ce qui a retardé la bêta de quelques mois, mais on est enfin sur la dernière ligne droite !

Je vous présente donc le trailer (VF) pour la béta de Galactae:

Une version anglaise est aussi mise en ligne sur la même chaine youtube.

On se retrouve dans la prochaine news pour la date finale de bêta ouverte, ou plus bas si vous avez des questions sur le projet d’ici le prochain post ;)

Merci beaucoup @Ithms, ca fait plaisir ! En effet, ca m’a pris plusieurs jours de suite à tout realiser.
@Theo: Mince :/ Je pensais avoir testé hier après avoir fait le fix en même temps que l’inscription. Je regarde ca vite.

EDIT: c’est fix, juste une virgule qui embêtait le monde :D

+0 -0

Bonjour Bonjour !

Cela fait déjà 10 mois sans message ici, 1 an depuis la dernière vraie news. Le temps passe très (trop) vite. Il est temps que je vienne apporter des nouvelles.

Le projet n’est pas mort, je vous rassure, les news sont plus régulières (enfin, j’essaie :o) sur le Twitter officiel, je tenterai de faire suivre aussi ici les news.

Pour ce qui est du projet en lui même, j’ai tout d’abord eu une période où les mises à jour ont diminuées, puis j’ai passé beaucoup de temps sur du refactoring, en effet, on approche des 2 ans de dev' consécutifs et certaines parties du code commençaient à mal vieillir, ou ne plus me plaire. Voici un petit résumé des derniers mois:

Details du refactoring

Pour parler rapidement des details du refactoring, j’ai retiré jQuery du jeu (ce fut long et fastidieux …), j’ai amélioré mes process de mise en production afin de compresser automatiquement tout le contenu et ainsi grandement diminué la taille du jeu. Pour continuer dans l’optimisation du temps de chargement, j’ai ajouté un cache client contrôlé par une PWA (progressive web app), ce qui devrait éviter aux utilisateurs mobiles de perdre leur forfait à chaque chargement du jeu :D

Ensuite, il y a eu de nombreuses améliorations de l’architecture du client/serveur, du process de développement (tests unitaires, contrôle de qualité, etc.), etc.

La carte

La carte a été pour la 3ème fois refondue, pour une version, qui je l’espère sera définitive (à quelques modifications mineures près).

Map globale
Map globale
Map des systemes
Map des systemes

Recherches

Les recherches ont été réorganisées afin que les liens ne croisent que rarement.

Arbre des recherches
Arbre des recherches

Mouvements de vaisseaux

A aussi été ajouté, le principe de mouvement des flottes.

Mouvements de flotte
Mouvements de flotte

La Bêta

Et là on arrive au sujet qui fâche: la bêta a pris énormément de retard sur la date originelle (automne 2017) et le report (printemps 2018). Il y a plusieurs raisons à cela: tout d’abord la baisse de productivité que j’ai eu pendant plusieurs mois au niveau de l’été, ensuite la plus grande raison, les tâches supplémentaires (ou celles à refaire) que j’ai ajouté au fur et à mesure du temps et enfin le fait que j’ai légèrement sous-estimé une partie du travail.

Je ne referais donc pas l’erreur d’estimer une date de sortie, on peut néanmoins dire qu’il me reste, au moment de l’écriture de cette news, un peu moins de 30% de la version bêta 0.6 à faire soit environ 45h sur la roadmap, qu’on va plutôt arrondir à 60h.

Vous pouvez voir les détails de la roadmap de la 0.6 ici: https://bugs.dysnomia.studio/versions/4

Dernières tâches majeures

Les tâches majeures qu’il me reste à faire sont les combats et les tutoriels. Ces deux groupes de tâches représentent environ 60% du travail, le reste étant du peaufinage ou du débug.

Conclusion

Je souhaite encore remercier tous les alpha-testeurs qui sont mon moteur après tout ce temps, mais aussi toutes les personnes qui suivent le projet de près ou de loin.

A la prochaine, pour de nouvelles news ! (j’espère ne pas attendre 10 mois cette fois-ci pour donner signe de vie :D )

PS: j’ai mis à jour le post original avec toutes ces informations pour les nouveaux qui nous rejoindront.
PS2: les inscriptions sont toujours ouvertes et les serveurs bloqués jusqu’à la bêta.

+2 -0

Bonjour à tous !

Petite news pour présenter ce qui a été fait depuis la dernière news - soit environ 1 mois.

Le refactoring continue …

Je continue le refactoring comme exprimé dans la dernière news, tout ça ayant pour but de sortir des mises à jour régulières une fois la bêta en route (simplification des process, templates génériques, etc). L’un des axes de progrès que j’ai ajouté courant janvier est les librairies partagées entre le client et le serveur.

Fin du travail sur les mouvements

Il manquait quelques fonctionnalités concernant les mouvements lors de la dernière news notamment la recharge de carburant des flottes, il a donc été ajouté début janvier et les alpha testeurs ont pu ainsi me remonter les quelques bugs qui tournaient autour des mouvements, ceux-ci sont donc maintenant complétement fonctionnels !

Les listes de flottes

Afin de s’adapter à certaines fonctionnalités existantes (construction d’unités, mouvements, etc) et se préparer aux combats à venir, j’ai revu l’interface qui liste les flottes et leurs contenus vers une interface plus complète:

Liste des flottes
Liste des flottes

Le futur

Les objectifs à court terme sont de finir les sous-interfaces de la liste des flottes (tous les boutons que l’on peut voir sur le screen précédent). L’objectif suivant sera de passer aux combats.

Conclusion

Voilà qui est fini pour cette news, je ne peux toujours pas donner de date exacte de bêta, mais il faut savoir que quand celle-ci sera disponible, le jeu pourra être dynamiquement mis à jour et bien sûr sera suffisamment jouable pour ne pas avoir à attendre les mises à jour :)

A la prochaine !

+2 -0

Bonjour à tous !

Voici venue la news de mars …

Refactoring, Tests, Optimisations et bien plus !

Le refactoring continue, je ne vais pas non plus répéter ce qui a été dit, mais les actions principales tournent autour de la qualité du code et la simplification du développement pour le futur.

J’ai aussi changé le principe de communication client-serveur pour forcer le websocket à la place du polling et en ai profité pour supprimer des dépendances inutiles sur le serveur, toujours dans un but de légèreté et rapidité.

Chose à noter, j’ai commencé à migrer mes projets vers postgresql pour des raisons de rapidité de traitement et de légèreté sur le système en moyenne meilleures que sur MongoDB. Galactae migrera aussi surement durant le mois de mars.

Listes des flottes

Tel qu’annoncé dans la précédente news, les sous-interfaces de la liste des flottes ont été développées. Ainsi de nouvelles fonctionnalités ont vues le jour: renommage de flotte, transfert d’unités entre les flottes, fusions de celles-ci et enfin transfert de carburant. Il reste donc les améliorations d’unités existantes, le recyclage d’unités et enfin la gestion la création/éditions de tactiques de flottes.

Note: les prochains screens sont des interfaces qui peuvent changer avec le temps.

Renommage des flottes
Renommage des flottes
Transfert de carburant
Transfert de carburant
Transfert d'unités
Transfert d'unités
Fusion de flottes
Fusion de flottes

Les combats

J’ai aussi commencé à travailler sur le système de combats, partie serveur, donc la simulation des combats. Je n’ai pas d’échéance planifiée pour les combats, mais une fois ceux-ci rodés, la bêta sera très proche.

Fonctionnement des combats

Le fonctionnement prévu des combats sera le suivant: chaque flotte aura des tactiques de combats préparées (par défaut ou choisies par l’utilisateur); qui permettront notamment de cibler prioritairement tel ou tel type de vaisseau et ce pour chaque type de vaisseau.

Exemple: Le joueur choisira que les croiseurs légers visent en priorité les chasseurs puis les autres vaisseaux.

Ainsi une stratégie pourra permettre à une flotte de battre plus facilement un certain type de flotte mais pas forcement un autre. Comme vous pouvez le remarquer, c’est un autre moyen de pousser la diversité de gameplay.

Serveur mail

Le serveur mail de Galactae a été complètement mis en place (enfin !) et des tests antispam ont été réalisés afin de permettre de passer au maximum les filtres de courrier indésirables. Ainsi, vos mails de confirmations, changement de mots de passes et mêmes les newsletter passeront sans problème dans vos boites de réceptions :)

Suite des tests

L’alpha fermée est pour l’instant suffisante pour tester l’ensemble des fonctionnalités du jeu. Néanmoins, une fois les combats et les tutoriels achevés, il y’a de grandes chances qu’une bêta fermée d’une durée d’une à quelques semaines soit lancée avant l’ouverture au grand public afin de prévenir les derniers problèmes. Je partagerais surement un formulaire de recrutement dédié à cette bêta fermée dans une prochaine news.

Conclusion

Le nombres de tâches restantes est passé en dessous de la barre de 30 tâches (contre environ 40 le mois dernier). Étant donné mon temps libre, la bêta avance doucement mais surement.

Je souhaite encore remercier tous ceux qui soutiennent le projet, notamment les nouveaux venus sur le discord (https://discord.gg/c8aARey); mais aussi le staff de ZdS pour le tweet de vendredi (https://twitter.com/ZesteDeSavoir/status/1101414523821584387) qui m’a fait énormément plaisir à lire et m’a donné encore plus d’énergie pour travailler sur le projet.

Merci à tous d’avoir lu et à la prochaine !

+1 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte