Salut la compagnie !
J’espère que vous avez la forme, aujourd’hui je suis là pour vous parler d'un projet sur lequel je travaille depuis bientôt 3 semaines à savoir comme vu dans le titre Elk
Elk est un émulateur serveur pour Dofus Touch, les deux technologies utilisées sont NodeJs et Java.
NodeJs est utilisé pour l'haapi à savoir :
- Création du compte invité
- Validation du compte invité
- Création du compte général
- Génération du token/key de connexion
Le programme NodeJs est connecté avec une sorte de tunnel au projet Java. En soi Node agit comme une sorte de Proxy (c'est similaire à ce que Ankama fait actuellement).
J'aurais pu me passer de NodeJs concrètement mais l'idée qu'il soit en front je trouve ça pas mauvais, ça évite d'impacter le serveur.
Pour le système de gestion de base de données j'utilise MongoDB et pour être honnête j'en suis pas déçu, je connaissais pas du tout il y a 3 semaines et on s'y fait très vite.
Concernant le Auth voici ce qui a été fait :
- Gestion de la connexion (vérifications des credentials et token).
- Gestion des comptes invités
- Détection de clients via le proxy (un entête est utilisé pour identifier le client)
- Mise en place d'un système de Handlers
- Gestion de la base de données
- Gestion des comptes
- Détection pour la création du pseudo / ban / locked.
Je suis au stade de la construction des pieds pour la table donc c'est la partie la plus importante selon moi.
Voici quelques images pour les curieux :
Gestion connexion
Cliquez pour révéler
Cliquez pour masquer
Accès sélection serveur
Cliquez pour révéler
Cliquez pour masquer
Vous l'aurez compris, le Auth est bientôt fini, je m'attarde sur certains détails mais le plus gros est fait, je vais donc bientôt commencer la partie `world`.
C'est un projet personnel qui sera très probablement destiné à l'ouverture d'un serveur (on en est loin).
Le Discord du projet : https://discord.gg/vYPgTGG - pour être tenu des avancements si ça vous intéresse.
Merci d'avoir lu et à bientôt.