#4 LibGDX Jam

Category: 

Solar Colony is all about resources, you have to mine and produce resources, in order to survive. A citizen needs food, water and oxygen, so you have to produce those resources.

What resources?

The basic resources are some gases, liquids and solids. At the moment the most resources are gases. The most important ones are obviously hydrogen and oxygen. The oxygen is used by the citizens directly and also to produce water:
\( 2H_2 + O_2 \rightarrow 2H_2O \)
Every human will consume oxygen and will produce carbondioxide, so you have to get rid it. This could be done via the Carbon Dioxide Reduction Assembly (CReA). This unit will consume carbondioxide and hydrogen, in order to produce methane and water:
\( CO_2 + 4H_2 \rightarrow CH_4 + 2H_2O \)
If you like, you could now use a bit of that water to produce oxygen again...
But what could we do with the methane? Not much, you could either just discard it by blowing it out of the station or you could use it as a thruster. So basically both alternatives will blow it out, but the later one will do it to adjust the attitude. I'm not sure if I will implement that option, but I will keep it in mind.

Some code

Now a bit of code. The resources are nothing more than an enumeration. The first parameter is the short name, the second is the long name and the third parameter is the category of this resource.
public enum Resource {
  // Gas
  Hydrogen("H₂", "Hydrogen", Category.Gas),
  Deuterium("²H", "Deuterium", Category.Gas),
  Tritium("³H", "Tritium", Category.Gas),
  Helium4("⁴He", "Helium 4", Category.Gas),
  Oxygen("O₂", "Oxygen", Category.Gas),
  CarbonDioxide("CO₂", "Carbon Dioxide", Category.Gas),
  Methane("CH₄", "Methane", Category.Gas),
  // ... Liquids, Solids, etc. ...
}
There are obviously three categories: gases, liquids and solids. Those are used for "normal" resources. But there are two additional categories: food and meta.
Citizens will have to consume food, but instead of having only one kind of food, there will be different kinds. If a citizen only consumes one kind, he will get sick. If he eat many different kinds of food, he will be healthy and happy, just like in real life.
So to simplify this, I added the "food" category.
The meta category is again a bit special. At the moment the only meta resource is energy. But maybe citizens will have a health resource or something like that.