Skip to content

matf-pp/2026_procedural-rougelite-arcade

Repository files navigation

██╗     ██╗   ██╗███╗   ██╗ █████╗ ███████╗ ██████╗ ██╗     
██║     ██║   ██║████╗  ██║██╔══██╗██╔════╝██╔═══██╗██║     
██║     ██║   ██║██╔██╗ ██║███████║███████╗██║   ██║██║     
██║     ██║   ██║██║╚██╗██║██╔══██║╚════██║██║   ██║██║     
███████╗╚██████╔╝██║ ╚████║██║  ██║███████║╚██████╔╝███████╗
╚══════╝ ╚═════╝ ╚═╝  ╚═══╝╚═╝  ╚═╝╚══════╝ ╚═════╝ ╚══════╝

LunaSol

A procedural arcade-style roguelike made with Love2D and Lua.

LunaSol gameplay — navigating a procedurally generated maze


Codacy Badge

About

Student project for the course Programming Paradigms at the Faculty of Mathematics, University of Belgrade.

Authors

  • Aleksandar Djordjevic
  • Milan Torbica
  • Tarik Ramadani

Gameplay

Roaming the lobby, the hub you return to between runs:

Roaming the lobby

A sneak peek at The Shop, a between-runs hub currently in development:

The Shop

Game Flow

The game is driven by a lightweight state manager. Each screen is a registered state, and transitions between them are animated with our own sunshine library.

stateDiagram-v2
    [*] --> menu
    menu --> lobby

    lobby --> playing
    lobby --> shop
    shop --> lobby

    playing --> pause
    pause --> playing
    pause --> menu

    playing --> death
    death --> playing
    death --> menu

    playing --> victory
    victory --> playing

    playing --> win
    win --> lobby
Loading

The sunshine transitions (iris and fade) in motion between states:

Sunshine iris and fade transitions between states

Built With

Tools used:

Running the Game

Download the latest executable for your system from the Releases page.

Releases are not available yet.

Development Setup

If you just want to play the game, see Running the Game above.

Prerequisites

  • Love2D — includes LuaJIT, a just-in-time compiler for Lua. We mainly used Visual Studio Code for development, with the Lua and Love2D Support extensions by sumneko and Pixelbyte Studios.

Running Locally

  1. Install Love2D.
  2. (Optional) Add Love2D to your PATH:
export PATH="$PATH:/path/to/love"
  1. Run the game from the project root:
love .

License

TODO

About

Arkadna igrica sa proceduralno generisanim nivoima i rougelite elementima napravljena u LOVE framework-u.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors