Game Maker is how I developed most of my programming skills when I was that age. It has a very user-friendly UI that has pre-generated scripts for new users. What's great about it is that the premade scripts are made of real code that they can dive into when they get their feet wet.
First you start by making a bullseye bounce around the room by giving it some simple premade instructions (When this thing is spawned, it moves in a random direction. When it hits the top side of the screen, reverse its vertical direction, etc). Then you add some interaction, like causing an action to occur when you click on it (makes a sound effect, increases point by +1, destroy the object, create new object).
Once they get the hang of it, make a brickout game. Teach them how to make powerups and new types of bricks. Teach them the value of planning for any contingency by having them test their own games. My first real, enjoyable game I made, for myself, was a Brickout game that slightly randomized the direction of the ball each time it hit the wall or paddle, took in consideration the direction of the paddle when a ball hit it so you had some control, had 5 or so powerups, 2 switch bricks that turned certain bricks solid or non-solid, and so on. If I had free time, I was perfecting my game, trying to tighten on that one boundaries bug I found when I collected too many speed+ penalties that caused the ball to move so fast the outer bounds check didn't have time to process in a step, or work on that new idea I came up with to have a paddle on both sides of the screen for harder levels.
Game Maker is not limited in the slightest, as it's been used to make critically acclaimed games like Hyper Light Drifter, Undertale, Nidhogg, Iji, and Risk of Rain. Your students may recognize some of these. I've personally enjoyed all of them.
Nor is Game Maker overly complex. A simple understanding of loops, events, collisions and hit-boxes are the most unintuitive things a student needs to learn. The rest comes with persistence, which is not unlike any professional programming.
You will definitely need to be lenient in terms of time and structure for some of the class, as it will feel closer to real programming than a program designed to imitate it (like Code Combat). The good news is that it's so intuitive that the students who don't need your assistance will quickly advance themselves while you are busy. Having done a few 3-hour seminars for highschool students, this is exactly what I experienced (helping 1/3 of the class personally while the rest teach themselves). This does create a quandary for a long-term curriculum for a regular classroom, as you will have to balance keeping education open for those who want to teach themselves while keeping the pace rigid so that those who need assistance don't fall behind. A good solution to this is by:
Provide extra credit, up to a cap, for weekly assignments. So they have a week to make a working concept of a game, and how fun/efficient/complex their solution is determines their grade/extra credit.
Make each weekly assignment be different in its goals, with a strict to-do list for each day. Week 3, Day 1, create a simple AI for a moving creature. Week 3, Day 2, modify the AI to have some interactive functions (when player gets within X Pixels, activate Attack mode). Have a prebuilt version made for each day and go over the mechanics from the previous day, maybe even using students' examples of problems and successes. This allows everyone to see a working foundation that you can use to show specific mechanics, while also allowing them to make something new without them getting stuck with their personal projects.