• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.
Good news, everyone! We have a new developer diary and this time it's about the map editor!

If you want to refresh your memory about the previous dev diaries, check here: http://forum.paradoxplaza.com/forum/showthread.php?802652-Cities-Skylines-dev-diary-archive!

What does a map need? – The checklist
There are various things that a good map needs before it becomes playable. These include water areas like rivers and lakes, outside connections such as highways and railways, natural resources and so on. To make the process of creating a map about doing the cool stuff like modeling the mountains and digging up riverbeds and not keeping up with the minutia the map editor has an easy-to-use checklist that tracks all the important aspects of the map's playability so that you don't have to. And as you keep adding stuff into the map, it automatically checks the boxes that have been done properly. The checklist has two categories, requirements and recommended features. The requirements are a must while the recommended (natural resources) are optional and usually they are there to make the city building more strategic than if they were not there.

9FzPqrS.png

The checklist keeps track of the features required and recommended for the map.

Starting tile and boundaries
When a new map is started the map tile grid is clearly visible to the map maker. Here they can see the boundaries of the buildable area and also select the starting map tile if the default center tile is not their preferred choice. At any point during the map making process the starting tile can be changed. Perhaps the map maker wants to have a large lake in the center of the map and requires that the starting tile is located on the northern shore of said lake. They can simply open Map Settings panel and select a new starting tile. This does not affect the overall buildable area or its form; the starting tile can even be located at the edge of the buildable area if the map maker chooses so.

29QgRmb.png

The grid of the playable/unlockable area of the map.

cLpXAPJ.png

Choosing the starting tile.

The boundaries of the buildable area are also a good indicator when creating the terrain formations. While irregular terrain can be a nice challenge and create varied city plans, it is in general a good idea to keep most of the area within the boundaries relatively smooth to not limit the building space too much. The areas outside the boundaries are mostly for eye candy. There lies the open water of the ocean and the high mountain ranges. Also the outside connections are required to be build there, going outside the map borders.

Terrain editing tools and heightmaps
Terrain editing has all the basic tools required to manipulate the terrain as the map maker sees fit. There are several editing modes: raising/lowering, flattening, smoothing and creating slopes. There are also several different brushes for all of these modes, starting from the basic soft and round brushes and going to the harder-edged brushes and the custom-shaped brushes designed to create more natural formations. Brush size and strength are also changeable.

eKcTlal.png

The tools of the trade.

The map editor also allows the importing of heightmaps. The grayscale PNG files (preferably 16-bit for more accurate terrain formations) can be created in an image editing software (or in one of the terrain generation software) and saved into the correct folder within the game folder from where they can be accessed in the editor. While heightmaps offer unparalleled realism compared to purely manual terrain editing, they usually require editing in the map editor as well to achieve the playable quality a game map (compared to real life map) requires.

NDgV0zQ.png

Heightmap was used as the basis for the map layout. Then the necessary editing was done in the map editor using the different tools at your disposal.

ar2rRL1.png

The heightmap that was used as the basis for the map in question. Using terrain generation software to create natural looking terrain formations is not only handy but also rewarding. Creating natural looking terrain manually can be very difficult.

Water sources and the sea level
Water is the key to life and also an important part of Cities: Skylines. For a map to be playable there needs to be water in the buildable area and especially on the starting tile. Water is present in two ways: flowing water that is created by placing water sources on the map and sea water that is present in areas where the terrain level is below the sea level and there is an access to the border of the map.

YHALXLp.png

Lower part of the map has the sea level set to 45 meters.

TnTxRoX.png

Placing a water spawner that will eventually create a lake and fill the river, flowing into the sea.

Rivers are best done by digging a river bed to the edge of the map and then placing a water spawner there. The water will eventually flow along the river bed and if the spawner's capacity is large and the height is high enough it will keep flowing until it reaches the other side of the map or the sea level.

RWZ462f.png

Lake filling up. Water masses of the three rivers can be seen flowing towards the sea.

Lakes are also created using water spawners. The spawner is placed in a suitable spot and then the map maker can change the height of the spawner to define the level of the lake. The water will spawn as long as it reaches the height set for the spawner. Then the spawning and draining of water will balance so that the lake will never flood unintentionally. A spawner also functions as a drain so the map maker can have a river flowing into a small lake without it flooding. The larger the designated lake area, the larger the spawner capacity should be in order to fill the lake effectively.

x7ICVKB.png

Adjusting the water spawner's height so that it will fill the lake as high as possible without overflowing it. The spawner stabilizes the water level and drains all excess water from the area that exceeds its height.

Infoviews
The map editor also features a set of infoviews which are meant to help the map maker to see the most important aspects of the map like water flow directions and the placement of natural resources as well as the terrain height differences. When creating rivers it is wise to consult the water flow infoview occasionally to make sure that the water spawners have high enough capacity to produce strong currents and that the river flow remains correct when it comes in contact with larger water areas such as the sea and large lakes. While many rivers and streams have relatively steep profiles where the water actually runs down a hill or mountain side, there are also rivers where the elevation is smaller which can make balancing the river flow with the general sea level trickier.

dPuHVI6.png

Checking the flow strength and direction of the water masses.

zWefVnx.png

The terrain height infoview mode is a nice tool to check if there are unwanted irregularities in the map, mainly those that can seriously affect the city building process such as annoying, unnecessary bumps on the ground. The map maker has to remember to keep in mind the not only the nice look but also the good playability of the map. While lots of erosion and other small things might in theory look good, they can present quite the challenge when laying roads and planning the city.

lsHpziq.png

Natural resources infoview shows where the resources are located on the map. Green is for trees, black is for oil, blue is for ore and yellow is for fertile land.

Outside connections – Roads, railways and ship and airplane paths
To function, a map needs to have various outside connections. The most important one is the highway connection. The map needs at least one incoming and outgoing connection for each of the different types of transport but the starting tile has to have at least a highway connection to be playable since the player has only access to road building in the beginning of the game. The checklist is handy in these cases to keep track of the outside connections and therefore the map maker can easily see how many points of connection they have at any given moment.

XvVfzND.png

The outside connections are important and are required to be on the map. The player can edit all the roads in the map area they have unlocked while building a city. However they can't edit the roads and other connections such as the train tracks that are outside the city boundaries and in the non-buildable zone. Therefore it is the map maker's responsibility to offer all the connections a city might need which means at least one highway connection in the starting tile.

Natural resources and decorations
To make the maps more strategic the map maker can paint the different resources on the map, keeping in mind that the resources should stay within the playable area to be accessible (however they can be used to decorate even the area that are non-playable if the map maker chooses so. There are four natural resources. Three of them can be painted on the ground which will alter the ground texture depending on the resource type. One of the resources is forest which can also be painted on the map. There are several different trees to choose from (the selection also depends on the chosen theme). The trees are an excellent way to both decorate the map and also use them as a resource in the game.

w8cjoCh.png

All natural resources are painted using the same tools, from forests to ore and so forth.

2fX0m7i.png

Forest is not only one of the resources but they are also part of the decorative side of the map.

Themes – Nordic
There will be three different themes in the game. All of them will have a unique lighting condition and each terrain as well as the selection of trees will vary accordingly. In the example images the north theme is in use which has the pine trees and conifers making up the majority of the forests. The lighting resembles the northern hemisphere as well as the terrain textures with the toned down colors.

8eZqpJQ.png

When the map is ready, the map maker can take a preview image with the Snapshot tool and then save the game giving it a name and checking the Publish Map checkbox. This makes the map appear in the playable maps section when starting a new game. The publishing option also prevents unnecessary backup saves and copies from populating the playable map list.

- Henkka also known as an artist, designer and level designer at Colossal Order
 
Last edited:
How do so many games get leaked? Maybe colleagues should be vetted more thoroughly. I'd not employ anyone who'd ever used pirated software, because it demonstrates an attitude that may be applied to your decision to leak.
 
A request that the devs consider the island question:

I understand why, currently, there needs to be a road/bridge to the outside world. A few posts in this thread have given a great example of how we can cheat here; we can have our cake and lie in it too, rather than making our beds and then having to eat them:

Please consider making the change such that a port placed on a coastline could be considered by the game to be a highway connection too, or think of some other cheat. It might look odd to have a constant stream of traffic entering and departing a port that doesn't appear to have vast fleets of shipping showing up all the time, but I think giving people the option here is the best thing to do. I'm sure that such devilry is not beyond your abilities, and it would avoid any 'island-gate.' Lots of OCD types are going to be sad if they can't have an island.

Apologies that I've quoted myself; I don't want to spam, but thought that I might not have been clear.

What I'm suggesting is that this magic port is only available in the map editor, not during any other game mode, and it would be perfectly fine if there was a requirement that it was placed outside the potential build grid too.

So the magic 'outside-world-highway-connection-alternative-traffic-spawn-point-port' would be only that, and outside of the play area.

I realise that it's most unlikely that the change would happen in time for release, even if you like the idea. It's in no way a deal breaking - throw my crayons out of the pram - issue for me, but I do like to play on islands. Thanks for reading, devs and all.
 
Apologies that I've quoted myself; I don't want to spam, but thought that I might not have been clear.

What I'm suggesting is that this magic port is only available in the map editor, not during any other game mode, and it would be perfectly fine if there was a requirement that it was placed outside the potential build grid too.

So the magic 'outside-world-highway-connection-alternative-traffic-spawn-point-port' would be only that, and outside of the play area.

I realise that it's most unlikely that the change would happen in time for release, even if you like the idea. It's in no way a deal breaking - throw my crayons out of the pram - issue for me, but I do like to play on islands. Thanks for reading, devs and all.

Would it be acceptable to you to build a small plot of land on the map border, then have an island with just a bridge connecting the outside to your island?
 
Would it be acceptable to you to build a small plot of land on the map border, then have an island with just a bridge connecting the outside to your island?

Sure, it's all good. Rather than a silly little blob of land and long bridges for rail and road connections, I probably wouldn't bother though. When you say 'acceptable' it makes it sound as though I think the current connection requirements are unacceptable. I don't think that, but just that there's, what seems like, a relatively simple way to enable people to have discrete islands if they would like them.

Perhaps it won't matter anyway because of the non-build buffer around the grid; it may not look as strange as SC4 does to me if the land extends to the map edge. Shame though; I think I'd have hours of fun making islands with this cool map editor.
 
Sure, it's all good. Rather than a silly little blob of land and long bridges for rail and road connections, I probably wouldn't bother though. When you say 'acceptable' it makes it sound as though I think the current connection requirements are unacceptable. I don't think that, but just that there's, what seems like, a relatively simple way to enable people to have discrete islands if they would like them.

Ah, fair enough. I don't think it's a bad idea by the way, I was just thinking of ways around it if they don't add it. It's actually a pretty neat solution, an editor-only object that acts like an "off-map" node. I could see it having any kind of model a modder would want to make even.
 
Man, these features of the editor. I just want to play with that water all day long, to get me a partial fix of a god game now. And maybe CO will make it's own interpretation of Sim Earth with this and then I am finally done crying after Spore got ruined.
 
Hi All,

From my calculations the total map size is a 9x9 grid with each grid equal to 2klm. From tests I’ve done in Unity to get decent terrain detail on to a 2x2klm terrain tile you need to go 2048x204 for the *.r16 file. If you do the maths this means as a single texture to cover the whole map you would need the *.r16 file to be generated at 18432x18432!

So you go screw that I’ll use a 4k texture, 4096x4096 which equals 455x455px per 2km tile, which would be pretty ugly. Someone from the dev team want to throw some light on this?

Also what height and detail resolution is being used in the terrain editor? I assume that Unity’s default terrain script is being used which would mean only 4 textures per map? Or are you using something like rtp script which would support 8 textures per pass?

Will we be allowed to load our own textures into the terrain editor, or will everybody have to use the same 4/8 default textures?

2048x2048 *.r16 on a 2klm tile.
Unity%202048S.jpg


full size: https://dl.dropboxusercontent.com/u/98905290/CS/Unity%202048L.jpg

Are you using skyboxes or skydomes, if the later can we use our own time of day script? For that matter can we use our own skyboxes, skydomes, or C# scripts?

Cheers all.
 
Last edited:
Man, these features of the editor. I just want to play with that water all day long, to get me a partial fix of a god game now. And maybe CO will make it's own interpretation of Sim Earth with this and then I am finally done crying after Spore got ruined.

You're going to love the water tools in the map editor! It's absolutely incredible what CO has done with these water tables. It goes completely beyond anything you've seen in a city-builder game before.
 
You're going to love the water tools in the map editor! It's absolutely incredible what CO has done with these water tables. It goes completely beyond anything you've seen in a city-builder game before.

It's a good thing to note here that - until recently - Azurespecter was a community guy just like all of you's. This seems to be his genuine reaction to CSL (which makes me very happy, haha).
 
How big is the "eye candy" non buildable area of the map? It looks like a buffer of between one and two tiles around the 5x5 tile buildable part or is it an arbitrary value?

The reason I ask is I want to start preparing some terrain height images of select cities.

Assuming it's 2 tiles (or 4km) buffer that would make a total map size of 18x18 km or 324 square kilometres.

Can someone confirm as I haven't seen this mentioned yet.

Edit: it looks like this correlates to graphite's calculation. It would be good to get official confirmation.

PS your tile looks awesome, but I wonder how realistic such landforms are at 2x2km. Is it based on actual data and what is your Z-scale?

I'm a spatial analyst, environmental modeller, biogeographer and cartographer by trade but "terraforming" to produce visually pleasing and buildable maps is not something I tend to do! :p
 
Last edited:
You're going to love the water tools in the map editor! It's absolutely incredible what CO has done with these water tables. It goes completely beyond anything you've seen in a city-builder game before.
Initially I was not real excited about the water. Now however, after seeing this map editor diary I am quite happy it has been implemented. The selling points for me were the ability to have variable water levels that flow into each other, and the water spawn points that create and drain water. I can see some really cool potential in this mechanism.
 
It's very interesting indeed and a unique selling point. Maybe people will be able to create crazy waterfall features in their maps! No doubt Niagra will be replicated. :)
 
How big is the "eye candy" non buildable area of the map? It looks like a buffer of between one and two tiles around the 5x5 tile buildable part or is it an arbitrary value?
The reason I ask is I want to start preparing some terrain height images of select cities.
Assuming it's 2 tiles (or 4km) buffer that would make a total map size of 18x18 km or 324 square kilometres.
Can someone confirm as I haven't seen this mentioned yet.
The entire map is 9x9 tiles (18x18km). The center area where the player makes the map tile choices is 5x5 tiles and the eye-candy area is 2 tiles wide. The heightmap resolution for the whole 9x9 tile area is 1081x1081 pixels, 16-bit greyscale.
 
It's a good thing to note here that - until recently - Azurespecter was a community guy just like all of you's. This seems to be his genuine reaction to CSL (which makes me very happy, haha).

This is great to hear from you and Azurespecter. With this water simulation, the possibilities for modding also seems great, for example natural disasters could have whole new features, if they were to be implemented or fan made.

Also wondering if rain/ground water is simulated, or if you have to take water from a flowing river. I assume the flowing river has to exist so you can pump dirty water into it when you first start your small city, but wasn't sure for water input.

I also see a lot of potential for artificial rivers and lakes created by players, if there is a way to pump water somewhere with an output that doesn't require for water to be there initially.

Last, but not least, is there some simulation of erosion for maybe also for smoothing out slightly jagged river sides or the above mentioned creation of your own rivers and lakes?

I am so very much excited, which I shouldn't be, because I cannot play it yet, but am very happy that CO is developing a Citybuilder with its competence and knowledge. :)
 
PS your tile looks awesome, but I wonder how realistic such landforms are at 2x2km. Is it based on actual data and what is your Z-scale?

I'm a spatial analyst, environmental modeller, biogeographer and cartographer by trade but "terraforming" to produce visually pleasing and buildable maps is not something I tend to do! :p

Hey Simon, good to see another Aussie in here ;)

In Unity the Z axis is Y ... don't ask me why.

By scale are you referring to how many meters per pixel?

but I wonder how realistic such landforms are at 2x2km.

This would be subjective to what result your after, it was a test for another project and this is how it looked running in engine.

[video=youtube;IpTq6XED-hg]https://www.youtube.com/watch?v=IpTq6XED-hg[/video]

cheers mate
 
Brilliant job. I can't see any other city building game match what have you done.