Monday, August 04, 2014

Little Crashes

I took a while off Kerbal while I waited for 2.4 to come out. When it did come out, I had a lot of fun problems where missions went awry in humorous ways - not bad enough to revert the mission, but bad enough to make things complicated and wonky.

After a few days, I polished up my skills again and haven't really had any failures since. The only real mission screwups I've had for the past week or so have been when KSC decides it should unload my whole crew and just put in Jeb. While it was funny the first 100,000 times, that's starting to get a bit stale.

Anyway, I really enjoyed "partial failure" missions. Let's go over a few:

A rescue mission with too few seats, requiring one of the rescuers be left in space and another rescue mission launched to rescue him.

A mun lander that landed a bit too hard and destroyed all its engines, but still had all its science and life support intact. Required another launch to recover the science and the stranded astronaut.

A rover with a full load of monopropellant that I forgot to attach any RCS jets to. Required tipping and tilting at high speeds to rip monoprop tanks off to improve performance.

A science base without an antenna, requiring the aforementioned rover to dock with it to broadcast science. The rover's mission had landed on the opposite side of the mun, so it was a bit of a drive.

...

These kinds of issues tread a delicate line. They're just bad enough to change the mission profile, but not so severe that the mission needs to be scrapped.

All of these sample mistakes are user errors - forgetting something or misjudging something. The problem is that after a while, you stop misjudging and forgetting. The entertaining mistakes stop, and now you have much more boring issues. Slightly misaligned RCS jets, slight tilts on landing zones, forgetting to gather gravioli data above a specific biome. Having your crew replaced by just Jeb.

I really liked the clumsy errors. I want that back!

Let's try to design a game where the whole point is to adapt to missions going wrong, rather than creating missions that go right. Let's presume that the player does not create the missions, but tries to successfully complete them as things go wrong. Think of the missions as levels in any other game.

Missions are not levels, because a big part of the play is in how missions interact with each other. Do you need to send out a second mission to rescue the first one? Can you use a mission that landed before to complete the mission that came afterwards? Can you use this screwed-up mission as a stepping stone for another mission?

There's also the fun within the mission. Can you make things work with fewer resources? Can you adapt some of the mechanisms and supplies intended for one thing to serve another thing? Can you change the mission profile to accomplish things and stay alive even though you can no longer perform a fundamental task such as firing rocket engines?

There is also the fun of imagining what it'd be like to be living in those conditions - stuck alone on the moon for 3 weeks, carefully rationing out your power during the night cycle, going a little bit... idiosyncratic.

...

If we were to make a game like this, what would we need?

Well, first and foremost, we'd need a more adaptive system than Kerbal. Kerbal's adaptiveness is up front, in mission planning. When on the mission, the only things you can change or repair are landing legs/wheels. Everything else exists in a state of true/false: it's either there and working or gone completely.

Our game would need to feature a much wider variety of states. Damaged or broken equipment needs to be repairable, but not by simply floating over to it and clicking a button. Instead, we need to make systems repurposable.

Repurposing systems involves moving them, changing their function, or scrapping them for makeshift parts. The result should repair or augment another system, but not to a comfortable level. Part of the in-game requirement for repair-by-repurpose should be that it is awkward, full of annoying side effects, or radically lower/more expensive performance.

For example, if your CO2 filter is damaged, you should be able to repair it by sacrificing some other system. The water processing system, or maybe the edible bacteria system, or perhaps by scrapping your spare clothes (as when this actually happened), or perhaps by scuttling an engine for a specific, deeply-buried part. All of these methods will let the astronauts continue to breath.

But they all have downsides. Firstly, they decommission some important system intended for another role. You'll have to strictly ration water, food, clothes - perhaps you won't even be able to land at all, and will need to be rescued once you return to earth-local orbit.

Secondly, the new carbon scrubber is way more annoying. It's louder, or hotter, or colder, or smells, or some other defect that makes living in the space capsule a bit more nightmarish.

If it was something a bit less important, the repair could have functional flaws. The repaired lights use up too much power, so you need to keep them off 18 hours a day. The repaired solar panels can't be tilted towards the sun, so you have to make do with radically lower power intake, and maybe have to park your rover at a specific angle during the day to regenerate your battery store.

The basic idea is that you need to decommission another system, and then you need to live with not only the decommissioned system, but also the shortcomings of the repair job. Hey, it just has to last long enough to get the job done!

The player actually has a lot of freedom here. She has her choice of which systems to repurpose, and that will depend a lot on what she plans to do with the rest of the mission, combined with what other repairs she needs to make.

For example, if you need to repair the carbon scrubber, your first instinct might be to sacrifice the spare clothes, as they serve the least mission-critical part of the mission. However, that system has no additional parts, and cannot be used to repair anything else afterwards. If you decide to sacrifice the rocket engine, then you have a massive slew of additional rocket parts and fuel (perhaps even hydrogen-oxygen fuel that can create water). If anything else goes wrong, you can probably repair it from the already-sacrificed rocket engine.

Similarly, if you had another moon base a few hundred kilometers away, rather than sacrifice any of your systems, it might make sense to scrap that base and haul over those components.

And it'll matter how long it'll take for you to try and rescue them. Do you need a week? Sacrificing spare clothes is probably the least dangerous option. Do you need three months? Sacrifice the engine, keep the astronauts happier and healthier.

...

Seems like it'd be an easy game to make, if you keep the interface simple!

No comments: