__________________________________________________________________________________
Amelioration algorithme choix meilleut mvt:
----------------------------------------------------------------------------------
_ voir si possibilit de na pas tester le pofondeur mais plutot un drapeaux preposition
  de la mme facon que effet de bord.(attention la profondeur a peut tre t mise en registre!)
  le gain n'est pas sur: se reserver retour en arrire.
_ remonter l'information (flag) indiquant que le mvt le plus profond est une prise 
_ Faire une presimulation de niveau 2  pour detecter mat avant de faire simulation  
  la profondeur prvue.
_ essayer d'amliorer evaluation couverture des pieces (prise en compte que, meme si 
  une piece est couverte, elle peut etre reprise  nouveau ) 
_ permetre increment note si echec ou  promotion  en reine ou cavalier (a revoir)
_ Evaluation position des pieces sur l'echiquier (dispertion, pentration adversaire, distance ou 
  accessbilit du roi adverse, baricentre )
_ Prevoir simulation suite a mouvement d'une piece choisi dans mvts tries (remontee d'information ds st_mvt_ini).
_ pouvoir modifier et restaurer la valeur d'un des piece  d'un camp suivant la situation
  rapport de force des camps et le camp qui joue.
_ modification dynamique de la profondeur en fonction du temp restant (le cas d'allocation dynamique de mmoire
  il faut prevoir un incrmnt de la profondeur)
_ ???? creer un type de mouvement specifique pour le deplacement normal et prise du pion pour pouvoir 
  modifier la force de la piece lorsqu'elle arrive sur les drenieres lignes.
  il faudrait peut-etre aussi evaluer ces chances d'arriver sur la derniere
  ligne???
  Verfier si necessite de modifier la force des piece soit avant de demarrer 
  ou en cours l'eploration (par example s'il ne reste plus que un cavalier et une
  une reine, ou si un pion a des chances de pouvoir atteindre la dreniere ligne)
___________________________________________________________________________________
Amelioration du source et organisation de l'application:
----------------------------------------------------------------------------------
_ pour eviter des sueurs froides revoir systme de messages et verifier pas de dbordement 
  difficile de prvoir la longueur necessaire au stockage du message 
  
  (ok mais aproximation)

  Le mieux serait de ne formater le message que pour l'affichage sans passer par une chaine 
  intermdiare (stocker le message clat) dans ce cas il faut quand mme pouvoir mmoriser
  une variable locale aprs la fin d'une fonction (par exemple choix du niv/inc)
  En tout cas mieux vaudrait se dbrasser immdiatement du message en l'imprimant ou en le logant
  qqpart sans qu'un problme de dbordement apparaisse.

_ il serait peut-tre possible (si le passage de parmtre est couteux) de supprimer 
  les parametre pass  tpf_cas_ctl en crant un deuxime table et en dupliquant les fct.  
_ finir d'installer des macros pour toutes les valeurs numerique (BLANC ok
  direction echec par, coordonnes) . 
_ rstdsk ne devrait pas crire des messages directement sur stdin 
_ transformer en static les fonction et variables qui peuvent l'tre
_ utiliser allocation dynamique de mmoire.
  lors du traitement des chaines (paramtre).
_ crire dans un fichier log les messages d'erreur du  un bug programme 
  ou  une erreure system.
_ Penser  traduire libell colonne et ligne.
_ Utiliser perror pour message d'erreur (sauvegarde disque, ...)
_ Separateur ligne de tiret  dans menu  -> utiliser getttext
_ Mettre en fonction code duplique (est-il necessaire d'avoir duplique les fonction pour la toure?)
_ pour facilter les recherches les nom de fonction devrait commencer par f_ ou autre
	(verifier que prefix pas deje utilis) faire un tableau des prefix utiliss
_ Prevoir des declarations typedef (pour les coordonnes entre autre...)
_ angliciser les sources (nom de variables,fonction et commentaires)
_ angliciser la documentation 
_ ????pion restore n'utilise pas fonction standard????
____________________________________________________________________________________
Amelioration des performances:
----------------------------------------------------------------------------------
_ voir si possibilite de supression de i_pro_sim_act pour hst_pro
_ voir si possibilite de memorisation de l'echiquier dans une variable simple.
_ voir si possibilite d'elimination des parametre de fonction en utilisant
  des variables globale avec prefix specique a la fonction.  	
_ pour des traitements specifique a un niveau on pourrait appeller une fonction a partir
  d'un pointeur plac dans hst_pro (test si perte trop grande si niveau > 4)
  Pouvoir configurer des fonctions a appeller durant l'exploration en fonction du mode de 
  fonctionnement ou de la profondeur atteinte
_ voir si plus rapide en regroupant ec_jou  ec_simu ec_ctl dans le meme objet  (pointeur near?)
_ ???? si analyse de la situation est faite pour les mvts initiaux il serait possible de faire 
  reference au mvt initial pour personaliser le traitement.cela permettrait de ne pas 
  avoir a trier les mouvement initiaux (en evitant de de descendres l'arborecence dans 
  certains cas????

_____________________________________________________________________________________
Amlioration interface utilisateur et nouvelle fonctionalites:
----------------------------------------------------------------------------------
_ envoyer des donnes (si utilisateur d'accord ) par le reseau pour collecter:
  bugs, nombre de joueurs, nombre de parties joues,  niveau du joueur, parties,
  coup execptionels pour enrichir une  base de donne d'ouverture.
  ces donnes pourrait tre soit cripts et envoye par mail ou
  envoy directement sur un serveur.  

_ sauvegarde des parties 
  un fichier pour  sauvegarde de parties  la demande (format png si possible)
_ prise en compte arret  programm du system par interception signal pour sauvegarder la partie 
  en cours et proposer un reload de la partie lors du redmarrage du programme.
_ pour gnration d'un bibliothque d'ouverture  utiliser sauvegarde de donnes complte,
  par exemple toutes les heures pour pouvoir redmarrer en cas d'arret du systme  

_ sauvegarde des prfrences (niveau par defaut ) utiliser XML

_ pour viter d'avoir toujours les meme parties 
  soit utilsation de random por choix alatoire parmis les meilleur coups
  soit sauvegarde d'un historique des coups jous (ne pas rejouer un coup 
  si le joueur a pu gagner la partie dans ce cas)  
  
_ Permettre le chargement d'un partie  partir d'une situation d'chiquer au lieu 
  d'un historique de coup ou des deux (situation plus historique)
  Evaluer la situation apres l'initialisation  cause de la prise en compte des 
  echec par demasquage.
  Attention dans ce cas le traitement d'galit (3 rptition succcive d'une situation
  d'chiquier n'est plus possible)
 
_ Back n mvt ou jum n mvt

_ afficher les coups precedent

_ Evaluer le temps necessaire pour l'exploration.

_ lancer la simu lorsque le joueur reflechi

_ Analyser les parties joues par le joueur dans le but d'amliorer son jeux,
  de donner une vue de son niveau/de sa progression ou de moduler le niveau 
  qu'il a indiqu
  
  type d'erreurs comme defaut de couverture, pas vu mat.
  type de jeux agressif/defensif et adaptation a la situation.
  temps de rflexion 
  
_ Il faudrait 4 modes de fonctionement.

1) L'exploration a des fins d'etudes de l'arborescence. 
  amlioration: liminer les portion d'arbres si un decalage de plus de 
   deux piece majeures existe entre les camps (chois utilisateur ou decision 
   par le simulateur en cours d'exploration)
   avoir le nombre d'echec, mat,pat par profondeur
   connaitre le nombre de prises pour chaque pieces (seulement pour le meilleur coup)
2) Le jeux pour gagner sans limitation de temps (si camp meme)
   avec des niveaux de difficulte
3) Le jeux  pour gagner en temps limit (ne pas jouer plus longtemps que l'adversaire)
   ordonner la simulation en en prenant les coups  detects au niveau 2 ou 4 les plus interresant en premier.
4) Le jeux pour perdre mais en mettant le joueur dans des poisitions interessante
   par exemple permettre 

_ comment adapter la difficult au niveau du joueur?
  lui demander son avis (facil, moyen, diffici) et moduler en fonction de son niveau.
_ Donner la possiblit de choisir le comportement de l'ordinateur (pour les enfants entre autre)
  agressif et tmrair, timor et prudent, quilibr..


