Un meilleur job mieux payé ?

Deviens chef de projet, développeur, ingénieur, informaticien

Mets à jour ton profil pro

ça m'intéresse

Eschecs

Présentation
Jeu d'échecs pour le compilateur Free Pascal.
Détails
Avatar de Roland Chastain
Rédacteur / Modérateur
Voir tous les téléchargements de l'auteur
Licence : Autre
Date de mise en ligne : 16 novembre 2016




Avatar de mick605 mick605 - Membre chevronné https://www.developpez.com
le 28/07/2012 à 19:43
Salut

J'aime bien le look sobre de l'interface ^^. Bon jeu, j'ai même réussi a battre l'ordi ^^.

Quelques points manquants : La numérotation des cases (A..H et 1..8) et dire a qui de jouer.

Quelques questions : Que contient ce fichier pieces.pas ? Comment dessines tu tes pièces ? Qu'est ce que ces fichiers .inc ?

En tout cas, félicitations
Avatar de Roland Chastain Roland Chastain - Rédacteur/Modérateur https://www.developpez.com
le 28/07/2012 à 21:08
Citation Envoyé par mick605  Voir le message
En tout cas, félicitations

Merci !

Citation Envoyé par mick605  Voir le message
Quelques points manquants : La numérotation des cases (A..H et 1..8) et dire a qui de jouer.

C'est noté. J'ai le projet de travailler sur une interface un peu plus élaborée pour la prochaine version (en restant sobre ).

Citation Envoyé par mick605  Voir le message
Quelques questions : Que contient ce fichier pieces.pas ? Comment dessines tu tes pièces ? Qu'est ce que ces fichiers .inc ?

Le dessin des pièces vient de la version DOS du jeu Fritz. Soit dit en passant, la version 5.32 du même jeu est le plus beau programme d'échecs gratuit qu'on puisse trouver.

Donc, à partir d'une capture d'écran sous DosBox , j'avais fabriqué un fichier texte contenant les images sous forme de '0' et de '1', soit quarante lignes de quarante caractères pour chaque image.

Maintenant, le fichier pieces.pas, c'est une astuce que Paul Toth m'a donnée pour réduire la taille du fichier. Au lieu de '0' et de '1', on utilise des nombres de type LongWord, un seul nombre contenant la valeur du pixel pour toute la série d'images. Tout est expliqué en détail dans cette discussion.

Pour les fichiers .inc, c'est une manière de travailler que j'ai trouvée commode. Dès que j'écris une fonction, je la mets dans un fichier à part, et j'inclus tout dans le fichier principal, ce qui me fait une sorte de table, et me permet de travailler toujours sur de petits fichiers.
Avatar de Roland Chastain Roland Chastain - Rédacteur/Modérateur https://www.developpez.com
le 12/03/2014 à 11:41
Bonjour ! Je vous présente la nouvelle version de mon programme. J'ai renoncé provisoirement à y inclure un moteur : c'est donc un simple échiquier avec arbitre. Les principales améliorations par rapport à la première version précédente sont l'animation des pièces et l'utilisation de la souris pour le choix des coups.

La compilation a été testée avec Delphi 6 et 7, ainsi qu'avec FreePascal 2.6.2.
Avatar de Roland Chastain Roland Chastain - Rédacteur/Modérateur https://www.developpez.com
le 22/03/2014 à 23:35
Voilà mon échiquier équipé d'un moteur. Par défaut, vous avez les blancs, l'ordinateur a les noirs. (Pour choisir un autre mode de jeu, il faut éditer le fichier options.ini.)
Avatar de Roland Chastain Roland Chastain - Rédacteur/Modérateur https://www.developpez.com
le 18/09/2014 à 18:07
Bonjour ! Je vous propose une nouvelle version de mon programme d'échecs. Les principales nouveautés par rapport à la version précédente sont :

  • l'utilisation d'un livre d'ouvertures
  • la possibilité de démarrer une partie à partir de n'importe quelle position


L'interface basée sur l'unité WinGraph reste très rudimentaire (sauf le déplacement des pièces qui m'a quand même demandé un certain travail). Pour changer le mode de jeu, il faut modifier le fichier options.ini. Pour recommencer une partie, il faut fermer le programme et le relancer.

J'aimerais bien faire une interface un peu plus sophistiquée, mais il faudrait que j'abandonne l'unité WinGraph (pour utiliser FPGUI par exemple) et donc que je refasse tout le code relatif au déplacement des pièces sur l'écran. Cependant le temps passé sur l'interface est du temps perdu pour l'amélioration du moteur, qui est la partie la plus intéressante du projet.

Dans certaines circonstances qui seraient un peu longues à expliquer, le moteur produit un coup illégal. Dans ce cas, l'erreur est consignée dans le fichier log.txt et le jeu passe en mode manuel. Je n'ai pas encore mis au point le moyen de corriger cette erreur.

La compilation de cette version a été testée avec Delphi 7 et Free Pascal 2.6.4.
Avatar de Roland Chastain Roland Chastain - Rédacteur/Modérateur https://www.developpez.com
le 29/04/2015 à 17:58
Bonjour ! Voici une mise à jour de mon jeu d'échecs.

Les principales nouveautés sont, d'une part, une fonction de recherche de mat, que l'ordinateur appelle préalablement à chacun de ses coups ; d'autre part, une fonction de validation des chaînes FEN qui est utilisée pour contrôler le paramètre optionnel passé au programme (la position de départ). J'ai également ajouté un lanceur qui permet de choisir les options sans avoir à éditer à la main le fichier de configuration comme il fallait le faire dans la précédente version.

Malgré tout, certaines lacunes demeurent, comme l'absence d'une commande permettant de commencer une nouvelle partie. J'aurais pu bricoler quelque chose rapidement mais j'ai trouvé que ça ne valait pas la peine. Dans mon esprit, il s'agit de la dernière mise à jour du jeu sous sa forme actuelle (sauf s'il y avait de petits réglages à faire). Je pense commencer un autre projet, en commençant par faire une interface graphique plus complète (sans doute avec fpGUI).
Avatar de Roland Chastain Roland Chastain - Rédacteur/Modérateur https://www.developpez.com
le 15/06/2015 à 11:56
Bonjour ! La nouvelle version d'Eschecs est arrivée.

L'arbitre, le moteur, le livre et le validateur de chaîne FEN sont ceux de la version précédente avec des améliorations.

L'interface graphique est basée sur fpGUI et BGRABitmap.

Eschecs 2.0
Avatar de Roland Chastain Roland Chastain - Rédacteur/Modérateur https://www.developpez.com
le 19/06/2015 à 11:35
Bonjour ! Une nouvelle version d'Eschecs.

Un défaut important a été corrigé dans le moteur. Dans certains cas le moteur renvoyait un coup illégal.

D'autre part, la dernière version inclut une bibliothèque de détection de mat, mater.dll. Ainsi le coup de l'ordinateur peut provenir de trois sources : du livre, du programme de recherche de mat ou du moteur principal.

Eschecs 2.2
Avatar de Roland Chastain Roland Chastain - Rédacteur/Modérateur https://www.developpez.com
le 02/03/2016 à 21:47
Bonjour ! Je vous propose une nouvelle version d'Eschecs.

Nouveautés :

  • Compilation avec Lazarus 1.6 (merci à FChrisF qui m'a indiqué la correction nécessaire)
  • Possibilité de créer un raccourci sur le bureau à partir du menu de l'application
  • Documentation générée avec PasDoc


Ce sera probablement la dernière mise à jour de la version 2. Ensuite j'aimerais reprendre le projet sur de nouvelles bases, à savoir utiliser le protocole UCI pour la communication entre l'interface graphique et le moteur.

Eschecs 2.3
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.
Responsables bénévoles de la rubrique Pascal : Gilles Vasseur - Alcatîz -