Automatic Wordfeud Playing Bot Introduction We’ve chosen to work on the subject regarding an automatic wordfeud player. Wordfeud is a scrabble game that can be played on smart phones and has become very popular with people of all ages. Problem Statement The problems we’ll be facing during the development of this software is how the bot will actually play the game. We want the bot to use a more sophisticated strategy for playing the game then just placing the word that would currently give the player the most points. Approach There are several approaches to this such as just using brute force to find all possible word combinations and picking the one that gives most amount of points. What we’ll be doing instead is using some sort of algorithm to more efficiently find what words can be built and where. We will then implement a bot that will at every move always chooses the word that gives the most point. We will also implement a more advanced bot that will also consider some steps into the future in a mini max fashion or a similar approach. We may have to do some research to find out ways to make the algorithms fast enough to be able to look several steps into the future. The two bots will then be compared against each other to see their different performance characteristics (Time to make moves, memory usage and points/game) and how good they are compared to each other. We will also try to estimate the time and space complexity of the different algorithms and other relevant data. References Word construction methods: http://en.wikipedia.org/wiki/Directed_acyclic_word_graph http://en.wikipedia.org/wiki/GADDAG Wordlists and rules: http://dsso.se/download.html http://wordfeud.com/wf/help/ Time Plan 1. Research the word feud protocol so that our bot can play automatically against another wordfeud player (Automatically extract the information regarding the game tiles). 2. Research different ways to find what words can be built and where. Implement one or more of the algorithms found. 3. Implement a greedy bot that only chooses the highest scoring word every turn. 4. Change the algorithm for choosing moves to take into account the probability of getting different letters and words, so that the opponent’s counter moves can be evaluated. 5. Research if there is a way to only check for possible words in the places that have changed, or that will change. 6. Implement an advanced bot that can calculate the best move in minimax fashion with a given depth. 7. Compare the two bots to each other (Greedy simple bot and one more advanced) to see the differences such as points/game, win/loss and such. 8. ( Possible if we get the chance we want to compare the bot against other similar bots and see who wins ) // Fredric Ericsson // Martin Berntsson
© Copyright 2026 Paperzz