Progress Report, October 2012

Posted by

In our last post, we left off with my thoughts on a new kind of resource for the game: cash. I wanted something that could be used to trade between empires and also something that helped to give a slight advantage to defenders over attackers (i.e. by requiring you pay for fuel, it's easier to defend than it is to attack). I haven't posted for a few weeks since then, but not because I had nothing to say: au contraire, I've been really busy implementing a bunch features that I'd like to go through now.

Changed to existing UI

First off, I've changed the layout of the starfield page a little, to allow for a higher information density.

Starfield view, new layout

As you can see, the list of planets/colonies and fleets are now side-by-side. There's a new button, "Intel", which I'll get to in a minute. "View" will bring up the solar system view (as will tapping on a planet). Tapping on a fleet will bring up the empire overview activity, with that fleet already selected.

Also, a minor – but important – change in the solar system view page:

Solar system view, minor changes

I'll probably be changing the layout of the lower section to be similar to what you see on the starfield view, but I just want to draw your attention to the top-right. I've added a limit on the maximum amount of food and minerals you can store (500 is the default). You can build Silos to increase the amount of storage (each silo adds 100 to the limit). Also in the top right, you can see the rate-of-production for all colonies combined for each of food and minerals.

If you're wondering why the selected colony has +91/hr for food but the overall rate is only +75/hr, that's because the indicator on the bottom-left doesn't take into account what's being used, only what that colony is outputting.

So what happens if we start building stuff?

Building a fighter

The fighter is a new kind of ship I've added. It's really just a place-holder for now, since we'll have lots of different kinds of fighters in the final game. You'll also notice I've added the slider down the bottom there that lets you build a bunch of ships all in one go. I figure you'll want to have lots of ships building, so this is much easier than building them one-by-one!

Building fighters

The fighters will take 3 hours, 44 minutes to build. Building 50 fighters obviously takes 50 times as long as a single fighter. Also, now if we go back to the solar system view, we can see the minerals that are being used to build these guys:

Building, using up minerals

Now you can see that it's using up 172 minerals per hour, and in fact we're already down by 49. The fighters are scheduled to finish in 3 hours, 44 minutes so if you do the math, you can see that we'll actually run out of minerals before then. But that's OK, the estimated completion time actually takes that into account and is the time the fighters will finish even though we'll need to wait for minerals by the end.

Scouting and NPCs

One big thing I've added to the game is NPCs. It's a little boring when you're just starting out because there's no other human players around (that's because we don't want to start you right next to a powerful player who'll just wipe you out in the first go – by starting you away a little bit, you have a fighting chance to establish yourself before you meet anybody else). NPCs are shown in the game as being "native" – kind of like civilisations that have not yet discovered interstellar travel. So you can attack them, but they won't attack you.

So lets check one of them out. First, we'll sent a scout over to a close-by star:

Sending a scout to a nearby star

You can see that we indicate the distance and estimated time of arrival of the movement and also – importantly – the cost. The cost to move a fleet is different for the different types of units (for example, a colony ship is very expensive, fighters are quite cheap) and the number of ships in the fleet. Scouts are fairly expensive to move, but typically you'll only send one at time.

Scout movement in progress

Here we can see the scout is making progress. The estimated time remaining is 21 minutes. If we click on "Empire" and go to the "Fleets" tab, I've also added an indicator showing the fleet is moving:

Fleet list, with moving scout

With play-testing, I'll be adding more details to these screens as they become necessary, but already I think this is a good start. When the fleet arrives, you get a notification, and when you go back to the game, you can select the star (Meg) in our case, and click the "Intel" button to bring out a report that the scout generated:

Intel Report

You can see from the report that the native NPC has a bunch of fighters on the star, and they all have the "aggressive" stance. The instant our scout arrive, they attacked him and he was destroyed. But that's OK, the report stays around forever for us to collect at our leisure (though of course, if you leave it too long, it'll become out of date – the report is a snapshot of what the scout saw when it was there).

So it looks like there's quite a few ships on this star that we'll have to destroy if we want to colonize it. We wouldn't want to send a colony ship there now, because it would just be attacked as soon as it arrived. Scouting, therefore, is quite important because there's no other way to see what fleets an empire has.

Collecting Taxes

If we want to attack the other star, we're going to need a whole bunch of fighters. In the future, you'll be able to purchase ships from the market (assuming other players are selling), but for now we have to build them ourselves. We can kick off a bunch of builds to build a whole heap of fighters:

Building a bunch of fighters

Because we're building so many, we need a lot of minerals. That's why it takes much longer to build these 300 ships than the 50 we built before: this build spends more time waiting for resources. Anyway, once those fighters have been built, we can launch an attack. But now there's another problem:

Too expensive!

With so many ships, the cost to move them is too much! As I mentioned in the last post, one way to get cash is to collect it via taxes, so if we open up the Empire overview, on the colonies tab we can collect taxes:

Our three colonies, with taxes available

Taxes build up slowly over time in the colony. You add them to your global pool of cash by coming here and collecting them every now and then. Select a colony, click "Collect Taxes". Once we have enough cash, we can move our fighters to the enemy's star and begin combat!

Combat

Combat is also something I've started working on. It's at the very early stages at the moment, but so I won't go into too much detail here. Here we are launching our fleet of 670 fighters at the enemy star:

Fighters on the way to the enemy star

Now, once those fighters get to the enemy star, they'll attack the fighters that are there. The rules that govern combat are still being worked on, but I see something like this:

  1. Combat runs in "rounds", one minute each round
  2. At each round, every ship that's attacking fires at exactly the same moment
  3. Damage is calculated after all ships have fired. The amount of damage a ship does is calculated based on it's offensive score and the target's defensive score
  4. When a fleet reaches zero ships, it's destroyed and the attacker will (automatically) choose another target.

The second and third point there are important. Basically, if you and the enemy are equally-matched, then you will both be mutually destroyed. The winner is always the side with the strongest force, it doesn't matter who goes "first".

Also, combat is largely automatic. You send a fleet to an enemy star, and it will choose which target to attack first, which to attack next and so on.

I'll have more details of how this works over the coming weeks, but I'm working hard on building a unit testing framework so that I can ensure combat is properly scoped, speced and tested. It's the most important aspect of the whole game!

blog comments powered by Disqus