Saturday, 15 September 2012

Xenocide the Rogue-like

Several years ago, I stumbled upon an interesting website called the Roguelike graveyard, delightfully entitled 'the place for abandoned roguelikes). Sadly the page has been taken offline now, but it still exists on the Wayback Machine. On the Roguelike graveyard, I found a little game called Xenocide (nothing to do with the Orson Scott Card novel). This was back in the day of my Windows stint.

Earlier this year, I decided I'd try playing Xenocide on my linux computer only to my horror to discover that there is no native Linux binary. I know Xenocide works on Wine, but I wanted to play this game on Linux so I set about trying to compile the source file.

I found out that there was no make file or indeed an documented method to compile on Linux so I sought the help of the developer, Jakub Debski. He revealed that one guy had made a port to linux. I quote the guy, named 'Ed', here:

I just did a quick and dirty port of Xenocide to Linux. I had to cut
the sound, and make some minor changes (backspace is 7 not 8 on my
terminal, none of the #pragmas work in g++, and <cstdlib> is not
included implicitly by g++).
Jakub also revealed that a team of Koreans had taken the source of Xenocide and converted it entirely into Korean. I was a bit annoyed at this and filed a bug report but have yet to receive an answer. There hasn't been any work on the code by the Koreans since February 2011.


So from the little clues from Ed (which turned out to be more intensive), I managed to correct the source for Linux, write a makefile and design a little bash script to convert keyboard strokes from Windows to Linux.

Here is the patch. A little googling should show you how to apply it to the source code

Important: Use this source file. It's not linked on the main webpage, but it's clearly in the /files/ directory

A side note: it's much easier to start from scratch than it is to convert a Visual Studio project.


Sunday, 9 September 2012

Recipe: Chinese Soup - Apple and Wolfberry

About a year ago, I realised that I should start writing down recipes that I've learned.

There are nearly endless permutations for Chinese soup. They allegedly have different properties, from lowering cholesterol to curing `flu. I have no idea if there their reported effects are true (and if anyone could point me to some journals, that would be appreciated), but they are surely tasty. And I do know that drinking a hearty broth can be very invigorating (like when the British drink Bovril on a cold day). Some people drink the soup before a meal, some after. It doesn't really matter.

Here's one permutation of soup. I'll call it Apple and Wolfberry soup, for lack of anything better.

Apple & Wolfberry Chinese Soup

This recipe is enough to serve 2 people.
Cooking time: 1 hour

You don't necessarily need to scale things up linearly for more people. Just add more water when you initially boil the soup. I would say that the raw ingredients will be good for up to 5 people, and more than that, add 2  more of the dried products (except for the longan, which is quite strong, so just 1 for every 2 more than 5 people...). Don't scale up the ginger as it's very strong.

You can prepare this soup hours before when you need it. Just let it cool after the initial 1 hour boil and boil it up 5 minutes before.
  • Meat - Beef, Pork, Chicken (200 grammes)
  • Dried longan (x2)
  • Dried wolfberry (x10, also known as goji berries. I'm not sure which species, but I'd take a stab at Lycium Chinense)
  • Dried jujube (x5 also known as jujuba, red date, Chinese date, Korean date, or Indian date)
  • Apple (x3, medium sized. Any will do from your local supermarket. Probably not cooking apples. I used braeburn because I like eating these fresh.)
  • Carrot (2 inches, optional)
  • Ginger (chopped and heaped onto 1 table spoon)
  • Water (x4 rice bowls or about 800ml)
  • Salt (a 'pinch', to preference)
  1. Put everything except for the salt into an adequately sized pan with a lid. A lid is very important or you will be persistently topping up water during the boiling process.
  2. With the hob on maximum heat, and the lid on, wait until the whole mixture is boiling well.
  3. Move the pan to your smallest hob, with the smallest flame/heat source.
  4. Simmer this mixture for 1 hour with the lid on, stirring every 15 minutes if desired.
  5. If you want to drink the soup straight away, taste it and add salt to preference.

    If you do not want to drink the soup straight away, wait until 5 minutes before you want to drink it and boil the mixture for 5 minutes. Add salt to preference after 5 minutes.