Sid Meier’s Civilization® VI Guide

How To Transcribe A Satellite Image Into A Map Script for Sid Meier's Civilization VI

How To Transcribe A Satellite Image Into A Map Script

Overview

A step-by-step guide to making your own internally randomised map like Australia in the Outback Tycoon scenario, from a satellite image or any other map.

Prerequisites

You will need some understanding of the Lua programming language and basics of an image manipulation tool like GIMP.

Outline

All you need is to distinguish between land and water in an image in order to transcribe it onto a map script like Scrambled Australia. (It’s basically the map from the Outback Tycoon scenario). No other information is necessary. Not hills, mountains, rivers or terrain.

Obtaining the land-strip data is ~75% of the work.

Afterwards you craft your landscape, which can be done by using as a template one or more of the maps from the Scrambled Maps Pack.

Choose An Image

As obvious as it may sound, this is the most important step, cos it’s hard to come back here and start over if you selected an image of a map that is not clear enough, or is of the wrong area.

Choose the highest resolution image possible.

Also think very carefully of the geography you want.

Sharpen, Crop & Scale

Use a tool like GIMP to increase the contrast between land and water. Colorize. Fill and/or brush with paint.

Then crop the image to the geographic area you want.

Finally scale it down in pixels to the exact dimensions of the map size. i.e. pixel:hex 1:1.
(Don’t be confused by Civ VI’s hex grid. It is still described and modelled in a cartesian coordinate system).

Transcribe landStrip Data

This is the hardest (most laborious) part.

The random map scripts that produce a fixed land form use “land strip” data. Think of it like how old CRTs (cathode ray tubes) would render a picture. Line by line, left to right, top to bottom.

Each land strip vector consists of:

{y, xStart, xEnd}

For each “strip” of land on the map, you transcribe one of the above vectors. For example, consider the crude representation of a pixelated image (‘X’: a land tile):

0 0 0 X X 0 0 0
0 0 X X X X X 0
0 X X X X X 0 0
0 0 0 X X X 0 0

{0, 3, 4},
{1, 2, 6},
{2, 1, 5},
{3, 3, 5},

Note each row of the image may consist of more than one land-strip vector.

Interpretation

On occasion there may be a need to “interpret” the data. That is, the processed image may betray certain geographic features such as islands, lagoons and deltas. In such cases, you may have to contrive those necessary geographic features.

E.g: The Puttalam lagoon in Sri Lanka.

Pick A Template Script

Now pick a map script from any of the Scrambled maps that most fits your map and geography.

On a PC your subscribed mods can be found at

C:Program Files (x86)Steamsteamappsworkshopcontent289070

Place your land strip data into the landStrip array.

Set dimensions. Search for “width” and “height” and plug in your values. Set also the centre of the map in the vars g_CenterX and g_CenterY.

Build Map Mod

Now that you’re done, see the guide How To Make A Map Mod on how to build & upload your map to the Steam Workshop.

Launch the FireTuner from the ModBuddy Tools menu to see the console output when generating a map to debug.

SteamSolo.com