https://github.com/atriusx/dungeonkit
A Rougelike Dungeon creator written in Kotlin
https://github.com/atriusx/dungeonkit
browser dungeon java js jvm kotlin multiplatform native nodejs rougelike
Last synced: about 1 month ago
JSON representation
A Rougelike Dungeon creator written in Kotlin
- Host: GitHub
- URL: https://github.com/atriusx/dungeonkit
- Owner: AtriusX
- Created: 2019-10-21T18:25:46.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-07-29T16:43:29.000Z (over 4 years ago)
- Last Synced: 2025-02-28T09:15:26.973Z (about 2 months ago)
- Topics: browser, dungeon, java, js, jvm, kotlin, multiplatform, native, nodejs, rougelike
- Language: Kotlin
- Size: 229 KB
- Stars: 5
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
DungeonKit is a multiplatform library written in [Kotlin](https://github.com/jetbrains/kotlin).
The purpose of the library is to enable a simple and easy way of creating floors for rougelike
dungeon generators.### How it works:
The generator is built off the back of several different systems. The map is generated using the
`Generator` API, which is largely usable across all platforms without many extra implementations
The map is then fed into the `Renderer` API, which requires more dependency on specific platforms.
Both sides of the library are tied together through the use of binding maps.#### Example code:
Below we have a simple implementation that generates a map to the console using the BSP Algorithm
with a bit of added padding.
```kotlin
DungeonKit.create(dimension = 50.dim, tileMap = SimpleCharTileMap) // Create the base dungeon
.steps(BinarySplit, Trim(2)) // Generate a binary split partition map and crop it to fit
.render(ConsoleRenderer) // Render our map out to the console window
```## Note
This project is still in development, and as such things are likely to continue changing for a while.
Contributions are also welcome!