Bonjour à tous,
Aujourd'hui j'écris ce post pour vous faire part de mon projet actuellement en développement.
![img]()
Il s'agit d'Orion, un émulateur Dofus basé sur la première version de dofus 2.0 (bêta) comme vous avez du le comprendre.
Jusque-là rien de bien fou me diriez vous.
Parlons du GamePlay :
le gameplay du serveur ce découpera en plusieurs parties, je m'explique.
Tout premièrement le serveur sera en mode Héroïque avec un système de déchu (si vous l'avez connu, si ce n'est pas le cas renseignez vous sur Google).
La mort ne sera définitive qu'en PvP (agressions).
Le serveur sera orienté Anka-like, en grande partie.
Bien sûr plein de choses sont à prendre en compte et encore à décider.
Parlons du client :
Le client sera modifié, comment ça ? Qu'es ce qu'il raconte celui là ?
Par préférence de mon côté certaines Interfaces vont se voir faire une refonte.
Dans un premier temps il y aura l'implémentation du bouton de restât dans le panel des caractéristiques du personnage ainsi que la création du message de restât lui correspondant.
Comme certaines personnes ne le savent pas forcément le client dofus 2.0 est très mal fait (ou fait à l'arrache), donc sur ce point j'hésite beaucoup.. les donnés du jeu sont stockées dans les fichiers en swf et non dans les d2o comme les versions plus avancées de Dofus, donc j'ai deux choix.
Stock toutes ces infos dans des collections chargés au lancement de l'émulateur ou bien les stockées en base de données (pour l'instant j'ai un petit parseur As3 fait maison grâce à l'aide de @Skinz , il fonctionne grâce aux regex mais je compte peut être à terme en faire un vrai parseur qui convertira les données en As3 et s'occupera de les ajouter en base de données (une sorte de DbSyncronyser me direz vous) enfin cela reste à voir).
Beaucoup de choses restes encore à voir et à décider.
Comme l'implémentation du tactical mode (ce qui me paraît un peut compliqué en soit).
Maintenant parlons un peut côté serveur :
Le projet est développé en Net.5 avec le langage C#9.
Pour le ProtocolBuilder il à été repris de AmaknaCore ProtocolBuilder et à été modifié par mes soins pour la version 2.0.0 du client.
Pour la communication client/serveur j'ai repris et modifié la lib Binny.IO de @Echandra .
L'émulateur se découpe en plusieurs parties.
- Orion.Common (qui gère les différentes configs en XML, contient le logger, charge les données du client (qui sont pour le moment stock en base de données), charge les types et les messages, Contient des extensions très utiles et bien d'autres choses)..
- Orion.Database (qui gère la base de données, chargement des tables au lancement, backups, création, update, suppression et tout cela via une interface et des attributs).
- Orion.DofusProtocol (qui contient tout le protocole comme son nom l'indique).
- Orion.Realm (le auth qui permet la connexion en jeu).
- Orion.Game (le World qui gère tout le côté in-game).
Pour le moment il n'y à seulement la connexion en jeu et la sélection du serveur qui à été fait.
Un discord communautaire sera bien évidemment ouvert prochainement pour ceux qui s'intéressent au projet.
Je mettrai à jour le post lorsque j'aurais plus d'informations à donner et que j'aurais avancé sur le projet.
Pour me contacter pour quoi que ce soit,
Mon discord : Orion#7448