Live data from Hacker News

LÖVE: 2D Game Framework for Lua

github.com

121–130 of 229 posts

Re: LÖVE: 2D Game Framework for Lua

#121

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 åäö are supposed to be pronounced. It makes something like Motorhead just sound laughable rather than metal.)

I instinctively pronounce it [løv].

Re: LÖVE: 2D Game Framework for Lua

#122
post #71
post #54

Earlier quoted context omitted.

Browser engines are optimized for displaying web pages, not for applications. 60MB+ for a calculator is not optimal.

explain that to my webgl TypeScript browser game running at 180+ FPS while rendering a large RPG tiled world with infinite procedurally JIT generated biomes, with heavy processing delegated to webworkers.

Meanwhile that same computer could probably run Counter Strike at 400 FPS.

Re: LÖVE: 2D Game Framework for Lua

#123

Earlier quoted context omitted.

For all the reasons, but the 1-based index alone makes me uncomfortable.

1-based indexing is great. It's just _different_ - from C, where the array index is just sugar for pointer arithmetic, and from other languages which borrowed the practice without reasoning.

There are arguments for why 0-based indexing is _better_, unrelated to pointer arithmetic. https://www.cs.utexas.edu/~EWD/transcriptions/EWD08xx/EWD831...

> we had better regard —after all those centuries!— zero as a most natural number

Of course, a counter argument is that we've already made the mistake of indexing with 1 in natural language (first, second, ...). That decision is not free of annoyances, though: the 19th century are year numbers 18xx, floors below the first have a varying names when they could have been negative numbers, etc.

Re: LÖVE: 2D Game Framework for Lua

#124
post #17

Earlier quoted context omitted.

They are saying web based solutions often out perform LÖVE, even though you would expect the opposite because LÖVE doesn't have the bloat of a browser engine.

Browser engines are probably some of the most optimized pieces of software in existence, so it doesn't surprise me at all.

Optimized abstraction layer is still an abstraction layer. The web is like two or three of those.

Re: LÖVE: 2D Game Framework for Lua

#125
post #37
post #28

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 :)

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).

TIC-80 is great indeed, I had even ore fu with it than with PICO-8 and that's a high bar.

But there is one gripe -- when packaging apps into executable, TIC-80 pulls templates from the Internet.

On one hand, it's not that big deal, we are online basically all time nowadays. But on the other hand, I would expect that kind of software to be self-contained.

I found a quite simple (but definitely not frictionless) workaround though - you can build the templates yourself, edit source code to work with localhost instead of TIC website, and host the templates on local webserver.

As I said, it's not a frictionless solution, but I don't know C well enough to make more substantial changes to this behaviour.

Re: LÖVE: 2D Game Framework for Lua

#126

I used LÖVE to build a simple Kodi alternative for my home media center setup. My first attempt was using Electron but rewriting to LÖVE meant much simpler code (turns out manually calculating coordinates is simpler than fighting CSS) and less resource consumption (not a high bar, yes). It works so well I might clean it up and open source it...

What were your (main) problems with Kodi? AFAIK it is written in C++ with Python plugins. Electron would be (on the face) a downgrade yes. But how is a Lua app much smoother?

(My personal pet peeve is that Kodi still doesn't know how to minimize CPU consumption when one is doing nothing on the UI. It should just stop rendering. This means I have to turn Kodi off on my HTPC+server setup to stop it from pushing my CPU in a higher power consumption mode.)

Re: LÖVE: 2D Game Framework for Lua

#127
post #119

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

I know it’s bikeshedding and leads to pointless discussions, but in my opinion Lua would be the perfect scripting language if it had 0-based indexing. “It makes more sense this way” is not a good enough reason to break convention.

There is nothing stopping you from doing someArray[0] = "the first item", you know.

For me, the table is extremely powerful. I like it that it can be used as a sparse array, a hash, a vector, whatever. Of course one must know, at heart, the difference between pairs() and ipairs() and what it means for your data, though ..

Re: LÖVE: 2D Game Framework for Lua

#128
post #28

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 :)

antirez' LOAD81 never gets enough love in these discussions even though it is simply awesome:

https://github.com/antirez/load81

Anyone looking at Lua/SDL/game engines would learn a lot from antirez' fun little afternoon project ..

Re: LÖVE: 2D Game Framework for Lua

#129

Earlier quoted context omitted.

1-based indexing is great. It's just _different_ - from C, where the array index is just sugar for pointer arithmetic, and from other languages which borrowed the practice without reasoning.

There are arguments for why 0-based indexing is _better_, unrelated to pointer arithmetic. https://www.cs.utexas.edu/~EWD/transcriptions/EWD08xx/EWD831... > we had better regard —after all those centuries!— zero as a most natural number Of course, a counter argument is that we've already made the mistake of indexing with 1 in natural language (first, second, ...). That decision is not free of annoyances, though: the…

That EWD is one if my pet peeves. Dijkstra makes an unfair comparison because he lists plenty of examples where 0-based indexing is more convenient but ignores the equally numerous situations where 1-based is more convenient. For example, iterating backwards over an array is much better in an 1-based world.

I like the argument that 1-based is better for indexing and 0-based is better for offsets: https://hisham.hm/2021/01/18/again-on-0-based-vs-1-based-ind...

Re: LÖVE: 2D Game Framework for Lua

#130
post #75
post #71

Earlier quoted context omitted.

explain that to my webgl TypeScript browser game running at 180+ FPS while rendering a large RPG tiled world with infinite procedurally JIT generated biomes, with heavy processing delegated to webworkers.

As you aren't posting code or stats I can't say much, but I'd bet a native app would still be smaller and more efficient, since you have to wrap what you're doing in an entire Chromium instance and deal with a web stack designed for documents, which is definitionally less efficient than a native alternative. Tiles aren't exactly cutting edge technology. "Heavy processing delegated to webworkers?" That just sounds lik…

Nobody ever said in the thread that web is the most efficient platform, stop with your “designed for documents” trauma already.
Post reply on HN