VALISOACHESS un jeu d'échecs ambitieux

Présentation
Bonjour tout le monde.
En tant que joueur d'échecs (1654 ELO FIDE en Avril 2017) et amateur en programmation, j'ai eu l'idée de créer mon propre jeu d'échecs. Avant de me lancer, j'ai fait des recherches sur Internet et j'ai trouvé beaucoup d'exemples mais soit ils sont trop compliqués pour être compris soit leurs codes sont trop longs (> 2 000 lignes). Alors j'ai voulu avoir un exemple très simple juste pour débuter; un exemple qui montre juste comment déplacer les pièces et comment générer un coup sans se soucier du gain ou des tactiques gagnantes et cela avec le minimum de code possible.
Je me suis décidé alors à créer moi-même ce que je cherchais : VALISOACHESS est alors né.

Développeur : Valisoa Jean Hervé
Début de programmation : 01/04/2017
Version : 0.0.2 (30/05/2017)
Langage de programmation : Pascal
Compilateur : FreePascal 3.0.2

Mon objectif principal était avant tout de créer le plus SIMPLE moteur d'échecs qui soit, en langage Pascal, en utilisant le MINIMUM DE CODE POSSIBLE. Afin que quiconque voudrait débuter au développement d'un jeu d'échecs en langage Pascal, même un débutant en programmation pourrait utiliser VALISOACHESS comme une référence de départ.
Jusqu'à la limite du possible, j'essayerai de maintenir les idées directrices suivantes :
Simple/Minimum de code/Original/Très intelligent/Documenté.
NB :
1- Original pour moi veut dire pas de plagiat. Je ne veux pas de "Copier/Coller" des codes spécifiques à tel ou tel programme d'échecs.
2- Pas de "Copier/Coller" d'algorithmes spécifiques à un programme d'échecs déjà existant même en Open Source.
3- Toutefois, je ne me priverai pas des algorithmes que tout le monde utilise.
4- Je pourrai utiliser les autres programmes d'échecs, "libres","OpenSource", comme sources d'inspiration (d'idées, d'imagination) mais jamais comme une source à "Copier/Coller".
5- Je souhaite que VALISOACHESS soit unique en son genre : original, intelligent et autonome.
6- Mon rêve est qu'à l'avenir VALISOACHESS soit parmi les meilleurs moteurs d'échecs ou qu'il soit le meilleur de tous, pourquoi pas :) .

ValisoaChess (version 0.0.2) ne gère pas encore la prise en passant, le roque et l'échec. Il gère tous les autres mouvements de toutes les pièces, y compris les captures.
ValisoaChess joue ses coups de façon aléatoire. Toutefois, il priorise les captures par rapport aux simples déplacements.
Pour jouer, utilisez la notation algébrique du genre e2e4, e7e5 ou g1f3.

Des suggestions, critiques, aides et conseils seront les bienvenus !
Détails
Catégories : Free Pascal
Avatar de inspirateur
Membre averti
Voir tous les téléchargements de l'auteur
Licence : BSD
Date de mise en ligne : 26 février 2019




Avatar de inspirateur inspirateur - Membre averti https://www.developpez.com
le 03/06/2017 à 11:35
Bonjour,

Je vous propose un nouvel élément à utiliser : VALISOACHESS un jeu d'échecs ambitieux

Bonjour tout le monde.

En tant que joueur d'échecs (1654 ELO FIDE) et amateur en programmation, j'ai eu l'idée de créer mon propre jeu d'échecs. Avant de me lancer, j'ai fait des recherches sur internet et j'ai trouvé beaucoup d'exemples mais soient ils sont trop compliqués pour être compris soient leurs codes sont trop longs (> 2 000 lignes). Alors que j'ai voulu avoir un exemple très simple juste pour débuter; un exemple qui montre juste comment deplacer les pièces et comment generer un coup sans se soucier du gain ou des tactiques gagnantes et cela avec le minimum de codes possibles.

Je me suis décidé alors de créer moi-même ce que je cherchais : VALISOACHESS est alors né.

Développeur : Valisoa Jean Hervé

Début de programmation : 01/04/2017

Version : 0.0.2 (30/05/2017)

Langage de programmation : Pascal

Compilateur : FreePascal 3.0.2

Qu'en pensez-vous ?
Avatar de inspirateur inspirateur - Membre averti https://www.developpez.com
le 20/06/2017 à 11:44
Bonjour !
Voici la version 0.0.4 de ValisoaChess. Elle gère désormais l'échec.
[ATTACH]287185d1/a/a/a" />
Avatar de inspirateur inspirateur - Membre averti https://www.developpez.com
le 24/06/2017 à 10:06
Bonjour !
Voici la version 0.0.5 de ValisoaChess. Elle gère la prise en passant, l'échecs et le roque. J'ai aussi rajouté un test permettant de rejeter les coups invalides du joueur humain.
[ATTACH]288559d1/a/a/a" />

A partir de maintenant je vais attaquer 2 points:
1- L'IA : en pratique, les critères du choix de coup lors de l'évaluation.
2- L'interface graphique.
Avatar de inspirateur inspirateur - Membre averti https://www.developpez.com
le 30/08/2017 à 9:47
Bonjour !
Voici la version 0.0.9 de ValisoaChess qui gère la nullité par insuffisance des pièces pour mater. J'ai rajouté le point des cases semi-centrales c3, d3, e3, f3, f4, f5, f6, e6, d6, c6, c5, c4 comme étant un critère.
Nombre de critères : 12
[ATTACH]307664d1/a/a/a" />
Avatar de Roland Chastain Roland Chastain - Rédacteur/Modérateur https://www.developpez.com
le 27/09/2017 à 16:40
Citation Envoyé par inspirateur Voir le message
J'aimerais que vous me montriez aussi vos essais du côté interface graphique.
Bon, alors dans le temps j'avais fait ça :

LazUCIDemo.zip

C'est un programme Lazarus, une application fenêtrée qui permet de démarrer un moteur UCI, de lui envoyer différentes commandes et de recevoir ses réponses. Pour la communication avec l'application console, le programme utilise le composant UnTerminal. Mais on peut aussi utiliser l'unité Process ou directement l'API Windows.
Avatar de inspirateur inspirateur - Membre averti https://www.developpez.com
le 07/10/2017 à 11:48
Citation Envoyé par Roland Chastain Voir le message
Bon, alors dans le temps j'avais fait ça :

LazUCIDemo.zip

C'est un programme Lazarus, une application fenêtrée qui permet de démarrer un moteur UCI, de lui envoyer différentes commandes et de recevoir ses réponses.
J'ai aussi amélioré votre UCIdetector (la version originale) pour que l'utilisateur puisse choisir librement le répertoire dans lequel se trouve son application à tester.
[ATTACH]318017d1/a/a/a" />
Avatar de inspirateur inspirateur - Membre averti https://www.developpez.com
le 09/10/2017 à 10:57
J'ai corrigé quelques bugs de Valisoa UCI. En voici le résultat :
[ATTACH]318560d1/a/a/a" />
Avatar de inspirateur inspirateur - Membre averti https://www.developpez.com
le 11/10/2017 à 8:38
Bonjour !
Voici ValisoaChess 0.1.2 qui peut trouver l'échecs et mat en demi-coup.
Nombre de critères du choix de coup : 15
Critère rajouté : Échecs et mat
[ATTACH]318493d1/a/a/a" />
Avatar de inspirateur inspirateur - Membre averti https://www.developpez.com
le 24/10/2017 à 8:13
Slt ! Voici la version 0.1.3 de ValisoaChess. Il commence à comprendre la notion d'espace.
[ATTACH]321730d1/a/a/a" />
Nombre de critères : 16
Critère rajouté : Cases contrôlées.
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.