I know a thing or two about programming.
When I'm not cleaning the grease off of the walls of the kitchen, I find gainful employment in the dark arts of coding. So I feel I am sufficiently equipped to talk on the subject of application development, computer AIs and the price of fish.
I download a fair few Apps, to my trusty iPhone, and it's interesting to note the huge variance in the strength of Artificial Intelligence, employed in a number of board games, ported to the apple platform. Frankly it's bad enough having to face poodle play in real life - but it's just unforgivable against a computer opponent.
As I have remarked before, the Zooloretto application is astonishingly Poodlerific (yes, it's in the dictionary, go and look it up in the Great Library. Oh, you can't, I burnt it down). After a few plays, however, you can normally ensure you're on the right side of it's pedestrian play, which saves you hurling your precious iPhone across the open plan office.
It's the silly things that annoy me though. Sometimes one of the AIs is the last to play and has all the time in the world to take the last cart - but rather than rearranging the enclosures, to receive the incoming animals, it just takes them and bungs them in the overflow shed for maximum minus points.
How difficult is it to write a bit of code that says "If last.turn then rearrange.exe before take.lastcart" ?
I've noticed similar flaws in 'Cribbage Lite', my current fave iPhone app. During the card play that takes place before the 'show' it seems to throw its cards down in a random order. So today, I had already gone out for 31 and the AI had three cards to play - a Nine and two Jacks. The logical order would be J> J (for 2pts)> 9 (for a point) instead the AI played J> 9> J (for one point).
Initially I thought it was taunting me but given that I have won 34 games out of 34 (with 18 'skunks' which I take to mean going out while the AI is still below 100 points), I don't think that this can be the case.
Again, really not that difficult to program. "If opponent.out then maximise.playorder"
It just seems a bit bizarre. Who play tests there things.
Still, one of the things I like about Cribbage Lite is that it keeps your statistics. Something which the Scopa application, for reasons only its developers could explain, does not. This is a shame because most Edge Geeks (and all fully fledged Geeks) like to have their stats.
So, for example, I know that my best hand in Crib has been 24 points but I don't know the same thing for Scopa. I'm pretty sure I got 8 once, in a single round, but without documentary evidence this just becomes the fish that got away. An Angler's yarn peddled on second rate gaming blogs.
And adding games stats is probably the simplest piece of coding known to man. It's the kind of task that most serious software companies would outsource to the local primary school for show and tell day.
Of course I could be turning into the Pointy Haired Boss from Dilbert (assuming that something performed by my staff must be trivial because, well, the tasks are being performed by my staff).
Mind you, there are applications out there that kick my butt.
Most Go AIs are as inscrutable as a wasabi shaving and the Race for the Galaxy freeware implementation, on the PC, wipes the floor with me and leaves me wishing I'd stayed at home listening to Vogon Poetry. So there's some good stuff out there.
Actually, if someone could port that RftG code to the iPhone, I'd be a very happy man. perhaps I should put my money where my mouth is and do it myself.
heh. Who am I kidding.
I'm too busy playing games and being pompous.




