Home Artists Posts Import Register

Content

Some planets are hot, some are cold, some are dry and some are oceans, some are lush with plants, and some are infested with… other life. Xenorkyd planets (pronounced Zenorkid) are mostly covered by fleshy mats of material that blurs the line between fungus, animal, and plant.

You’ll need to go to these planets and destroy some fleshy growths on the surface to uncover sources of sap. Some of them may fight back, but the well equipped engineer cares little for such things. You can harvest the sap to make the planet’s specific science pack, which is approximately biological science 3 in the current version.

The current plan is that these planets will be the first point in the game where combat is a hard requirement. The “biter meteor” mechanic will be moved here and won’t be part of the Vitamelange planets anymore (or maybe it will be a mod option). Part of the reason for this is that the aesthetic for the planet is naturally very close to the existing biter graphics, so it just makes sense that this place can act a bit like a biter homeworld. It won’t ‘just’ be the biters you know though.

I’ve been avoiding posting about this planet because I don’t have anything to show for the terrain graphics yet. I have some placeholder tilesets, but they will need unique sets of decoratives, tree-like things, and special water before it looks at all reasonable. Those things won’t be done for a while because the planet is more self-contained in terms of assets than other planets that can share rocks, vegetation, and other normalish things.

The way I’ve done the mapgen for the planet is quite interesting though, specifically the elevation. This is going to get a bit technical so I don’t want to go into too much detail. I can later if people want that, but for now I’ll try to keep it fairly high-level and just the interesting parts.

The first interesting part is the use of truchet tiles. Truchet tiles are essentially a grid of tiles where the edges are always consistent, so as long as you have tiles that have the same edge connections you can choose them at random to make things like random line patterns.  I wanted a random pattern of ridges and valleys where the altitude of ridges and troughs were at a consistent and predictable height. This is really difficult to do with normal noise programs (graphics noise, not audio noise), because even though there are ways to make consistent altitude sections you still lose control over the distribution of those points and the gradients between them. 


With truchet tiles I was able to break the map up into a grid of squares, and each square randomly slopes in a diagonal direction. With a bit of trickery & maths, the tile edge is always ascending or descending so the tile middle can either connect peak to peak or trough to trough.  The result is a pattern of ridges and troughs, and the gradients between points is always an exact value. In the example images, yellow is 1, dark blue is -1, and the black line between them is 0. This looks extremely artificial, but by warping the input coordinates a lot I can get something that looks a lot more organic while retaining most of the control over the feature distribution.

The second part is even weirder and essentially relies on hex-grid interference patterns. The goal is to make something that looks like gigantic neurons, or fleshy lumps with diverging branching roots. The first hex pattern just sets up hexagonal tiles that constrain the next steps. Anything approaching the edge of these large tiles is set to zero (black). Within each large tile the tile contents have a random rotation to help break up the repetition.


The second hex pattern is basically like a honeycomb pattern with the centre of each hex being a large low flat area and ridges forming the boundary between hexagons. This hex grid has a corner in the centre of the larger hex. Three edge lines extend from the central corner before hitting another corner, but after that there’s no more room and the new branching edges fade out. The result looks less like a hex pattern and more like a branching root structure (but still very artificial).

The last hex is a small peak in the middle which acts as the main hill for the roots to extend from, and also helps disguise the 2nd hex central point.

Finally, the whole thing gets distorted to look more natural.

Combining the neuron/root features at a large scale, the truchet rivers & land-bars at a medium scale (and a bit of conventional noise at the largest and smallest scales) it ends up with a really unique looking landscape.

Files

Comments

billbo99

If the planet needs a whole bunch of new tiles, does that mean that this will have to wait until Factorio 2.0 and an updated game engine that allows more than 255 tiles?

Earendel

No, it's not that many extra tiles and the next version of alien biomes has less dirt variants of the same colour so the overall tile count (AB+SE) is only slightly more than now and will fit in F1.x.

Systox

What is the status with SE and 2.0? So SE will work fine with 1.x. Will it work with 2.0 or does it even use some features?(don’t want to know which if you can’t talk about it) Quality rocket engines? 🤤