LambdaHack-0.2.6: A roguelike game engine in early and active development

Safe HaskellNone



Generation of caves (not yet inhabited dungeon levels) from cave kinds.



type TileMapXY = TileMapXYSource

The map of tile kinds in a cave. The map is sparse. The default tile that eventually fills the empty spaces is specified in the cave kind specification with cdefaultTile.

type SecretMapXY = Map PointXY SecretTimeSource

The map of starting secrecy strength of tiles in a cave. The map is sparse. Unspecified tiles have secrecy strength of 0.

type ItemMapXY = Map PointXY ItemSource

The map of starting items in tiles of a cave. The map is sparse. Unspecified tiles have no starting items.

data Cave Source

The type of caves (not yet inhabited dungeon levels).




dkind :: !(Id CaveKind)

the kind of the cave

dmap :: TileMapXY

tile kinds in the cave

dsecret :: SecretMapXY

secrecy strength of cave tiles

ditem :: ItemMapXY

starting items in the cave

dmeta :: String

debug information about the cave

dplaces :: [Place]

places generated in the cave




:: COps

content definitions

-> Int

depth of the level to generate

-> Int

maximum depth of the dungeon

-> Id CaveKind

cave kind to use for generation

-> Rnd Cave 

Cave generation by an algorithm inspired by the original Rogue,