MapLandmassGenerator

class MapLandmassGenerator(ruleset: Ruleset, randomness: MapGenerationRandomness)

Functions

createArchipelago
Link copied to clipboard
private fun createArchipelago(tileMap: TileMap)
createFourCorners
Link copied to clipboard
private fun createFourCorners(tileMap: TileMap)
createInnerSea
Link copied to clipboard
private fun createInnerSea(tileMap: TileMap)
createPangaea
Link copied to clipboard
private fun createPangaea(tileMap: TileMap)
createPerlin
Link copied to clipboard
private fun createPerlin(tileMap: TileMap)
createTwoContinents
Link copied to clipboard
private fun createTwoContinents(tileMap: TileMap)
equals
Link copied to clipboard
open operator fun equals(other: Any?): Boolean
generateLand
Link copied to clipboard
fun generateLand(tileMap: TileMap)
generateLandCellularAutomata
Link copied to clipboard
private fun generateLandCellularAutomata(tileMap: TileMap)
getEllipticContinent
Link copied to clipboard
private fun getEllipticContinent(tileInfo: TileInfo, tileMap: TileMap, percentOfMap: Double = 0.85): Double

Create an elevation map that favors a central elliptic continent spanning over 85% - 95% of the map size.

getFourCornersTransform
Link copied to clipboard
private fun getFourCornersTransform(tileInfo: TileInfo, tileMap: TileMap): Double
getRidgedPerlinNoise
Link copied to clipboard
private fun getRidgedPerlinNoise(tile: TileInfo, seed: Double, nOctaves: Int = 10, persistence: Double = 0.5, lacunarity: Double = 2.0, scale: Double = 15.0): Double

Generates ridged perlin noise. As for parameters see MapGenerationRandomness.getPerlinNoise

getTwoContinentsTransform
Link copied to clipboard
private fun getTwoContinentsTransform(tileInfo: TileInfo, tileMap: TileMap): Double
hashCode
Link copied to clipboard
open fun hashCode(): Int
smoothen
Link copied to clipboard
private fun smoothen(tileMap: TileMap, threshold: Double = 1.0)

Smoothen the map by clustering landmass and oceans with probability threshold. TileInfos with more than 3 land neighbours are converted to land. TileInfos with more than 3 water neighbours are converted to water.

spawnLandOrWater
Link copied to clipboard
private fun spawnLandOrWater(tile: TileInfo, elevation: Double, threshold: Double)
toString
Link copied to clipboard
open fun toString(): String

Properties

randomness
Link copied to clipboard
val randomness: MapGenerationRandomness
ruleset
Link copied to clipboard
val ruleset: Ruleset

Sources

jvm source
Link copied to clipboard