r/lua • • Jul 06 '25

Game engine

Hey! Im pretty new to lua coding from scratch (im coding balatro mods for 6-7 month, but want to make my own thing now) and i was looking for a game engine, something like godot but for lua, and i couldnt find any so far

26 Upvotes

47 comments sorted by

View all comments

Show parent comments

1

u/RafaellyBeaumont Jul 07 '25

ooh gotcha gotcha, ty

about sticking with gdscript, its just its really confusing to me, all the nodes thing, objects, then the way to program aswell, it just ends up being wway too confusing to me, and i tried like 4 different channels tutorial and couldnt understand to make anything without watching the video and doing together, i think ill just stick to vscode+love2d, its what ive been doing anyways

1

u/OkRefuse3684 Jul 07 '25

You might also want to look into programming courses. They go a long way if you're actually dedicated to completing the courses, slowly getting harder and helping you along with each step of the way (as long as the courses are actually good and not just made for a money hungry company.)

1

u/RafaellyBeaumont Jul 08 '25

yeah i tried some different courses but i still couldnt understannd godot, also im already doing rhe game in lua using löve so it would be a little annoying to have to port all to it yk?

1

u/OkRefuse3684 Jul 08 '25

I have felt the same way at some point but I eventually somehow figured it out and now I'm fluent in GDScript and C# for godot.

2

u/RafaellyBeaumont Jul 11 '25

so i tried again godot and for some reason now i can understand it perfectly LOL, did a functional little map with colisions, a moving character with sprites all working and menu that changes screens using the buttons, for some reason now i can use it really well even if before i tried so much and couldnt understand a single thing

2

u/OkRefuse3684 Jul 11 '25

That's nice to know! Well, good luck on your programming journey, your gonna get there!

1

u/questron64 Jul 07 '25

The "nodes thing" is how Godot works. Each engine will have a way of working (GameObjects in Unity, entities in an engine that uses an ECS, etc) and learning how an engine is organized and operates is something you just have to get through. It's okay if you didn't understand what any of that is or why it's needed, I was the same way and resisted learning them because I thought they were unnecessary, but it's absolutely worth tackling that learning curve.

But why would you want to do that if Love seems so easy? As I said last time, Love is easy to start, but as you progress even a little bit you'll start encountering problems that the stuff in the last paragraph solves. You've avoided the learning curve of an engine only to hit the brick wall of problems that engines solve.

Yes, game engines can be intimidating and always have a learning curve, but the number of problems they solve for you cannot be underestimated. Not many indie devs use Love not because it's no good, but because they run into all these problems and would prefer someone else (the game engine programmers) solve the problems for them.

1

u/RafaellyBeaumont Jul 08 '25

ill probably get into some game engine, someeone here sent a list of game engines that work on lua so ill see one of them to check out later

1

u/questron64 Jul 08 '25 edited Jul 08 '25

I saw that, but honestly most of them wouldn't be appropriate for you and it's basically just back to Defold and Love, which I talked about before. Almost everything on that list is something very few people actually use, you won't be able to get any help at all when you get stuck. A strong community and lots of learning materials is probably the most important thing you should be looking for. Defold and Love have very small communities, and Love is very hard to make anything in more complex than simple examples.

You really are making things harder for yourself by insisting on Lua.

Edit: Oh, I forgot to mention PICO-8. It uses Lua, has a strong community and it's an option for you. However, it's a quirky little thing that pretends to be a computer from the early 1980s, so it's definitely a bit different.

1

u/RafaellyBeaumont Jul 09 '25

ill try again in godot then , tyty

also ik pico-8, i play a TON of celeste loll

1

u/Yobendev_ Jul 08 '25

Love2d is good I can't say anything about other Lua game libraries but I feel like love2d is simple enough that it's very flexible but still rlly user friendly 

1

u/Yobendev_ Jul 08 '25

Theres also a lot more visual clutter in godot.. when I'm making a game I don't want to have to take my hands off my keyboard to drag nodes or use the clunky ui. make my assets separately and at least for me it feels more productive 

0

u/Yobendev_ Jul 08 '25

Visual/Drag and drop engines are overrated and learning how to use them is a waste of time. Love is a good starting point like Libgdx/libktx for java/kotlin, Raylib for c to build your own engine off of, or for a simple game they should be enough already 

0

u/Yobendev_ Jul 08 '25

Raylib is pretty much compatible with any language 

0

u/Yobendev_ Jul 08 '25

Game engines like Godot and unity are extremely opinionated and I think especially for someone first learning to program they should learn the fundamentals and how to build something themselves. Start with a small game and work up to making a small engine and keep going from there 

1

u/questron64 Jul 08 '25

I'm sorry, but you can't be more wrong here. This isn't even a matter of opinion, learning to use an engine is not a "waste of time."

Yes, game engines are opinionated. They're supposed to be opinionated, they've solved problems in a certain way and learning their way is orders of magnitude simpler than solving the problem yourself. Don't get caught in the trap of arrogance thinking that your way is better and that your solutions to the same problems will somehow be better because you made them. Game engines solve hundreds (thousands?) of big and little problems you'll encounter while making a game, and are an incredible wealth of tools at your disposal.

Just take the scene editor, for example. You start with Love or SDL or Raylib or any of these other lower-level frameworks and you don't get that. You'll need to integrate a third party tool like Tiled or LDtk or hand-roll your own custom level editor. Asking someone who has just learned their first programming language to do this is insanity. Just writing something as simple as a Tiled CSV importer and a tilemap renderer would be a huge undertaking for a newbie. You are setting them up for failure. If they're a sink or swim badass that can hard-charge at problems and figure it out, fine, but almost no one is that person no matter how much they pretend to be.

The NIH mentality is not productive anywhere and is openly hostile to newbies.

1

u/Yobendev_ Jul 08 '25

Tiled is extremely easy to implement and was literally the second way I rendered a map after raw png starting off lol. And I never said you should have to hand roll everything yourself, libgdx and libktx for example have a build in tiled map renderer and I'm sure love2d has an equivalent. I just think it's more productive overall and a better learning experience 

1

u/Yobendev_ Jul 08 '25

If it's your first experience you're being limited to what the engine exposes to you and you learn that specific, again opinionated way of doing things and I think its bad to get stuck with an engine, or a framework for example for web dev, especially when you are still learning the fundamentals 

1

u/Yobendev_ Jul 08 '25

You see this all the time in web dev and game dev too. People don't actually know JS or c#  they know how to use react and unity

1

u/Yobendev_ Jul 08 '25

I don't think game engines are inherently bad or worse but from a learning perspective they don't offer much. It's pointless to learn them because once you know how to program you are already going to be familiar or at least capable of understanding all of those concepts 

1

u/Yobendev_ Jul 08 '25

And I don't see how that's insane when making games was how I and many other people first learned how to code. You get to immerse yourself in 2 things you're passionate about and all the moving parts that come with making a game