Sid Meier's Civilization VI

Sid Meier's Civilization VI

28 人が評価
How To Transcribe A Satellite Image Into A Map Script
作者: blkbutterfly
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)\Steam\steamapps\workshop\content\289070

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.
25 件のコメント
blkbutterfly  [作成者] 2022年1月12日 10時31分 
@eurritz Correct! :steamhappy:
eurritz 2022年1月12日 10時20分 
just to clarify, lets say theres an image like this:

O X O O X O
O O O X X X

the landstrip vector would be: { 0, 1, 1}, {0, 4, 4}, {1, 3,5}?
Soggus 2018年1月29日 16時11分 
Jaggers
blkbutterfly  [作成者] 2018年1月28日 18時26分 
@GermanGamer7 Ok. I'll think about writing some more guides for making other types of mods, but my "expertise" is definitely in map making. I'm learning more of scenarios too (cos they're based on maps).

But you are better off asking modders like JFD to produce a guide on how to make mods for civs and units, etc.
PrimalReversion 2018年1月28日 8時09分 
Why the mocking emoji?
blkbutterfly  [作成者] 2018年1月28日 6時04分 
@GermanGamer7 Actually you should ask 2K+Firaxis for such documentation cos you paid them for the game :steammocking:
PrimalReversion 2018年1月27日 15時45分 
By "make a mod" I mean add a new civ into the game, give it new units, etc.
blkbutterfly  [作成者] 2018年1月27日 8時02分 
@TheMuffinGamer See the subheading "Transcribe landStrip Data". It's got an example of land strip vectors. You don't need a photo of a text file :steammocking:
Muffin 2018年1月25日 16時15分 
Could you post a photo of a txt file as an example, just so I can be sure I'm doing it right? It would be much appreciated.
blkbutterfly  [作成者] 2018年1月24日 22時34分 
@GermanGamer7 You can make a mod without knowing any coding. Not a map script though. Soz.

But a WorldBuilder map, yes. Or a mod that alters XML defaults, yes. You will still need to make yourself familiar with MS Visual Studio (Civ VI SDK) and XML