Aller au contenu principal

Elemental Fracture, mise à jour Marla Server 2.0

· 6 minutes de lecture
Brendon (Doobs)
Responsable du projet

Salut à tous, Doobs à l'appareil ! Quelle aventure. Avant d'entrer dans le vif du sujet, disons-le tout de suite : oui, je sais, j'avais dit six heures. Il se trouve que, quand on arrache la plomberie pour la remplacer, on découvre parfois quelques fuites supplémentaires en chemin. Mais après ce qui a ressemblé à un cycle sans fin où réparer une chose en cassait une autre, je suis heureux de vous annoncer que tout est en ligne et fonctionne mieux que jamais. Cette mise à jour est énorme, à tel point que je dépasse la limite de caractères de Nitro. Nous avons refondu l'infrastructure, renforcé la sécurité, amélioré l'efficacité des serveurs et ajouté une bonne dose d'automatisation. Ah, et j'ai glissé quelques améliorations de confort côté back-end pour me faciliter la vie.

Nouveautés et améliorations

1. Dites bonjour à Marla 2.0

Marla est désormais entièrement intégrée au système ! C'est toujours un travail en cours (comme nous tous, non ?), mais je pense qu'il est temps de considérer officiellement cette version 2.0 comme terminée. Si vous avez des idées de fonctionnalités ou d'ajustements, dites-le-moi. Elle est là pour vous simplifier la vie, et je veux continuer à l'améliorer en fonction de vos besoins.

2. Sentinel : en ligne.

Celle-ci s'adresse à notre staff, mais elle pose aussi les bases de ce qui arrive (pas de spoilers, désolé, il faudra continuer à lire !). Le système Sentinel, tant attendu, est désormais actif et constitue officiellement la colonne vertébrale de notre suivi des joueurs et de la gestion des accès aux serveurs. Ce système apporte une structure et une supervision qui manquaient cruellement, et rend les choses plus justes et plus transparentes pour tout le monde. Voici ce qu'il fait :

  • Journalisation de l'activité des joueurs, qui enregistre les premières connexions et conserve un historique des connexions.
  • Contrôle des accès, qui donne aux administrateurs une manière structurée de gérer permissions et restrictions.
  • Journalisation sécurisée des actions, qui garantit que toutes les interactions sont enregistrées, pour rester responsables et transparents. Pour les plus soucieux de leur vie privée, voici exactement ce qui est collecté :
  • Nom d'utilisateur (celui de vos débuts sur Spellbreak)
  • Adresse IP
  • Horodatage de la première connexion Rien de plus. Aucun message privé, aucun suivi secret de vos autres habitudes de navigation (peu m'importe le nombre d'heures que vous passez sur YouTube à regarder des vidéos complotistes). Deuxième question, maintenant : « ces données sont-elles à risque ? » Honnêtement ? Oui. Toute interaction en ligne comporte un certain niveau de risque, qu'il s'agisse d'un jeu, de votre banque ou des réseaux sociaux. Les seules données vraiment sûres sont celles stockées hors ligne ou qui n'existent pas. Cela dit, j'ai mis en place des garde-fous pour limiter l'exposition :
  • Chiffrement, toutes les données collectées sont chiffrées.
  • Accès restreint, seuls les comptes disposant de privilèges élevés (et d'un jeton RSA) peuvent y accéder.
  • Protections root/sudo, déchiffrer quoi que ce soit exige des privilèges root/sudo complets, donc personne ne fouine par curiosité. Un petit désagrément tout de même : si vous changez de nom d'utilisateur, vous risquez de rencontrer des problèmes de connexion. Nous pouvons l'ajuster manuellement dans Sentinel, mais pour éviter les tracas, je vous conseille de garder un nom stable. Je sais que cela contrarie les amateurs de changements de pseudo à répétition, et je m'en excuse. Mais bon, au moins votre crise identitaire est sécurisée !

3. Ni Windows, ni carte bancaire, ni prise de tête

Celle-ci est majeure. Après ce qui a semblé une éternité à composer avec les caprices de Windows, nous avons officiellement tout migré sur Linux grâce à Wine, le tout configuré pour fonctionner dans un ensemble de conteneurs Docker. Fini les machines virtuelles Windows qui nous ralentissent. Finis les plantages aléatoires parce que Windows a décidé qu'il fallait faire une mise à jour maintenant, ou parce que Pink Marla n'aimait pas quelque chose ! Bref, blabla serveur, et concrètement, qu'est-ce que cela change pour vous ?

  • Plus de surcharge Windows, les VM Windows monopolisaient les ressources système et causaient des problèmes de performance. C'est du passé.
  • Meilleures performances, Linux est nettement plus efficace, ce qui allège la charge système et fluidifie le jeu.
  • Plus grande stabilité, moins de plantages, une meilleure disponibilité et une expérience globalement plus fluide.
  • Mises à jour et maintenance plus rapides, sans Windows dans les pattes, je peux déployer correctifs et optimisations bien plus vite. Mais voici le plus enthousiasmant. Ce changement nous donne beaucoup plus de souplesse pour déployer des serveurs. Nous pouvons :
  • Lancer des serveurs de test public (PTB) sans rien arrêter d'autre.
  • Déployer des serveurs de n'importe quel cycle de patch d'équilibrage passé, y compris Spellbreak vanilla.
  • Automatiser une tonne de tâches de maintenance et réduire les interventions manuelles.
  • Proposer cette configuration à des partenaires communautaires internationaux sur demande. Ce n'est pas seulement une victoire pour Elemental Fracture. C'est une victoire pour toute la communauté Spellbreak.

4. Système de suivi des parties amélioré

L'époque où il fallait attendre que la liste des serveurs défile sans fin juste pour voir qui était en ligne est révolue. Le Match Tracker Mod est de retour, entièrement réintégré et meilleur que jamais. Les données de partie sont maintenant mises à jour en temps réel sur Discord. Le système affiche cinq états de partie :

  • Starting Up, le serveur de jeu est en cours de chargement.
  • Waiting for Players, le serveur est ouvert et accepte les connexions.
  • Waiting to Start, le compte à rebours de la partie est lancé.
  • Started, la partie est en cours (désolé, pas de retardataires).
  • Ended, la partie est terminée (ou quelque chose a cassé). Cela permet de voir bien plus facilement qui joue en temps réel, mais ouvre aussi d'autres possibilités sympas. D'ailleurs, j'aimerais votre avis : Marla devrait-elle mentionner certains rôles quand assez de monde est en ligne ? Si dix joueurs ou plus sont en Solos, devrait-elle notifier @Battle Royale pour aider à remplir la partie ? Il y a beaucoup de potentiel ici, alors dites-moi ce que vous en pensez.

La suite

Le prochain grand chantier ? Le launcher. Aujourd'hui, l'installation peut être un peu pénible, surtout si vous n'êtes pas très à l'aise avec la technique. Je veux rendre l'expérience aussi simple et fluide que possible. Et même si j'ai plein d'idées, je ne peux pas tout faire seul. Si vous voulez donner un coup de main, contactez-moi. Voici la feuille de route :

  1. Fini la saisie manuelle des IP. J'explore la possibilité d'associer les paquets réseau à des modes de jeu précis, pour qu'il suffise de choisir un mode et de se connecter automatiquement, sans taper d'IP.
  2. Système d'authentification et de suivi. Je veux construire un système qui relie la progression des joueurs, voire un ELO, à votre profil Sentinel. Cela ouvrirait la voie à un jeu plus compétitif, à un meilleur matchmaking et même à des tournois.

Si vous rencontrez des problèmes, si vous avez des retours, si vous voulez simplement me dire à quel point vous aimez (ou détestez) ces changements, ou si vous trouvez que j'ai trop parlé, faites-le-moi savoir. Merci d'être la plus belle part d'Elemental Fracture, et comme toujours, j'ai hâte de voir la suite !