Trade & Smuggling

(If you’ve read an earlier blog post, “On Trade Design“, some of what follows is going to sound familiar.)

Trade and smuggling are closely related, so it makes sense to tackle both at the same time. Smuggling is simply a more detailed case: trade with complications, if you will.

If you’re going to have a successful trade run of any sort, the first thing you need is information. The main way the player gets information is through news reports and intelligence assessments. Information is important for more than just trade, and these reports have a dedicated tab in the UI.

intel_report_list

For trade, the information the player needs is straightforward: where can they buy or sell something at favorable prices? This kind of information is where things could easily descend into spreadsheet hell, with the player poring over pricing information for every commodity at every market, trying to find the best deals.

It’s important to note that it’s not a binary condition (“too much information” vs “a good amount”); how much information to process is “too much” is subjective. So, the approach to managing the amount of information presented is going to be based largely on my own feelings about what seems right.

Much of the problem is taken care of right off the bat by the economy simulation. When it reaches an equilibrium, prices are such that trade isn’t profitable. For example, if market A produces ore, and market B needs it, the simulation will reach an equilibrium point where the price of ore on both markets is about the same. Throw in tariffs on both ends (set at a brutal 30%), and shipping ore from A to B just isn’t going to bring a profit… unless something happened to disturb the balance.

In some cases, that disruption is directly due to an event. A food shortage will directly increase the price of food. Less obviously, it will also destabilize the local market and decrease the prices of everything else, which may or may not result in other profitable trade runs opening up.

What this means is that you can’t rely on news reports of events being the only way to find out there is a trading opportunity. While the number of these opportunities is much more manageable because they’re mostly driven by events and the simulation actively stamps them out over time, the game still needs to keep track of prices and convey that information to the player.
Read the rest of this entry »

Faction Relationships

Sometimes during development, you end up doing things you hadn’t initially planned on doing. Fleshing out player-faction relationships is one of those things. It was something I knew I’d have to look at eventually - the current system having two attitudes towards the player – “meh” and “shoot first and don’t ask questions”, with nothing in between, was definitely not going to hold up. Initially, though, it didn’t seem connected to the economy and events systems, which are the focus of the upcoming release. So, how did faction relationships get dragged into this?

With the introduction of trade and events, player actions carry more meaning than they did before. A successful trade run contributes to the stability of the markets involved; more so if the markets are small. Smuggling can be a hugely destabilizing force. A food shortage has long-term consequences, which depend on how severe it is, which in turn depends on whether the player got involved, and if so, how. Markets declare bounties when hostile fleets are doing damage to the economy, and so collecting on those bounties – by removing said fleets – has a real impact as well.

Not all of these are earth-shaking, and there’s still some work to do on making the consequences more pronounced and more clear. One way to do that that is to make other inhabitants of the world notice, and react to, your actions. It’s a clear way for the game to say “what you just did matters”. Provided that your standing with a faction has a tangible effect, it also increases how much it matters. We get improved clarity and increased impact – a win/win! Factions having more nuanced attitudes and responses to your actions also increases their believability.

This is all a long way of saying that if the player can do things that matter, it’s tough to separate that from NPCs having appropriate reactions, and if those reactions are limited to “attack” and “don’t attack”, that doesn’t provide enough expressiveness.  (Put like that, this seems rather obvious… ahem, moving on.)

faction_screenIf you’re going to have more detailed faction relationships, there has to be some way to see what they are. Darn it, more UI work.

Read the rest of this entry »

Fleet Creation

During the last couple of weeks, I’ve been working more and more on content for the next release, as opposed to features. The next release is going to add four new star systems - Arcadia, Eos, Magec, and Valhalla. David has done a lion’s share of work in mapping these out and creating the backstory – and now, it’s time for these to be populated with fleets.

When adding content, a key question that comes up is how much to procedurally generate vs hand-craft. Both approaches have their pros and cons; on a very basic level, hand-crafted content is going to have higher initial quality, while procedurally generated content is going to have more replay value. It’s not a question of which approach to choose, though. Every approach lies somewhere on a continuum between the two, so the question is exactly how to mix hand-crafted and procedural components, and in what proportion – in this case, specifically as it applies to fleet creation.

Before deciding how to do something, it’s not a bad idea to figure out what it is you want to actually do. With that in mind, let’s take a look at what we actually want out of fleet creation. There are two parts to it: what ships make up a fleet, and what kinds of fleets to spawn (and where, and how often).

Fleet Composition
First, the obvious: what ships go into a fleet depends on what type of fleet it is. A trade fleet is going to need freighters, a patrol is going to need fast attack ships, and so on.

hab_glows_sindriaCompletely unrelated screenshot of the habitation glows on Sindria, along with some backstory

Read the rest of this entry »

Markets

In the parlance of the economy system, a market is any entity (generally a planet or a space habitat) that participates in the economy. One of the primary ways of interacting with a market is through the trade screen, which therefore needed a major revamp from its current incarnation. Let’s take a quick look at the new trade screen, and then talk about the details of how markets work.

 jangala_tradeTrading with Jangala in the Corvus system

Please note that the market-related screens aren’t completely finished. Some of the artwork in the screenshot uses placeholders – for example, the top-right  icons for market conditions currently use hull mod icons. In general, things could change from what you’re seeing now, but I wouldn’t expect them to change too much. That said, let’s dive into the details!

Market Conditions
In the upper right, you can see a row of icons labelled “market conditions”. Market conditions are the building blocks that define a market – they determine what it produces, what it consumes, how much population it has, what type of planet it is, and so on. For now, buildings and installations are also rolled into market conditions, though later on they’ll probably receive more detailed treatment.

Jangala has the following market conditions:

  • Urbanized Polity
  • Regional Capital
  • Orbital Station
  • Military Base
  • Autofactory – Heavy Industrial
  • Organics Complex
  • Orbital Burns
  • Jungle World
  • Population – hundreds of thousands

The “Urbanized Polity” condition, for example, increases demand for luxury and domestic goods, and reduces food production. (Rampant speculation on what the other conditions do may officially commence.) Read the rest of this entry »

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 »

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