About Unscrambled

Why? You're ruining the game!

Good question. Unscrambled started out as a programming exercise. There were other websites already doing providing a similar service but they could be slow and also required paid subscription. I therefore decided to see if I could make something that was both better and free. In addition, as a regular player of both Scramble and Shake & Spell, I knew how often people were resorting to cheating. Occasionally, it's nice to out-cheat a cheater...

Of course, regular use during normal play does render the game pointless. It's a bit like having a car that can do 150mph. It's redundant for the vast majority of the time, but nice to have occasionally. The program also tells you how many times it's been used, just to add a little guilt!

What dictionaries do you use?

Unscrambled comes with the SOWPODS, TWL98 and TWL06 dictionaries pre-loaded. Scramble uses TWL06 and Shake & Spell appears to use a slightly-modified TWL98 list. Other dictionaries can be incorporated easily should it be required. I'd be keen to offer alternative language dictionaries at some point in the future. If you have a specific requirement, drop me a line.

Why is the program file so large?

Simple. For faster loading and operation, the three dictionaries are stored as resources inside the executable. SOWPODS has over 280,000 words, and the two TWL dictionaries add about another 170,000 between them.

Why does it use so much memory and processor time?

Both Scramble and Shake & Spell are timed games. Therefore, one of the key requirements of Unscrambled was to return a list of words as quickly as possible. Certain programming techniques were used that are optimised for speed, rather than for efficiency or resource usage.

How long does it take to do a search?

That depends entirely on how fast your computer is, how much memory you have and how many letters you choose to search for. To give an indication, on my computer - a dual-core 3.2GHz Pentium 4 with 4GB of RAM running Vista x64 - it takes around ten seconds to generate to complete an eight letter search on a 4x4 and around thirty seconds to complete a twelve letter search on a 5x5 grid.

Does Unscrambled require any pre-requisites?

Unscrambled requires the Microsoft .NET Framework 2.0 or later. This is included with Microsoft Vista and is available through the Windows Update for Microsoft Windows XP.

What versions of Windows does Unscrambled run on?

Unscrambled is a 32-bit application that utilises the Microsoft .NET Framework 2.0. It has been tested on Microsoft Vista Enterprise 32-bit, Microsoft Vista Enterprise 64-bit and Microsoft Windows XP Professional. Compatibility with other operating systems is not guaranteed.

How many letters should I search for?

You will comfortably win most games with an eight or nine letter search. Only rarely will a grid contain a longer word. The longest I've personally seen (but did not get myself!) was INTERMEDIATES - thirteen characters. If playing Shake & Spell, a seven character search would probably suffice just fine.

The number of combinations tried seems to change with each grid. Why is this?

Unscrambled looks at the tiles it's checking and checks the dictionary to see if there's any words that start with those letters. If not, it abandons that path and moves on to the next. As the program only records combinations it's actually looked at, the total number tried may vary between grids.

You have a web version. Why should I download the desktop version?

The desktop version is faster and contains more functionality than the web version. I just wrote the web version so people could see roughly how easy it is to use and to prove the technology works.

You say the web version is slower, but the search I just did took 0 seconds. How come?

Each time the web version is used, the website keeps a record of the results. Should someone later search exactly the same grid, the website just pulls the results from the database. However, there are 20,282,409,603,651,670,423,947,251,286,016 possible 4x4 grid combinations.

To put this rather large number into perspective, the fastest object ever made by man is the Helios 1 deep space probe. If you were to go for a trip on the Helios 1 and to pass the time you decided to solve one grid combination per second, you'd have enough time to travel to the edge of the known universe and back 96.8 billion times before you'd be finished.

So, if you did just do a search that took zero seconds, go out and buy yourself a lottery ticket!

I originally was going to do this calculation with the figures for a 5x5 grid, but when I found out that there are 2x1036 different combinations, I realised that analogies were going have to involve similarly incomprehensible things like the number of atoms in the universe.

How is the desktop version optimised for speed?

There are a number of techniques used to make the operation of Unscrambled a bit faster. The dictionaries are stored as XML data files as compiled resources. Although this takes up more disk and memory space, the dictionaries load about three times faster than if they are stored as text files. The in-use dictionary is kept in memory as an XML dataset.

Unscrambled starts one background thread for searches originating from each letter in the grid. Each thread creates its own subset of the master dictionary, filtered to match the first letter of the word. Adding words to the found list is carried out by the foreground thread, maximising processor time for the searches.

Depending on the length of word to search for and the grid size, Unscrambled performs pattern elimination on each path to determine if it's worth investigating further. The pattern elimination thresholds have been carefully set to ensure optimum performance.

About the web version; how do you do the fade effects when changing grid size?

The fade effect on the fifth column and row of grid squares, as well as the lightbox image display on the homepage, are made possible using the excellent Scriptaculous javascript library. The lightbox effect is built upon Scriptaculous and more information is available here.

Do have a page detailing some complete useless statistics about the web version?

Why yes, we do! Funny you should ask. You can find it here.

Under what licence is the program distributed?

Unscrambled is distributed under the Unscrambled Free Software Licence. Basically, the licence gives you the right to use and distribute the software provided you do not claim copyright or ownership, or charge fees for the software except to cover the cost of distribution.

Is the source code available?

I've decided not to make the source code available for public download. However, if you want it, ask me for it and tell me what you want it for and what you're planning on doing with it.

Why doesn't this site have a privacy notice?

Most sites have privacy notices when they collect personal information. This site doesn't. In fact, this site doesn't even use cookies (OK, the web server might issue session cookies, but nothing interactive uses them). As we don't collect any personal information, we can't use it in ways that you might not like. In fact, the only information we collect is how many times the Unscrambled setup file has been downloaded and how many times the online version has been run.

What on earth is the program icon?

It's a fried egg.

Why a fried egg?

'Cos I like fried eggs, especially in up in a sandwich with grated vintage cheddar and a dash of hot sauce. And fried eggs aren't scrambled...