If you read through the comments of his post you would have noticed my shameless plug of the Monsters & Terrain Core List. My interest in developing this list is an extension of my D&D roots, if you will, and of what Mr. Maliszewski calls Gygaxian Naturalism. The general idea is that game designers set down guidelines the habitats and environs of every creature, who they live with, and some basic information about their culture, society or behavior. Guidelines, not rules, for DMs to fiddle with to suite their own campaigns of course.
OK, where am I going with this? Well, lets just say that - while useful - the Monsters & Terrain core list is just not enough for me. I want something more; something that gives me an idea of what groups of creatures are found together given their terrain and climate. Not just single creature groups, like 1d10 orcs or 2d4 dire hyenas. Instead, I want a system for randomly generating cohorts of creatures. For example: you encounter 2d10 orcs and among them 2 ogres and 2 dire boars. More generally speaking, I want a table of probabilities that associates Creature X with Creature Y, given Terrain and Climate A and B. In my field, we would call this a directed graph, which in practice is represented by a huge table of probability functions. Yeah, I know... this is stupidly nerdish. Think I care? ...
OK, maybe some of you math nerds out there are already with me on this. Maybe not. In mathematics, graphs (i.e. networks) are commonly represented by nodes and edges. The nodes are the entities and the edges are the lines connecting them. Edges can also represent probability functions. As a simple example, lets say we have 2 nodes (A and B) and two edges (A>B, B>A). Let's also say that the probability of B, given you already have A, is 50%. Let's also say that the probability of A, given you already have B, is 10%. The resulting graph would look like this:
Now imagine for a moment that a giant graph, such as the one described above, was created for all the 600+ monsters in the Monsters & Terrain Core List. Then throw together an application that utilized all this data for DMs everywhere. The result would be stupendously nerdish - but, also awesome! Any given DM would be able to click "Temperate Forest", "Level 5 Encounter", and voila! an encounter could be generated that made sense. Without any of the work of hunting down good combinations of creatures, etc.
The Monster Ecology Table would be how such a graph would be represented (another list!). Its set up would be easy to implement, but very time consuming to fill with all the needed pieces of data. The 3 node directed graph shown about, for example, could be represented using a tiny table such as the one below.
The problem arises when you try to extend such a table to 600 entitites. Well, its not so much a problem as it is a burden - a table with 600+ columns and 600+ rows (360,000 cells) is rather unwieldy. A better data structure for this directed graph would be a lookup table (i.e. a hash table), since each entry might only have 3 or 4 associated nodes. For example - orcs (in our example) are only associated with themselves, trolls, and ogres. An edge in the graph that connects orcs with elves would have a probability of 0 (lets assume orcs and elves don't mix, shall we?), thus there is no need to even list it. A look up table for Monster Ecology would be 600+ rows long (one for each monster) and include (possibly) a maximum of 5 or 6 columns for associated monsters. Our 360,000 cell table now shrinks to a maximum of about 3,600 cells. This may seem like alot, but the table of Monsters & Terrain I've already assembled contains 13,200 cells (ugh... makes me sick to think I acutally filled it all out). In any case, Monster Ecology table is therefor very doable.
I've said enough (read: way too much) about this today.
In my next post on this topic I've going to go over some of the research that is needed for (as far as I'm concerned) a correct view of each monster's place in its environment. I'm talking about looking at each monster/creatures role and fictional habitat across each of the 5 editions of Dungeons & Dragons, and how the game designers have changed things right under our noses...