Daily Archives: January 9, 2007

Farmer Geoff and the Rabbit Ballista

Thinking about the poor bloke with his house fall of Murloc eyes, and how quests could be part of a more dynamic world, I remembered a program that ran on the ZX Spectrum called “Rabbits and Foxes”. As I remember it, you typed in the number of starting rabbits, and the number of starting foxes, and the amazing computational power of the Spectrum would then simulate this vibrant and diverse ecosystem. With lots of rabbits and not many foxes, the foxes have plentiful food and multiply rapidly, but then they’re eating all the rabbits and the rabbit population dwindles, in turn meaning there isn’t enough food for the foxes so their population goes down, reducing the number of predators so the rabbits flourish, etc. This was pretty Deep Science at the time, and I was fascinated by the graphs this program produced… for about ten minutes, then I went back to playing Saboteur (hey, I was only eleven).

It turns out this was a demonstration of the LotkaVolterra predator-prey equations (see here for the complicated maths bit, with a nice graph for those of you like me who haven’t done calculus for a while), and I got to wondering if this could work in an MMOG: Farmer Geoff grows carrots and keeps chickens, so he doesn’t like rabbits or foxes, and sends mighty adventurers off to do battle with whichever is more prevalent at the time. You’re still running a “kill ten creatures” quest, but at least there’s some vague sense that your actions are having an impact on the world, that you’re a part of it, rather than just killing an arbitrary number of some endlessly respawning beast.

That’s a hopelessly simple example, I grant you, which has a plethora of problems. In order for the player to actually notice their actions affecting the world, either the predator-prey cycle has to be shortened to an absurd level such that five minutes after killing a load of foxes, there are rabbits everywhere, or you have to keep the player around Farmer Geoff’s farm for a few months as the ecosystem gradually adjusts. Also, killing fluffy bunnies who nibble a mean old farmer’s carrots is hardly the stuff of epic quest, the rabbits aren’t going to pose much of a challenge. Well, unless maybe five of them found a discarded crossbow, and two of them brace it while two others pull the string back and cock it, and then they maneuver it around like a rabbit-size ballista with the front two providing elevation, two more at the back adjusting the direction, and the final one shouting targeting orders and firing it. Or there is a precedent for a more threatening foe, but that would possibly disturb the predator/prey relations slightly. Finally, we’d still have to “cheat” pretty heavily with respawns and other MMOG conventions, otherwise the graph would show the fox population rapidly tend to zero as they were all butchered for XP, the rabbit population rapidly tend to zero as they’re butchered to increase weapon skill and gather scraps of hide for crafting, and the Farmer Geoff population rapidly tend to zero as the bored adventurers kill him just in case he’s got a 1% chance of dropping the Pitchfork of Uberstats.

Still, it’s got to be better than ten more Murloc eyeballs, hasn’t it?