Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

FWIF about a decade ago, I developed an SDL-based engine on top of Guile, called SLAYER.

I haven't been maintaining it for a while (I know that I ran into some compatibility issues with newer versions of Guile), but I just checked under WSL2 (after installing a few additional packages) and it mostly works, including OpenGL rendering. (OpenGL isn't mandatory if you only want 2D graphics)

The packages I had to install (via apt) in order to build it: guile-2.0 guile-2.0-dev libsdl-ttf2.0-0 libsdl-ttf2.0-dev

If you want to give it a try, it's available here (it has some documentation):

https://github.com/panicz/slayer

It also used to have a website on a Ukrainian GNU server, but it is now defuct.

I developed it on Linux, but at one point, I managed to build Windows binaries under Cygwin or MSYS, and they are available as "winslayer" here: https://download.gnu.org.ua/release/slayer/

After building the binaries, you can enter the "demos" directory, and try out some of the demos (such as ./schess.scm, ./pong.scm etc.)

BTW I haven't participated in any game jam before, but I'm using it as an opportunity to improve the programming environment that I work on in my spare time, called GRASP (it is built on top of Kawa, and runs on Android and JVM). In my experience, the Scheme implementation that is the best for video games is Racket (but I'd spare myself r5rs compat, and just go with #lang racket). At one point, I had some broken packages on Ubuntu, and wasn't able to build SLAYER, and I quickly wrote a thin compatibility layer between SLAYER and Racket, and called it "sracket"

https://github.com/panicz/sracket