• Welcome to SC4 Devotion Forum Archives.

Can one reduce the size of a map that one has downloaded

Started by doug_wesson, March 23, 2023, 06:14:40 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

doug_wesson

I downloaded a few maps of New Zealand Ciies and they are rather large, is there a way of reducing the size of the map

LucarioBoricua

#1
Yes! But first we'll need to know the following:

  • Do you have a link to the map you're trying to use? Whether from the LEX, the STEX, or whatever other source you're using.
  • Which map format are you talking about? The instructions I'll give you will depend on whether it's an SC4M file (the special file format for use in SC4 Mapper and SC4 Terraformer) or whether it's a grayscale image (this requires an image editor which supports grayscales of the kind you're using). Note there's a difference between a typical 8-bit grayscale (the map looks like a stair-step or terraced shape) or a 16-bit PNG grayscale (the image looks super dark unless it has tall mountains).
  • What kind of size reduction do you want? You have the option to crop (cut out a portion of the map for your own use) or to shrink (re-scale the map to fit smaller dimensions).
Let us know, and we'll be able to help you properly!

doug_wesson

Hi Lucario I can handle grayscale images ok by using GIMP. It is the files in the SC4M format that I would like to know how to reduce the size of the map. I want to reduce the size by eiter three quarters or half size.


Many thanks in advance


LucarioBoricua

You can use SC4 Mapper to export your map as an image file you can edit with your image editor of choice. In this case, you'll want to Export as, and select either the 16-bit PNG, or the RGB image (24-bit bitmap).

When re-scaling, make sure to do the re-scaling manually, to ensure the resolution is a size the game can read. For that, the size of each side must be a number you can calculate using pixels = 64x + 1, where x is the number of small cities. If you want to limit the size to medium or large cities, you can use pixels =  128x + 1 or pixels =  256x + 1, respectively.

Once re-sizing, save the image under a new file name, keeping the same properties (especially important for the 16-bit PNG, make sure it's a 16-bit grayscale with no transparency/alpha channel). Then you'll use SC4 Mapper to import the image through "Create Region" option. There you'll choose the image format you re-sized, look for the re-sized file, and render out your new region. Adjust the city layout (config.bmp) as desired, export as your new SC4M file (for safe-keeping, in case you want to re-use the region later), and save the region (this'll render the map into the game).

Really hope this helps!

doug_wesson

Hi Lucario

The map I am trying to deal with at the moment is NOATAK. Now I opened the SC$M file in SC4Mapper if i use the Export Option all I get is an image that is completely black, if I use the Save Image option I get the correct image except it has all the City Grid Line even though I have that option tick off.

Please advise what I am doing wrong


Cheers and many thanks for the prompt reply, is much appreciated

doug_wesson

Hi Lucario again If I export as a bmp it works fine. Really appreciate you time and help.

doug_wesson

Hi Lucario once again :)

Using GIMP and cut out a selection from the map and saved it. now do I have to convert it into a grayscale image to use back in SC4Mapper

LucarioBoricua

If you do the RGB bitmap, you can also import those into SC4M, it's best to keep the format consistent in the export > edit > import process. Let us know how it goes!

doug_wesson

Hi Lucario

unfortunately I am having no luck with this endeavour. When I convert it to grayscale the whole map goes crazy and i get huge cliff etc

I have tried importing it as an RGB image but after waiting for hal an hour and not getting anything loaded I shut program down.

What is the colour scale for maps ie 1 - 10 feet rise 11 to 20 feet etc

I am presuming darker shades of gray gives one water and as you go lighter you should get different land types


Odainsaker

#9
Hiya!

You might have to avoid the RGB image format if recaling, as it is not a normal RGB color image but instead uses clever iterations of the value steps in the Red, Green, and Blue color channels to encode an expanded range of elevation.  Any resizing of the image will interpolate the RGBs of each pixel, and that in turn will radically alter the elevation data they encode, which is likely why you got crazy cliffs.  You should still be able to safely crop this type of map image.  This type of image must be kept in its RGB BMP format, and is only importable into SimCity via SC4Mapper or SC4Terraformer.

The exported RGB BMP version of the CP Map Noatak would have looked like this:

Those aren't contour lines in the normal sense, and this isn't really an image that can be edited in a graphics program without knowing the unique way the colors channels store elevation data.  If I recall correctly, this RGB scheme was an early method for SimCity mapmakers to store map data with greater range than SimCity's old and cumbersome 8-bit grayscale in the era before 16-bit grayscale was more easily accessible.

Instead, you were on the right track when you exported the the 16-bit grayscale PNG image, which properly should have been mostly dark and looked like this:


In this type of map the value of the 16-bit grayscale determines the elevation, and in SC4Mapper and SC4Terraformer each step in value of the 16-bit grayscale represents 0.1 mneters in elevation.  In SimCity using 16-bit grayscale, the grayscale value 0 represents the sea floor and value 2500 is at sea level.  As the 16-bit grayscale range goes all the way from 0 black to 65535 white, the potential maximum height is 6,553.5 meters, about near the taller mountain peaks on Earth.  This also means that most of our 16-bit maps, especially near sea level, are largely going to be shades of black.

Unlike the SimCity RGB scheme, which uses special step combinations of Red, Blue, and Green to code precise elevation, the 16-bit grayscale is a normal stepping grayscale, and so it can be rescaled and the pixel values reinterpolated without fear of radically fouling the elevations.  Also be aware that rescaling the horizontal and vertical dimensions of the map will not rescale the elevation values, so you could potential make slopes steeper or shallower.  Changing elevations would have to be done by lightening or darkening pixels, or playing with the color histograms, curves, or levels.  This type of image should be kept in the 16-bit grayscale PNG format and can be imported into SimCity via SC4Mapper or SC4Terrafomer.  Also, a 16-bit grayscale PNG map does not readily or easily convert to an 8-bit grayscale map used by the SimCity default map importer.

In GIMP, a 16-bit grayscale must be exported with these PNG options to be usable with SC4Mapper:  16bpc GRAY and Compression level 0:

No layers, alphas, or interlacing either.

Of course, being so heavily weighted to the dark end of the grayscale, it is hard to see what you are doing if merely trying to crop a 16-bit grayscale image. To make this easier, you might use the Save Image option, which would produce a SC4Mapper color-coded map image in PNG format like this:


This image has the same dimensions as the exported RGB BMP and 16-bit grayscale PNG, and so it can be directly used as a template to guide where you might want to cut or crop.  I personally just use Notepad to jot down the left, right, top, and bottom coordinates to crop, and then crop out the same coordinates on the 16-bit grayscale PNG.  You can instead also use it as a layer over the 16-bit grayscale PNG in order to guide your crops, and then afterwards delete the layer.  Note that the color-coded SC4Mapper image was solely for displaying a beauty shot with relief of a map creation and cannot be re-imported back into SimCity to recreate its original map.

Hopefully this will help in giving a clearer idea of the what the different exported image options are doing in SC4Mapper.