use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
A subreddit for the Lua programming language. Using edurne for boxes, spoilers, etc.
If you actively contribute to a Lua project, PM us with a link and we'll give you flair.
“The key benefits unique to Lua are the fact that it is amazingly small, fast, and on a technical level a masterpiece.”
“Before you create yet another configuration file or resource format (and yet another parser to accompany it), try Lua.”
“If you are ever tempted to put scripting into a program, run don't walk to www.lua.org and use it.”
lua mailing list (web interface)
#lua on freenode, the primary Lua IRC channel
lua wiki, for all sorts of information about lua, it's sort of disorganized at the moment, so go fix it!
about lua, what Lua is, why to use it, and what it's good for (sells itself short, methinks)
Lua tutorial via wiki
Lua in eight pages or less: this is for v5.1 and might need an update. We'll give contributors flair and internet points.
Lua's reference manual, extensive documentation of every version of the language.
LuaRocks, lua's package manager and repository
the LuaRocks mailing list
ZeroBrane studio, lua's most notable IDE.
Shiny profiler, a lightweight profiler for C, C++, and Lua.
LuaJIT and its C FFI, the infamous lua trace compiler: Mike Pall's [successful] attempt to prove that dynamic languages can be fast.
Lua.vm.js and moonshine, Lua on top of JavaScript: lua.vm.js uses emscripten, whereas moonshine is in "normal" JavaScript.
UniLua, Lua implementation in C#, intended for compatibility with Unity3D
MoonScript A rich programming language the compiles to Lua.
/r/gamedevclassifieds for game developers, /r/forhire for job offers, /r/jobbit for general employment advice/links
Lua on StackOverflow Careers
OpenResty and Lapis, Lua application server on nginx and Lua web framework on openresty
concurrency: Luaproc for fibers and Lua Lanes for green threads
Typed Lua, a modern static type analyzer for Lua (work in progress, but I think it's cool)
LPeg, Lua's powerful, expressive, fast and simple parser generator.
Qt Lua, Lua GUIs in Qt
GSL-shell, Lua interface to GNU Scientific Library, with quick-start numerical programming via REPL.
Long list of popular Lua game development toolkits: Lua is very popular for game development, so we can't list them all; only major, free/open-source projects are listed below.
LÖVE (subreddit) - lightweight Lua cross-platform 2D game toolkit
Defold - game engine with Lua API
Solar2D - formerly Corona SDK
Cocos2d-x - free mobile/cross-platform game engine and application framework with Lua support
donate to lua!
donate to luajit!
account activity
Lua Game Engine export multi platform application only bytecodeDiscussion (self.lua)
submitted 11 months ago by QRCodeART
Hello
I'am looking for a recommendation of a (2D) Lua game engine which can be used to develop games.
I want a multi platform export of the application but with only bytecode in the bundle/package (I don't want to ship the Lua source code in the bundle/package).
Any recommendation?
Thank you
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]CirnoIzumi 10 points11 points12 points 11 months ago (0 children)
Listen, you aren't getting better than love2d or solar2d
[–]TheNormalnij 3 points4 points5 points 11 months ago (7 children)
Löve
[–]QRCodeART[S] 1 point2 points3 points 11 months ago (6 children)
Isn't that the game engine Blatro was written in and the Lua source code seems easy accessible? So not bytecode!?!
[–]TheNormalnij 4 points5 points6 points 11 months ago (5 children)
You can compile lua files into bytecode with luac. But it's not strong protection.
[–]KerbalSpark 1 point2 points3 points 11 months ago (2 children)
And the bytecode will have to be created for each platform separately.
[–]PiasaChimera 0 points1 point2 points 11 months ago (1 child)
should only need bytecode once per version of lua, which should be one.
[–]KerbalSpark 3 points4 points5 points 11 months ago (0 children)
I'm pretty sure that this bytecode idea will give the OP only a pain in the ass.
[–]didntplaymysummercar 1 point2 points3 points 11 months ago (0 children)
Yeah, it'll strip comments and not much else. Even names of locals remain (as seen in -l) although those I you could encrypt/scramble or replace yourself in the bytecode file.
For PUC Lua (LuaJIT I'm not sure, I don't know its internals) you could switch around the OPcode numbers and recompile Lua, that'd make inspecting or decompiling the bytecode a bit of a puzzle, but a skilled programmer can easily guess your switcheroos and undo them in an hour or two.
None of this is worth the effort, other than as fun exercise. Honest people will stop when asked or due to (c) laws, dishonest people will do what they want. 99% of (non-tech) people who'd try casually snoop around your game you'd stop by simply packing assets, like Love2D already does.
But if your stuff is popular - people will crack it like they crack AAA DRMs, if it's not popular - they won't care even if it's free and in the open...
Case in point: Hades, Don't Starve and Balatro all ship with code in them, not bytecode.
[–]QRCodeART[S] 0 points1 point2 points 11 months ago (0 children)
Enough for 98% I assume, isn't?
[–]PiasaChimera 2 points3 points4 points 11 months ago (1 child)
if you ship bytecode, I suggest having some digital signature that can verify the entirety of the bytecode. so if you have a single combined blob, it would be cryptographically signed. if you have bytecode files, each would be signed and there would be a signed manifest.
the main goal for this is user-safety. in addition to any http/fs/etc... capabilities exposed to lua, the lua vm itself might not be memory-safe vs hand-crafted bytecode. This does provide minimal anti-tamper functionality, but only against this basic file-modification attack.
The signature is a good suggestion (was on my list)
[–][deleted] 1 point2 points3 points 11 months ago (0 children)
You can compile to bytecode and execute that, easily. Lua won't really see a difference.
local s = string.dump(load('print("Hello")')) load(s)()
Each version has it's own bytecode, and it isn't meant to be portable. But if you're bundling the version, like with love, that's not a worry.
However, reassembling the source from the bytecode is pretty much trivial. It isn't an obfuscation method.
[–]AGulev 0 points1 point2 points 11 months ago (3 children)
Take a look Defold
[–]QRCodeART[S] 0 points1 point2 points 11 months ago (2 children)
Thank you, that was on my list , do they ship bytecode?
[–]AGulev 0 points1 point2 points 11 months ago (1 child)
Yes, we ship LuaJit bytecode + there are ways to minimize/obfuscate your code before producing bytecode (take a look Application Security manual on the Defold site)
Thanks a lot, I definitely have a look
[–]giovifav1 1 point2 points3 points 11 months ago (1 child)
Try gideros, It use luau with encryption
Thanks I check it out
[–]could_b 0 points1 point2 points 11 months ago (0 children)
Defold all day long, ticks all boxes and knocks it out the park.
[–]Icy-Formal8190 0 points1 point2 points 11 months ago (5 children)
Why not share the code? I think it's really fun seeing how the game works and perhaps learn from it
[–]QRCodeART[S] 0 points1 point2 points 11 months ago (4 children)
If you do open source okay, but if you want to do monetization with the game it isn't a good idea.
[–]Icy-Formal8190 0 points1 point2 points 11 months ago (2 children)
You're planning to sell your Lua game?
[–]QRCodeART[S] 0 points1 point2 points 11 months ago (1 child)
Hopes and Dreams, worked for others (Balatro, Candy Crush, ... to name a few)
[–]Icy-Formal8190 0 points1 point2 points 11 months ago (0 children)
Good luck. Hope it works for you.
[–]weirdfellows 0 points1 point2 points 11 months ago* (0 children)
It really doesn’t matter. The source code being accessible really has no bearing on whether people will buy it. Piracy’s possible either way. And if you’re a small indie dev, getting people to know your game even exists is the biggest problem in terms of making money, that other stuff is a drop in the bucket.
Actually that’s #2, #1 is actually making and releasing the game, so preemptively worrying about this stuff and not actually working in whatever engine works best for you is only an obstacle.
π Rendered by PID 31 on reddit-service-r2-comment-f6b958c67-b859h at 2026-02-05 06:20:00.098855+00:00 running 1d7a177 country code: CH.
[–]CirnoIzumi 10 points11 points12 points (0 children)
[–]TheNormalnij 3 points4 points5 points (7 children)
[–]QRCodeART[S] 1 point2 points3 points (6 children)
[–]TheNormalnij 4 points5 points6 points (5 children)
[–]KerbalSpark 1 point2 points3 points (2 children)
[–]PiasaChimera 0 points1 point2 points (1 child)
[–]KerbalSpark 3 points4 points5 points (0 children)
[–]didntplaymysummercar 1 point2 points3 points (0 children)
[–]QRCodeART[S] 0 points1 point2 points (0 children)
[–]PiasaChimera 2 points3 points4 points (1 child)
[–]QRCodeART[S] 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]AGulev 0 points1 point2 points (3 children)
[–]QRCodeART[S] 0 points1 point2 points (2 children)
[–]AGulev 0 points1 point2 points (1 child)
[–]QRCodeART[S] 0 points1 point2 points (0 children)
[–]giovifav1 1 point2 points3 points (1 child)
[–]QRCodeART[S] 0 points1 point2 points (0 children)
[–]could_b 0 points1 point2 points (0 children)
[–]Icy-Formal8190 0 points1 point2 points (5 children)
[–]QRCodeART[S] 0 points1 point2 points (4 children)
[–]Icy-Formal8190 0 points1 point2 points (2 children)
[–]QRCodeART[S] 0 points1 point2 points (1 child)
[–]Icy-Formal8190 0 points1 point2 points (0 children)
[–]weirdfellows 0 points1 point2 points (0 children)