Building Game Prototypes with LÖVE

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

InfluxDB high-performance time series database
Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.
influxdata.com
featured
CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai
featured
  1. love-module

    A love2d module that enables hot code reloading

    Balatro was made with LÖVE, and a lot of it like the background and score flames were made with GLSL:

    https://www.reddit.com/r/PixelArt/comments/143ybxa/pixelated...

    So LÖVE does look great for prototyping but can also take you to production.

    The OP mentions hot reloading and there are a couple of repos that may help with that:

    https://github.com/clofresh/love-module

    https://github.com/usysrc/LICK

    Their card game prototype is really impressive for three hours' work!

  2. InfluxDB

    InfluxDB high-performance time series database. Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.

    InfluxDB logo
  3. LICK

    livecoding library for LÖVE (by usysrc)

    Balatro was made with LÖVE, and a lot of it like the background and score flames were made with GLSL:

    https://www.reddit.com/r/PixelArt/comments/143ybxa/pixelated...

    So LÖVE does look great for prototyping but can also take you to production.

    The OP mentions hot reloading and there are a couple of repos that may help with that:

    https://github.com/clofresh/love-module

    https://github.com/usysrc/LICK

    Their card game prototype is really impressive for three hours' work!

  4. lurker

    Auto-swaps changed Lua files in a running LÖVE project (by rxi)

  5. carimbo

    A 2D game engine developed in modern C++ using SDL, featuring Lua scripting capabilities and designed for web portability via WebAssembly.

    I have been using my engine https://github.com/willtobyte/carimbo

    Demo https://carimbo.run/play/1.0.30/willtobyte/megarick/1.0.30/7...

    You can use Lua as scripting language.

  6. tiled

    Flexible level editor

    I built Twins of Caduceus (a snake-based game where you have to control two snakes simultaneously) entirely using Phaser 3. I've had mostly very good experiences with it as a batteries included framework (renderer, asset management, physics, input, etc.)

    It's a shame that the map/level editor is a eternal subscription fee with no fallback license. That means you're relegated to either building your own map editor or using something like Tiled.

    https://specularrealms.itch.io/the-twins-of-caduceus

    https://www.mapeditor.org/

  7. SDL

    Simple Directmedia Layer

    > cross platform/web/mobile distribution

    Unfortunately, each and every platform has its own unique quirks[], and I think the problem is too large for a project like LÖVE to tackle.

    In fact, LÖVE's authors have already done "90% of the work in 10% of the code": you can make a ZIP file, change the extension to .love, and just distribute that. Install LÖVE, double-click YourGame.love, and you're done. You can also concatenate the game executable with the ZIP file to create a self-contained binary distribution for that target platform (super old & cute trick; it's possible because ZIP's "header" is in fact, at the end of the archive).

    []: In 2016 I've attempted a "one game per month" challenge; but I also wanted to distribute executables for Windows, macOS, and Linux, so that all of my friends could just play them. It went something like this:

    - Windows: distributing executables from your personal domain is considered a crime; the browser and the OS will yell at the user, block the download, blacklist you, etc.

    - macOS: simply concatenating won't work; you need an elaborate dance to create a .app bundle, and distribute that in a .dmg - good luck building that on a Linux host, also good luck debugging without an actual Mac. Nevermind code signing, you can bypass that with shift-right-click-open. Oh wait, macOS 15 won't let you.

    - Linux: are you ready for the .so hell?

    - BSD: bonus! The documentation for SDL_GetPlatform doesn't even enumerate all of the possible values! You need to source-dive to get them: https://github.com/libsdl-org/SDL/blob/f45ce45603a00e92332f9... - plus any possible patches in ports; most developers won't ever care, and will just hardcode "Linux". Checking for $DISPLAY is also unreliable: macOS users may have XQuartz installed, Wayland purists may run without XWayland, etc.

  8. lovr

    Lua Virtual Reality Framework

    If you are looking to do VR/3d games, LÖVR (https://lovr.org/) is derived from LÖVE.

  9. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • LuaJIT PR: Add Support for RISC-V 64

    5 projects | news.ycombinator.com | 8 Sep 2024
  • Tiled 1.11

    1 project | news.ycombinator.com | 29 Jul 2024
  • How to build your interactive resume in 4 simple and 2 easy steps

    3 projects | dev.to | 2 Apr 2024
  • Vmt a virus?

    1 project | /r/VRchat | 5 Dec 2023
  • How to build maps efficiently

    1 project | /r/gamedev | 27 Nov 2023

Did you know that Lua is
the 18th most popular programming language
based on number of references?