Versions 0.0.1 à 0.0.7

Versions 0.0.1 à 0.0.7

Bon, j'suis pas très bon en ce qui concerne la tenue d'un changelog surtout lorsque les avancées sont si nombreuses et se font à une telle vitesse, mais bon :

0.0.1 [Septembre]
- Lecture des configs avec StAX terminée. (Elles sont : config, lconfig, gconfig, worldsstatics, PluginConfig (ThxMathias). J'ferai des screenshots un jour)
- Commandes console DOS 
- Constants, CWorlds, CServers, CPersos, ...
- Connexion 100%.
- JDBC marche. (Surtout c/c d'ancestra, pour en attendant de voir ce que je peux vraiment faire de bon, j'voulais pas arreter le développement juste pour ça car même si je change le code, les methods resteront à peu près les mêmes et presque rien ne devrait avoir à changer)
- Modification de plusieurs packets dans SM.Accounts. (En passant SM vient de "SocketManager" ca fait très longtemps que j'appelle ce package ainsi et je m'y suis attaché même si le nom original est inexact)
- LServer 100%.
- Gestion des multiples GServers 100%.
- Multi-serveurs disponible.
- Note: hibernate = merde pour un petit emu dofus. déjà mieux jdbc.
- Insertion d'une map avec Colt dans le LWord pour stock les LAccounts {Note: colt = merde aussi, trop vieux :P}
- Générateur de nom aléatoire fonctionnel.
- Création de personnage fonctionnelle.
- Ajout des cadeaux; manque l'intégration des items.
- Delete de GPersoCreation et GPersoSelection Handlers, merged dans GHandler qui se charge de tout ce qui est avant le IG.
- Delete des utilisations de screenIDs, inutile et créé des bugs.
- Ajout de "maxCoPerServer" dans GConfig.
- Début du combo Pools-Timer-Factory dans le package Threads. {Sera à refaire, je l'ai commencé sur Syn et mis au point sur Zen, mais pas mis à jour ici}
 
0.0.2 [6 Décembre 12]   ( Reprise de l'émulateur ! :) )
- Ajouté les methodes SQL.Gift.delete et SQL.Account.updateGift
- Ajouté le coté sql des friends/ennemies/ignored
- Ajouté des variables dans le LItemTemplate
- Commencé la fonction GPersonnage.onSelected. 
- Mit les GConfigs en objets au lieu de static, une par GServer (À part pour quelques variables comme )
- Commencé tous les parsers comme on les connait sur Ancestra (GGameHandler). Ai seulement troqué les switch pour un getDeclaredMethode(bla).invoke(ble)
- Commené la structure pour les maps ("Cartes", on s'entend ._.)
- Commencé les plugins de chat et console. (Commandes)
- Ajouté les classes Infos, chat, Messages, Basics, Game dans le SM
- Commandes console et joueurs fonctionnelles. (en plugins)
- Ajouté la possibilité de enlever/ajouter une GConfig+GServer
- Commencé à mettre en place la termination/finalization des objets GServer, GWorld, CWorld, GConfig quand on off un gServ
- Commencé à mettre en place ce qui spasse quand on off un GServeur
- Refonte du systeme de GConfig en cours pour des off/on, ajout/delete plus fluides, simple et tout, là c'était compliqué..
- Mise en place de JDOM à la place de StAX pour les GConfigs {Beaucoup plus polyvalent, direct et maniable}
 
0.0.3 [7Dec12]
- Mise en commentaire de ce qui avait rapport aux SiteClient et affaires du genre...tellement plein de marde ces affaires là
       J'veux développer un émulateur, pas des noobs
       Donc je leur mettrai un formulaire de config à remplir lors de leur achat et mettrai en place à la main, c'est plus simple.
        Ensuite ils pourront encore modifier les champs config soit par commande pour le xml soit en utilisant "load sqlgconfig" pour le sql.
      Et au pire j'recommencerai ce systeme plus tard.
- Dans LWorld.isAccountConnected(): ajouté un autre for pour vérifier aussi dans les comptes qui sont en attentes de connexion (la queue)
- Delete la GConfig de stax / renommé gconfigJDOM en GConfig pour prendre la place de l'ancienne classe.
 
0.0.4 [8Dec12]
- Ajouté un systeme pour créer des bdd/tables automatiquement si elles sont manquantes (dans SQL.startUp) .
- Réorganisé les dossiers Syn -> Syn_config, Syn_data, Syn_lib, Syn_plugins (Respectivement les configs xml, les templates de tables sql, les libs et les plugins).
- Commencé les paliers d'xp (Une table experience dans chaque bdd de serveur pour leur permettre d'en avoir des différents).
- Commencé la config par bdd (SConfig dans package SQL).
- Les cleanup de L/GClient, LAccount/Gperso quand on déco sont bon -> tout est bien nullisé et supprimé de la ram.
- Ajouté packet de chat pour avoir les canals ouverts à la derniere connexion (pour dans perso.onSelected).
- Ajouté un if(map!=null) dans le packet GDM, faudra ajouté du logging là-dessus.
- Ajouté des constantes dans CPerso.
- Ajouté la classe CJobs mais sera peut-être à delete, à voir avec l'API qui conviendra le mieux pour plus de customization.
- Corrigé un bug au choix du serveur quand l'ID a plusieurs digits (>9, comme 22 pour héroique) change charAt->substring.
 
0.0.5[9Dec12]
- Continué la methode pour load les configs bdd.
- Refait la structure de la table de config.
- Dans l'initGPerso dans la création de perso, corrigé pour mettre le bon startLvl en fonction de la classeID (Différents lvls possibles pour chaque classe).
- FIXME dans création de perso: si on start à un certain niveau, mettre la bonne xp au départ {FAIT}.
 
0.0.6[10Dec12]
- Ajouté champs maxPersoPerAccount dans gconfig global (static).
- Ajouté le loading des configs bdd tout de suite après SQL.setUpConnexion.
- Corrigé un bug dans la table config -> ajouté la valeur  ' ' au champs ValueBool pour pouvoir mettre des valeurs null.
- Ajouté une vérification de la validité des couleurs dans le packet AA de création de perso.
- Ajouté un GWorld.addPerso(p) dans Perso.onSelected.
- Ajouté un GWorld.removePerso(LAccount.curPerso) dans GClient.kick.
- Commencé une methode perso.terminate pour enlever toute les références à ses variables et les setter à null.
- Création ET Supprimation de perso completement parfaits sur tous les serveurs.
- Ajouté les RATES dans la config bdd + la variable les contenant dans GConfig.
 
0.0.7 [11Dec12]
- Ajouté commandes GETMEM, GC, RELOADPLUG, dans la ConsolePlugin.
- Modifié la classe Plugin dans la PluginLib: Ajouté methode abstraites "registerEvents" et "unRegisterEvents".
- Ajouté le chargement des paliers d'xp.
- Ajouté newPerso.setChannels et setXP dans la création de perso.
- Passé le projet en UTF-8 et recopié toutes les classes pour ravoir mes accents ><.
- Ajouté un package AS dans Externals pour de la doc sur le client (Loader+core+lang, etc)
-----------

Encore désolé de la pauvre qualité de mon changelog, je tâcherai de faire des screens et peut-être partager quelque lignes de code du même coup pour vous montrer que si je ne m'applique pas ici, c'est parce que je met tout mon temps sur la programmation au lieu de la rédaction.