J'ai fait un truc pendant mes vacances (enfin, à la fin de ma semaine de congé) pour garder la main en PHP et comme le rendu est fonctionnel, je me suis dit "pourquoi pas le mettre quelque part". J'avais un VPS à 2€ qui traînait, alors bon (du coup c'est pas une bête de course hein, je suis pas sûr que ça tienne 10 utilisateurs)...
Il s'agit d'un jeu "solo en ligne" (en fait je pensais à une possibilité d'échange entre les joueurs) mêlant tour par tour (pour les combats) et temps réel (pour le farm), largement inspiré par Battlestar Galactica (sans en reprendre les contenus soumis aux droits d'auteurs) réalisé en une vingtaine d'heures.
Vous êtes à la tête d'une flotte en fuite, constituant les derniers survivants de l'Humanité. Vous commencez le jeu attaqué par une flotte ennemie et vous devez sauter (jumper, par PRL/FTL) hors du secteur où vous êtes. Vous avancez dans la préparation du saut lorsque vous attaquez l'ennemi (qui contre-attaque en retour ou pas).
Vous pouvez sauter lorsque vous avez assez de carburant et que le chargement du moteur PRL est complet. Cependant, même si vous pouvez sauter, il faut attendre que la synchronisation avec la flotte soit finie à 100% pour sauter sans risquer de perdre un vaisseau lors de l'opération.
Lorsque le secteur est calme ou "pacifié", vous pouvez réparer vos vaisseaux, en produire (si vous avez assez de matériaux) et laisser vos vaisseaux miner les astéroïdes et planètes à proximité. Toutes les heures, des ennemis peuvent sauter dans votre secteur (environ 3% de chances), et lors de votre prochaine connexion vous devrez les combattre.
Bon, ça a été fait en une vingtaine d'heures, quasiment sans javascript (donc niveau interactions, on a vu mieux ^^), quasiment sans design (j'ai fait ce que j'ai pu pour rendre le truc potable mais j'ai pas la fibre artistique) et sans explication ingame... De fait, c'est même pas une alpha, c'est vraiment juste un truc posé là comme ça. Mais si je ne le fais pas (et que je dis pas que je l'ai fait) ça va encore être un truc qui va rester dans un coin de mon PC, qui n'avancera pas et qui ne servira jamais.
J'ai au départ pensé à un projet très complet : le niveau de moral influerait sur la flotte, il y aurait des maladies, un échange entre les flottes des différents joueurs (mais pas d'attaques entre elles), un système politique avancé (avec élections, différents types de société, différents courants qui amèneraient des bonus/malus différents), un système de choix de la difficulté (prévu dans le modèle et pris en compte pour le premier combat, mais pas d'interface pour le régler, vous passez directement d'un secteur "facile" à "excessivement hostile" ^^), un système de reconnaissance du secteur avant de jumper, la famine, la formation de personnel (prévu dans le modèle mais non implémenté en l'état), la suppression de civils/staff lorsqu'un vaisseau prend des dégâts, le transbordement de civils/staff d'un vaisseau à l'autre, un impact sur les capacités du vaisseau si le staff n'est pas complet, la possibilité de défendre spécifiquement un ou plusieurs vaisseaux, et tout un tas d'autres choses que je n'ai pas eu le temps d'implémenter.
Alors voilà, c'est livré "as is", et sachez que si vous perdez tous vos vaisseaux, c'est fini, point, vous pouvez recréer un autre compte ^^
Et une fois/si j'ai un truc qui tient environ la route, je pense potentiellement le publier sous licence libre. Il n'y a pas beaucoup de code orienté jeu qui soit libre, particulièrement en PHP (alors qu'il y a beaucoup de jeux PHP/navigateurs).
Pour ce mini-projet j'ai utilisé Doctrine, Smarty et PEAR-HTTP, c'est tout.
Et si vous voulez me dire que c'est de la merde, vous savez où me contacter ^^
(oui, je publie ça un Dimanche soir histoire de passer inaperçu :p)