Thursday, July 18, 2013

Customizing Starships

As some of you might know, I'm sort of doing a space battle prototype thing. One of the keys to any space-ship-related game is allowing the player to customize their starship.

The vast majority of starship customization options are treated the same as fantasy character equipment. Slot in various pieces of gear into various positions. The only real difference is that instead of having two hands, you have a certain number of weapon hardpoints or whatever. But, fundamentally, it's a matter of slotting in equipment. Many games actually allow you to do this pretty much instantly, in deep space. Because as anyone will tell you, completely changing out your computer core while flying in deep space is a straightforward and easy process.

Putting that aside, I started to think about other pieces of this puzzle.

In my game, the ship is quite customizable in terms of how you use things in battle - throwing energy around, using NPC commander abilities, and so on. Changing out the equipment as well seems overly complex and I rather like the idea that you pretty much know what weapons and shields any given class of ship will have. It lessons the need to have players click on enemy ships and try to read their blueprints - instead, you can easily see precisely the array of enemies you're up against. Of course, most starship games do that as well - only the PC ship can be customized. Nobody else bothers to customize their ship. Another way to stretch my suspension of disbelief.

So I was thinking about other kinds of customization that don't involve completely changing the ship loadout.

One is rebalancing or modifying the ship systems. While you wouldn't switch out your phaser bank for a missile bay, you could modify your phaser bank to be more powerful at the cost of weakening your available impulse drive, or you could change the phase pattern so it's more effective against shields but has a shorter range... these tweaks can change the parameters of your vessel and make it unique even when you're still flying the same class of ship with the same weapons and shields and such. Make the ship systems a bit stretchy instead of swappable.

Obviously, another feature is visual modification. Changing the paint job and fundamental texture of the various pieces of the ship. Even though you're both the same class of ship, your ship might look like a rusted, antennae-covered heap painted in pink and white, while someone else might have a smooth, polished chrome variant. This is quite easy to do, and is basically a given. Restrictions on available colors, patterns, and textures can unify factions such that even if they use the same ship class you can tell what faction someone is because their surface texture is notably different. Of course, you could also monetize rare textures.

More than that, the lighting on the ship can be customized. When in a game environment, the light that actually falls on your ship might not reliably illuminate the whole visible side. However, all ships have lights - sensors, observation decks, running lights, spotlights on their name, and so on. Customizing the placement, color, and layout of these lights could be fun!

The ship mesh is also quite easy to modify, and you could allow the players to stretch, squash, tilt, and dent their ship in various ways. I don't know that I'd bother, though. It seems a bit wonky to treat a ship like play-dough.

But all of these things are just visuals. There is another facet of the ship which can be customized: the audio.

Unless your whole game is going to be starship combat, there's going to be a fair amount of driving around, orbiting, idling in menus, chatting, whatever else. Only a small portion of a game - especially an MMO - is spent in direct combat. Therefore, customizing the ambient sound of your ship seems like a great idea.

Let's assume you can't wander around your ship in first person mode or anything - even so, you are still the captain of your ship. You should be able to hear your ship. Too many starship games give you the audio of the outside of your ship - typically just the gentle fwooosh of the engines. I'd like to give the players the audio inside their ship. It's even possible to give them the option to hang out in various places on their ship to get various audio ambiance. Bridge, engineering, canteen, lounge, and so on.

In general, these ambient environments have two major pieces: the background hum, and the ambient noises.

The background hum, representing the workings of the power core, engines, ventilation, and so on. This is a valuable tool for making the ship feel alive. The throb of the generators can change in timbre depending on the load, so you can hear it grind while you're at FTL, then drop to a gentle buzz when you decide to go into standing orbit. The ventilation whooshes a bit more aggressively during the day shift, due to the high population, but it is gentler during the night shift. And so on.

The ambient noises are actually easier to make, because they don't have to shift in timbre or frequency. Instead, they play somewhat randomly in somewhat random order. These would be the bleeping of consoles, whooshing of doors, footsteps, gentle conversational noises, and so on. While these do give the ship a feeling of life, I also like the idea that they are altered by the modifications you make to your ship systems. If you punch up the range on your scanners, you might get more "scanner" bloops and ambient conversation about "filtering out sensor ghosts" or whatever. Similarly, if your hull texture is festooned with crappy metal plates instead of the sleek chrome armor, you might hear creaking or a echo "buzz" after each sensor bleep.

The ability to put in voice acting is a powerful one, although also an expensive one. Ideally, even though it's just ambient conversations held in the background, only vaguely audible, you would still be able to tell which crewmember was talking and their personality.

Anyway, if you make the ship ambient noise vary widely depending on player customizations, I think it'd make the game a lot more interesting, especially when the players change ships or go onto a friend's ship.

No comments: