Making a civilization-scale crafting system for Jason Rohrer's One Hour One Life
There’s no inventory in One Hour One Life. And yet this online survival game features grand total of 463 craftable objects.
At least, that’s how many there are on the day this is being written. Developer Jason Rohrer is aiming to add another 9,500 over the next two years.
No inventory and a culture-spanning number of objects: these two facts seem entirely incompatible and yet they’re deeply related, resulting from Rohrer attempting to reconcile the realities of being a lone developer with his ambition to create a game that features a crafting system on the scale of human civilization.
One Hour One Life is a multiplayer survival game in which players live a lifetime over the course of one hour, if they don’t starve first. They’re born as helpless babies which, for the first few years (minutes) of their lives, must be fed by other players who have lived to adult age.
Once they’re old enough they can start contributing to communal life, farming carrots, tending fires, feeding babies, and steadily building up a sustainable village, if everyone manages to work together.
Squeezing the history of human tool-making into a game
“The user interface, part of it is me figuring out as a solo developer, how to make a game that’s as big as all the content that’s in the real world, right?” Rohrer says. “All the things people made, all the doohickies you have in your house that thousands of people around the world have collaborated to make. That means the game has to have 10,000 things in it eventually. How do I have people craft those things, how can I design and implement it?”
"The user interface, part of it is me figuring out as a solo developer, how to make a game that’s as big as all the content that’s in the real world, right?"
His answer was a carefully simplified crafting system that’s based on combining one object with another to make a third object. Aiming to produce 100 objects a week, he has stripped down their creation to the bare minimum.
He draws each one, creates a sound, if necessary, by recording his own voice, and plugs it into his editor in order to draw relationships between them and other objects. No programming is required.
Thus, when Rohrer wanted to add the ability for walls to be broken into rubble, he simply drew a pile of rubble, scanned it, recorded himself making appropriate ‘krrbbbghhfff’ sound with his mouth, and plugged it into his editor so that ‘mining pick’ plus ’wall’ equals ‘rubble’.
What’s interesting about this system, which is extremely wide and very shallow, is the way it enables cultures to form in the game. Anxious to survive, players naturally form communities, passing on their knowledge of how their village runs to a new generation, knowing that at the end of their 60-minute life they’ll respawn as a baby near an adult player somewhere else in the world, dependent on them for food.
While this behavior largely emerges from One Hour One Life’s survival design, the way in which communities form is informed by subtler cues. One of the most important is the way the game makes crafting visible. When a player is carrying and using objects, everyone can see what they’re doing. ”You lay out your ingredients on the ground and combine them, and you don’t have to explain it,” says Rohrer. “All someone has to do is watch you and they’ll learn what you’re doing.” He contrasts his approach with that of Minecraft, which presents its crafting menu as a grid which is invisible to other players and requires remembering precise configurations of resources.
“It also feels to me more aesthetically like what it feels like to make something,” Rohrer continues. “I lay out the ingredients on the counter or I lay out my tools when I’m making a trellis for my tomato plants, and I’m carrying one tool at a time. I don’t have this huge armful of them. Dealing with clutter is something I really wanted in the game.”
The size of the crafting list also imposed the need to make each recipe memorable. But Rohrer argues that his system is naturally memorable because it’s inherently step-by-step, with the player combining one object with another, and then another. He has put a lot of thought into making these steps logical, so to make a fire, the player starts with combining an ember leaf with tinder to make smouldering tinder, and then waits a few seconds until it turns to burning tinder before combining it with kindling to make a fire.
“I’ve broken interactivity into this very coarse simulation of what it’s like to use one thing on another thing,” Rohrer says, explaining that it enables many ways of making similar things, such as the game’s 18 different flavours of pie and the fundamental differences between what it takes to make a sealskin coat to a rabbit fur coat.
“Clubbing a seal is very different to snaring a rabbit,” he says. “That deep and multifaceted interactivity is possible when you simplify crafting down. If you think about Minecraft’s crafting grids they’re hard to remember, and Don’t Starve shows you a menu but it’s kind of arbitrary. It takes three stones plus two wood to make a hatchet and I always have to check the list again, even though I’ve been playing for hours. There’s something about step-by-step crafting that’s easy to remember.”
Still, Rohrer implemented an official wiki for One Hour One Life, which lists all its crafting recipes. “I don’t necessarily want-want-want there to be a wiki but at the same time I know it’s going to happen,” he says, recognising that players will need guidance on the game’s peculiarities. “I don’t see it as antithetical to what the game is about because once you know how to do something you don’t forget it, and knowledge is spreading inside the game.”
The way knowledge spreads is fascinating, partly down to the crafting system’s visual nature, partly to One Hour One Life’s chat system, and partly down to the challenges Rohrer has designed into the game. Players can simply watch a village’s customs and copy them, but they’re also able to send messages to each other. The amount a player can say depends on how old they are. Newborns can say only one letter (“F” is the established form for indicating hunger), while elderly characters can type out entire sentences.
“Some of the more successful villages are very organized,” says Rohrer. “As soon as you’re born they take you to a corner where there’s a fire and all these other babies. One woman is in charge of nursing them and there’s another elderly player there who’s in charge of teaching the babies the rules of the village. She asks, ’Do you know the three tenets of life in the village?’ There’s this system of only eating picked carrots, never from the field because the farmer is charge of that, and you’d be assigned a task when you’re of age. They pass down the mantle of responsibilities.”
"It’s much more interesting if there’s a hard failure, it’s a very dramatic turning point for the community if the well 'done gone dry!' That’s interesting, and if there isn’t a good way to recover from it players have to come together and have a culture around well usage."
While they’re enabled by text and the game’s visual nature, these cultures are shaped by wrinkles Rohrer has placed in the game’s design to govern its survival systems and present challenges to sustaining civilization.
Early on, he figured that the game couldn’t have limited food resources, since he couldn’t know how many players would be coming into any given area. But he soon saw playtesters relying entirely on the infinite berry bushes he’d added to prevent starvation, and never developing farming systems.
Why bother when you have an easy source of food? So he limited many resources, such as milkweed plants, which die off if they’re harvested outside of their fruiting season, and wells, which are exhausted when they’re emptied.
“A lot of people ask to be able to repair or refill the well, but that’s not interesting to me,” Rohrer says. “It’s one weird trick you can use to recover from catastrophe and it becomes busywork. It’s much more interesting if there’s a hard failure, it’s a very dramatic turning point for the community if the well” – he puts on a hillbilly accent – “done gone dry! That’s interesting, and if there isn’t a good way to recover from it players have to come together and have a culture around well usage.”
He began noticing players starting to come up with ways of managing their wells, having someone keep track of them or using rocks to record how much had been extracted.
The same went for an exploit players used to grow infinite carrots, and which led to a village surviving for 22 generations, which was the then longest-surviving. So he changed it, having carrots deplete soil fertility and introducing ways of restoring it.
“I want mistakes to accumulate over time to the point where the village can’t keep going. If you let a few too many carrots go to seed, which burns up fertile soil, you get too many seeds and run out of soil to seed them into and the village is on this road to ruin, eventually. I know it’s possible to have a village live forever, but it’s really hard and that’s what makes it interesting.”