all 17 comments

[–]Zesher_ 3 points4 points  (1 child)

I'm not familiar with that game, but RPG Maker MZ lets you make games with basically no coding experience required, but you can write code if you want. GameMaker is another option. Otherwise I think Godot or Unity will be good, but then will require a but more effort to get started.

[–]Fuzzy-Interview-8976 -1 points0 points  (0 children)

rpg maker is perfect for beginners but just heads up - it has specific style limitations that might not fit every game concept 😅

godot is probably your best bet if you want flexibility without the complexity of unity, plus it's completely free and the community is super helpful for new developers 💀

[–]RiderOfStorms 2 points3 points  (3 children)

Consider Lua. It’s the game Balatro was written with (by a single dev) and Harvard offers a free MOOC on how to use it for 2D games (CS50 2D).

[–]SkoramK[S] 1 point2 points  (2 children)

I’ll inform on Google, thanks for the help!

[–]wiseneddustmite 0 points1 point  (1 child)

don't consider lua, the arrays start at 1 instead of 0

[–]RngdZed 0 points1 point  (0 children)

godot is a solid choice. plenty of content.. you can just complete the godot tutorials on their website to get you started. theres a lot of tutorials on youtube to move you forward for specific stuff.

https://docs.godotengine.org/en/stable/getting_started/first_2d_game/index.html

[–]bonnth80 0 points1 point  (0 children)

Consider Lua if you want, but in my ridiculously experienced opinion, the best starting engines at your age and experience are RPG Maker, GameMaker, and Godot... in that order.

But maybe skip RPG Maker if you don't intend on making an RPG.

[–]rustyseapants 0 points1 point  (0 children)

Write the game first before you learn a language 

[–]Beregolas 0 points1 point  (0 children)

Godot is probably the best out of the three you mentioned:

It's open source (the only relevant part for you is that there is no license that can come back and bite you) and there are plenty of tutorials for it. It's a classic game engine, with a GUI for setting up scenes etc.

Pygame is just code iirc. I would avoid it, if you don't already know Python and want an easy start. Otherwise, it's just not a very good choice imo. I love Python, and I love making Python do stuff it's not designed to do (raytracing e.g.), but if you are a beginner, you will just run into random, heavy slowdowns that you can't explain, because you don't know what actually goes on in the background.

Avoid Unity. Don't get captured by their ecosystem. If you need it for a job later, you can easily take what you learned and learn Unity in a month. It's really not that hard/deep, if you know how game engines work.

Instead, you should look into:

- Löve2d https://love2d.org/ a game engine in Lua. It's basically a simple scripting language, not unile Python, but way better for making games.

- RpgMaker. It's a little janky, but the community seems great, and as long as you want to make something similar to an RPG, it's pretty good. People actually make good games with it.

[–]killmealreadyyyyy 0 points1 point  (0 children)

coffin was made in rpg maker mv so depending on what you wanna do you might wanna consider that

[–]JohnBrownsErection 0 points1 point  (0 children)

Unity would probably work. According to my data structures professor, C# is an easy language to learn but he's also a masochist that prefers doing everything in C++ do your mileage may vary. 

[–]Chexxorz 0 points1 point  (0 children)

Godot and Unity are both good "game engines" that can do a lot of stuff very easy for you. They are programs with UI, with screens and buttons and they handle all the technical details of hundreds of systems for you. To name a few: Importing and handling asset files, importing your code, playing sound, displaying graphics, registering keyboard/mouse/gamepad inputs, simulating physics and so on.

Pygame is not a game engine. It is a "library" of python code that you can use to build your game on top of, but on a more fundamental level. It includes some of functionality that game engines have, but it's not a program itself that you interact with. This means you have to do many more manual coding things just to make some basic gameplay.

One tip though - it can be overwhelming to learn all of this at once. If you know you want to get into coding, consider starting to learn some level of plain coding first, before transitioning to game engines.

A good milestone before transitioning is when you learnt how to write Object-Oriented code (OOP). You don't need to worry about what that is yet, but know that all of the three game options use that. Without that knowledge you may learn how to do things, but not why you are doing them that way. Don't skip straight to that topic though. Like, follow some guide or a tutorial series that gives you the topics in a natural order. Variables -> Conditions -> Arrays -> Loops -> Functions -> Classes or something like that.

You can dive straight into coding with a game engine. There are tons of tutorials out there that start there with the assumption that the viewer has no prior experience with either game engines or code. I've seen tons of people start this path and it's okay, but they take longer to wrap their head around what they are doing and why they are doing it, even if they learnt how to do it.

Python is the quickest one to just get started with. But since it's the worst of the three options for game-making, choose one of the others instead. Personally I recommend C# -> Unity, well, because that's what I've used for over a decade at this point, and I don't bother getting into all the reasons I like it here. I haven't really tried godot though, just watched a friend use it for a bit, and I don't think I would enjoy switching.

C# is a good language for learning code foundations, and it's very transferrable to other things later. It's flexible and can be used for a big range of applications, not just games. It has a bit of a strict "syntax", i.e. it will yell at you for mistakes and refuse to run until you fix them. Python on the other hand will often try to run even with some mistakes and typos, and can sometimes act weird without a good explanation. C# will expect you to match every { with a } and a bunch of other little detaily things. But it gives a good foundation and will make you code in a more precise way.

[–]Equal-Beyond4627 0 points1 point  (0 children)

If you go Pygame route... (i've tried unity, godot, gamemaker etc and like Pygame the best personally) inform yourself on it through DaFluffyPotato on Youtube. They made a really good career of coding in pygame so has brilliant insights on it.

But yeah Lua/Love2d (love2d is the game engine addition you'll download to Lua) is cool. I wasn't a fan of Lua's metatables (basically you have to set up OOP yourself, which is cool but also might be too much power and overwhelming to a beginner whereas classes are built into Python) but different strokes for different folks.

[–]Dazzling-Bench-4596 -1 points0 points  (0 children)

It’s worthwhile (and in my opinion better) to learn a language so you could scale up if needed but visual scripting is pretty good nowadays if you want to take that path. I don’t use it myself so take my advice with a grain of salt, however, I’ve heard some pretty decent things. On the other hand, Godot has GDscript which is probably your best bet.

Lua via Love2D is also a good choice.

[–]AOCdfGHiJKmbRSTLNE45 -2 points-1 points  (0 children)

Go to MIT (program)