JEU D'ECHEC / CHESSGAME

MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 - 6 juin 2006 à 18:27
pyvator Messages postés 1 Date d'inscription samedi 18 octobre 2008 Statut Membre Dernière intervention 30 juin 2009 - 30 juin 2009 à 19:06
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/37989-jeu-d-echec-chessgame

pyvator Messages postés 1 Date d'inscription samedi 18 octobre 2008 Statut Membre Dernière intervention 30 juin 2009
30 juin 2009 à 19:06
bonjour,

J'ai 13 ans je connais vb et c# et aussi asp.net et je cherche aussi a faire un jeu d'echec tes exemples mon enórmement aider.
et surtout CHAPEAU, j'en connais pas beaucoup des personne qui savent faire un jeux d'echec.

merci.
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
15 janv. 2009 à 08:07
Si tu avais regardé le code, tu aurais vu que l'ordi joue un coup au hasard ;-)
Si tu veux vraiment te mesurer à lui, règle "web-service" dans les options du jeu (en espérant qu'il soit toujours en fonction...)
loadseq Messages postés 4 Date d'inscription lundi 17 octobre 2005 Statut Membre Dernière intervention 15 janvier 2009
15 janv. 2009 à 02:47
un travail bon structuré,felecitation.
bon, je sais pas si tu joue les echecs mais j ai battu ton programme par un simple coup de berger 3 fois consecutive tout en etant au niveau 5 !!!!

coups de berger :4 mouvements !!
watabou Messages postés 9 Date d'inscription lundi 19 mars 2007 Statut Membre Dernière intervention 15 juillet 2009
31 mars 2008 à 17:48
J'ai téléchargé le projet pour voir un peu, et je trouve vraiment que c'est du bon travail :)
Il y a certaines choses à revoir (la création des pièces dans le game.cs par ex.) et des petits bugs (par exemple lorsque tu test si une piece doit etre "freeze", tu met une condition incomplete :"PieceMovecontinue.cs => FreezePiece() =>
if (!(otherPiece is Queen || otherPiece is Bishop || (Math.Abs(X) == 1 && otherPiece is Pawn) "
ce qui fait que si avec un fou ou une dame,on se met juste derrière un pion qui doit etre "freeze" pour éviter un échec, et bien le pion peut tout de meme bouger (cool on peut manger le roi du coup xd) :)
perso j'ai changé pour : (!otherPiece.AvailablePositions.Contains(base.CurrentPosition)).

Sinon c'est vraiment bien détaillé et on comprend très rapidement, ce qui est assez rare pour être dit.
Merci beaucoup pour tout ce travail :)
gbloch Messages postés 1 Date d'inscription mercredi 8 août 2007 Statut Membre Dernière intervention 4 janvier 2008
4 janv. 2008 à 08:47
Bonjour,

J'ai téléchargé le zip ce matin.
Pour une raison que je ne peux expliquer (je ne suis pas un geek), l'aide en ligne ne fonctionnait pas, créant en fait une erreur système.
J'ai donc modifié la ligne de code

Ancien code:
private void mnuAboutHelp_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("http://www.iechecs.com");
}

Nouveau code:
private void mnuAboutHelp_Click(object sender, EventArgs e)
{
System.Diagnostics.Process.Start("IExplore.exe","http://www.iechecs.com");
}

Il y avait peut-être une autre solution, mais je ne la connaissait pas.


Pour le reste, très chouette, je me régale ...
Beaucoup de commentaire, code très lisible ... etc ...

A plus
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
28 juil. 2007 à 15:17
Merci ;-)
projetf Messages postés 26 Date d'inscription dimanche 15 avril 2007 Statut Membre Dernière intervention 27 avril 2009
18 juin 2007 à 14:36
tout simplement parfait !
Nitrite59 Messages postés 39 Date d'inscription samedi 2 septembre 2006 Statut Membre Dernière intervention 16 octobre 2007
11 avril 2007 à 18:30
Je l'ai remarqué tout a l'heure mais j'avais pas envie de recommencer la création du setup, puis, pour quelques octets de plus, c'est pas la mort :DD
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
11 avril 2007 à 18:28
Il est dans ton profil, je l'ai trouvé à cet endroit ;-)

Autres choses, tu as mis pleins de fichiers inutiles dans ton archive. Normalement, seuls ChessAI.dll, ChessCtrl.dll, ChessGame.exe et ChessLib.dll sont nécessaires!
Nitrite59 Messages postés 39 Date d'inscription samedi 2 septembre 2006 Statut Membre Dernière intervention 16 octobre 2007
11 avril 2007 à 18:23
J'ai remarqué aussi mais comment tu peux le savoir vu que tu ne connais pas le lien de mon site ^^
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
11 avril 2007 à 18:16
Sympa sauf que tu t'es trompé de lien, ça ne pointe pas sur mon jeu d'échec...
(Et en testant, je viens de voir que le webService est mort, pas cool, faudrait que je mette à jour)
Nitrite59 Messages postés 39 Date d'inscription samedi 2 septembre 2006 Statut Membre Dernière intervention 16 octobre 2007
11 avril 2007 à 16:07
J'ai créé une installation disponible sur mon site avec le lien vers ici dans le menu démarrer :).
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
11 avril 2007 à 14:39
Si tu debug, c'est que l'exe est dejà crée :D
Tu te mets en mode release, cliques droit sur la solution (le projet), et ensuite Build.
L'exe est crée dans le répretoire bin/release de l'application (y'a aussi des DLLs).

Un lien sur ton site de cette page pourrait être sympa si tu ajoutes le programme.... ;-)
Nitrite59 Messages postés 39 Date d'inscription samedi 2 septembre 2006 Statut Membre Dernière intervention 16 octobre 2007
11 avril 2007 à 14:31
J'ai une folle envie d'etre le boulet du mois ! J'arrive a deboguer mais comment je fais pour sauvegarder sous un executable ? pour que je puis le mettre sur mon site. Merci de m'aider.
Nitrite59 Messages postés 39 Date d'inscription samedi 2 septembre 2006 Statut Membre Dernière intervention 16 octobre 2007
11 avril 2007 à 14:15
Merci beaucoup bidou !
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
11 avril 2007 à 14:13
Une version express gratuite ici:
http://www.microsoft.com/france/msdn/vstudio/express/vcsharp/default.mspx

N'hésites à poster tes questions sur le forum...
Nitrite59 Messages postés 39 Date d'inscription samedi 2 septembre 2006 Statut Membre Dernière intervention 16 octobre 2007
11 avril 2007 à 14:10
Je ne trouve pas visual studio, que des payants donc si tu as un lien pour avoir une version gratuite, je te serais trés reconnassant merci.
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
11 avril 2007 à 12:18
C'est très simple: ouvrir le fichier sln avec Visual Studio (ou autre logiciel qui supporte ce type de fichier), puis ensuite:

- Soit le compiler et utiliser l'executable.
- Soit le démarrer en mode debug.
Nitrite59 Messages postés 39 Date d'inscription samedi 2 septembre 2006 Statut Membre Dernière intervention 16 octobre 2007
11 avril 2007 à 12:06
Salut tout le monde, je debute donc voila, j'ai un probleme : comment on fait pour faire fonctionner ce jeu ?? je sais pas comment faire :s je sais pas s'il faut compiler et si c'est ca, ou est le fichier principal ? merci a ceux qui vont m'aider.
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
14 janv. 2007 à 21:29
On peut jouer en ligne contre un webService, mais pas contre un autre humain...
bougueddima Messages postés 1 Date d'inscription samedi 4 novembre 2006 Statut Membre Dernière intervention 2 décembre 2006
2 déc. 2006 à 17:08
bien mais ça sera mieux si on ajoute la possibility de jouer en ligne --- bon courage
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
24 juil. 2006 à 12:14
Salut,
Merci pour le lien (je connaissais pas).
Je vais un peu regarder le code source, ça à l'air pas mal plus complet que le mien... pour l'instant! ;-)
Nimmzo Messages postés 1 Date d'inscription vendredi 21 juillet 2006 Statut Membre Dernière intervention 24 juillet 2006
24 juil. 2006 à 11:50
Hello Bidou,
Comme alternative à UCI, il existe le protocole Winboard
pour faire fonctionner le module d'Echecs
dans l'IHM freeware Arena :
http://www.playwitharena.com/

Voir le code source C# 2.0 du freeware SharpChess :
http://sharpchess.com/
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
21 juin 2006 à 10:08
Merchi ;-)
woot6768 Messages postés 393 Date d'inscription mercredi 8 mars 2006 Statut Membre Dernière intervention 23 mars 2007
21 juin 2006 à 10:03
Salut,
Très bien ton jeu d'échec!
Il va me faloir du temps pour regarder tous ton code!
Mais en tout cas bravo...
Woot
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
8 juin 2006 à 22:52
Pour les commentaires, je dois avouer que j'ai pris l'habitude de toujours tout mettre en Anglais. A ce sujet, je m'excuse pour les nombreuses fautes (j'arrête pas d'en corriger...).
Pour le pion, quand il arrive sur la case 1 respectivement 8, il peut se transformer en Cavalier, Fou, Dame ou Tour à choix...
On peut doit avoir, théoriquement, jusqu'à 9 dames pour le même joueur.
cs_kamalz Messages postés 26 Date d'inscription samedi 15 octobre 2005 Statut Membre Dernière intervention 27 juillet 2006
8 juin 2006 à 22:46
Tres bon effort, mais pourquoi les commentaires in english et un autre prob c'es qund on traverse avec le pion de l'autre cote il nous donne la possibilité de recuperer meme une autre rene pour jouer à 2!!
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
8 juin 2006 à 21:25
Oui, c'est plutôt sympa :-)
Reste encore l'AI local et la partie réseau...
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
8 juin 2006 à 21:19
Impeccable l'integration du web service.
Vraiment du tres bon boulot !
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
7 juin 2006 à 20:26
Non, je n'ai absolument pas regarder de ce côté là.
Par contre j'ai trouvé une AI sous forme de WebService, ça pourrait être intéressant de l'implémenter (en plus d'une AI local et de pouvoir faire qu'on puisse jouer en réseau).
Enfin, pour faire tout ça, y'a pas mal de travail encore.
bubbathemaster Messages postés 339 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 25 mars 2009 4
7 juin 2006 à 20:22
Je viens de regarder en details également et bien félicitations, c'est vraiment très bien foutu, jusque dans le code source.
Continue comme ça ;-)
Au fait, tu t'es renseigné sur l'UCI ? http://en.wikipedia.org/wiki/Universal_Chess_Interface
C'est un standard de communication pour les jeux dechecs. Je ne pense pas le supporter dans un premier temps pour mon propre jeu d'echecs, mais si on me démontre par A+B que c'est un énorme plus, pourquoi pas :)
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
7 juin 2006 à 19:02
Remarque notée, j'essayerai de faire ça pour une prochaine mise à jour !
Merci.
Nikoui Messages postés 794 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 19 août 2008 13
7 juin 2006 à 14:44
Eh ben, belle source :) y'a une sacré base là, et si en plus tu rajoutes ce dont tu parles (en particulier le réseau..) ca sera surement utile à beaucoup de monde... Si je peux me permettre, une suggestion : lorsque tu détectes 'à la volée' si le pion peut être posé ou non, tu pourrais colorier la case visée d'une couleur indiquant si le coup est possible/interdit (genre vert/rouge), ça serait plus visible que le seul changement de curseur.
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
6 juin 2006 à 23:01
Hé ben tant mieux, elle est là pour ça ;-)
bubbathemaster Messages postés 339 Date d'inscription dimanche 26 janvier 2003 Statut Membre Dernière intervention 25 mars 2009 4
6 juin 2006 à 22:58
Génial je suis en ce moment en train de coder jeu d'echec en 3D avec Managed DirectX (ouais bon j'essaye quoi :D ), et je voulais pas me prendre la tete avec tout ce qui est echecs pour me concentrer sur la 3D. Ta source me sera sans doute utile =)
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
6 juin 2006 à 20:18
Merci Mx! ;-)
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
6 juin 2006 à 18:27
Va falloir du temps pour ecumer toute la source, mais en tout cas ca m'a l'air impeccable
Rejoignez-nous