Just getting started with Löve2d and interested in lisp languages? Check out love2d with fennel!
A minimal setup can be found at:https://gitlab.com/alexjgriffith/min-love2d-fennel
What this setup provides:
- Build scripts for Mac, Windows, and Linux
- Included build tools to target HTML5 (Limited to LOVE 11.4) (example)
- Fennel Macro searchers!
- Error handling (boots you to a recoverable error screen)
- The latest version of fennel (1.4)
Note that this setup can be run on windows with mingw, but is primarily aimed at linux development.
Where to Start?
I highly recommend checking out the blog posts by Phil Hagelberg about his use of fennel for his 2018 submission Exo Encounter 667. The source for which can be found here
There is also a built in REPL on the languages home page that you can test out the language! https://fennel-lang.org/
Games Made Using Love2D and Fennel
This is not an exhaustive list! I can include your game if you comment below.
- Exo Encounter 667 - Winner of the 2018 Spring Lisp Game Jam - https://gitlab.com/technomancy/exo-encounter-667
- Always Kill Your Heroes - Winner of the 2018 Fall Lisp Game Jam https://gitlab.com/alexjgriffith/always-kill-your-heroes
- Slime the World - https://github.com/TsarFox/slime-the-world
- Goo Runner - https://gitlab.com/technomancy/goo-runner
- Fallen - https://gitlab.com/alexjgriffith/fallen
- Energize - Winner of the 2019 Fall Lisp Game Jam - https://github.com/noisesmith/energize
- Welcome Home Sunsun - https://gitlab.com/alexjgriffith/welcome-home-sunsun
- Backpackless - Submission to the 2019 GMTK Game Jam - https://github.com/lockie/backpackless
Other resources:
Recommended Libraries
You don’t need any libraries to make a game! The ones mentioned here help solve specific problems.
Lume
- Provides functional style functions, e.g. reduce, map, etc.
- Provides some nice to haves that are not available in the lua standard library like
lerp
andsplit
(for spiting strings).
ANIM8
https://github.com/kikito/anim8
If you need sprite animation, check out ANIM8!
Bump
https://github.com/kikito/bump.lua
Bump is an axis aligned bounding box collider. It has a bunch of useful built in presets for triggering actions following collisions. If you’re writing a platformer (without ramps) I highly recommend bump!
Tiled
https://github.com/karai17/Simple-Tiled-Implementation
If you use want to use Tiled (https://mapeditor.org) check out the Simple Tiled Implementation! It works well with bump.