Little Alchemy Guide and HintsBy David Hillier
For any of you who have been living under a rock for the last year or so, a certain trope of games has emerged recently involving alchemy. Or at least mixing various things together to make new things. Rather than having to set up your own chemical laboratory these games give you a sandbox environment to mix elements together in different ways to make further elements that you can mix together.
The object of the game is to try and make every possible element by combining previous one; and there are usually several hundred to discover. Going through randomly mixing things and seeing what happens can be fun, but I thought I could come up with a neat spreadsheet that would help make the process more efficient.
This was built after I started playing the Chrome browser game Little Alchemy, but the sheet will work for any of this type of game. I started off with a simple matrix with the elements along the top row and down the first column. I’ve blanked out the bottom left half of the matrix due to symmetry (Fire + Water is identical to Water + Fire for instance).
Now you could just use this basic matrix to note down what you had combined and the result given, adding in the name of the new element to both the row and the column and then blanking out the symmetrical half of the matrix. Seems like far too much manual effort to me! The next stage was to create a sheet for adding in new combinations as I discovered them and filling out all the tiresome manual bits automatically.
All you have to do is select the elements you want to combine in the two boxes, record the result for Little Alchemy and press the “Log New Element” button. If we look back to the matrix sheet we the result; the new element has been recorded, we have the extra row and column with the new element and the blanked out cells have been added to the correct place.
The new element adding page has a nice bit of data validation in it as well. This lets you type in the name of elements, or select them from a dropdown list, that is automatically updated with new elements as they are added. If you try entering something that isn’t on the list then you get a warning letting you know.
You can of course ignore these warnings and press ahead regardless (there’s always one!) in which case, the error needs to be handled gracefully by the macro. You can do this with a simple if statement that checks to see whether trying to find the element in the list (utilising the VLOOKUP function), stopping the macro before it falls over and telling the user what happened.
If your new combination of elements doesn’t yield anything new then simply but an “x” in the Gives box and it will record the result without adding a row or column. So we have our matrix of elements than you can add to with a macro that has two layers of data validation and gracefully handles errors. Job done then? Not quite. Ruining the perfection is the fact that the game sometimes produces multiple elements instead of just one when combining things. A good example of this is adding “Pressure” (air + air if you’re interested) to another element of “Air”, producing “Wind” + “Atmosphere”.
To handle this, simply use the syntax “element1;element2″ in the element combiner. This will automatically split up the elements into their constituent parts (using text-to-columns) for adding into the rows and columns of the matrix. Let’s try “Wind;Atmosphere” and see what come out.
So there you have it. A simple macro with data validation and error handling able to output multiple daughter elements. As an added bonus, there’s a nifty little macro that gives you suggestions for combinations you haven’t tried yet. Just in case you didn’t want to switch pages. The full Workbook is available for Little Alchemy Hints Guide, free of charge. If you like it, you can thank me by liking my page on Facebook.