Skip to content

Latest commit

 

History

History
34 lines (18 loc) · 1.22 KB

design_document.md

File metadata and controls

34 lines (18 loc) · 1.22 KB

Design document

Tietojenkäsittelytieteen kandidaatti

Documentation language: English

Libraries

libGDX

LibGDX is game development framework for Java. I chose libGDX since it has a lot of extensions which will help me with the grapchics and game AI which aren't the main focus of this project.

Extensions used

Tools

Box2D

Ashley

gdxAi

Algorithms and Data structures

Map generation using Binary space partitioning.

Object postitioning using Depth-first search algorithm

Why BSP?

With bsp it is easy to prevent rooms from overlapping or being too clumped when randomly generating maps. Also it is possible to generate a binary search tree of the rooms.

Why Depth-first search?

With depth-first search we can determine all the different routes and thus prevent crucial objects such as keys and health items from spawning behind their intended targets. Time complexity O(n + m).