User Tools

Site Tools



Mapcraft - Fantasy map designer

WorldGen - SciFi universe generator

Mapcraft Web - Web based fantasy map designer

All code for the project is released under the GPL, and is copyright Samuel Penn.

The text on this wiki is dual licensed CC-BY-SA and GPL.

You can contact the author at



A Facility is something that exists on a world and which generally consumes and produces resources. Any world with a population will have residential facilities, which simply consume resources. Farms and Mining operations are also considered to be facilities.

The output of a facility is proportional to the world's population, and possibly modified by other things such as tech level or type of government. Not all facilities run at maximum capacity - they each have a percentage rating. Unless a world is devoted to that type of facility, a rating will generally be much lower than 100%.

Potentially, facilities could also be used to represent ongoing events (in which case the term facility would become unsuitable, but it'll probably be kept) such as civil war, outbreaks of disease and so on.

The basic facilities are Farms and Mines, which take the planet's natural resources and turns them into trade goods. Residential facilities give people a place to live, and Industries turn one type of trade good into another kind.

See Commodities for what facilities produce and consume.

Determining Facilities

The first thing to we need to do with facilities is assign them to worlds. We do this based on a set of property files which select a set of facilities according to the planet's properties. The properties that are of interest to us are:

  • Hostility of world.
  • Population.

The hostility of a world is a measure of how difficult it is to live on, and is defined in a trade code (but based on a number of factors, including temperature, atmosphere and ecology).

Hostility Description
H0 Ideal world, Earth-like.
H1 Habitable world. Environment is extreme, but is survivable with training.
H2 Difficult. Require special gear, such as breathing mask or warm clothing.
H3 Inhospitable. Cannot live on surface without protection (no atmosphere), but can survive with a standard space suit.
H4 Hostile. Mercury.
H5 Extremely hostile. Venus.

Generally, anything worse than H1 requires special equipment. The Arctic/Antarctic on Earth would count as H2 - you can survive for a few minutes naked, but that's about it.


The basic culture of a civilisation is determined by the primary residential facility. The options available are determined by the technology level of the planet, and are sorted into the following categories:

At a later point there might be further subdivisions at TL13+, but for now it caps out at ultratech.

The culture type is also affected by the population size and type of world, but the above technology categories are the most important.

Facility Statistics

Each type of facility has some data associated with it. At the simple level, there is its Name, Type and Icon. Only the Type has functional importance.


Defines a broad classification for this facility. Can be one of:

  • Agriculture - Generates trade goods from agricultural resources.
  • Mining - Generates trade goods from mineral resources.
  • Residential - A world will generally have one of these, which represents what the population consumes in terms of trade goods to survive. There is at least one per tech level.
  • Industry - Converts trade goods into trade goods of other types.
  • Starport - Consumes trade goods

Tech Level

The minimum tech level that the world must have in order to support this type of facility.


The Level of a facility is 100 if the facility is a major part of the world's economy, 0 if it doesn't exist at all. Residential facilities will tend to be 100 for most worlds, lower for poor worlds and higher for rich worlds. The Level is on a per-world basis.

If a facility has a level of 100%, and a population of 1,000,000, then production/consumption is based on a population of 1 million. If the level is 10%, then it is based on 100,000, etc.


An Operation is a process which a facility applies to resources and/or goods.

Operation Description
AgHu Hunting and gathering.
AgFa Organised farming.
AgIn Intensive farming.
AgSc Scavaging.
MiSi Mining of Silicate ore.
MiFe Mining of ferrous ore.
MiCa Mining of Carbonate ore.


The requirements define what commodities need to be available for the facility to work at maximum efficiency. Requirements are defined as CommodityCodes, and have a percentage requirement.

If this facility has a requirement for a commodity at 50%, then that commodity only needs to support half the population. With a population of 1,000,000, and a commodity with a consumption rating of 4 (1/100 people), then 5,000 units of that commodity are needed each week.

Any available commodity that matches the CommodityCode can be used. If several match, then they will tend to be used equally.


Lists what the facility produces. Agriculture and Mining always turn resources of the matching types into trade goods.

Residential can generate trade goods from nothing, as long as the requirements are met. It is assumed that these products are relatively cheap and easy to produce.

Industry, turns one type of good into another type. Not sure yet how we define this.

Using Facilities

Each commodity has a production requirement (the number of people required to obtain one unit per week) and each resource has a density (how easy it is to obtain the resource on this planet).

The basic amount of commodity that is generated from a resource is as follows:

Pc = Population / Pr / (10000 / Rd^2)

  • Pc - Production Capacity
  • Pr - Production Requirement of the commodity
  • Rd - Density (1-100) of the resource

Each facility has a size, which represents how extensive it is and is given as a percentage. This modifies the Pc to give the number of units of that commodity generated each week.

This may then be modified by the technology level if the commodity has a TL modifier.

worldgen/facility.txt · Last modified: 2015/02/04 22:39 (external edit)