Wordle-solver - A tool that helps people who struggle with vocabulary to enjoy the famous game of WORDLE

Overview

Wordle-Solver

Wordle-Solver helps people who struggle with vocabulary to enjoy the famous game of WORDLE. So that those who find WORDLE extremely hard, just like the developer of Wordle-Solver, will not be embarrassed for not knowing the hidden word of the day or being unable to show their tries.

Wordle-Solver takes an average of 3.7 tries to pinpoint the hidden word and solves 99.7% of five-letter words commonly used in English within the limit of 6 tries if they are chosen as hidden words.

Based on probability, Wordle-Solver helps WORDLE players find the best words for the next try. At the start of the game, this Solver recommends the use of the word “OPERA” on the first try. After making a try, players enter the word used and WORDLE’s response into Wordle-Solver. Then, Wordle-Solver will show a list of recommended words based on probability. In most cases, after 3 – 4 tries, Wordle-Solver is able to pinpoint the hidden word.

How to use

Download Wordle-Solver by cloning this repo.

git clone https://github.com/jason-chao/wordle-solver.git

Run the Wordle-Solver

cd wordle-solver
python3 wordle_solver.py

Open WORDLE

Enter a word into WORDLE. This Solver recommends the use of the word “OPERA” on the first try for the best search results. Sample WORDLE response to OPERA

Enter WORDLE’s response into Wordle-Solver

When WORDLE tells you the result of the first try, enter the word and WORDLE’s response using the symbols indicated below into Wordle-Solver. For the time being, Wordle-Solver is only available as a command-line (CLI) application. Since command-line applications cannot easily handle colours, players need to map the colours of WORDLE’s letter tiles to the following symbols.

Use _ for indicating a letter not in the hidden word in any spot Use ? for 🟨 indicating a letter in the hidden word but in the wrong spot Use + for 🟩 indicating a letter in the hidden word and in the correct spot

You should enter the result into Wordle-Solver in the format of word:symbols (the word, a colon : and the symbols). For example, for the screenshot above as an example, the input into Wordle-Solver should look like opera:_?+?_.

Please enter you last try as word:symbols
opera:_?+?_
Suggested words (from simple word list):
        press

Pick a suggested word shown by Wordle-Solver. Enter it into WORDLE. Repeat this step until Wordle-Solver finds the hidden word for you.

Tips

The WORDLE game only accepts on its own word list on every try. There is a possibility that WORDLE rejects all the words suggested by Wordle-Solver. In this case, enter the command !extended into Wordle-Solver to manually switch to the extended word list. Then, Wordle-Solver will begin to suggest words from the extended word list.

Wordle-Solver uses two lists of English words. One is called “simple” and the other one is called “extended”. The “extended” list has about 11 times more words than the simple list. As one can imagine, the extended list contains many rarely used English words. By default, Wordle-Solver searches for words on the “simple” list only. When no suggestions could be made from the “simple” list, Wordle-Solver will switch to the “extended” list to broaden the search. Except in the case mentioned case, the switch is usually automatic.

A more user-friendly interface

This command-line application is just a proof of concept. A web interface is under construction and will be released soon.

The search strategy

Wordle-Solver uses every bit of information gained from WORDLE’s responses to build the search criteria. The responses from the tries will help Wordle-Solver narrow down to a single, if not a few, possible English word(s). Usually, in the first two or three tires, the list of possible words may still be quite long. Wordle-Solver works out the probabilities of letters with unknown inclusion/exclusion status and suggests words with letters of higher frequencies. It does not matter whether or not these high-frequency letters end up in the hidden word. WORDLE’s responses to these high-frequency letters will help Wordle-Solver shrink the search space efficiently.

The developer of Wordle-Solver experimented with a number of other approaches. He found that the approach now implemented in the Wordle-Solver would produce the best results given the limited he has on this mini-project.

Credits

The “simple” word list is derived from MIT’s 10000-word list. The “extended” word list is derived from the alpha variant of dwyl’s “List of English Words”.

Owner
Jason Chao
Jason Chao
CLI tool to show the current crypto balance

CryptoBoard The simple python CLI tool for one currency to show the current crypto balance yours purchases. That's all. Data source is from https://ww

John 2 Nov 18, 2021
Redial is a simple shell application that manages your SSH sessions on Unix terminal.

redial redial is a simple shell application that manages your SSH sessions on Unix terminal. What's New 0.7 (19.12.2019) Basic support for adding ssh

Bahadır Yağan 186 Oct 28, 2022
Plumbum: Shell Combinators

Plumbum: Shell Combinators Ever wished the compactness of shell scripts be put into a real programming language? Say hello to Plumbum Shell Combinator

Tomer Filiba 2.5k Dec 28, 2022
This is a simple Termo application in command line style

my-termo This is a simple Termo application in command line style. This app run a Linux crontab task every day to get a new word. Type termo in your t

Gustavo Soares 1 Feb 14, 2022
Random scripts and other bits for interacting with the SpaceX Starlink user terminal hardware

starlink-grpc-tools This repository has a handful of tools for interacting with the gRPC service implemented on the Starlink user terminal (AKA "the d

270 Dec 29, 2022
Python and data science snippets on the command line

Python Snippet Tool A tool to get Python and data science snippets at Data Science Simplified on the command line. You can read my article to learn ho

Khuyen Tran 19 Dec 21, 2022
Fast as FUCK nvim completion. SQLite, concurrent scheduler, hundreds of hours of optimization.

Fast as FUCK nvim completion. SQLite, concurrent scheduler, hundreds of hours of optimization.

i love my dog 2.8k Jan 05, 2023
A web shell client written in python.

Webshell client A webshell client written in python. Only works well for linux for the time being. Why? Because there are too many heavy webshells. So

tchar 1 Dec 07, 2021
AlienFX is a CLI and GUI utility to control the lighting effects of your Alienware computer.

AlienFX is a Linux utility to control the lighting effects of your Alienware computer. At present there is a CLI version (alienfx) and a gtk GUI versi

Stephen Harris 218 Dec 26, 2022
Themes for Windows Terminal

Windows Terminal Themes Preview and copy themes for the new Windows Terminal. Use the project at windowsterminalthemes.dev How to use the themes This

Tom 1.1k Jan 03, 2023
Generate an ASCII Art from keyword put in the cli

ascii-art-generator-cli Generate an ASCII Art from keyword put in the cli Install git clone https://github.com/Nathanlauga/ascii-art-generator-cli cd

Nathan Lauga 1 Nov 14, 2021
Python command line tool and python engine to label table fields and fields in data files.

Python command line tool and python engine to label table fields and fields in data files. It could help to find meaningful data in your tables and data files or to find Personal identifable informat

APICrafter 22 Dec 05, 2022
A python command line tool to calculate options max pain for a given company symbol and options expiry date.

Options-Max-Pain-Calculator A python command line tool to calculate options max pain for a given company symbol and options expiry date. Overview - Ma

13 Dec 26, 2022
Key-control - A tool for add keys to your Termux app

Key-Control Is a tool for add keys to your Termux app. Cara Penginstalan $ pkg u

Beereva.id 1 Feb 14, 2022
Dead simple CLI tool to try Python packages - It's never been easier! :package:

try - It's never been easier to try Python packages try is an easy-to-use cli tool to try out Python packages. Features Install specific package versi

Timo Furrer 659 Dec 28, 2022
MsfMania is a command line tool developed in Python that is designed to bypass antivirus software on Windows and Linux/Mac in the future

MsfMania MsfMania is a command line tool developed in Python that is designed to bypass antivirus software on Windows and Linux/Mac in the future. Sum

446 Dec 21, 2022
Bringing emacs' greatest feature to neovim - Tetris!

nvim-tetris Bringing emacs' greatest feature to neovim - Tetris! This plugin is written in Fennel using Olical's project Aniseed for creating the proj

129 Dec 26, 2022
A useful and easy to use Terminal Timer made with Python.

Terminal SpeedCubeTimer Installation ¡No requirements! Just Download and play Usage Starts timer.py and you will see this. python timer.py Scramble

Achalogy 5 Dec 22, 2022
CLTools provides various tools and command to use in the terminal.

CLTools provides various tools and command to use in the terminal. As of date, CLTools is only able to generate temporary email addresses and receive emails. There are plans to integrate more tools a

Ashwin Chugh 2 Feb 14, 2022
Python-Stock-Info-CLI: Get stock info through CLI by passing stock ticker.

Python-Stock-Info-CLI Get stock info through CLI by passing stock ticker. Installation Use the following command to install the required modules at on

Ayush Soni 1 Nov 05, 2021