My friend's a mom and wants me to talk with her ten year old kid about coding, computers, and the like. She says the kid likes programming, retro computing, creating in Minecraft, creating first-person fantasy levels, and morse code.
Thanks for ideas, advice, insight, and the like...
So, with that in mind, I'd suggest using Godot (https://godotengine.org), with the reasoning being:
- small, fast, multiplatform
- python-like scripting
- gentle learning curve (for a serious games engine)
- completely FOSS
There are now thousands of 'how-to' videos available which would take a complete beginner from nothing to a functioning game in a few weeks. A great way to get into coding.
[Edit for formatting.]
Most of the fun was in building a "physics" engine. Every item had some acceleration and velocity, so it would create this parabola motion when you launch something from a catapult. It was a lot more fun to make than play.
There's also stuff like bullet trajectories. The game making tool we used had a "speed 100" for items shot, but sometimes you want it to go even faster. So we'd use trigonometry to figure out what was the closest item in that bullet's path. Then for more fun, we'd add things like cover, e.g. shooting through low cover meant 50% of bullets went through.
And then AI. So I made a game where you had to raid a base, and a bunch of turrets guarded the entrance. The turrets were tough, had a high rate of fire, long range, but were completely predictable. Then you'd have a team of people who would run out from the woods and fire shots at the turrets, then jump for cover when the turret aimed at them. The AI was fun to figure out, in that the turrets were completely predictable but the team individuals would have some form of randomized personality (aggression, bravery). Some would retreat when wounded, lowering the bravery of others, which might trigger mass retreat. Sometimes the humans won, sometimes the turrets.
Most of these games were not even that fun to play, they were just a whole lot of fun to make. It's about figuring out what happens when I do that? Or how can I improve on this?
Also, yeah, Godot is probably the easiest recommendation for now.
build an appreciation for how code has real world consequences.
Sounds like the kid is on top of things already. Just chat with them and see what they want or need.