September 28, 2018

Demographics IV: Not Just the Men, But the Women and Children Too

How old are these NPCs?

I want something that makes general sense, particularly given the racial makeup of the particular location. So I'll use population pyramids as a starting point.

The standard fantasy race tropes have never made much sense to me. If elves are super long lived, or even immortal, then there would be essentially no way for a human and an elf to ever understand each other. Languages aside, the cultural contexts would be utterly incompatible.

Dwarfs seem to be a bit better, only living a few centuries. Still.

Tolkien generally addresses this problem by limiting contact between the races. Even the men who deal with elves regularly tend to be long-lived themselves (but still not thousands of years).

I think this is untenable. With such a difference in culture and time, eventually one race would take over.

But we can still introduce some differences into the populations, stretch them out a bit, etc.

One problem (that I encounter quite frequently) is that things like this are usually descriptive rather than prescriptive. That is, there is plenty of data showing the types of distributions I'd like to see (and their consequences), but not much discussing why those happen to be the case. So I have to make it up, or at least parameterize it a bit.

I'll use a logistic growth function:
\[P(x) = {1 \over 1 + \exp\left(-\left(x-x_0\right)\right)}\]
$k$, the growth rate, will be defined by the following, where $x_m$ is the "maximum" age, or at least the age at which there is only 0.1% of the population.
\[k = {-1 \over x_m - x_0}\ln\left({1 \over 0.001} + 1\right)\]
Then, $x_0$ will be the 50th percentile age, or the median age. We must also multiply by a factor $L$ such that all the percentages will add up to 100%. I'll see 250 as the absolute upper age, and only start counting children toward the population at age 15.
\[L = {1 \over \sum_{x=15}^{250} P(x)}\]

So for $x_0=35$, $x_m = 100$ (or a typical human population):
Eh, it's a good start. Split it 49/51 or so for men and women, and there you go.

Soon, I'll write some code to apply this to Demoland, and have a more comprehensive example. Not everyone thinks as abstractly as I do.

No comments:

Post a Comment