Wednesday, June 19, 2013

A World's Heartbeat

One of the differences between open-world construction games such as Minecraft and closed-world construction games such as Bridge Builder is the world. In an open-world game your actions are within a larger, more complex world. The challenge is not simply to construct something to a specific target objective, but to exist within the larger world.

The texture and "beat" of the world obviously matters a great deal. In most such games, days and nights come with regularity, and your constructions are often oriented around that cycle. Of course, then you delve into the dark caves and it's always night...

So when I began to build my little space station game, the texture and beat of the world became something of a concern to me.

See, unlike something like Minecraft, my game takes place almost entirely indoors. There are things which happen outside - mining, scanning the planet, hacking a genome, perhaps some kind of defense grid thing... these are equal parts exploration and action, and they should be fun. But they exist to support the base. The base itself has to feel alive and interesting.

One key to this is NPCs: NPCs facilitate your outside operations. So you bring in miners and researchers and pilots and so on. Half the time they are away working, and half the time your base is full of them. When they are at home, your base is lively, full of chunky little space explorers having fun on their day off. When they are away, your base is cavernously empty, a good time to build or to manage their work duties by directing their activities (outside base operations).

This gives your base a heartbeat. If I can, I'll create some kind of eerie or super-mellow ambient noise for the quiet times and have the activities of the base NPCs actually produce melodic sounds during the busy times.

This heartbeat is different from the day/night cycle. I've decided that workers are away for one day/night cycle, back for another. The day/night cycle affects a lot of other things - solar power, if you have any. Visibility (no natural light). Native life activity.

This means your base actually has a four-beat heart. Quiet day, quiet night, busy day, busy night, quiet day...

Another big aspect to a world that feels alive is being able to reach out and discover things. Explore and discover!

Well, you're stuck in a base. But that's on purpose: I think coupling your base to your ability to explore hampers your ability to explore. How often have you built a base in Minecraft and then realized you'll never really explore very far from home? The other dimensions (nether, most commonly) are simply a patch to make it so that you can open up new things to explore near your house as you develop your house.

My design assumes you'll want to explore the planet, but that you'll also want to keep your cool base. So you do it by proxy.

For example, you'll launch satellites almost immediately after you build your base. These satellites are able to scan the planet's surface for various things. You can control them via a control panel, which whooshes you away from your base and into a satellite explore view. NPCs are similarly controllable while they're away on their jobs, so you can explore from the perspective of a miner, meteorological terraformer, genetic evolution mapper, biome manager, farmer, factory manager, etc.

Basically, every kind of exploration/job is two fundamental kinds of interaction, with the joy and complexity coming from how they collide. Since they are two fundamental kinds, other jobs often share one of those two kinds, and therefore two people working different jobs may end up in the same "space" but with a different interpretation and interest.

For example, miners explore into the depths of the planet in a simple 2D tile map. That subterranean map is one basic kind of interaction, allowing the miner to find and mine various deposits while keeping a watchful eye on disasters-in-waiting such as caves, aquifers, and lava flows. The miners' other interaction is a load-optimizing system as they mine specific things.

But the geologist has the same tile map interaction, delves into the same spaces. She doesn't care about the mining, and instead cares only about the specific incidences of "layers" - which includes caves, aquifers, and lava flows, but also the several varieties of "useless" rock that the miner drills through. Whenever she sees a new layer, she gets a point of geological theory - a data point which can be used to improve your ability to detect and mine materials, enhancing either your satellites or your miners... or your geologists, or anyone else with the same tile diving system.

Geologists and miners can sort of get along, but they have completely different intentions. Miners want to avoid dangerous layers and harvest the good minerals they find on "safe" layers. A geologist, however, mostly wants to drill straight down so they can see tons of layers as they go by, then leave and find some other location.

On the other side of the fence, the layer-hunting mechanic is also used by evolutionary mappers. They scout the surface of the planet rather than its depths, but after they discover some new entity they dive into its genetics hunting for "layers" - markers that are shared by other branches, denoting a shared common ancestor. These produce genetic theory data points, which can be used to enhance the ecosystem of the planet, the hunt for local life forms, adapting farms to the planet, and so on.

I think this multifaceted exploration will give the world a dynamic feel, as each character you explore with can see the same kind of thing as someone else, but with a completely different spin on it. Going back through a mined-out region with a geologist would be as interesting as mining it out in the first place.

These are the sorts of things I'm thinking about as I design the game. I need the world to feel interesting and explorable, even though the whole game takes place in your base.

No comments: