When I was creating Survival Words there were a lot of new hurdles to clear as it was much more of a ‘game’ than my previous word puzzle apps. One of the main issues I had to solve was how to decide on letter frequency for the tiles. Simply weighting the alphabet evenly was not going to work as X is pretty obviously not used in as many words as E is. But I didn’t really want to take the huge amount of time to play test and tweak on my own. Since there are a lot of word games out there I also tried to check and see if I could find other developers explaining about how they solved the problem – but I couldn’t see anyone talking about it. So, here’s my post about it in case anyone else out there is trying to make a word app incorporating tiles with letters on them.
In the end I found this post on letter frequency
The post even directly addresses the issue, ‘For word games, it is often the frequency of letters in English vocabulary, regardless of word frequency, which is of more interest.’
Based on the percentages they gave, I created an array of letters for the tile grid to draw from. As they user moves around the grid – the letters disappear and new ones are generated. But as that happens I don’t remove anything from the array. It remains a constant so the percentages remain intact.
The tile grid Survival Words uses is 5 by 5. In the probably well over 1000x I’ve played and tested the game I’ve only twice encountered a board where I couldn’t make a word (no vowels). So I added a shake feature to the game. If in fact there are no vowels (the app double checks so you don’t cheat) you get a fresh set of tiles.
This feature, in conjunction with the percentages from the aforementioned post seem to work perfectly for my game. In my case, since tiles are replaced really frequently – it’s ok if any instance of a board isn’t totally ideal as things are always in flux. For a game with a constant tile grid it might be beneficial to create the list of letters that will appear and then double check that it has X number of vowels (based on testing), or that if there is a Q there is also a U, etc.
Hopefully this post will help someone out there who is developing a word game and needs help with the letter frequency. And of course, please check out Survival Words in the app store!