In Jumpgate Evolution, ship design is one of the most critical components in the game. When we first started working on it, we spent a lot of time with just one ship, in one sector, fighting a handful of enemies. At first we just wanted to make a ship that was both fun and intuitive to fly. This involved changing camera controls, controller input and lots and lots of unit tests. In the end it took about sixty to seventy iterations to get a flight model and control scheme that felt right.
The next thing we did is come up with what kinds of roles we wanted people to have. This was fairly simple in that the kinds of ships that people want are reasonably well defined. You want to have a quick and nimble fighter, a heavier combat ship, perhaps a missile boat of some kind. On the commercial side you need mining and transport ships. For the high end we considered things like “spy” class ships or heavy gunboats, support class ships that can repair armor or refuel ammunition and just about anything in between. It’s a really fun process to just throw ideas out and see what seems cool and fun to try.
After that we culled those ideas down to a much smaller number. We wanted to make sure that people could play many types of ships so it was not like choosing a “class” in a fantasy game, for example. Thus one pilot can own a mining vessel, a transport and a heavy fighter. We set to work doing broad strokes on the various classes. Initially this meant that we needed support for the various characteristics a ship might have, for example power, engine thrust (acceleration), mass, turning capability and so on.
Our first pass was a multitude of ships with different capabilities and small to moderate differences between them. For example, initially we had shuttles, light fighters, medium fighters and heavy fighters with distinctions and progression within each class. When our systems designer started working on implementing all of those he quickly came to the conclusion that lost of small differences aren’t very fun. We thus switched things around to make much stronger and clear distinctions between each class of ship. We ditched the idea of a medium fighter and took what was cool about it and split it between light and heavy. Suddenly it was much more distinct and fun to fly the two different classes. At first this decision hurt a bit as we thought of it as removing variety from the game. The opposite turned out to be the case. Variety comes from the ability to distinguish difference. If everything is only slightly different than something else, it turns things into a kind of gray goopy mess. By strongly identifying differences flying a light fighter, a heavy fighter, and an industrial ship feels right.
That’s a pretty general overview of one particular aspect of what goes into working on ships. It also involves balancing power availability, speed and maneuvering, equipment distinction and many other things. Another thing we learned is to balance in PVP first. When we make new ships now, Jay (Jay Ambrosini – Systems Designer) will spend quite a bit of time taking a stab at how things should fly, what configuration they should have and so on. We then give people those ships and during our daily play test do a series of PVP battles followed by everyone sending Jay feedback. He takes that, makes some changes and we play again. Sometimes we do this up to three or four times a day. You know when you’ve got it right because people won’t want to stop playing. Once a ship works in the PVP scenario, tuning it for PVE is much easier. Jay said it best when he proclaimed that PVE has to be fun, but PVP has to be fair. Making sure ships are distinct but avoiding super weapons is quite difficult. Our overall goal for ships is that there are as many distinct types as possible and that they are all enjoyable to play while each having weaknesses that can be exploited. This is how, we believe, you can achieve the kind of tit for tat combat that are a hallmark of great game design.