this post was submitted on 01 Sep 2025
27 points (96.6% liked)

Game Development

4909 readers
65 users here now

Welcome to the game development community! This is a place to talk about and post anything related to the field of game development.

Community Wiki

founded 2 years ago
MODERATORS
 

cross-posted from: https://lemmy.world/post/35297209

I'm looking for an engine/framework to make a 2d "RPG" (no leveling, etc, akin to Link to the Past).

I actually went to University for games programming, so I understand how games work, how to code them, etc etc. I work as a Test Automation programmer for websites, and I am doing some development on JS as well on a music toy. I am experienced with C#, C++, Java and JS.

The problem I've had in the past is that the frameworks promise the world, but everything I want to start working on is hidden beneath folders and folders of stuff, and the entry point to customize the correct parts seems obscured. Or, working on OpenGL etc are too basic with basically nothing out of the box.

I just want something that will say : here's your main, here's your player character, we've taken care of the collision detection and inputs and rendering, there's no gravity. Paint the tiles on this screen, and get going.

Like the level of expertise, customisation and entry point needs to be clear (or at least there is a guide to get started that I don't have to spend hours and hours on) and the business side is cut and dry and won't cost me to start deveoping. (flat X% after $Y in sales)

I don't mind having to learn a new scripting language as long as it's not drastically different to the object oriented languages I know already. (ie : nothing in Lisp)

you are viewing a single comment's thread
view the rest of the comments
[–] entwine@programming.dev 1 points 13 hours ago (2 children)
  • HaxeFlixel is a popular choice for 2D stuff. You can use it with Tiled or LDTK for level editing. This sounds more like what you're looking for

  • Defold might interest you as it has a full editor built in, though I've barely used it so don't ask if it's good

  • Gamemaker is a classic, but idk what pricing is like nowadays

  • Godot will work, but I don't like it. Once you get past the highly polished editor, everything else kinda sucks

[–] pirateKaiser@sh.itjust.works 4 points 12 hours ago (1 children)

What is this 'everything else' you speak of regarding Godot? I've been using the engine for years, based on my anecdotal experience your comment sounds rather biased.

[–] entwine@programming.dev 1 points 11 hours ago

based on my anecdotal experience your comment sounds rather biased.

That's called an opinion. Usually, you can identify those when someone writes something like "I don't like it"

Godot's easy to use, that's its strength. Past that, it is riddled with issues. A lot of APIs are either poorly designed, half-implemented, or outright broken. The engine has terrible extensibility support due to a shitty build system, which is why you need to download a separate build of the engine if you want C# support. Third party native plugins like Spine also require a custom build of the engine to deal with this (want to use multiple third party "plugins"? Start learning C++ and scons so you can glue them together yourself). The internal organization of the code is sloppy, and while understandable due to it initially being a one-man project, the situation has not improved despite the massive increase in volunteers and money it has had over the years. There's a lot of bike shedding that goes on, and leadership doesn't seem to have a clear vision of where to take the engine.

GDScript sucks. The events system sucks. The hierarchical entity design sucks (although the nestable scenes helps smooth that over). Godot physics sucks. Jolt physics is better, but the integration sucks (Try making joints. The only reliable one is the 6DOF joint, but that requires you to fiddle with dozens of parameters to try and achieve what you want). A lot of the rendering features suck and/or are broken, even basic things like static lighting and shadowmaps fall apart with basic geometry. Everything is buggy as hell, and that's something you just need to accept if you're going to make games with it.

I don't hate Godot, and I do use it because of its main strength: ease of use. It's my go-to for game jams and prototyping, and I have used it a lot. But if I'm going to invest serious time/effort into a project, I'm not going to disadvantage myself right out the gate by choosing Godot.

[–] SeeFerns@programming.dev 2 points 12 hours ago (1 children)

Defold is interesting. I’ve used it for a game jam and went through the Zenva courses for it. So I have a little experience, but please correct me if what I’m about to say is wrong.

I like defold but it has problems that pushed me to Love2D. For one, the distinction between a game object and a collection feels unnecessary and because they have slight variations (like how to get their message url) it lead to some confusion I couldn’t get over.

Furthermore, the message based system is odd to me. In theory I love it, but in practice I just couldn’t find a good way to keep things organized. I ended up with a spaghetti mess of messages that I could never keep track of. But that’s likely a me-being-a-shitty-programmer problem.

I do love the performance and tiny export sizes though! Getting builds that small and that performant from Lua is pretty sweet.

[–] entwine@programming.dev 2 points 11 hours ago (1 children)

I haven't used it that much (never even done a jam with it). The weird licensing of the editor rubs me the wrong way, and IIRC it even has some telemetry enabled by default. That's kind of a red flag when you consider the engine came from King, a mobile game developer. I don't think I want to trust them, but other people might not care.

But I do like the design of the engine. Message passing is actually a great pattern in general, and it's used by other engines like O3DE to great effect. It does take some getting used to though, and I personally never was a fan of Lua. If you've ever done any Objective C or Swift, it'll be familiar. It provides a way to build decoupled systems effortlessly, and long-term keeps your codebase flexible and maintainable, which is exactly what you want for a game that needs to constantly evolve its design throughout development.

[–] SeeFerns@programming.dev 2 points 4 hours ago

Full agree with the licensing and connection to king being dubious. They’re now under the Defold foundation FWIW. Either way, I tried it, and moved on.

I think I’ll be messing with Raylib and C next. I’m already noticing some issues with Lua and Love2D as well that I don’t love. Mostly web builds being a royal PITA.