This does pretty much what you have described. It supports scenes, image maps for point and click, dialogues and is low code.
If you don't mind doing choose your own adventure style stories, I'd recommend Twine. It's a low-to-no code way to write branching stories, and you can add variables and conditional branching if you want to add a little bit of code. It creates a playable website of your story when it compiles.
I do a lot of heavy coding but I still play around with Twine sometimes because it's fun. I also sometimes prototype the branching dialogue and/or story in my games using that as a tool as well, because I don't have to code anything.
There's also a subreddit for discussing twine games: https://www.reddit.com/r/twinegames/
A couple examples of how far you can take the engine: https://pseudavid.itch.io/the-master-of-the-land
And this one is super addicting. I played it 12 times in a row after trying it: https://johnayliff.itch.io/seedship
And if they use Twine (or other) to create text adventure stories, then they should also look at the annual IFComp (The Interactive Fiction Competition) https://ifcomp.org/
Several winning entries have been written by children or teenagers, with some help from parents.
Seconding this! Twine is the ideal next step for the hypertext-style games OP describes their child having made - it's designed around that exact paradigm of game design, just with more powerful tools.
I remember a few post of games made by children in Scratch https://scratch.mit.edu/
For example:
* https://news.ycombinator.com/item?id=23892698
* https://news.ycombinator.com/item?id=26050913
(My daughter tried to use Scratch, but it's too difficult to cut&paste and move blocks of code, she preferred a text based programming language, so YMMV.)
Scratch is fantastic.
There are also a number of similar (block-based) tools that let you create your own custom blocks and see the code behind them - e.g. Blockly (https://developers.google.com/blockly)
you can also use microsoft's https://www.microsoft.com/en-us/makecode
it's slightly more user friendly imho, and you could do some more advanced stuff than scratch (i mean advanced as in using text, rather than blocks).
I'm not a huge fan of scratch (for obvious reasons I'm not the target audience!), but my 10 year old can't get enough of it.
Recently we started digging into some of the more "advanced" concepts (basically arrays and functions) and I was surprised how far you could actually get with the system.
I'm trying to move him off scratch on to something text based, but imo for a kid it's hard to go wrong starting with Scratch.
The social angle of sharing ones games with friends and getting likes etc. and the ability to quickly play it off a link are huge factors that keep motivation high for kids.
This is underappreciated. I've been teaching my son JS but his main gripe is that he doesn't have an easy way to share his stuff in a quickly playable format.
Time to teach him nextjs and get him deploying to vercel!! (Or at least set up a template for him!)
Also, out of curiosity, have you been teaching him JS or TS? I feel like it is a sin to not use TS these days, but not sure if it makes it easier or harder for a new young programmer to learn.
My 11-year-old still enjoys scratch -- he watches YouTubers like Grifpatch to learn higher level concepts.
There's also PenguinMod which feels like Scratch with more assets.
Roblox studio. My son is a sound designer for some of the top games there. He's also learning programming in Lua for Roblox platform.
It is a small community of mostly kids aged 15-25 as far as I can tell. It doesn't seem like any professional adult game developers are part of the community (I got an inside view when I took my son to RDC this year).
The top game developers are making millions of dollars per year (they're paid in Robux and converted to USD).
In short, thriving ecosystem with lots of kids having fun doing creative work including creating games, writing code, designing graphics, designing sound effects.
Concur with other comments here when I say: do not throw your child into this incredibly exploitative community
I’ve read about these concerns but my kid is 11 and on there all the time, often with me over her shoulder, and I’ve never seen any sign of it.
It’s a huge platform for kids so I’m sure there are some creeps but there are plenty of controls in place to deal with that and even so, again, I’ve never seen it.
There's also the financial exploitation. https://youtu.be/_gXlauRB1EQ?si=C4prkNgGgK0bR_MX
Required reading before throwing your child into the machine that is Roblox: https://www.theguardian.com/games/2022/jan/09/the-trouble-wi...
Gamemaker if you want no code. It's free if you're not planning to release games commercially. You can add code later if you want custom behaviors that gamemaker doesn't include out of the box. 2D only.
Godot if you want coding. Coding is required but it uses gdscript which is a python inspired language. The editor is also batteries included, so godot.exe will include everything you need to make a game (aside from assets, but even there some plugins can help). 2D and 3D, but 3D is not "AAA" tier.
I honestly recommend you go for godot. There are tons of tutorials out there to create all kinds of games, specially if it's something basic. It's what I wish existed when I was 11 and had tons of time to mess around.
I'd say look up a quickstart tutorial for both and check if your kid likes any of them.
I see lots of recommendations for niche/toy engines. I don't recommend those because it'll be hard to look up tutorials for them. Having guidance in essential. I also don't recommend your kid get to roblox, sure he might be able to make some money or get lots of attention, but having external motivators can be very detrimental.
GameMaker is generally excellent and decades worth of material, it's original design was to teach students (disclaimer, used to work for YoYoGames a long time ago) not sure where it sits these days, but suspect it's only gotten easier to work with.
I just started tinkering with Godot, seems very, very good and the licensing means you won't suddenly have the rug pulled out from under you.
I'm torn though, the recommendation for things like Roblox seem valid, but indeed it seems like the kind of thing where you will hit a glass ceiling. On the flip side getting started on something more generic may be tedious and cause an 11 year old to lose interest quickly.
I think it comes down to the motivations and nature of the individual - do they wanna learn the skill, or do they want to create something quick that they can show off to their friends? (and maybe go further if they really enjoy it)
I enjoyed gamemaker a lot. Especially the ease of adding small snippets of code when you wanted to do something slightly more advanced than the normal editor allowed.
When I was that age I made a bouncing ball in Flash (ActionScript, similar to JS).[0]
This is still my "hello world" when trying out a new game dev environment because it covers:
- drawing
- movement
- input
- acceleration
- gravity
- friction
- collision
And all of these in essentially the simplest possible way.
Most of all, it's a lot of fun to have a bouncing ball, and even more fun if you can use the keyboard or mouse to play with it!
For a more structured approach, I'd say draw a circle (or square), then add movement, then make it fall down, then a floor to catch it, then bounce it, etc...
[0] It's not too hard to do in pure JS / Canvas (I am very fond of tiny builds with no dependencies), tho the canvas API is surprisingly unpleasant, so I'd recommend something like Pixi or Phaser.
I still lament the loss of Flash. It’s ability to get in there and as a single user do everything from design to animation to code front end and back end was enormously flexible and easy for creatively engaging and creating. It fit the “bicycle of the mind” concept.
As far as I know, no single tool has replicated that kind of freedom. For rapid prototypes that one could actually iteratively build on top of top make a full application it was amazing.
I know about the issues and why it isn’t secure etc etc, but in terms of you could interact with it to create we are still at a loss.
I've dreamed of cloning Flash for a long time. Aiming for full compatibility is infeasible (unless you can convince the Ruffle folks to give it a go once they're done with Ruffle!), but aiming to capture the spirit of Flash (e.g. build Flash like authoring tools on top of TS/WebGL) is certainly doable.
The Wick editor was one such attempt, though it didn't gain traction and was abandoned.
Also there seem to be quite a lot of us who feel this way -- a dozen or more every time Flash is mentioned on HN -- maybe it's time we got organized? "Everybody talks about the weather but nobody ever does anything about it!"
Many bouncing balls are also doable without knowing any actual physics. Balls overlap? Push them away from each other such that the next frame they'd no longer overlap. The result looks surprisingly acceptable.
And if you add some blur (I think in Flash this was just a property you can set) based on how fast the ball is moving, it somehow looks more satisfying still.
For anyone wanting to do this in JS, check out Dan Shiffman’s Nature of Code https://natureofcode.com/
Uses p5js, so nicer than pure canvas.
Note there’s a big leap from making a simple physics toy to making a game.
Roblox Studio is a very powerful system, my 8 year old has played around with it to make simple maps and obbys. People have coded Call of Duty style games on Roblox (such as Frontlines) so it's pretty surprising how far you can stretch the engine.
Microsoft MakeCode Arcade is terrific. It has both a block interface and real Typescript under the hood, and you can switch back and forth anytime.
MakeCode Arcade also has the ability to put your games on physical hardware, which can be a game changer for engagement. A simple game on a 128x256 grid can feel a bit “rubbish” on a laptop screen, but put it on something with a Gameboy form factor and it comes into its own.
Arcade also has amazing editors for sound, sprites, etc.
Here’s Flappy Bird https://arcade.makecode.com/88444-57913-28610-31751 (Not made by me!)
It's not a drag and drop environment, but it is JavaScript: https://p5js.org/
Basic 60 frames a second canvas and the rest is JavaScript.
Pair that with the excellent Coding Train series https://youtube.com/@thecodingtrain
To get around the "serve a webpage locally" problem, you could either have Python or Node serve a webpage, or I once rigged up a samba share and a small web server on a home server and turned a kid loose on it ... It didn't take, I should have spent more time helping them daily on it.
But that's an idea.
You might also want to pair it with The Nature of Code: https://natureofcode.com/
Cannot recommend this enough!
When I was only slightly older, I was part of an RPG maker community. Skills I acquired there regarding image editing/manipulation, writing reviews, looking out for things that seem unnaturally regular, social communication, and whatnot still serve me today. It was a very creative place to be. There was a screenshot thread in the forum and almost every day I would check it out for new posts, reading people's reviews and write some myself. I remember spending hours and hours making a faceset too. Trying to fit those emotions onto the 48x48 pixels.
I would recommend such a community, but I am only aware of one bigger community like that surviving (multimediaxis forum[1], which could be great) and my old community does no longer exist, which saddens me to this day.
Humble Bundle has a Godot bundle is available for the next day or so. That might be a good one to look at if you're ok with leaning into code a bit (gdscript is very very similar to python). https://www.humblebundle.com/software/learn-godot-43-complet...
Also check out the RPG Maker bundle. That's pretty point-and-click. You can have something basic up and running in a couple minutes (literally just paint your tiles onto a map and click Go and you'll have a little jrpg). If you use the newest version, you can script it in Javascript. One major selling point here is that their "runtime package" (RTP) comes with a TON of game assets to use, so you don't have to track down/make art if you don't want to (you can, but I often get blocked on art when I'm playing with game dev). https://www.humblebundle.com/software/gotcha-gotcha-presents...
GBStudio is another good (free) one to look at. It's point and click for the most part and if you get a flash cart, you can play your game on a real Gameboy. Definitely not gonna be the most flashy, but it's a good exercise in making something fun with limited resources available. https://www.gbstudio.dev
GDevelop is another no-/low-code option: https://gdevelop.io
Defold is another scripting-heavy option (Lua): https://defold.com
I would encourage a bunch of different games where making a game is a game mechanic, so this includes:
* Little Big Planet
* RPG Maker (from the PS1 days ... I don't know what the new ones are like)
* Super Mario Maker
* Roblox (other comments are saying this is bad? I don't know much, but it was my first thought)
* Dreams for the PS4
The person that made Lethal Company was originally a Roblox dev, so I know that route can work; and LBP and SMM are both great ways for learning how to create engaging and difficult levels. Some of them even have state management.I played RPG Maker a million years ago and liked it, so I imagine that game or its family is still a nice experience.
I haven't played Dreams, but I've heard it's a strong, interactive environment?
There are lots of good suggestions here. My first preference would be pico-8 (already mentioned).
But also I can also suggest another interesting option: GB Studio - https://www.gbstudio.dev It's a quick and easy to use drag and drop retro game creator for game boy. It also supports visual scripting.
You can try https://make.gamefroot.com/ it’s specifically designed for kids aged 6 to 14.
It’s used by a bunch of primary schools to teach kids programming via games.
It’s drag and drop interface where I believe you can drop into JavaScript as well.
Haven’t used it myself but met the founders at a game conference.
https://microstudio.dev/ - supports JavaScript and Python
We make Construct 3: https://editor.construct.net
You can start with a visual block-based system and move on to JavaScript/TypeScript. We have a lot of schools using it to help teach programming concepts in a fun way. Happy to answer any questions!
Game maker studio might fit the bill: https://gamemaker.io/en
Like other commenters I used Game Maker 20 or so years ago and not only made games but also programmed little utilities to solve problems at my Dad’s work. It was a phenomenal blank canvas for creating games and programs and learning to program (because there’s both Scratch-style drag and drop programming, and a programming language).
+1 for GameMaker, though I used it about 20 years ago as a kid. I don't know how well its developed since then.
+1 for GM
Roblox Creator studio, its amazing, tons of tutorials and its super easy to publish something
Yeah it actually is. My 7 and 4 year old have been playing some crappy games on Roblox which led us to spending some time in the Creator Studio. I was surprised how good it was given given the vast amounts of absolute crap in Roblox, although I guess that is why there is vast amounts of crap :D
I had a blast with Klik'n'Play as a kid. The modern version is called Clickteam Fusion. Revisited it a while ago with my nephew, it has a pretty good tutorial.
When i was young i started with Power Point too, then i started using "The Games Factory" from Clickteam. I think thats what started my programming path.
My 11 year old cousin loves Scratch. He's made several games and "movies" using it.
Another more powerful alternative is Stencyl: https://stencyl.com/
I don’t think it has been mentioned here, but dot big bang is pretty cool and suitable for young game dev-curious kids.
It has a fairly easy learning experience if you want to do very basic things, but opens up into an impressively capable editor if you want it to.
I worked on it for a year and the team behind it is awesome. Great people who are passionate about what they’re doing, care a lot about the kids using the platform (making it kid-friendly matters a huge amount), and put a lot of effort into making it genuinely fun first (rather than chasing trends for example).
Not sure how it compares to other options but it’s worth checking it out. I often wish I still worked on it.
Not sure if this meets your specifications, since it's code first, but Processing (in it's JavaScript incarnation, p5.js[1]) might be worth looking at.
In terms of games that include content creation tools within them, I've been impressed with Fortnite and Rocket League. Using the in-game editor may be a good gateway to building mods offline.
1 - Examples https://p5js.org/examples/ and on online code editor https://editor.p5js.org/.
Modd.io [0] is a great platform that's relatively easy to get into and start making games. I suspect it would be a fairly good entry point for kids and it has the added benefit that your child can share the games they're making with their friends to play together live.
They have fairly good documentation [1] and if videos are more your child's thing, the founder/developer is incredibly active on YouTube and posts videos [2] and live streams fairly regularly.
They also have templates for a good number of different game types/modes that you can start off with, eg. platformer, tower defense, car racing, MMORPG, etc.
My kiddo want to make game on Nintendo Switch, which is almost impossible at this time, but I recently found Fuze 4 (https://www.nintendo.com/us/store/products/fuze4-nintendo-sw...) that allows him to do exactly that. Quite happy with Fuze's workflow. We can even connect an external keyboard so he can type on it.
You should definitely take a look at Struckd Studio which is now part of Unity Play - https://play.unity.com/en
It's still a little buggy in places, but nothing that can't be overcome.
You can drag and drop in 3D assets and many of them come with built in and easily changeable behaviors. Then there is a node based programming language that you can use to make alterations.
It's web based, but also has iOS and Android apps available for editing and playing the games.
edit - I'm an educator working in the CS ecosystem, and am playing with Struckd with the intention of making a suite of learning resources.
You could look at Adventure Game Studio: https://www.adventuregamestudio.co.uk/. It does require some scripting, but you can get away with very basic stuff. Here's an overview of the scripting language: https://www.adventuregamestudio.co.uk/site/ags/tutorial/scri....
Another option I have not tried myself is GDevelop: https://gdevelop.io/. It looks like you can get pretty far without any code at all, although you do that with an "events" editor that is basically a simple visual scripting language.
The updated manual for AGS is maintained in GitHub, a tutorial is here with some screens of the Editor https://adventuregamestudio.github.io/ags-manual/acintro1.ht...
A friend of mine works on DotBigBang which is pretty approachable. May be worth giving it a try!
I started with the World Editor from Warcraft 3 around that age, creating custom maps, gamemodes and spells/abilities. It has scripting capabilities that is somewhere between GUI code and actual code. There's also a lovely community around the World Editor over on https://hiveworkshop.com. Picking the latest custom spell updated as a showcase, if you expand the "Spoiler: Triggers" you can see how the "code" looks like: https://www.hiveworkshop.com/threads/frost-field-v1-0-1.3556...
There are a lot of custom maps in that game that has later become their own standalone games, the most well-known is probably Dota 2 that is the successor to the DotA custom map in Warcraft 3. I hear the Warcraft 3: Reforged update brough Lua support, but the "old" way of using the GUI or JASS is still supported so there is a natural learning path from the simpler GUI code to more advanced JASS or Lua code.
Not specifically game related, but adjacent. Sonic Pi (https://sonic-pi.net/) is designed for making music specifically with kids in mind, and they might accidentally learn a whole bunch of programming concepts as a side-effect.
Minecraft can do stuff with command blocks
That's funny, I taught a bit if Basic to my son coding rock, paper, scissor, too.
Download Castle for mobile: https://castle.xyz/
Ive heard good things about gamemaker, as well as RPGmaker. there was one I used to mess around with as a kid I think it was one of those two but cant quite recall. pretty sure it was something maker though. The important thing is to think about the process of making the game. getting the concept together, making a story..
Have you tried iterating your code and gameplay with https:://cursor.com like in this video : https://www.youtube.com/watch?v=o5uvDZ8srHA ? Total blast.
This video blew me away. I take back all of my reservations involving pairing AI with learning and development. I hope that little girl sticks to creating stuff!
On a smaller scale, there's an entire genre of 'interactive fiction' text games a la Zork. The scripting / authoring is fairly easy to pick up. https://textadventures.co.uk/
pico-8
+1 on this. Even as an adult I found other game authoring systems too complex to jump into and feel comfortable with (as a hobbyist). Pico-8 was the fastest, easiest "I'm thinking of something" to "I'm seeing something happen on screen" iterative development cycle and a joy to use. Plus, a great community of people willing to help on lexaloffle.com and especially Discord. Some great YouTube tutorials out there as well.
Yes, it's very accessible. My son wrote a game on it (with a lot of help from me, but he got it).
+1 to this, my son really enjoys programming for pico-8
Try TIC80 https://github.com/nesbox/TIC-80
Very mice, multi programming language support
Back in my day (was teenager in mid-to-late 90s) I had to figure out how games worked. Thankfully, we had games like Quake which can be modded and had various level editors. Worldcraft, which is now called Hammer, was awesome.
It is this journey that helped me become a programmer today. While not a games programmer, I do make games in my spare time.
Now -- sure.. why mention this? I believe I understand a 11 year-olds mindset that wants to do more than play games - but understand how they work. I also have children of my own and waiting for them to hint they want to learn. Of course the 90s way is a distant memory. There is more access to things in the gaming world... but more options can also be a little intimidating as well.
11 can still be "young" depending on their skill level with computers. For now, you could start off with the basics. For world building/construction, we do have Minecraft (which my 6 year old son plays). We also have things like Roblox (which my 12 year old daughter plays)
We also have Scratch, a "Visual Programming Language" - my daughter has been using this at school and some afternoon/evening clubs at the library.
For me personally, I think 13 (years old) is going to be 'that age' when they start going into more detail with making games. Maybe your child is ready sooner. Only you know.
If they are ready to progress further than the above, I would recommend something like Godot, Unity or Unreal. Whichever I pick is a decision I make at that time... but if I had to choose now, I might try Godot first and go from there.
Yes.. I might make decisions for the child to start with. I would sit with my child and learn together. Once they start doing things on their own I would take a step back and let them play. They will soon ask for help if they want it.
For example, when I was playing with Worldcraft, I was trying to figure out how to move an object around but I just didn't understand how I used the "target" and "targetname" fields. I asked for my Step-Dad to help and he figured it out for me. Once I understood it, and got an object moving in the game, I was able to carry on from there. He gave me space to learn.
The great thing about Unity, Unreal or Godot - is these are used for REAL GAMES... so your child can stay on these and, perhaps, have a career using them. They can figure out if they want to be an artist, level designer, 3d modeler, or programmer, etc. Their interest and decision can also point them to Blender, GIMP/Photoshop, or to write their own games engine (or simply a game) using a programming language.
For me -- I went with the DIY approach as a programmer, writing games in C (but moving to Odin) and I use OpenGL, SDL2, etc. Once you get a window open you can start by making Pong, or a Card Game, etc. So, if any of my children want to learn... learning Godot is just as much an experience for me as well -- but it is also to give them space to learn their way and, like my Step-Dad did for me, to help me when I needed it.
"I can only show you the door. You're the one that has to walk through it" - Morpheus
--- All software I mentioned above listed here. I hope this helps. My advice is to go with the flow and make your own learning fun.
- Quake C / Modding / Worldcraft. -- For Quake (old school. Likely avoid for younger gen)
- Hammer Editor for Source/Source 2 -- More modern
- Scratch -- popular visual programming language for kids.. even young!
- Minecraft, Roblox -- Popular world building, fun games
- Photoshop, Gimp -- Popular Paint or Photo editing
- Blender -- Popular 3D modelling (architecture, 3d animation, etc)
- Unity, Unreal, Godot -- popular game engines / editing tools
- Programming language C, Odin... libraries like SDL (making games manually)
The SVG format is easy to learn and you can write your graphics manually inside HTML. I've been using it to make 2D objects in JavaScript that can be positioned, rotated and scaled using the transform style property. You can also animate them with CSS. It's a shame there isn't a similar scriptable format for audio, something like MIDI. Otherwise you can use a canvas, or even a 3D canvas for WebGL.
Have you tried RPG Maker? It’s really fun. I remember using it as a kid. It’s focused on turn based combat.
Love2d.
Construct 3 is awesome.
You will not find better...
and with the ability to create a point and click interface with something specific happening on each click
Also, as you need: GameMaker Language (GML) is GameMaker's scripting language. It is an imperative, dynamically typed language commonly likened to JavaScript and C-like languages
Raylib is really good
Phaser with Claude / LLM to help?
[random parental advice from the internet]
Pick an adult solution and sit with them to provide adult guidance. You are at the stage where your relationship with your child becomes peer to peer.
If game programming stays their jam, you will be learning game programming from them in the blink of an eye. It's joyous and wonderful and only gets better.
Sure you will miss them being a small child, but you will know an amazing adult. (and they will always be a small child sometimes just as we all are).
The platform doesn't matter. Your relationship does. Good luck.
I’d argue against this. If the tool is too difficult, kids often lose interest. So it can have an adverse effect.
As much as I’d want to teach my 11 year old kid Unreal Engine, it’s not realistic. Pun not intended.
I think it depends on the child and parent.
My approach with my kids has always been "don't dumb it down". They may not be into programming, but at least they'll be exposed to it.
By giving them the 'easy' version, you are putting up barriers that don't need to be there. Kids are smarter than many adults give them credit for, but again, it depends on the kid.
You would be teaching a soon-to-be-adult about the adult world. The game engine is entirely incidental to developing a peer to peer relationship.
Their interest in spending time with you will diminish. That reality is the one to optimize for. Recreational interests come and go and come back sometimes. But most don’t stick.
Learning Unreal Engine with your 11 year old is possible, but not for more than year.
try websim.ai or roblox studio
Scratch
I have good memories of using Alice3D [1] the 3D part is appealing.
11 is young but I don't know how difficult could be to use Unity with some help, I know people without any development background who created games there in their spare time.
Don't underestimate kids... just give them proper tools, and they will surprise you.
JavaScript is a very forgiving language to learn:
https://playground.babylonjs.com/
Game level designers are also a fun high-abstraction, and won't overwhelm the impatient.
https://levelsharesquare.com/games/supermarioconstruct
Have fun =3