Libra is a 2D top down roguelite in which the player is pursued by AI while finding level exits.


The basis of Libra was creating a grid based world that would randomly generate a map of indeterminate size through which traversable could be achieved; this means that certain tiles, like water and stone, can't be crossed by the player, so level generation must ensure that an exit path exists. Level designers can modify or completely override randomly generated maps by providing a drawn map; the map generation checks for known colors and uses corresponding tiles. I implemented a fast 2D raycast, basic animations from sprite sheets, and a relatively extensive system of AI and weapons to give the world more interactivity and uniqueness. The AI wandered through the map and chased players through a heat map. My final game included seven types of AI with different traits and attacking behaviors.


In Libra, I developed several types of AI in what I would now call "the hard way"; each AI had its own class and reimplemented all the functionalities individually instead of extending a base AI class's functionality or utilizing a decision structure.