Java [1.29] RilynEmu

Inscrit
27 Mars 2016
Messages
9
Reactions
0
#1
Bonjour,

j'ai commencé l'émulation Dofus 1.29 vers 2011/2012, j'ai connu mAncestra, Ancestra et tous les dérivés qui en découlent, j'ai bidouillé AR-42 pendant un petit moment mais le code étant tellement en fouillis j'ai arrêté et comme beaucoup de monde les études on fait que j'ai arrêté peu à peu. Je me suis mis de plus en plus au développement Web et en 2015 j'ai décidé de développer un émulateur Dofus 1.29 en java.

Alors pourquoi Java ? Et bien, c'est un langage qui me convient très bien et c'est le langage des premiers émulateurs Dofus 1.29, et étant étudiant en DUT Informatique, c'est le langage principal que l'on apprends.

Donc en 2015 je me lance dans le développement de cet émulateur (RilynEmu) qui possédait un serveur de Connexion et de Jeu, mais les deux "séparés" mais étaient sur le même projet. Voulant le rendre multiserveur, j'ai décidé de le supprimer complétement et maintenant le projet est séparé en deux serveurs principaux (Connexion et Jeu).

Il faut savoir qu'entre le moment ou j'ai supprimé le projet et recommencé il y a bien eu un an, et le développement de la version actuel a commencé je pense en septembre 2016.

Je vous laisse un petit changelog de ce qui a été fait dessus.

Serveur de connexion :
[18/12/2016]
  • Mise en place de serveur de connexion (LoginServer)
  • Gestion de la configuration via login.properties
  • Création de la base de données :
  • Connexion à la base de donnée (pattern Singleton)
  • Création de classe utiles pour la base de données (pattern Singleton) :
    • AccountDatabase
    • BannedListDatabase
    • CharactersDatabase
    • ServerDatabase
  • Mise en place d'un système de Logs (pattern Singleton)
  • Gestion de la connexion et déconnexion client sur le serveur de connexion (LoginServer)
  • Gestion de la version client
  • Vérification du compte
  • Création de différentes classes de chiffrement :
    • PasswordEncryption
    • GatewayEncryption
    • PacketsEncryption
  • Vérification du pseudonyme :
    • Affichage de la popup si aucun pseudonyme
  • Affichage de l'abonnement
  • Serveur de connexion (ExchangeServer) pour les serveurs de jeu (GameServer)
  • Affichage de tous les serveurs de jeux (56 serveurs)
  • Rafraichissement des serveurs :
    • Hors Ligne
    • En Ligne
    • Sauvegarde
  • Recherche d'amis et affichage des serveurs
  • Affichage du message d'indisponibilité du serveur
  • Affichage du message de non autorisation de connexion au serveur (betatesteur et gm autorisés)
  • Passage du serveur de connexion (LoginServer) au serveur de jeu (GameServer), validité du ticket de 10s
  • Deconnexion du compte connecté au serveur de jeu (GameServer) quand le même compte ce connecte au serveur de jeu (GameServer)
  • Déconnexion du client au bout de 15 minutes d'inactivité

Serveur de jeu:
[26/12/2016]
  • Gestion de la configuration via login.properties
  • Mise en place du serveur de jeu (GameServer)
  • Mise en place du client d'échange (ExchangeClient)
  • Connexion à la base de donnée (pattern Singleton)
  • Mise en place d'un système de Logs (pattern Singleton)
  • Gestion de la connexion et déconnexion client sur le serveur de jeu (GameServer)
  • Création du personnage :
    • Couleurs
    • Nom
    • Génération aléatoire du nom
    • Classe
    • Lancement de la cinématique de début (packet : TB)
  • Supprésion du personnage
  • Remise à zéro du personnage
  • Affichage du mode marchand sur l'affichage de sélection de personnage
  • Affichage du personnage sur la carte et changement de position :
    • Visible pour tous les joueurs présent sur la carte
[25/07/2017]
  • Déplacements
  • Débuts des commandes admins comme officiel

Des screens:

Pour ce qui est du partage des sources ou même de l'émulateur, il faut oublier ça pour le moment car un serveur ne peu pas être fait avec ce qui est développé pour le moment.

Un trello est disponible pour avoir un changelog et voir les avancements.


Cordialement Manghao.
 
Dernière édition:

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#2
Salut,

Joli projet, quelques screens en plus et ce serait parfait :cool:
 
Inscrit
27 Mars 2016
Messages
9
Reactions
0
#3
Je ne vois pas trop quels screens mettre, tous ici vois a quoi ressemble Dofus 1.29 non ?
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#4
L'ému, la structure du projet, un schéma pour avoir une meilleure compréhension car oui un émulateur ça reste assez lambda.
 
Inscrit
27 Mars 2016
Messages
9
Reactions
0
#5
Je met des screens dès que je peu, il y en a deux dans le post principal
 
Inscrit
27 Mars 2016
Messages
9
Reactions
0
#6
Salut, aujourd'hui petit point :

La partie de l'alignement que j'ai souhaité développé est terminée, c'est l’affichage des alignements (ailes, zones colorées sur la carte), l'affichage des prismes et la téléportation, la possibilité d'activer le JcJ ou de le désactiver.
L'affichage de l'honneur et déshonneur est aussi présent (classique quoi
) Le calcul de la balance mondiale et de zone est développé ainsi que les bonus d'xp, récoltes et drop qui dépendent du grade et de la balance mondiale.
Les 7 villages de conquêtes sont affichés (portes village / salles des prismes ouvertes ou fermées) avec leur alignement.

Une grosse correction des déplacements a été effectuée.

J'ai aussi commencé le développement des canaux de chat.


Je remercie Dysta et ydainna pour les conseils et aussi les éléments qui me sont donné pour pouvoir développé l'émulateur au plus proche de ce qu'est l'officiel 1.29.

Bises à vous les gars



Cordialement Manghao.

PS : je met des screens du panel conquête bientôt.
 
Inscrit
27 Mars 2016
Messages
9
Reactions
0
#7
Voilà deux screens sur l'alignement :
Je suis désolé de ne pas avoir posté les screens plutôt, j'ai complétement zappé et avec la reprise des cours je n'y ai plus pensé.
J'ai travaillé entre temps sur les canaux de chats, il manque celui de guilde et de groupe comme les guildes et groupe ne sont pas développes pour le moment.
 
Inscrit
27 Mars 2016
Messages
9
Reactions
0
#8
Après un long moment sans avoir touché l'émulateur, la téléportation entre prismes est possible avec la perte de kamas selon la distance.

Les canneaux de chats sont fonctionnels et avec les mêmes conditions que l'officiel. Néanmoins les canneaux guilde et groupe ne sont pas encore fait étant donné que je n'ai pas développé les guildes et les groupes.

Les mots de passe sont désormais chiffrés avec Bcrypt dans la base de données.

Les PNJ sont affichés sur la carte.

Les panneaux de ville et recherche s'affiche quand on clique dessus.
 
Haut Bas