Un solveur pour le jeu Word Blossom. Le solveur est uniquement à des fins d'éducation non commerciale. Tous les tranders appartiennent à Merriam-Webster.
https://kensnyder.github.io/blossom-solver/
J'adore jouer à Blossom, mais je me demande toujours comment mon score s'accumule contre le meilleur score possible. Cet outil tente de trouver un score élevé pour un puzzle donné. Vous pouvez également l'utiliser en "mode des conseils" avant de terminer le puzzle. Il vous donnera des conseils, y compris le nombre de pangrams possibles, le nombre de mots possibles, le score élevé et les premières lettres des mots supérieurs.
Merriam-Webster ne spécifie pas quel dictionnaire est utilisé pour le jeu. Nous n'avons que quelques directives:
De plus, en raison de la nature du jeu, nous avons les contraintes suivantes:
De nombreux dictionnaires sont disponibles en ligne. Le dictionnaire Scrabble est peut-être la meilleure estimation du contenu du dictionnaire de fleur, mais il ne contient pas de mots avec plus de 15 lettres car ceux-ci sont impossibles à jouer dans le scrabble.
Ce solveur de fleur comprend 3 dictionnaires différents pour 3 niveaux de compétence différents.
J'ai commencé avec le plus grand dictionnaire que j'ai pu trouver, à partir de ce référentiel GitHub: https://github.com/dwyl/english-words qui a environ 370 000 mots.
Notez que l'informatique et tous les autres fichiers mentionnés ci-dessous sont dans le répertoire de données de ce référentiel.
data/full-dictionary.txt
, contient environ 370k mots.data/*-letters.txt
data/medical-words.txt
, data/proper-nouns.txt
et data/not-in-dictionary.txt
.data/swear-words.rot13.txt
scripts/compile-words.mjs
pour supprimer tous ces mots non valides de data/full-dictionary.txt
, laissant 118k mots enregistrés sur data/uncompiled-level3.txt
.data/wiktionary-100k.txt
.data/uncompiled-level2.txt
. Ce fichier contient 26k mots.À venir. J'utiliserai probablement le dictionnaire de niveau 2 et supprimerai les mots dont je n'ai jamais entendu parler personnellement.
Après avoir terminé un jeu, Blossom vous montrera tous les mots et les pangrams possibles. En regardant des mots sur la liste, j'ai découvert des mots qui dans le jeu de fleur qui ne sont pas dans data/full-dictionary.txt
. J'ai ajouté manuellement ces mots aux data/discovered-words.txt
. Ceux-ci sont inclus dans les dictionnaires finaux non compilés et compilés. De même, les mots que j'ai trouvés dans notre dictionnaire mais pas en fleur sont enregistrés sur data/discovered-non-words.txt
.
J'ai utilisé des fréquences de lettres dans chaque dictionnaire pour commander l'alphabet de la lettre la moins courante à la lettre la plus courante. Le bot utilise le score puis la fréquence des lettres pour choisir ses jeux finaux. Il est plus naïf que la permutation ou un algorithme mathématique, mais obtient généralement le score maximal ou très proche.
J'ai choisi de précompiler les dictionnaires pour permettre au solveur de fournir des solutions en quelques millisecondes. L'inconvénient est que votre navigateur doit télécharger ces fichiers plus grands lors du chargement de la page.
Par exemple, voici le schéma du format de compilation:
mustard24+
muster11
mustered27mustrd32e+
Exemple de panne:
# mustard is a pangram worth 24 points regardless of which letter is the bonus petal
mustard24+
# muster is not a pangram and worth 11 points regardless of which letter is the bonus petal.
muster11
# mustered is a pangram
# If the bonus petal is m, u, s, t, r or d, it is worth 27 points
# If the bonus petal is e, it is worth 32 points
mustered27mustrd32e+
Licence ISC (ISC)