The first thing the map generator does is to decide how the floors are going to be layed out in the map. The 64x32 cells map is separated into sections where each section is a block of 16x8 cells.
The first step is to decide which floor level each section represents. To allow the player to understand the game at a relaxed pace, the generator is written to gradually increase the complexity of a map. To this effect, the first 5 maps have restrictions on which sections can be used.
Map 0: Sections 1, 2, 5 and 6 For those familiar with SuperCC or MapGen, you will notice that map 0 is actually using sections 2, 6 and 10. The programmer decided to hardcode these sections since the originally generated map is not as intuitive. Here is a Steem snapshot of the original map if its floor sections wouldn't have been hardcoded. As the very first base, you will find it harder mainly because the first power socket is in a room full of encounters After randomly selecting the number of floors the map will have (a number between 2 and 5, but forced to 1 for the first map), the generator will set itself as being in creation of level 1 floors. It picks a random floor section and set it as being floor level 1. It will then randomly pick an adjacent floor section connected to our current floor section and assign it the same floor level. If the picked adjascent floor section exceeds the edge of the map (for example, it's at section #12 and decides to use the section to the right), the generator will set itself as being in creation of the next floor level and pick a random floor section again. It will do this until it has reached the top floor. Now at the top floor, the generator randomly seek an undefined floor section. When found, it's assigned a floor level identical to a randomly selected adjascent section. The generator does this until all floor sections are defined. Map 17.3 has the floor layout defined as follow:
|