Let Me Draw You A Starsector Ship, Part 2

Now where were we? Oh, yes, Drawing A Starsector Ship Part 2 (read part 1 here).

I believe I was fretting about the back of the ship, those engine pods and such. Let’s do another sketch:

rear_sketch2

Hmm. While drawing this, I kept thinking “I’d rather be doing this experimentation on the sprite itself”. That, and I rather like the idea of echelons of squarish angle-corned thrusters for the primary drive with “barnacled” pods for the maneuvering jets. Well, let’s go back to the sprite and give these engines an overhaul, shall we?

(Also considering a comment from the forum thread noting that I’ve concerned myself a lot with asymmetry at the front of the sprite but little with asymmetry at the back. Interesting. Though I don’t especially want to have asymmetric engine pods for obvious reasons unless the mass of the ship was wildly skewed to one side. Which might be neat, but … this is not the time for something as off-the-wall as a B-Wing.)

— To the pixels! Jumped in with doing some pixel-brush painting, blocking out a base area with a 100% brush then doing detail and texture with 1-2 pixel radius brush set to very low opacity, sampling bits of colour from around the sprite as needed.

Read the rest of this entry »

Let Me Draw You A Starsector Ship, Part 1

Due to popular demand I’m going to give a go at documenting the process of drawing a ship sprite for Starsector. Haven’t made many new ships lately as there are very interesting larger-scale developments going on, but I find that drawing spaceships is always nice to revisit. And about time I do this again since my methods have certainly changed since the early days.

So what kind of ship shall we draw today? Nothing too big as I ought to finish this post in a timely manner, so let’s go with a frigate. And lately I’ve been more excited about ships that blur the line between civilian and military which evoke a sort of post-apocalyptic can-do spirit so this one won’t be a sleek high-end Tritachyon thing. In fact, I’ve got a good weird idea in mind to fill an unfilled niche: a tiny frigate-sized carrier! This would fit nicely as well with some of the setting development we’ve been up to ( “very interesting larger-scale developments” ): one of the new systems going in — Magec — is composed largely of a giant ring of asteroids, dust, ice, and general chaos swirling around a young blue star. There’s a significant planet, but civilization has collapsed and no major faction has stepped in to take responsibility for what’s left. As one might imagine the place is lousy with pirates, profiteers, mercenaries, and adventurers. A combat-converted miner drone-tender would fit in perfectly!

Read the rest of this entry »

Starsector 0.6.2a Release

Update: The hotfix for 0.6.2a is now out. The changes are:

  • Fixed ArrayIndexOutOfBoundsException crash when flying around in campaign mode
  • Fixed crash caused by trying to do a drag-select in the command UI while the battle is ending
  • Fixed crash caused by scuttling last ship at station and then switching to the cargo tab
  • Fixed issue where exiting to the main menu directly from combat could result in the encounter dialog popping up after loading a saved game
  • Fixed issue where an enemy fleet with low CR across the board would stand their ground but then not deploy anything in battle
  • Fixed bug where CR reduction from the Combat aptitude would not apply to the piloted ship if command was transferred prior to battle
  • “Crash mothballing” now actually works
  • Hermes description now fits in tooltip
  • Modding: fixed issue with getFleetManager() crash
  • Modding: fixed issue with fireSoundOne being played at the first shot rather than at charge startup
  • Modding: CampaignFleetAIAPI.performCrashMothballingPriorToEscape now takes a FleetEncounterContextPlugin

Please re-download the game using the links below – make sure the file you get ends with RC3.

Starsector version 0.6.2a is now out! You can get it here:

(Alternate download links: Windows Mac Linux)

 

As with other point releases, this is a followup to 0.6a. The main features in this one are:

  • Adjustments to combat readiness (more ship longevity and more choices, details below)
  • Four new ships!
  • Campaign help – dialogs that explain various game mechanics – how to split cargo stacks, how CR works, etc
  • Choice of starting difficulty – Easy and Normal. “Easy” gives you a choice of better starting ships and a Mule combat freighter, does not affect the rest of the campaign
  • Updated to use Java 7 and the latest version of LWJGL (2.9.2). Improved performance, OS X 10.6 (Snow Leopard) is no longer supported
  • Reduced memory usage (mostly affects larger mods)
  • Lots and lots of assorted bugfixes/improvements etc

The full patch notes are here.

A note about OS X: if you’re using 10.6, you should be able to upgrade to OS X Mavericks (for free) and run Starsector from there. Not all machines running 10.6 are able to run Mavericks, but the great majority should be able to. I’d have liked to keep supporting 10.6, but Java 7 doesn’t run there, and the machines that can’t be updated to Mavericks likely have a rough time with Starsector to begin with. All in all, it seemed like a worthwhile trade-off for improved performance and access to additional Java features for development.

As usual with OS X, if you’ve got Gatekeeper enabled, right-click on Starsector and click “Open” when running it for the first time. Otherwise, you won’t get the option to run it anyway when it complains that the app is from an “unidentified developer” (that’d be yours truly).

A bit more about the changes to CR:  the deployment cost has been cut in half, but so has the recovery rate. This means that the time to recover from a single deployment and the supply cost per deployment both remain the same, but ships can be deployed more times before exhausting their CR.

In addition, low combat readiness no longer prevents a ship from being deployed. Instead, ships will suffer progressively more damaging and debilitating malfunctions – allowing for a desperate last stand rather than a helpless retreat, if it comes to that.

Ships & Stories

When I was first drawing up spaceships for Starsector we determined what to make based mostly on what felt right according to the conceit of idealized WW2-era naval combat in space. Obviously we needed a big battleship (the Onslaught), cheap swarming fighters (the Talon), a nimble frigate (the Wolf), and a giant carrier (the Astral), etc. The roles and variations of ships pretty much suggest themselves, and the form follows their function. If it’s a battleship, it should look like its tough and packs a heck of a punch. I’ve certainly drawn a few ships without a hard plan upfront but even then I’m always thinking about what kind of role the ship in question is going to play in the game.

It’s just the way I work: Form necessarily reflects function, to my mind. The visual logic of a game should have internal consistency whether it has much relation to real-life realism or not, but it can at least point to real-life aesthetic references for the feeling or idea, if not actual function. So if you sit back and consider what a battleship would really look like in space, it’d probably look like nothing because the display scale would make it a dot that says “Space Battleship” next to it, or as soon as combat began it’d be immediately destroyed by lasers or relativistic kill vehicles or something because it’s a big dumb target — but all hope is not lost! Our game sprite can make visual reference to a 20th century naval warship because my goal is to convey the feeling of battleship to people who have been trained to believe that a battleship looks a certain way, not to create a hyper-realistic near-future space combat simulation. (More on this in the “Ship Design & The Onslaught” post from back in 2010.)

Right, so this is how development of Starsector’s ships has progressed and the big gaps in fleet lineup have been largely filled in. Again, this process largely took place without need for any kind of overarching plan, though occasionally Alex would say “hey, we need a frigate that does this“, or we might talk it over and try something experimental in terms of gameplay. Some experiments worked, some were modified a bit from what was first imagined– phase ships for example — and others never really took off at all, eg. munition ships. But that said, the large part of fleet combat roles is fleshed out; Now is a matter more of filling in small gaps that exist, diversifying existing roles to support the game’s setting and ‘landscape of player progression’. Still, the experiments are lots of fun! (More on this with the Monitor.)

Now I’m taking on more of a role in writing setting & backstory for Starsector. When drawing a ship I’ll think not only of the gameplay function but of the narrative role it fulfills; The possibilities are absolutely fascinating! A simple sprite can, given appropriate text, suggest an awful lot about the universe it exists within and it can draw connections to other ships, factions, places, history, and all of that to emotional responses from the player as they decide how they feel about the ships, factions, and places in the universe of Starsector. Each piece becomes something far greater than the sum of its parts when this all operates together (and I love this part of game development).

Okay, that’s enough rambling: I’ll show off some new ships, discuss their envisioned role in gameplay (which we recognize, dear players, is not necessarily how you’re going to use them), then a bit about how their backstory fits together with the rest of Starsector.

 

Cerberus

superhoundThis one is easy: Everyone loves the Hound so why not build a bigger Hound? And that about explains everything you need to know. (The working title for sprite was, naturally, “superhound.psd”. )

As for drawing, I’ve been tending toward more curved plating and slightly subtler shading. I’m trying to get away from having too much “greeble noise” covering ships so that the overall form doesn’t devolve into so much pixel noise, and so it gets more of a chance to make itself seen. This should result in a ship that’s more visibly identifiable at a glance and it ought to look better when scaled down or zoomed out rather than drawn at pixel-perfect resolution, as is often the case for ships in Starsector. You can still see the Hound parts used as a base for the image, however ( … and man is it ever just a brick of a ship!)

Read the rest of this entry »

Starfarer 0.51a Release

Edit: The download links have been updated to point to a hotfix release that fixes a crash bug when clicking on an empty slot in any orbital station inventory.

Original blog post below.

First off – let’s talk about version numbers. The previous release was technically a “preview” of the 0.5a build “proper”, whatever that means. That was until I started thinking about how to version this “bugfixes & improvements” release, which still wouldn’t have all the features slated for 0.5a. 0.5a2? 0.5a-preview2?

I’ve had to sit through a few meetings with people arguing about version numbers at my various former jobs (seems like everyone doesn’t want to waste time with it, but also can’t stand doing it any way but theirs), and I don’t want to be that guy, especially not to myself. Down with the version number sophistry! This release will be known henceforth as 0.51a, and the next one will be… wait for it… 0.52a. I’ll just have to avoid specifying a version number when talking about planned feature sets, as I did with version 0.5a.

I’m sure everyone is quite sick of talking about version numbers by now (see what I mean? I didn’t want to waste time on this, and look what happened!), so let’s dive into what’s new in this version.

  • Improvements to the command system – new escort behavior and tasks chief among those
  • Ship balancing (slowed down some frigates, sped up most larger ships)
  • Hull mod balancing (added downsides to some of the best ones, buffed some of the weaker ones)
  • Added two new orbital stations (pirate & Tri-Tachyon), tweaked content progression
  • Larger ships now need less experienced crew
  • Re-worked post-battle surrender mechanics
  • Improvements to ship and admiral AI
  • Added several new medium-sized missile launcher weapons
  • Lots of bug fixes

The new version is not save-compatible. My apologies for that – but as the game is still in alpha, maintaining save compatibility just isn’t something we can do yet. Also, at least some (perhaps most) mods will be broken, so you should disable them before playing the new version. On the bright side, the changes in this version mean it will be much, much easier for multiple mods to work together without conflicts.

You can see the full list of changes here.

 

Please download the new version using the buttons below. You’ll have to reinstall the game, but shouldn’t need to enter the activation code again.

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 Preorder