Thursday, October 31, 2013

Refine the Constraint

Last essay, I talked about a space game where you use a railgun to shoot a payload into the upper atmosphere, radically reducing the need for a complex launch stage. The downside of this would be that you would have to shape the payload to fit into the railgun's track, meaning a single stack, say 3m wide. The restriction allows for the player to carefully try to cram more functionality into that constraint, which provides a lot of the challenge and also a lot of the progression (smaller, more powerful parts).

The problem with this approach in my original vision was that the cramming only started when you started to think of complex payloads. I was still thinking of a lot of the basics as simply being stack components. Like Kerbal: you have a full-width fuel tank, a full-width engine. There's no cramming involved - you just stack them. But it didn't feel right. Engines are still a major part of the game, and to have them be supremely oversimplified seemed like it was undercutting my mechanic.

A real rocket engine isn't simply "fuel flows into the nozzle and explodes". Or, rather, it is at the most basic level, but we can allow it to be a lot more interesting. This can be part of the career mode, just like discovering mechanical struts or SAS or whatever. Just like you aren't required to actually understand the math behind things like SAS modules, you don't have to understand the math behind a rocket engine.

You might start off by choosing a nozzle and, for your first rocket, just mounting a mixing valve on top of it, and then run some pipes from the fuel tanks to the mixing valve. There you go. Rocket engine. (We'll ignore the igniter.)

Of course, this is quite a simple rocket engine that requires the fuel to be kept under pressure. The burn rate is restricted by how fast the fuel tanks push fuel into the valve. The valve can certainly reduce that from max - you can throttle down easily enough. But increasing it above that maximum is impossible, so the resulting rocket has a very low maximum burn rate.

So you research a pump that sucks fuel in. It goes between the valve and the nozzle, and is visually just a bulgy chamber with a pipe in and pipe out connection. This allows you to pull in a lot more fuel, giving you a much higher max burn rate regardless of tank pressure. It does only work so well, but you can always stack them together if you can fit them into the 3m restricted space the launch method allows. (In reality, you'd only ever use one, and you'd just make it bigger and more powerful. However, that doesn't fit as well into our game mechanic.)

This pump works great, but you find that you frequently overheat. So you research a nozzle with a heat exchanger built into it. That's the loop and bulge that's attached between the nozzle and the combustion chamber. The heat exchanger hooks into the pump, so you can run ice-cold fresh fuel around the chamber, heating the fuel and cooling the chamber - both good. If you want to you can run other, dedicated coolants through instead - that's up to you. The more effective the cooling of the chamber and the heating of the fuel, the better the efficiency.

And there's no reason you can't have four nozzles bunched up, fed from a single valve... you have tons of options. You can even use mechanical winches to separate the nozzles to wider than the 3m limit once you've launched... Then you invent the gimbal, and so on. The complexity is introduced piece by piece, and you never feel lost. You are the source of most of the complexity.

The key here is that we're integrating the design of the rocket engine into the core play mechanic. Even our fuel tanks: we don't have a big orange "LOX" tank. The player would create each of the two (or more) internal tanks separately, and run pipes. Externally you could paint it orange and nobody would be able to tell, but by making the player build them separate internally you make the player choose what kind of configuration they want, whether they need to add coolant systems or pressurization modules, whether they want to cram the fuel canisters tightly together or leave plenty of room... options.

Since our core play is all about arranging components within the constraint, the rockets and fuel offer a very good early guide to the concept, as well as allowing us to gently explain that empty space is not the enemy. Gaps between the two LOX fuel tanks are not evil, nor is the empty space around the rocket valve. The constraint isn't "fill all empty space", but "get everything into something less than 3m diameter".

Anyway, the other half of this lesson is designing your first command module, cramming in seats and computers and shit.

No comments: