Echecs avec moteur UCI

Description

La source dont je me suis inspirée est ici : http://codes-sources.commentcamarche.net/source/100999-interface-pour-jeux-d-echecs
Merci à l'auteur pour son excellente source .
J'ai corrigé les erreurs dûes au fait que l'auteur n'avait pas mis son projet sur "Option Strict" à la compilation et qu'il avait gardé la référence "Microsoft Visual Basic" pour la compatibilité VB 6 .
Je n'ai pas gardé le redimensionnement de l'interface de jeu .
Diverses optimisations ont été faites dans le code : utilisation de list(of String) pour les coups jouables, les mouvements possibles et les prises entre autres .
Plein d'autres optimisations ont été faites ( factorisation de code, etc... )
Le gestion des promotions est faite : le joueur peut choisir la pièce promue ( Reine, Tour, Fou ou Cavalier)
Un moteur UCI a été rajouté comme adversaire : j'ai choisi Stockfish ( ici en version 10 en 32 bits )
Pour interfacer un moteur UCI avec un projet voir : https://castelmoissac-echecs.fr/spip.php?article252=
On peut choisir la couleur du joueur humain si on joue contre le moteur UCI .
Notez que ce même moteur UCI est utilisé dans cettte source en C# : http://codes-sources.commentcamarche.net/source/52342-jeu-d-echecs-en-c
De toute façon ce sont toujours les Blancs qui commencent que ce soit en mode UCI ou en mode Debug ( voir plus loin la signification)

Une case à cocher permet un mode Humain contre Humain : utile pour debugguer le projet ou jouer à deux sur le même PC . Si on décoche cette case à cocher on joue contre le moteur UCI . Evidement que l'on coche ou que l'on décoche la partie recommence à zéro .
Une seconde case à cocher permet de cacher ou de visualiser les mouvements et menaces lors de la sélection d'une pièce par le joueur humain . On peut cocher et décocher cette case sans avoir à recommencer la partie . Fonction utile pour les débutants aux échecs .

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.