However, this is outdated, and none of the recommended libraries can raise unwelcome questions with their names: https://love2d.org/wiki/Category:Libraries
- Grease
- HUMP
- Lovetoys
- Löve Bone
- Gspöt
- Möan
- fLUIds
To be fair, I doubt most children will question the names! And this is a small enough subset of the libraries that one can just avoid them.In the beginning all I did was fool around with the example games and tutorials, and that got me started well. Like taking a bouncy ball game, changing sprites, playing around with changing things in the existing logic and every now and then accidentally stumbling upon an interesting mechanic.
The drag and drop interface is really nice for starting out; eventually I got into the scripting part and found out that I had kinda learned “coding” along the way
It removes a ton of moving parts squarely outside the "I want to make a game from my notes" goal, like "Oh I discovered that Lua lib" or "which text/image/sound editor can I use" or formats or whatnot.
If your son is copying something else he's seen someone do, or if he's really into games and his friends also share this interest [1], then you can't beat the 2D approach. If you can find the right software, then you help him learn the software and he goes to town. He will need to adjust his ambition to what he can accomplish with the software. He already knows what he likes, and you're there to help him participate and get out of the way. ahaha
My other idea is there is an educational angle to "games" as a collection of skills and knowledge: problem solving skill of breaking a goal into parts. All games are in some form about probability, and *probability modeling* animations can be really cool. (I saw this post on reddit today [2]). Modeling is a great skill or tool in your toolbox. You can go really fast with this approach, and get to an abstract but interesting outcome. Maybe something that involves using a keyboard or mouse for interactivity and probability. If he loses interest, then maybe it wasn't going to last anyway, but you planted these educational seeds which can grow later.
[1]: I remember when I was his age, and I had five friends who lived six blocks from my house next to a park. We would get together to play touch football. I remember going over to this one kid's house trying to get him to come out and play football in the park, and he was showing us this 'computer' thing he had, Commodore64. I remember not having any of it, and we left. haha. That was _not_ my introduction to computers.
[2]: https://www.reddit.com/r/oddlysatisfying/comments/19bgdvr/th...
I think I'd recommend something like GameMaker. I've never used it myself, but it's a self contained IDE that has everything to make decent 2D games.
I'd advise against the pitfall that 3D games lure you into. That includes engines that are 3D with a 2D "mode". There is so much leaky abstraction, and the doco will be intermingled with 3D all over the place, leading to frustration and unnecessary complexity.
If a game is fun in 3D, chances are you could write a game in the same vein in 2D and carry the idea and execution across. 3D games are beyond ridiculously hard to execute on by oneself (well), and require exponentially more work to complete.
There is no gain, in terms of discovering the joy of making games, in diving in 3D first.
If you prefer a more programming centric approach, with no IDE, I recommend Love2D. It's a joy to use, well documented.
If you want a full blown low level approach, I recommend Raylib. It's fantastic and fun to use as well. But at this point, you're swimming in the deep end.
Also worthy of note is PICO-8. It's a fantasy console that can be easily ported on 'open' console (such as the ambernic), making your game feel alive, being played on a hand-held console. But as for the learning experience, I found it to be more of an expert's getaway retreat, rather than a good first choice for an engine. That said there is enough material out there and small enough API, to pick it up rather quickly, all batteries included.