All Projects → SiENcE → Astray

SiENcE / Astray

Licence: zlib
Astray is a lua based maze, room and dungeon generation library for dungeon crawlers and rougelike video games

Programming Languages

lua
6591 projects

Projects that are alternatives of or similar to Astray

Zabuyaki
Zabuyaki, old-school side-scrolling beat 'em up
Stars: ✭ 91 (-8.08%)
Mutual labels:  love2d, video-game
WildWorld
Sandbox freestyle multiplayer game/engine in LÖVE/LUA.
Stars: ✭ 35 (-64.65%)
Mutual labels:  video-game, love2d
Bytepath
A replayable arcade shooter with a focus on build theorycrafting made using Lua and LÖVE.
Stars: ✭ 1,119 (+1030.3%)
Mutual labels:  love2d
Boon
A cross-platform build tool for LÖVE
Stars: ✭ 90 (-9.09%)
Mutual labels:  love2d
Aacpaginginfinitescrollingwithnetworksample
AAC Paging Infinite Scrolling With Network Sample
Stars: ✭ 74 (-25.25%)
Mutual labels:  room
Githubprojectbrowser
This is a sample Android Project that is based on Clean Architecture
Stars: ✭ 64 (-35.35%)
Mutual labels:  room
Movietray
Its a playground application focusing on Paging3, MVVM architecture, Kotlin Extension functions, Retrofit, DSL, Navigation component, MotionLayout, SharedElementTransition, Single Activity Architecture, DataStore etc.
Stars: ✭ 78 (-21.21%)
Mutual labels:  room
Openrw
OpenRW "Open ReWrite" is an un-official open source recreation of the classic Grand Theft Auto III game executable
Stars: ✭ 1,108 (+1019.19%)
Mutual labels:  video-game
Love
LÖVE is an awesome 2D game framework for Lua.
Stars: ✭ 1,305 (+1218.18%)
Mutual labels:  love2d
Kotlin Pokedex
🌀 A Pokedex app using ViewModel, LiveData, Room and Navigation
Stars: ✭ 1,156 (+1067.68%)
Mutual labels:  room
Clean Architecture Components Boilerplate
A fork of our clean architecture boilerplate, this time using the Android Architecture Components
Stars: ✭ 1,241 (+1153.54%)
Mutual labels:  room
Easychatandroidclient
EasyChat是一个开源的社交类的App。主要包含消息、好友、群组等相关的IM核心功能。部分界面参照了QQ、微信等相关社交APP。EasyChat APP整体采用MVVM模式,基于JetPack(Lifecycle,LiveData,ViewModel,Room)构建
Stars: ✭ 64 (-35.35%)
Mutual labels:  room
Lily
LÖVE Async Asset Loader
Stars: ✭ 64 (-35.35%)
Mutual labels:  love2d
Spider
Monitor and modify network requests
Stars: ✭ 78 (-21.21%)
Mutual labels:  room
Android tmdb clean architecture
Showcase of clean architecture concepts along with Continuous Integration and Development for modular Android applications. Includes test suits (functional and unit tests) along with code coverage.
Stars: ✭ 63 (-36.36%)
Mutual labels:  room
Openxcom
Open-source clone of the original X-Com 👽
Stars: ✭ 1,302 (+1215.15%)
Mutual labels:  video-game
Pinboard Kotlin
Unofficial Pinboard android app, developed as a playground to study many topics related to Android. Kotlin + Coroutines + MVVM
Stars: ✭ 60 (-39.39%)
Mutual labels:  room
Sienna
Fast-paced one button platformer
Stars: ✭ 77 (-22.22%)
Mutual labels:  love2d
Love2dcs
C# Wrapper for LÖVE, a 2d game engine
Stars: ✭ 97 (-2.02%)
Mutual labels:  love2d
Igdb
Go client for the Internet Game Database API
Stars: ✭ 65 (-34.34%)
Mutual labels:  video-game

Astray

Astray is a lua based maze, room and dungeon generation library for dungeon crawlers and rougelike video games.

Quick Look

local astray = require('astray')

-- This maze generator can only generate uneven maps.
-- To get a 39x39 maze you need to Input
local height, width = 40, 40
--	Astray:new(width/2-1, height/2-1, changeDirectionModifier (1-30), sparsenessModifier (25-70), deadEndRemovalModifier (70-99) ) | RoomGenerator:new(rooms, minWidth, maxWidth, minHeight, maxHeight)
local generator = astray.Astray:new( height/2-1, width/2-1, 30, 70, 50, astray.RoomGenerator:new(4, 2, 4, 2, 4) )

local dungeon = generator:Generate()

local tiles = generator:CellToTiles( dungeon )

for y = 0, #tiles[1] do
    local line = ''
	for x = 0, #tiles do
		line = line .. tiles[y][x]
	end
	print(line)
end

Documentation

See the github wiki page for examples & documentation.

Installation

Just copy the astray folder wherever you want it (for example on a lib/ folder). Then write this in any Lua file where you want to use it:

local astray = require('lib/astray')

Specs

This work mainly based on the following ideas:

Copyright

Copyright (c) <''2014''> <''Florian Fischer''>

License

Astray is distributed under the zlib/libpng License (http://opensource.org/licenses/Zlib)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].