[HN Gopher] LOVE: 2D Game Framework for Lua
       ___________________________________________________________________
        
       LOVE: 2D Game Framework for Lua
        
       Author : cl3misch
       Score  : 141 points
       Date   : 2026-04-04 09:20 UTC (1 days ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | wwarren wrote:
       | I love LOVE. For me it sits at the perfect intersection between
       | high and low level abstraction. Unfortunately the latest released
       | version is getting pretty long in the tooth now and a lot of devs
       | use the latest HEAD from the repo since it has better performance
       | and compatibility. One day the mythical 12.0 will get released
       | for real.....
        
       | p2detar wrote:
       | As someone that used to write 2D games with things like phaserjs,
       | sdl and even directx7, I always regret I never tried Love2d. I
       | think Android and iOS packaging was also supported. Is this still
       | the case? What if one wants to integrate IAP?
        
       | yehoshuapw wrote:
       | my favorite game in love: mario, with portals
       | 
       | https://stabyourself.net/mari0/
        
         | seqizz wrote:
         | I looove stabyourself. ortho robot was amazing. you know what,
         | let me install again.. here goes my night.
        
           | jgtrosh wrote:
           | I like the Trosh game
        
         | ranger_danger wrote:
         | How have they not been sued by Nintendo yet?
        
           | mid-kid wrote:
           | Same reason all the other mario flash games haven't, not a
           | critical enough mass.
        
       | herczegzsolt wrote:
       | I've used this for many projects that are still working to this
       | day.
       | 
       | That said, i'm not impressed. A web-based solution is usually
       | better performing, despite all the bloatware necessary. This says
       | a lot about the state of software development unfortunately.
        
         | small_scombrus wrote:
         | It isn't web based? It's a set of Lua scripts that run locally
        
           | squeaky-clean wrote:
           | They are saying web based solutions often out perform LOVE,
           | even though you would expect the opposite because LOVE
           | doesn't have the bloat of a browser engine.
        
             | usrnm wrote:
             | Browser engines are probably some of the most optimized
             | pieces of software in existence, so it doesn't surprise me
             | at all.
        
               | wiseowise wrote:
               | Explain this to electron haters.
        
         | actuallyalys wrote:
         | I don't usually push LOVE to its limits because I tend to make
         | simple games as a hobby but I do keep an eye on its framerate
         | and often it's in the 100s of frames per second. So it may not
         | be impressive (in sense of winning benchmarks) but it's rarely
         | perceivably slow.
        
       | patapong wrote:
       | One of the biggest recent indie hits, Balatro, was made in Love!
       | 
       | I really like it, the developer experience is so smooth for
       | beginners, just drag a zip onto the exe and it starts. And the
       | APIs are simple enough to memorize while allowing pretty cool
       | rendering stuff.
        
         | KeplerBoy wrote:
         | Balatro ships with the entire unobfuscated Lua source by the
         | way.
         | 
         | I once checked if the odds stated on a card were implemented
         | wrong. Turns out no, the code checks out, I'm just that
         | unlucky.
        
           | __s wrote:
           | too bad universe doesn't ship with unobfuscated source so
           | that you could see whether you're unlucky, or just skill
           | issue
        
             | Tepix wrote:
             | The source is right there, you just have to grok it.
        
               | Sardtok wrote:
               | Well, it's kind of a machine code for a self-modifying
               | compiler, so there's that.
        
           | brooke2k wrote:
           | hahaha, I did the exact same thing after the game came out to
           | see if wheel of fortune was really a 1/4 chance
        
             | mh- wrote:
             | lol, love seeing that I'm not the only one who did this.
             | Being suspicious of WoF was the first and last time I
             | peeked at the Balatro source.
        
               | QuantumNomad_ wrote:
               | Game developers sometimes make the "randomness" favor the
               | player, because of how we perceive randomness and chance.
               | 
               | For example in Sid Meier's Memoir, this is mentioned.
               | 
               | Quoting from a review of said book:
               | 
               | > People hate randomness: To placate people's busted
               | sense of randomness and overdeveloped sense of fairness,
               | Civ Revolutions had to implement some interesting
               | decisions: any 3:1 battle in favor of human became a
               | guaranteed win. Too many randomly bad outcomes in a row
               | were mitigated.
               | 
               | https://smus.com/books/sid-meiers-memoir/
               | 
               | Some threads on randomness and perceived fairness in
               | video games can be found here on HN too, for example
               | https://news.ycombinator.com/item?id=19399044
               | 
               | The original link being discussed in that thread is 404
               | now, but archived copies of the original link exist such
               | as for example https://archive.is/8eVqt
        
               | lovehashbrowns wrote:
               | The 8-ball joker is even more BS. I think I've only seen
               | it trigger once ever.
        
               | mh- wrote:
               | I've read the source a few years back. It's all
               | implemented fairly as it says on the tin.
               | 
               | I've long been suspicious of the RNG/seed
               | implementation.. but not curious enough to automate
               | testing of it, though.
        
             | sfn42 wrote:
             | I didn't know I could check but after losing like 20 times
             | in a row I just stopped taking WoF. Never saw the good
             | outcome.
        
           | Levitating wrote:
           | Not on steam does it? I can only see the exe and dlls.
        
             | jared0x90 wrote:
             | extract the exe like a zip file, that's how love packages
             | itself. last i looked at the source myself it had comments
             | in still from the dev
        
               | Levitating wrote:
               | yep that works
        
         | bsimpson wrote:
         | In case you're curious, here's a Nix derivation to make Balatro
         | for any other system playable on Linux:
         | 
         | https://github.com/NixOS/nixpkgs/tree/master/pkgs/by-name/ba...
         | 
         | I wrote half a blog post when I did the derivation. One day, I
         | should finish it and post it here.
        
         | Neywiny wrote:
         | Haven't used it in almost 10 years but at least back then one
         | sticky point was that unlike unity and the like, opening the
         | exe didn't open an IDE. Just kind of a dummy window. Also
         | building for Mac from Windows was a nightmare since my end user
         | was not technically literate and it didn't just run on their
         | end. But that's likely just a Mac issue
        
       | raincole wrote:
       | Btw, Love2D is based on SDL2. If you hate Lua but needs the same
       | cross-platform capabilities, you can use an SDL2 binding in other
       | languages or make your own.
        
         | newobj wrote:
         | SDL3
        
           | jasonjmcghee wrote:
           | Definitely SDL2.
           | 
           | Author is currently building version 12 which will be using
           | SDL3. But it's been in development for quite some time with
           | no clear end date afaik.
        
             | krapp wrote:
             | It is easy to get Lua (with LuaJIT) working with SDL3,
             | though.
             | 
             | That obviously isn't a replacement for the framework but it
             | is perfectly doable if someone just wants to write a game
             | in Lua with minimal overhead.
             | 
             | Edit: I mention LuaJIT specifically because it lets you
             | create metaclasses around C objects, which is much easier
             | than messing with the Lua stack from C, and it's easy to
             | make a 2d vector class from an SDL Point or a spritesheet
             | or what have you. There are a few rough edges like dealing
             | with pointers and gc but to me it's the best of both worlds
             | (the speed of C, and some implicit type checking, and the
             | flexibility of Lua.)
             | 
             | Obviously you could do it the hard way and the other way
             | around with normal modern Lua but it's such a pain in the
             | ass.
        
           | raincole wrote:
           | As far as I know only the latest (unstable) version uses
           | SDL3.
        
         | onehair wrote:
         | Now why would you hate lua of all things?
        
           | raincole wrote:
           | For all the reasons, but the 1-based index alone makes me
           | uncomfortable.
        
           | onsclom wrote:
           | I don't necessarily hate Lua, but I prefer C and Raylib for
           | game dev. Lua is garbage collected, dynamically typed, strays
           | far from standard syntax patterns, and has less existing
           | tooling than C.
           | 
           | I see why people might hate Lua. Especially for game dev!
        
       | 0xCAP wrote:
       | My2c. Fintech tech lead who has only a far memory of hand coding
       | games ages ago. Community makes tech awesome. Love2D discord
       | changed my life. Never met a more awesome and welcoming community
       | in my whole life.
        
       | PacificSpecific wrote:
       | I generally very much dislike dynamic languages but for some
       | reason I've always really liked Lua. I'm not exactly sure why to
       | be honest.
       | 
       | Maybe because you can fit the whole language spec on a single
       | sheet of paper and adding more advanced features is pretty easy.
       | 
       | Love looks really cool. I never got into it personally but I
       | still might
        
         | turtledragonfly wrote:
         | The Lua source code is also a masterclass in C, I recommend it
         | to anyone learning that language. It's big enough to be an
         | involved implementation, but small and focused and well-
         | organized enough to (at least roughly) understand what's going
         | on at the various layers. It's a very solidly-written mass of
         | portable C, with only minor exceptions.
        
           | PacificSpecific wrote:
           | Oh I hadn't considered looking at the source but considering
           | how minimal and clean Lua is I should have assumed so :)
           | 
           | Thanks for the tip. That should make for a fun weekend
        
       | K0IN wrote:
       | I love love I did some projects in it, lua was one of my fist
       | programming language, i think it's a great fit for game dev.
       | 
       | Also move or die is running on love2d, which is an awesome game.
       | 
       | Also I love that trick that you can just zip your files and
       | binary Comcast them to the love2d binary and it will load it.
        
       | davidkunz wrote:
       | I haven't tried Love, but I somehow enjoyed reading through the
       | README.md, no AI slop, just a natural writing style with tiny
       | indictors showing the authors' enthusiasm in creating software.
        
       | nout wrote:
       | Am I really the first one to mention pico8 in this thread?
       | Anyway, pico8 is another option that has a bit different spin,
       | but you also implement the games in Lua :)
        
         | opan wrote:
         | TIC-80 is a nice free as in freedom alternative to PICO-8, and
         | it allows more inputs, which makes for better Tetris games
         | (gotta have that hold piece).
        
       | alprado50 wrote:
       | Is Love2D a decent option for gamedev compared to Godot? I
       | finished a really simple game using Unity3D and it was fun, but
       | it sucks to use a closed source engine.
        
         | onehair wrote:
         | Godot will be familiar to you if you then.
         | 
         | Love on the other hand is 100% just code. You'll not have the
         | gui things and the pletora of different components that go with
         | them. Still gives you freedom. Just too much freedom and not as
         | much helpful preset tools.
        
       | VorpalWay wrote:
       | How is it supposed to be pronounced? Is it just gratuitous
       | diacritics? Or should I pronounce it in my native Swedish (where
       | the names makes me think of leaves rather than love)?
       | 
       | (Throwing diacritics on English words look extremely silly to me,
       | since I know how aao are supposed to be pronounced. It makes
       | something like Motorhead just sound laughable rather than metal.)
        
       ___________________________________________________________________
       (page generated 2026-04-05 23:00 UTC)