Phase Cloaking – a Deep Dive

As usual, after a major release there’s some time to polish up some things that there just hasn’t been time for up to that point. In fact, a lot of the upcoming 0.7.2a is turning out to be about “paying off” technical and design debt – things that are “good enough for now”, but do have to be addressed at some point.

doom_vs_enforcer

One such is phase cloaking. There’s a post from a while back on how the current mechanics came to be if you’re interested in the details, but let’s summarize:

Way, way back, the original idea for phase ships was something submarine-like, being able to hide on the battlefield and deliver surprise attacks. That sounds like fun but didn’t turn out to be practical, so phase cloaking changed to become a way to avoid damage instead – shift to another dimension, let enemy fire pass through/over your ship, uncloak, and fire back. That essential concept remains unchanged in this new iteration; the changes are looking to address some specific issues with the implementation.

What, then, are the issues? Read the rest of this entry »

The Ion Pulser & Development Process

Or, if you like, “A Charged Subject”.

Or “David gets Alex to basically write half the blog post by quoting his emails”.

Right, so let’s take a peek into the process of back and forth commentary and iteration Alex and I  go through when adding a new weapon to Starsector. I think this may give some insight into how this game gets made and how working on one small piece of it rolls odds and ends off into other areas of development.

Our story begins with a simple request for a new weapon asset.

pulser1

Just spray & pray!

Read the rest of this entry »

Expanded Battles

First, a brief summary of what this post is about – a new campaign feature that allows nearby fleets – naturally, including yours – to join ongoing battles.

If you’ve been following the development of this release, you’re probably aware that things are in the “polish things and make it fun to play” phase more so than in the “add more features” phase. Why, then, add a significant new feature at this stage? The answer is that it’s a direct response to playtesting, rather than a specifically planned-for feature on the roadmap – it’s meant to help address several important gameplay issues, some quite long-standing. Now was a good opportunity to do it, and here we are. Looking back, I’m glad I ended up taking this on now rather than later – with how many different pieces of the code this change touches, it would only get more difficult with time.

battle_join

Let’s take a brief look at what the design goals are, and then we’ll dive into the specifics of how it works. Read the rest of this entry »

Hyperspace Terrain

In an earlier post, I’d talked about terrain. An astute observer might have noticed that the terrain discussed there is all more or less normal stuff – nebluas, asteroids, etc. Nothing that’s a good fit for hyperspace, which has more of a “weird” feel.

hyperspace

The first question is, what’s the goal of adding terrain to hyperspace? Obviously not having any terrain there would be a bit boring; spicing things up with some variety is not a bad goal, but something more specific would help guide the design better. So: “make hyperspace travel something that can be done well or poorly by the player”. This fits with the overarching goal of terrain making travel more interesting. Unlike normal terrain – which generally makes things interesting by impacting your interactions with other fleets, i.e. hiding from someone inside a nebula – the goal for hyperspace terrain is to be interesting by itself. This fits nicely with the primary role of hyperspace as a travel medium. Read the rest of this entry »

Terrain

In the spirit of continuing to liven up the campaign layer of the game (and also knocking out a swath of high-level features in the most-straightforward-possible way), I’ve been working on terrain in the past couple of weeks.

But first, in the name of putting something shiny before the break: fleet contrails!

terrain_trails

In addition to being eye candy, these also serve as visual indicators of ability use. For example, using the “Emergency Burn” ability brightens up and extends the trail, while activating “Go Dark” reduces its length and duration.

With that, onwards to terrain. What does it do? It affects fleets that are in it – their speed, detection range, that sort of thing. Why is it there? As usual, part of the answer is “to give the player an opportunity to make interesting decisions”. Without terrain, if you’re being pursued, running one way or another is pretty much the same.

If you might lose your pursuers in an asteroid belt, or hide inside a nebula, then you’ve got reasons for going one way or another. Beyond that, adding terrain to star systems gives them more personality and makes them more interesting.

Read the rest of this entry »

Forum Blog Media FAQ Features Digg it! Del.icio.us! Share this on Facebook Reddit Stumbleupon it! Technorati Tweet it! Download Starsector for Linux Download Starsector for Mac Download Starsector for Windows