I was inspired by having played a lot of codenames recently while stuck during quarantine
What it does
The bot takes the users cards as input and then suggests words that relate to those words to help their teammate identify the cards
How I built it
I built it using word2vec, gensim, and google colab. I coded it in python.
Challenges I ran into
The key challenge I ran into is that when I incorporated more sophisticated elements of the game (e.g., don't give clues that will lead to the guessing of your opponents cards) the quality of the clues the bot produced for my cards went dramatically down. In the end, I decided to ignore my opponents clues, but this is an area where the application could be improved.
Accomplishments that I'm proud of
I'm proud of using a natural language processing model to analyze every combination possible of cards in a player's hand.
What I learned
I learned a lot more about word vectorization.
What's next for Codenames Bot
I will use this at parties.