Farmsim Forensics: Map sizes

Kim Brandwijk
Farmsim Forensics
Published in
5 min readApr 5, 2020

--

This is the first episode in a new series of blogs and tutorials for Farming Simulator 19 modding: ‘Farmsim Forensics’. In this series, we will take a deep dive into some of the more advanced concepts and techniques used in making maps, buildings, vehicles and implements for Farming Simulator.
This is not a beginners series. Basic knowledge of the various tools used for modding, like GIANTS Editor, Blender, Photoshop or similar is assumed.

In this episode, we take a closer look at map sizes, as they are the source of a lot of confusion, misunderstandings, and urban myth in the community.

A short introduction into terrain in FS19

The basis for every single map in FS19 is the terrain mesh: a simple uniform triangulated square mesh. A heightmap is applied to this mesh, producing a 3D terrain mesh. The heightmap image (or ‘DEM’) determines the height of the terrain. The pixel value of the greyscale image is used to determine the height of each vertex in the terrain mesh. We’ll have closer look at that in a future episode.

Heightmap example from the in-game Ravenport map

How big is your map? The 1x/2km/3x/5mi confusion

Other than the height of the terrain, the heightmap file also determines another important aspect of the map, the size of the map. This is something that causes a lot of confusion in the community, and even people that are ‘in the know’ usually tell you only half of the story. So let’s have a look at the full and unabridged story behind map sizes.

Technically, what happens is that the game engine translates the dimensions of the heightmap, in pixels, into meters (for the American readers: meter is the fundamental unit of length in the metric system that the rest of the world uses, equivalent to 39.37 inches. GIANTS uses it for everything).

On top of the requirement that a heightmap needs to be square, its dimensions also need to be a power of 2, e.g. 1024x1024, 2048x2048 etc. If they are not, you’ll get an error message loading the map in GIANTS editor: ‘Error: height map width must either be n^2 or n^2+1’. Giants really meant to say ‘2^n or 2^n+1’ here, but math is not really their strong suit (stay tuned for more examples…).

In addition to the dimensions of your heightmap, there’s a single, not too well known, setting in GIANTS editor that affects the size of the map. This setting is called ‘Units Per Pixel’, and the value determines how many meters a pixel of the heightmap represents.

In both of the maps FS19 ships with, this setting is set to ‘2’, and the heightmap dimensions are 1024 by 1024 pixels. This leads to a map size of 2048 by 2048 meters, or roughly ‘2 kilometers’. In the community, this is known as a 1x map. Because of the ‘power of 2’ rule, the next step up is 2048 by 2048. That produces a 4x4 kilometer map. This is known as a 4x map, because it’s 4 times as big, and so on.

1x, 4x and 16x map size

So, what’s the problem?

The image above shows the first part of the confusion, a 1x map is actually 2x2 km, a 4x map is 4x4 km, and a 16x map is 8x8 km. Describing how big something is by saying ‘how much bigger than something else’ it is, really doesn’t make much sense at all, but it has somehow become the community standard. I would love to see that come to an end as soon as possible. It really isn’t that much harder to say: 8x8 (km), and it is completely unambiguous.

There’s an issue, however, with this community standard. Remember that setting I mentioned earlier, ‘Units Per Pixel’? Let’s have a look what happens if we change that setting. As you recall, it affects how many meters a single pixel in the heightmap translates to.

Wait? What?!

So, what happened here? We took the ‘default’ 1x map size heightmap (1024 by 1024 pixels), and changed Units Per Pixel to 1, and to 3, and by doing so we created a 1x1 km map, and a 3x3 km map. In community lingo, this would be a 0.25x and a 2.25x map.

Warning: what will happen next will challenge all your current beliefs in map sizes.

Did we just create a mythical 3x map?!

Doing the same with the next heightmap size (2048 by 2048 pixels), we end up with a 2x2 km map, and a 6x6 km map. In community lingo, this would be a 1x map and a, wait for it… 9x map!

Let’s do one more quick experiment, before wrapping this up. Everyone always seems to be looking for bigger maps, but a little known fact is that we can also go smaller. We’ve already seen above that lowering Units Per Pixel to ‘1’ for a 1024x1024 heightmap will produce a 1x1 km map, but is anything stopping us from making the heightmap even smaller? As is turns out, the answer to that question is: ‘absolutely not!’.

A 512 by 512 meter map area

Now, I’m not entirely sure how much fun a single field, some grass, and a couple of trees is, but at least it’s technically possible to make a 1/16x map.

Calling out to the community

As you’ve seen, by simply tweaking two variables, we can create virtually any map size: 0.5x0.5, 1x1, 2x2, 3x3, 4x4, 6x6,8x8 km. From now on, let’s just use these kilometer sizes, instead of multiples of an arbitrary in-game map size, to describe our maps. And if all this lack of confusion really annoys you, just call an 8x8 km map 5x5 mi. ;)

Enjoy modding, enjoy gaming, and stay tuned for new articles!

--

--