Portfolio · Cartographer World
The Starting World
Why nobody wakes up the same. Unequal starting conditions produce different immediate concerns, which determine what actors do first, which determines what they become. The social and economic tier system emerges from the first morning.
The Starting World
Why nobody wakes up the same
When the Cartographer spins up a village, it does not spawn its inhabitants into identical starting conditions. Every actor arrives with their own house, their own pantry, their own coin purse, and their own garden — and none of these are the same from one actor to the next. The village opens with inequality already baked in.
This is the engine of emergence. Unequal starting conditions produce different immediate concerns in different actors, and those concerns determine what the actors go off and do — which in turn produces the full social and economic tier system of the village without any designer ever laying it out.
Three openings
Consider three actors waking up on the first morning of a run.
The first actor wakes to a house with a garden. Crops are already growing, and one of them needs attention right now — the beans are ready, or the cabbages have started to bolt, or a row of carrots needs thinning before they ruin each other. The pantry has enough food for the week. There is no immediate pressure to go anywhere. This actor will almost certainly learn gardening straight away, because gardening is the work sitting in front of them and it is the work the day is asking them to do. By the end of the first week they will have the start of a gardener's life. They might never need to do anything else.
The second actor wakes to an empty cupboard and no garden to speak of. Their stomach will start reminding them of this quite quickly. They need work, and they need it soon, which means they will go out into the village and take what is available — and what is available, in any village, is the labour that nobody else is in a hurry to do. Production. Haulage. Digging. They will become a worker because the conditions they woke up in gave them no time to become anything else.
The third actor wakes to a full cupboard and spare coins in their purse. There is no garden to tend, because they do not need one. Their stomach is quiet. Their afternoon is open. They have the luxury of curiosity. They might wander down to the market and strike up a conversation with the trader, becoming the first customer of the day. They might notice that the village is holding its first election, and be the only one with the time to sign up — at which point they become a government official, not because they particularly wanted to be one, but because nobody else had the afternoon free.
None of these roles were assigned. The village produced them, because the village gave these three actors three different mornings.
How concerns actually arise
An actor's concerns are not scripted in the sense that most game developers will recognise. There is no table somewhere that says if hungry then seek food. There is no behaviour tree branching on is_bed_present == false.
What there is instead is a geometric relationship between the actor and the environment they find themselves in. When an actor walks into a house that has no bed, they know — the way you or I would know — that something is wrong. The absence of the bed creates a pressure in their internal state, and that pressure is what unhappiness actually is in this architecture. It is not a boolean flag. It is a shape the actor is in.
When they go out and buy a bed and put it in the house, the pressure eases. This is what happiness is. It is the release of a concern, geometrically.
And they learn, emergently, that buying things for their house tends to make them feel better. Nobody told them this in a rule. They noticed.
Concerns as soft scripting
It is worth being honest about something here. The concerns themselves are, in a sense, a form of scripting — the architecture specifies that houses should have beds, that pantries should have food, that bodies should not go too long without sleep. These are the givens of the world.
But this is not the scripting that most people mean when they say "scripted NPC." There is no table of responses. There is no branch that fires on a condition. The givens describe the shape of what a life in the village is supposed to feel like, and the actors then live inside that shape geometrically. The difference between describing the shape of a life and scripting the actions of a life is enormous, and it is the difference that lets the Cartographer's villages produce behaviour nobody wrote.
How concerns tip
Because the underlying machinery resolves competing pressures through XOR settling rather than through fixed priority hierarchies, concerns can tip over in ways that feel real. An actor who has been tolerating a small hunger all morning, focused on their garden, can reach a point where the hunger becomes the larger pressure and the garden goes quiet in their mind. They put down the trowel and go inside to eat. Nobody scheduled this switch. It happened because the shape of their day changed.
This is also how burnout happens in the village. This is how moods turn. This is how a baker who has been cheerful all year wakes up one morning tired of the oven and decides, today, that they would like to sit in the library instead.
What emerges
The village, after a run of any length, develops a full social and economic tier system. There are workers, because some actors woke up needing work. There are traders, because some actors had time to set up stalls. There are officials, because some actors had the afternoons free for meetings. There are idlers and dreamers and craftspeople and specialists, and they all came about because of the conditions of their waking.
This is what class actually looks like when it is allowed to emerge from material conditions rather than being imposed by a designer. The Cartographer is honest about this too. The village is not an equal place, and its inequality is not a bug. It is what a village is.
← Return to the Cartographer overview.