About me

Vladimir Nabokov

Books
Programming
Biochemistry
Aim | Communicate

Search
 


 
   
Letters from Terra - Life in water warmed by sunlight
 
 

     
 
 

     
The simple front end of the program is only the facade for the efficient and thorough engine. Click here to download a demo.
 
 
     

Scribble - A scrabble engine

Ever since I managed to dig up a complete english dictionary in simple text format, it has been an ambition to construct a scrabble engine capable and efficient enough in evaluating combinations to present a challenge to even advanced players. Scrabble games are notoriously hard to find for download on the internet, and those that are available often don't allow you access to their dictionaries or have a penchant for two-letter words (which are band by my engine, hah!), and so the production of an engine exactly to my specifications became a more and more attractive proposition. Once I thought I had constructed some logical base for the AI, I saw no obstruction in starting to put the project into code. After a fortnight or so of fairly intensive programming, here, then, is the very first beta of the scribble scrabble engine. Currently the engine is in a finished state (oddly it was the least problematic, if not sthe most straitforward, to write), and although the front end is lacking to the degree of almost unplayability, and only a few of the additional game mechanics are in place; you can now discard letter (as will the computer), but there are no routines for winning or losing or using the wildcards. The only other major addition to the engine planned is to enable it to used wildcards, which are automatically disposed of in this version. The engine itself is far from elegant, but is entirely conclusive and powerful enough, using several look-up tables and carefully written word filters, to be able to check nearly every combination possible and to play the best one. The engine itself is an extremely strong player, and I've seen it perform feats of acrobatic word construction that to a human player seem outrageous and even a little flaboyant. fortunately, scrabble is a game where the most spectacular moves usually score the highest, producing an imediately satisfying aesthetic quality to the computers play whilst ensuring the engine is simple and the strength of play uncompromising. Ultimately, I'd like to write a full front end, and release it as a full game; but at this moment in time I'm just pleased the engine is performing so well, and I finally have a worthy opponent. The demo is available with full source for download now. Several features of the engine may still be a little unstable, so don't get too worried if exceptions occur. The dictionary is in conventional text format, although I'd advise against editting at this stage without recompiling the code and reducing the Numwords constant (feel free to do this if you feel confident). I hope you enjoy the game and savour the code - Thanks, Jon

Download Scribble demo (402 Kb, zipped) | Back to News

 
 
Letters from Terra | Updated 15th December 2004 | By Jonathan Ayling