cs_Megafan
Messages postés389Date d'inscriptiondimanche 7 avril 2002StatutMembreDernière intervention23 septembre 20162 31 juil. 2007 à 11:14
JRIVET : Mode espion, tu l'as déja quand tu fais Menu/solution, il suffirais d'afficher toutes les solutions et non la meilleure. Effectivement cela pourrais se faire en 'asynchrone' comme dans le mode duplicate ou l(ordinateur et le joueur jouent en même temps.
Pour le PS : je verife régulierement les mots ,ils sont bien dans l'ODS et parfois pas dans le dictionnaire courant (il faudrais parfois se demander d'ou sortent ces mots......) :)
Marco62118 :
(Dans la ClsGrille)
je parcours le plateau jusqu'à la première lettre trouvée -> ChercheLettre
Par contre une fois une lettre trouvée ,
Je recherche les mots horizontaux pouvant etre placés au dessus de cette lettre -> ComputeZoneHaut
Je recherche les mots horizontaux pouvant etre placés sur la meme ligne que cette lettre -> ComputeZoneCentrale
Je recherche les mots horizontaux pouvant etre placés au dessous de cette lettre -> ComputeZoneBas
Tu trouveras le processus d'appel à ces fonctions dans la fonction TrouveSolution de la classe.
N'hesite pas .
Cordialement à tous.
Megafan
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 30 juil. 2007 à 08:41
Salut,
Je suis toujours dessus :)
J'ai eu quelques idées en y jouant chez moi qu'en pensez vous:
- Faire une option "Espion" en Mode Solo (mais pas uniquement en Solo d'ailleurs). cette option consisterait à utiliser à chaque tour (caché pour l'utilisateur) la commande qui recherche la meilleure solution avec nos lettres (et ce suivant tout les niveaux de difficulté). Ainsi à la fin de la partie il pourrait apparaitre une fenêtre avec les meilleurs scores possible pour cette partie ce qui permettrais de se faire une idée de notre niveau. (j'espère que je suis assez clair)
- L'idée d'avant a conduit à avoir celle ci: Avoir l'historique des meilleurs coups calculés ci dessus pour pouvoir faire un "REPLAY" sur la partie avec deux grilles; l'une montrant nos coups et l'autre les coups qui aurait du être joué pour avoir le meilleur score.
Voilà.
Bon je vais essayer d'améliorer ma Classe de Socket pour pouvoir jouer à plus de 2.
@+
Julien
PS: ou trouver A COUP SUR les définitions des mots utilisés, car parfois le PC me sort des mots de derrière les fagots, mais j'aimerais connaitre la signification du mot.
marco62118
Messages postés35Date d'inscriptionmercredi 30 janvier 2008StatutMembreDernière intervention25 juin 2015 27 juil. 2007 à 22:45
bonsoir
encore une petite question avant tes vacances
je n'arrive pas à voir comment tu as procédé pour rechercher tes solutions , voilà comment moi j'ai procédé et jaimerai avoir ton avis dessus :
je parcours le plateau jusqu'à la première lettre trouvée je cherche les mots faisables avec cette lettre et le chevalet et vérifie ce qui est mettable sur le plateau, je cherche aussi s'il est possible aussi de juxtaposé à cette lettre un mot vertical je fait ça pour toutes les lettres posée et dans tous les sens possibles mais ceci deviens trop long.
est ce que dans ton programme à chaque coup tu trouves toutes les solutions possibles et imaginables qu'il est possible de faire
en tout cas merci bonne nuit et bonne vacances
cs_Megafan
Messages postés389Date d'inscriptiondimanche 7 avril 2002StatutMembreDernière intervention23 septembre 20162 26 juil. 2007 à 09:52
Bonjour,
Houla que voila beaucoup de travail pour moi qui espérait naivement que le programme etait fini...
J'ai commencé quelques modifs:
Jack et JRivet : Je ne connaissais pas MZTools, super pour les variables et fonctions inutiles.
Set G = New ClsGrille
DrawGrille
Set G = Nothing
Je n'ai pas vu de différence si on l'enlève.
--> Effectivement cela n'a plus lieu d'etre car la grille est déja à l'ecran apres l'appel de InitAffichage.
Pour le gros du travail (RENFIELD et JACK), je pars en congé Vendredi soir pendant 3 semaines et sans PC ! youpi ! A voir pour tout cela à la rentrée.
Pout la mise en reseau et si vous etes adeptes du Scrabble, je vous recommande WordBiz avec lequel j'ai commencé à analyser le protocole qui est relativement simple.
Pour marco62118 :
Effectivement la recherche dans un dictionnaire est la partie (pour moi) la plus interessante du programme, apres multes essais j'ai fais des recherches sur le net et la methode conseillee lors de la recherche de solution sur un ensemble important d'objet est la methode de l'arbre.
Je te conseille de regarder la classe Dico et de comprendre comment la vérification d'un mot ne prend que quelques millisecondes meme sur un dictionnaire de 370 000 mots.
La seconde 'astuce' tu la trouveras dans le module Anagramme ou tu pourras t'apercevoir qu'il n'est pas necessaire de construire toutes les solutions ex : sur un mot de 8 lettres il n'est pas necessaire de construire et de vérifier les mots commencants par AAxxxxxx puisque dans l'arbre du dictionnaire il n'existe pas de fils à AA.
Voila pour te lancer dans les sources.
Cordialement à tous
Megafan
marco62118
Messages postés35Date d'inscriptionmercredi 30 janvier 2008StatutMembreDernière intervention25 juin 2015 25 juil. 2007 à 19:22
Bonjour
pour moi novice en programmation tout me parait impeccable!!!
j'ai déjà commencé le même jeu, ce qui m'intéressait le plus c'est les solutions de l'ordinateur, j'ai un peu abandonné vu la lenteur des solutions trouvées!
Apparemment tu as certainement une bien meilleur méthode de travail!
Est ce que tu pourrais expliquer littéralement les différentes phases du développement de ton jeu car je ne suis pas assez féru en programmation pour suivre ligne par ligne ton programme et en tirer la philosophie de ton programme.
bravo encore
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 25 juil. 2007 à 08:17
Re,
Alors j'ai regardé un peu le code et:
- J'ai regarde sur mon portable avec une résolution de 1280 * 800 la disposition et la taille du plateau et de la feuille devrait être calée sur celle de 1024 * 768 sinon on ne peut pas jouer.
- Les remarques n'engagent que moi :)
- ne pas utiliser les propriétés par défaut des contrôles mais préférer .Text ou .Caption dans la mesure du possible.
- Utiliser VbNullString au lieu de ""
- Dans Form_Load du Main je ne vois pas l'intérêt de
' Afficher une grille vide dans le fond (pour faire joli)
Set G = New ClsGrille
DrawGrille
Set G = Nothing
Je n'ai pas vu de différence si on l'enlève.
- Nettoyer le code des variables qui ne servent à rien (déjà remarqué par Jack)
- Manque de commentaires.
A part ca cela reste toujours aussi plaisant à jouer.
Voyons voir la version jouable en réseau.
@+
violent_ken
Messages postés1812Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention26 octobre 20102 24 juil. 2007 à 21:59
J'ai fait quelques parties contre le CPU avec le dico entier, çà DEPOTE GRAVE ;)
Quelques bugs :
- un crash (désolé pour la reproduction du bug, je ne sais plus. Mais je crois que c'était entre la fin de la refléxion du CPU et le début du chrono)
- quand on clique sur "Changer dictionnaire", le Caption du frame n'est pas le bon (c'est écrit "Choix du niveau...." au mieux de "Choix du dictionnaire")
Quelques idées en tas ^^ :
- comme l'a dit Renfield, pouvoir savoir si le mot existe au fur et à mesure qu'on le tappe (au passage c'est bien d'avoir pris en compte la touche Entrée dans les Textboxes)
- changer la couleur de fond (j'aime pas trop le bleu foncé ni le jaune :p M'enfin, question de goût ^^)
- je préfère la police Tahoma ^^
- mettre dans la zone de texte de la fenêtre Anagramme les lettres que l'on a par défaut
- créer un fichier *.manifest au démarrage si nécessaire (par exemple avec le module de classe de PCPT) pour avoir le style XP (ou bien utiliser mes controles stylés XP !! ^^)
- optimisations de compilation dans les propriétés du projet
- mettre un fenêtre "Table" (ou une zone de l'écran) où sont affichées les correspondance Point/Lettre pour ceux qui ne les connaissent pas par coeur
- plutôt que mettre la liste des lettres restantes, mettre celle des lettres déjà sur le plateau + celles en possession du joueur, avec l'information du nombre total de chaque lettre (exemple : A - 2/9)
- raccourcis dans les menus (F2 pour nouveau jeu...etc) ainsi que sur les boutons
- ne pas mettre en pause le chrono quand on affiche par exemple la Form de changement de lettres, ou bien cacher le plateau (sinon on peut réfléchir à l'infini...)
- proposer un mode CPU vs CPU (marrant à voir)
- utilise le bouton "Centrer horizontalement" dans l'éditeur de Form pour placer tes controles de manière symétrique
- proposer une recherche de solutions "par critères" (exemple : le plus de points, mot le plus long, utilisation obligatoire de telle ou telle lettre...etc)
Bon courage et bravo !
@+
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 24 juil. 2007 à 18:52
Agréablement étonné de la qualité de l'ouvrage, félicitations.
Efficace et agréable graphiquement (à part le texte noir sur son bleu qu'à souligné Maitre Renfield.
Si tu veux de l'aide concernant l'option "jeu en réseau", je suis a ta disposition.
Va falloir reflechir à :
- qui distribue les lettres - à mon avis chaque poste peut s'en occuper, du moment qu'après distribution, la liste des lettres restante est rediffusée aux autres.
- synchro des chronos/joueurs - relativement simple
- Emission/réception de la grille - simple aussi
- Augmenter le nombre de joueurs potentiels
- Nommer les joueurs - pseudos - en début de partie
- Jeu sur réseau privé, pas de grande difficulté, j'ai ce qu'il faut pour n'avoir besoin d'aucun paramétrage de la part des utilisateurs
- Jeu en réseau sur internet, prévoir serveur ? ou de joueur à joueur (l'un d'eux héberge)
...
Les idées ne manquent pas !
Beau travail
Si tu utilises MzTools, tu verras que pas mal de variables définies ne servent pas = petit coup de nettoyage
apxa
Messages postés188Date d'inscriptionmercredi 15 mai 2002StatutMembreDernière intervention25 avril 2009 24 juil. 2007 à 14:54
Iop all,
Très bonne source, bravo.
J'en avais fait un en java, et par rapport à celà je m'étais inspiré non un d'un classic scrabble mais du wordox basé sur les mêmes règles à la différence que l'on peut prendre le point de la d'un autres joueurs lorsques colle un mot à sa lettre ou tous les points de son mot lorsque l'on complete son mot par une lettre.
Très fun à plusieurs.
Have Fun.
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 24 juil. 2007 à 14:33
très interessantes, je ne sais pas, c'est ce que j'ai trouver rapidement...
l'appli est assez complète, c'est assez rare pour être souligné, donc autant pousser MegaFan un peu plus loin, il semble en avoir la capacité.
jrivet> Pour corser ou alléger la difficulté pour des joueurs moins expérimentés...
avoir plus de R,S,T,L,N ou de E, par exemple. (ou de X, K, Z et W si vous êtes mazos^^)
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 24 juil. 2007 à 14:25
Re,
les Propositions de Renfield, sont comme d'habitude très intéressantes, et ils est vrai qu'elles apporteraient énormément.
(a une seule près => Possibilité de personnaliser le contenu du sac (nombre de lettres) quel est l'intérêt??)
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 24 juil. 2007 à 14:23
pas possibilité pour l'appli de générer une fois pour toutes ces dictionnaires (ou de les telecharger) en se basant sur le web ? (ou de jouer avec un dico en ligne)
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 24 juil. 2007 à 14:19
pas mal...
peu regardé le code, uniquement pour la lenteur du Load.
quelques conseils
- ne jamais faire de loading ou de traitements longs dans le Form_Load.
fais le test suivant :
- ajoutes un Timer (Interval 1 ; Enabled false)
- dans ton Form_Load, appelle FrmSplash.Show puis InitAffichage
ensuite, active le Timer. Dans le code du Timer,
tu désactive le Timer, et tu recolles simplement
tout le code qui se trouvais a la suite, dans Form_Load (en placant
tout au debut le parametrage des colonnes de GridHistorique).
Ca aura pour effet d'avoir un chargement instantané !!!
- Maintenant que ton code est en ligne, tu peux mettre l'URL de ta source dans l'About
- Ajoutes des raccourcis clavier dans tes menus (+ les caractères soulignés)
- Ajoutes la gestion de la touche entrée et Echap dans tes ecrans de parametres, etc
- En ouvrant la fenetre d'anagrammes, on pourrait avoir la liste des lettres que nous possédons..
- dans la fenetre d'anagrammes, on voit en bas "mots en - s". c'est pas très joli...
- Noir sur bleu marine, on ne voit pas bien les messages texte.
tu as choisi de ne pas utiliser de MsgBox, tu peux faire un truc sympa visuellement...
- suggestions pour le gameplay :
- Ajouter un deuxieme chevalet, pour composer les mots
- Double Click sur les lettres : les placer a la suite du deuxieme chevalet
- Vu que la partie peut etre chronométrée, faudrait un bouton Pause (avec masquage du jeu et des lettres
bien evidemment) ^^
- Possibilité de personnaliser le contenu du sac (nombre de lettres)
- + un moyen pour déplacer le mot en entier sur le plateau
(avec egstion des lettres deja présentes, et de l'orientation du mot, sympa, hein ^^)
- la recherche dans le dictionnaire est rapide. La fonction qui permet de vérifier les mots pourrait
etre faite au fur et a mesure que le texte saisi est modifié (evenement _Change, quoi )
- Click sur 'Solution' > ce serait bien d'ajouter un bouton 'Jouer ce coup'
- peut etre inscrire les mentions 'x2' 'x3' pour ceux qui comme moi ne connaissent pas le plateau par coeur
cs_Megafan
Messages postés389Date d'inscriptiondimanche 7 avril 2002StatutMembreDernière intervention23 septembre 20162 24 juil. 2007 à 14:08
EBartSoft : Merci encore pour ton compliment j'en suis reellement flaté connaissant la grande qualité de tes sources.
Renfield : Effectivement cela ferait gagner un peu de place , mais la taille du .zip sans les dictionnaire n'est que de 298 Ko donc cela ne va pas le faire, car juste avec l'ODS (dictionnaire offciel du Scrabble Français), le zip passe à 1 390 Ko.....
Je vais essayer de trouver de la place sur Internet pour l'Uploader (rapidement et pendant une grande durée car généralement c'est 3 mois) ou si exceptionellement un Admin peu le placer sur VBFrance cela faciliterait bien la vie :)
Cordialement
Megafan
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 24 juil. 2007 à 13:56
je cromprend mieux ta question posée sur la taille des Zips :p
FrmPics.frx => 2.49 Mo
tu devrais placer tes images en erssources externes, en un format autre que le BMP utilisé dans les .frx, tu y gagnera en place dans ton .zip
cs_EBArtSoft
Messages postés4525Date d'inscriptiondimanche 29 septembre 2002StatutModérateurDernière intervention22 avril 20199 24 juil. 2007 à 13:53
Megafan > C'est une belle source un beau programme il serait dommage de n'en laisser qu'une seule partie. Je ne peux malheureusement rien te proposer pour le moment mais tu peux tres bien laisser le lien en telechargement qui sera un complement de la source sur vbfrance.
Merci pour ta comprehension et bonne continuation
@+
violent_ken
Messages postés1812Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention26 octobre 20102 24 juil. 2007 à 13:50
Salut, excellente source (jouable solo contre le CPU, çà j'adore).
J'ai survolé légèrement le code, c'est bien organisé et très lisible. Manque juste quelques commentaires ^^
Je note 10/10 bien sur !
@+
LeCarpiste
Messages postés37Date d'inscriptionmardi 8 janvier 2002StatutMembreDernière intervention26 mars 2008 24 juil. 2007 à 09:58
Excuse, je suis passé entre deux ! Effectivement, çà m'interesse beaucoup !
Manque plus que le jeu multijoueur en réseau, et là, de longues soirées d'hiver en perspective !!!
cs_Megafan
Messages postés389Date d'inscriptiondimanche 7 avril 2002StatutMembreDernière intervention23 septembre 20162 24 juil. 2007 à 09:49
Salut LECARPISTE : j'ai enlevé les sources du site d'upload, et misent sur VBFrance avec un dictionnaire réduit...
Contactez-moi pour les dictionnaires complets si le jeu vous interesse
Megafan
LeCarpiste
Messages postés37Date d'inscriptionmardi 8 janvier 2002StatutMembreDernière intervention26 mars 2008 24 juil. 2007 à 09:44
Salut,
Semble interessant, mais impossible de trouver le zip de téléchargement ?
Bonne continuation !
Cordialement
LeCarpiste
cs_Megafan
Messages postés389Date d'inscriptiondimanche 7 avril 2002StatutMembreDernière intervention23 septembre 20162 24 juil. 2007 à 08:46
Salut,
EBartSoft : Merci du compliment je l'accepte à sa juste valeur.
JRivet : En mode Duplicate tu peux bouger tes pions pendant que l'ordinateur refléchi, en mode normal il est plus ou moins interdit de le faire (règle).
Pour les sources , cela me fend le coeur d'anlever tout ou partie des dictionnaire afin que le source puisse etre uploadé sur VBFrance, mais je vais y travailler
Cordialement
Megafan
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 24 juil. 2007 à 08:12
Salut,
pour le peu que j'en ai vu c'est très agréable à jouer.
Mais il est vrai qu'il faut rapidement mettre les sources ICI.
Une petite remarque. Lorsque l'ordinateur réfléchit pourquoi ne pas laisser au joueur la possibilité de déplacer ses lettres (au moins sur son chevalet) pour chercher aussi en parralèle
Sinon vraiment bien fait.
A voir le code maintenant.
@+
Julien
cs_EBArtSoft
Messages postés4525Date d'inscriptiondimanche 29 septembre 2002StatutModérateurDernière intervention22 avril 20199 23 juil. 2007 à 21:23
Je trouve ça super ! Mais il est vrais qu'il faut au moins que tu pose ton code ici, c'est les regles du site.
Merci
@+
MorpionMx
Messages postés3466Date d'inscriptionlundi 16 octobre 2000StatutMembreDernière intervention30 octobre 200857 23 juil. 2007 à 18:21
Salut,
Il faudrait que tu mettes au moins les sources sur le site, quitte a donner un autre lien qui pointe vers toutes les autres ressources.
Autrement, scrabble etant une marque déposée, il faut que tu trouves un autre nom pour ta source ;)
31 juil. 2007 à 11:14
Pour le PS : je verife régulierement les mots ,ils sont bien dans l'ODS et parfois pas dans le dictionnaire courant (il faudrais parfois se demander d'ou sortent ces mots......) :)
Marco62118 :
(Dans la ClsGrille)
je parcours le plateau jusqu'à la première lettre trouvée -> ChercheLettre
Par contre une fois une lettre trouvée ,
Je recherche les mots horizontaux pouvant etre placés au dessus de cette lettre -> ComputeZoneHaut
Je recherche les mots horizontaux pouvant etre placés sur la meme ligne que cette lettre -> ComputeZoneCentrale
Je recherche les mots horizontaux pouvant etre placés au dessous de cette lettre -> ComputeZoneBas
Tu trouveras le processus d'appel à ces fonctions dans la fonction TrouveSolution de la classe.
N'hesite pas .
Cordialement à tous.
Megafan
30 juil. 2007 à 08:41
Je suis toujours dessus :)
J'ai eu quelques idées en y jouant chez moi qu'en pensez vous:
- Faire une option "Espion" en Mode Solo (mais pas uniquement en Solo d'ailleurs). cette option consisterait à utiliser à chaque tour (caché pour l'utilisateur) la commande qui recherche la meilleure solution avec nos lettres (et ce suivant tout les niveaux de difficulté). Ainsi à la fin de la partie il pourrait apparaitre une fenêtre avec les meilleurs scores possible pour cette partie ce qui permettrais de se faire une idée de notre niveau. (j'espère que je suis assez clair)
- L'idée d'avant a conduit à avoir celle ci: Avoir l'historique des meilleurs coups calculés ci dessus pour pouvoir faire un "REPLAY" sur la partie avec deux grilles; l'une montrant nos coups et l'autre les coups qui aurait du être joué pour avoir le meilleur score.
Voilà.
Bon je vais essayer d'améliorer ma Classe de Socket pour pouvoir jouer à plus de 2.
@+
Julien
PS: ou trouver A COUP SUR les définitions des mots utilisés, car parfois le PC me sort des mots de derrière les fagots, mais j'aimerais connaitre la signification du mot.
27 juil. 2007 à 22:45
encore une petite question avant tes vacances
je n'arrive pas à voir comment tu as procédé pour rechercher tes solutions , voilà comment moi j'ai procédé et jaimerai avoir ton avis dessus :
je parcours le plateau jusqu'à la première lettre trouvée je cherche les mots faisables avec cette lettre et le chevalet et vérifie ce qui est mettable sur le plateau, je cherche aussi s'il est possible aussi de juxtaposé à cette lettre un mot vertical je fait ça pour toutes les lettres posée et dans tous les sens possibles mais ceci deviens trop long.
est ce que dans ton programme à chaque coup tu trouves toutes les solutions possibles et imaginables qu'il est possible de faire
en tout cas merci bonne nuit et bonne vacances
27 juil. 2007 à 21:13
26 juil. 2007 à 14:21
Ca y est j'ai développer un petit mode réseau.. on n'arrête pas au taf en cette grande période de vacances...
Encore merci pour cette source.
26 juil. 2007 à 13:30
http://bnmvp.free.fr/cs/vb43548.zip
26 juil. 2007 à 09:52
Houla que voila beaucoup de travail pour moi qui espérait naivement que le programme etait fini...
J'ai commencé quelques modifs:
Jack et JRivet : Je ne connaissais pas MZTools, super pour les variables et fonctions inutiles.
Set G = New ClsGrille
DrawGrille
Set G = Nothing
Je n'ai pas vu de différence si on l'enlève.
--> Effectivement cela n'a plus lieu d'etre car la grille est déja à l'ecran apres l'appel de InitAffichage.
Pour le gros du travail (RENFIELD et JACK), je pars en congé Vendredi soir pendant 3 semaines et sans PC ! youpi ! A voir pour tout cela à la rentrée.
Pout la mise en reseau et si vous etes adeptes du Scrabble, je vous recommande WordBiz avec lequel j'ai commencé à analyser le protocole qui est relativement simple.
Pour marco62118 :
Effectivement la recherche dans un dictionnaire est la partie (pour moi) la plus interessante du programme, apres multes essais j'ai fais des recherches sur le net et la methode conseillee lors de la recherche de solution sur un ensemble important d'objet est la methode de l'arbre.
Je te conseille de regarder la classe Dico et de comprendre comment la vérification d'un mot ne prend que quelques millisecondes meme sur un dictionnaire de 370 000 mots.
La seconde 'astuce' tu la trouveras dans le module Anagramme ou tu pourras t'apercevoir qu'il n'est pas necessaire de construire toutes les solutions ex : sur un mot de 8 lettres il n'est pas necessaire de construire et de vérifier les mots commencants par AAxxxxxx puisque dans l'arbre du dictionnaire il n'existe pas de fils à AA.
Voila pour te lancer dans les sources.
Cordialement à tous
Megafan
25 juil. 2007 à 19:22
pour moi novice en programmation tout me parait impeccable!!!
j'ai déjà commencé le même jeu, ce qui m'intéressait le plus c'est les solutions de l'ordinateur, j'ai un peu abandonné vu la lenteur des solutions trouvées!
Apparemment tu as certainement une bien meilleur méthode de travail!
Est ce que tu pourrais expliquer littéralement les différentes phases du développement de ton jeu car je ne suis pas assez féru en programmation pour suivre ligne par ligne ton programme et en tirer la philosophie de ton programme.
bravo encore
25 juil. 2007 à 08:17
Alors j'ai regardé un peu le code et:
- J'ai regarde sur mon portable avec une résolution de 1280 * 800 la disposition et la taille du plateau et de la feuille devrait être calée sur celle de 1024 * 768 sinon on ne peut pas jouer.
- Les remarques n'engagent que moi :)
- ne pas utiliser les propriétés par défaut des contrôles mais préférer .Text ou .Caption dans la mesure du possible.
- Utiliser VbNullString au lieu de ""
- Dans Form_Load du Main je ne vois pas l'intérêt de
' Afficher une grille vide dans le fond (pour faire joli)
Set G = New ClsGrille
DrawGrille
Set G = Nothing
Je n'ai pas vu de différence si on l'enlève.
- Nettoyer le code des variables qui ne servent à rien (déjà remarqué par Jack)
- Manque de commentaires.
A part ca cela reste toujours aussi plaisant à jouer.
Voyons voir la version jouable en réseau.
@+
24 juil. 2007 à 21:59
Quelques bugs :
- un crash (désolé pour la reproduction du bug, je ne sais plus. Mais je crois que c'était entre la fin de la refléxion du CPU et le début du chrono)
- quand on clique sur "Changer dictionnaire", le Caption du frame n'est pas le bon (c'est écrit "Choix du niveau...." au mieux de "Choix du dictionnaire")
Quelques idées en tas ^^ :
- comme l'a dit Renfield, pouvoir savoir si le mot existe au fur et à mesure qu'on le tappe (au passage c'est bien d'avoir pris en compte la touche Entrée dans les Textboxes)
- changer la couleur de fond (j'aime pas trop le bleu foncé ni le jaune :p M'enfin, question de goût ^^)
- je préfère la police Tahoma ^^
- mettre dans la zone de texte de la fenêtre Anagramme les lettres que l'on a par défaut
- créer un fichier *.manifest au démarrage si nécessaire (par exemple avec le module de classe de PCPT) pour avoir le style XP (ou bien utiliser mes controles stylés XP !! ^^)
- optimisations de compilation dans les propriétés du projet
- mettre un fenêtre "Table" (ou une zone de l'écran) où sont affichées les correspondance Point/Lettre pour ceux qui ne les connaissent pas par coeur
- plutôt que mettre la liste des lettres restantes, mettre celle des lettres déjà sur le plateau + celles en possession du joueur, avec l'information du nombre total de chaque lettre (exemple : A - 2/9)
- raccourcis dans les menus (F2 pour nouveau jeu...etc) ainsi que sur les boutons
- ne pas mettre en pause le chrono quand on affiche par exemple la Form de changement de lettres, ou bien cacher le plateau (sinon on peut réfléchir à l'infini...)
- proposer un mode CPU vs CPU (marrant à voir)
- utilise le bouton "Centrer horizontalement" dans l'éditeur de Form pour placer tes controles de manière symétrique
- proposer une recherche de solutions "par critères" (exemple : le plus de points, mot le plus long, utilisation obligatoire de telle ou telle lettre...etc)
Bon courage et bravo !
@+
24 juil. 2007 à 18:52
Efficace et agréable graphiquement (à part le texte noir sur son bleu qu'à souligné Maitre Renfield.
Si tu veux de l'aide concernant l'option "jeu en réseau", je suis a ta disposition.
Va falloir reflechir à :
- qui distribue les lettres - à mon avis chaque poste peut s'en occuper, du moment qu'après distribution, la liste des lettres restante est rediffusée aux autres.
- synchro des chronos/joueurs - relativement simple
- Emission/réception de la grille - simple aussi
- Augmenter le nombre de joueurs potentiels
- Nommer les joueurs - pseudos - en début de partie
- Jeu sur réseau privé, pas de grande difficulté, j'ai ce qu'il faut pour n'avoir besoin d'aucun paramétrage de la part des utilisateurs
- Jeu en réseau sur internet, prévoir serveur ? ou de joueur à joueur (l'un d'eux héberge)
...
Les idées ne manquent pas !
Beau travail
Si tu utilises MzTools, tu verras que pas mal de variables définies ne servent pas = petit coup de nettoyage
24 juil. 2007 à 14:54
Très bonne source, bravo.
J'en avais fait un en java, et par rapport à celà je m'étais inspiré non un d'un classic scrabble mais du wordox basé sur les mêmes règles à la différence que l'on peut prendre le point de la d'un autres joueurs lorsques colle un mot à sa lettre ou tous les points de son mot lorsque l'on complete son mot par une lettre.
Très fun à plusieurs.
Have Fun.
24 juil. 2007 à 14:33
l'appli est assez complète, c'est assez rare pour être souligné, donc autant pousser MegaFan un peu plus loin, il semble en avoir la capacité.
jrivet> Pour corser ou alléger la difficulté pour des joueurs moins expérimentés...
avoir plus de R,S,T,L,N ou de E, par exemple. (ou de X, K, Z et W si vous êtes mazos^^)
24 juil. 2007 à 14:25
les Propositions de Renfield, sont comme d'habitude très intéressantes, et ils est vrai qu'elles apporteraient énormément.
(a une seule près => Possibilité de personnaliser le contenu du sac (nombre de lettres) quel est l'intérêt??)
24 juil. 2007 à 14:23
24 juil. 2007 à 14:19
peu regardé le code, uniquement pour la lenteur du Load.
quelques conseils
- ne jamais faire de loading ou de traitements longs dans le Form_Load.
fais le test suivant :
- ajoutes un Timer (Interval 1 ; Enabled false)
- dans ton Form_Load, appelle FrmSplash.Show puis InitAffichage
ensuite, active le Timer. Dans le code du Timer,
tu désactive le Timer, et tu recolles simplement
tout le code qui se trouvais a la suite, dans Form_Load (en placant
tout au debut le parametrage des colonnes de GridHistorique).
Ca aura pour effet d'avoir un chargement instantané !!!
- Maintenant que ton code est en ligne, tu peux mettre l'URL de ta source dans l'About
- Ajoutes des raccourcis clavier dans tes menus (+ les caractères soulignés)
- Ajoutes la gestion de la touche entrée et Echap dans tes ecrans de parametres, etc
- En ouvrant la fenetre d'anagrammes, on pourrait avoir la liste des lettres que nous possédons..
- dans la fenetre d'anagrammes, on voit en bas "mots en - s". c'est pas très joli...
- Noir sur bleu marine, on ne voit pas bien les messages texte.
tu as choisi de ne pas utiliser de MsgBox, tu peux faire un truc sympa visuellement...
- suggestions pour le gameplay :
- Ajouter un deuxieme chevalet, pour composer les mots
- Double Click sur les lettres : les placer a la suite du deuxieme chevalet
- Vu que la partie peut etre chronométrée, faudrait un bouton Pause (avec masquage du jeu et des lettres
bien evidemment) ^^
- Possibilité de personnaliser le contenu du sac (nombre de lettres)
- + un moyen pour déplacer le mot en entier sur le plateau
(avec egstion des lettres deja présentes, et de l'orientation du mot, sympa, hein ^^)
- la recherche dans le dictionnaire est rapide. La fonction qui permet de vérifier les mots pourrait
etre faite au fur et a mesure que le texte saisi est modifié (evenement _Change, quoi )
- Click sur 'Solution' > ce serait bien d'ajouter un bouton 'Jouer ce coup'
- peut etre inscrire les mentions 'x2' 'x3' pour ceux qui comme moi ne connaissent pas le plateau par coeur
24 juil. 2007 à 14:08
Renfield : Effectivement cela ferait gagner un peu de place , mais la taille du .zip sans les dictionnaire n'est que de 298 Ko donc cela ne va pas le faire, car juste avec l'ODS (dictionnaire offciel du Scrabble Français), le zip passe à 1 390 Ko.....
Je vais essayer de trouver de la place sur Internet pour l'Uploader (rapidement et pendant une grande durée car généralement c'est 3 mois) ou si exceptionellement un Admin peu le placer sur VBFrance cela faciliterait bien la vie :)
Cordialement
Megafan
24 juil. 2007 à 13:56
FrmPics.frx => 2.49 Mo
tu devrais placer tes images en erssources externes, en un format autre que le BMP utilisé dans les .frx, tu y gagnera en place dans ton .zip
24 juil. 2007 à 13:53
Merci pour ta comprehension et bonne continuation
@+
24 juil. 2007 à 13:50
J'ai survolé légèrement le code, c'est bien organisé et très lisible. Manque juste quelques commentaires ^^
Je note 10/10 bien sur !
@+
24 juil. 2007 à 09:58
Manque plus que le jeu multijoueur en réseau, et là, de longues soirées d'hiver en perspective !!!
çà semble vraiment sympa !
Bonne continuation !
Le Carpiste !
24 juil. 2007 à 09:49
Contactez-moi pour les dictionnaires complets si le jeu vous interesse
Megafan
24 juil. 2007 à 09:44
Semble interessant, mais impossible de trouver le zip de téléchargement ?
Bonne continuation !
Cordialement
LeCarpiste
24 juil. 2007 à 08:46
EBartSoft : Merci du compliment je l'accepte à sa juste valeur.
JRivet : En mode Duplicate tu peux bouger tes pions pendant que l'ordinateur refléchi, en mode normal il est plus ou moins interdit de le faire (règle).
Pour les sources , cela me fend le coeur d'anlever tout ou partie des dictionnaire afin que le source puisse etre uploadé sur VBFrance, mais je vais y travailler
Cordialement
Megafan
24 juil. 2007 à 08:12
pour le peu que j'en ai vu c'est très agréable à jouer.
Mais il est vrai qu'il faut rapidement mettre les sources ICI.
Une petite remarque. Lorsque l'ordinateur réfléchit pourquoi ne pas laisser au joueur la possibilité de déplacer ses lettres (au moins sur son chevalet) pour chercher aussi en parralèle
Sinon vraiment bien fait.
A voir le code maintenant.
@+
Julien
23 juil. 2007 à 21:23
Merci
@+
23 juil. 2007 à 18:21
Il faudrait que tu mettes au moins les sources sur le site, quitte a donner un autre lien qui pointe vers toutes les autres ressources.
Autrement, scrabble etant une marque déposée, il faut que tu trouves un autre nom pour ta source ;)