⬅ Back to homework list

🏔 The Big Quest: Build Minecraft

You won't write the code. You'll be the boss — and tell an AI what to build!

📈 Your Progress

Level 0 of 9

⭐ The Golden Rules of Being the Boss

  1. 🐜 Ask for ONE small thing at a time. Small steps win.
  2. 👀 If it's wrong, say exactly what you see: "the player sinks into the ground" is way better than "it's broken."
  3. 🔁 It's okay to say: "That's not what I wanted, please undo it."
  4. 🤔 Ask "why?" and "how does that work?" — the AI loves explaining.
  5. 🎉 When a level works — celebrate and publish it to your website!
🌍 Level 1: Make the World
🎯 Goal: An empty world — blue sky on top, green ground on the bottom.
Create a file called game.html. Make a game screen that fills the whole page. The top part is blue sky and the bottom part is green ground. No blocks yet, just the empty world.
👀 Check it: Open game.html in the browser. Do you see sky and ground filling the whole window?
🛠 If it's not right, tell the AI what you see: "The page has a white edge around it. Make the world fill everything." "The ground is too small. Make it about a quarter of the screen."
🔲 Level 2: The Block Grid
🎯 Goal: The world becomes a grid of squares — every square can hold one block.
Divide the whole world into a grid of squares, about 40 pixels each. Draw very light lines so I can see the squares.
👀 Check it: Can you see faint grid lines over the sky and ground?
🛠 If it's not right: "The lines are too dark. Make them lighter." "I only see lines on the ground. I want them everywhere."
🧱 Level 3: Place Your First Block
🎯 Goal: Click an empty square → a dirt block appears. Your first building power!
When I click on an empty square, put a brown dirt block there. The block should exactly fill the square.
👀 Check it: Click around — can you build a dirt tower? A wall? Write your name in blocks?
🛠 If it's not right: "The block appears in the wrong square, not the one I clicked." "The blocks are just plain brown. Can you give them a little texture so they look like Minecraft dirt?"
⛏️ Level 4: Mining!
🎯 Goal: Click a block that's already there → it breaks and disappears. Now you can build AND mine.
If I click a square that already has a block, break the block and make it disappear — like mining in Minecraft.
👀 Check it: Build a wall, then mine a door-shaped hole in it.
🛠 If it's not right: "When I click a block it places another one instead of breaking it." "Can the block make a little crumble effect when it breaks?"
🎨 Level 5: More Kinds of Blocks
🎯 Goal: A toolbar to choose between dirt, grass, stone, and wood — like the Minecraft hotbar.
Add a toolbar at the bottom with 4 block types: dirt (brown), grass (green top), stone (gray), and wood (dark brown stripes). Let me click one to choose it, and show which one is chosen. When I place a block, use the one I chose.
👀 Check it: Build a stone castle with a wooden door and grass on top.
🛠 If it's not right: "I can't tell which block type is selected. Make the chosen one glow." "Add water as a fifth block type. Make it a bit see-through."
🧍 Level 6: The Player
🎯 Goal: A little character who walks, jumps, falls, and lands on your blocks. This is the biggest level — it might take a few tries. That's normal!
Add a small player character standing on the ground. Arrow keys move him left and right, and the space bar makes him jump. Gravity pulls him down, and he lands on top of blocks instead of falling through them. He can't walk through blocks either.
👀 Check it: Build a staircase of blocks and jump to the top. Then dig under yourself — do you fall into the hole?
🛠 If it's not right (this level LOVES to go wrong 😄): "The player falls through the blocks." "The player gets stuck inside blocks when walking." "He jumps too high — make the jump about two blocks high."
🌳 Level 7: A Living World
🎯 Goal: The world starts with hills and trees already there, instead of being empty.
When the game starts, generate a world that already has some grassy hills, and a few trees made of wood blocks with green leaf blocks on top. Make it a little different every time.
👀 Check it: Refresh the page a few times — is the world a bit different each time? Can you mine a tree?
🛠 If it's not right: "The trees are floating in the air. They should grow from the ground." "The hills are too pointy. Make them smoother."
💾 Level 8: Save Your World
🎯 Goal: Your world is still there when you come back tomorrow — plus a "New World" button.
Save my world in the browser so that when I close the game and open it again, all my blocks are still there. Also add a "New World" button that asks "are you sure?" and then starts a fresh world.
👀 Check it: Build something, close the browser completely, open the game again. Is your building still there?
🛠 If it's not right: "My world disappears when I refresh the page." "The New World button erased my world without asking. Add the are-you-sure question."
👑 Level 9: Make It YOURS
🎯 Goal: No instructions this time. YOU decide what your game needs — and you write the prompt yourself, in your own words.
Ideas to steal (or invent your own!): - a day and night button - clouds that float by - a pet dog that follows the player - TNT blocks that explode - sounds when you place and break blocks - a creeper... if you dare
👀 Check it: Does your game make YOU laugh? Then it's perfect. Show somebody!
🛠 Remember: one small thing at a time. Get the dog walking before you make him bark. 🐕

🕶 PART 2: GO 3D!

Finished the 2D game? You're ready for the REAL thing:
a 3D world you walk around inside, just like actual Minecraft.

Secret weapon: the AI knows a 3D tool called three.js. You don't have to understand it — you just have to be the boss. 😎

🌐 Level 10: A Whole New Dimension
🎯 Goal: A 3D world you can SEE — a field of grass blocks under a blue sky, like standing in Minecraft.
Create a new file called game3d.html. Use three.js to make a 3D world: a big flat ground made of separate green grass blocks, and a blue sky. Put the camera at standing-person height, so it looks like I am standing in the world.
👀 Check it: Open game3d.html. Do you see a blocky grass field stretching into the distance, in 3D?
🛠 If it's not right: "The screen is just black." (this happens a LOT in 3D — the AI will know what to check) "The ground looks like one flat green sheet. Make it separate blocks so it looks like Minecraft." "I'm looking at the ground from the sky. Put the camera down at person height."
🚶 Level 11: Walk the World
🎯 Goal: Look around with the mouse and walk with W A S D — you're IN the game now.
Let me look around by moving the mouse, and walk with the W A S D keys. Space bar jumps, gravity pulls me back down, and I can't fall through the ground. When I click the screen it should grab my mouse for looking around, and the Escape key lets it go.
👀 Check it: Walk in a big circle. Jump. Look straight up at the sky, then down at your feet.
🛠 If it's not right: "The mouse doesn't turn my head until I click — oh wait, that's how it should work!" "I walk way too fast. Make it a comfy walking speed." "When I jump, I fly up forever and never come down."
🎯 Level 12: The Crosshair & First 3D Block
🎯 Goal: A crosshair in the middle of the screen, and clicking places a block right where you're looking.
Put a small crosshair in the middle of the screen. When I click, place a dirt block exactly where I am looking. Blocks must snap to the grid so they stack neatly like Minecraft, never floating or overlapping.
👀 Check it: Build a little tower in front of you, then walk around it and look at it from the other side.
🛠 If it's not right: "The block appears far away, not where the crosshair points." "Blocks go inside each other. Each spot should hold only one block." "I can place a block inside my own body and get stuck!"
⛏️ Level 13: 3D Mining
🎯 Goal: Left click breaks blocks, right click places them — and you can see which block you're aiming at.
Make left click break the block I am looking at, and right click place a block. Draw a thin black outline around the block my crosshair is pointing at, so I always know which block I am about to break. The right click must not open the browser menu.
👀 Check it: Dig a tunnel down into the ground, then look up. You're inside your own world now. 🕳
🛠 If it's not right: "Right click opens a menu on the page instead of placing a block." "I can't tell which block I'm aiming at — the outline doesn't show." "Breaking one block makes blocks near it disappear too. Only break the one I aim at."
🎨 Level 14: The Hotbar
🎯 Goal: A real Minecraft-style hotbar: press 1–5 to pick your block type.
Add a hotbar at the bottom of the screen with 5 block types: dirt, grass, stone, wood, and leaves. Pressing keys 1 to 5 picks one, and the picked slot lights up. When I place a block, use the picked type.
👀 Check it: Build a house: stone walls, wood door frame, leaf bushes. Walk inside it.
🛠 If it's not right: "Pressing the number keys does nothing." "All blocks look the same color when placed." "Add glass as slot 6, and make it see-through."
🏔 Level 15: Hills & Trees in 3D
🎯 Goal: A real landscape — rolling hills and trees, different every time you start.
When the game starts, generate a world with gentle rolling hills and some trees made of wood trunks and leaf blocks. Make it a little different every time. I should be able to walk up the hills by jumping, and stand on top of them.
👀 Check it: Find the tallest hill and build a flag on top. Mine a whole tree. Refresh — is the world new?
🛠 If it's not right: "I get stuck when walking up hills." "The trees are floating above the ground." "The world takes forever to load. Make it a bit smaller so it's fast."
👑 Level 16: The 3D Masterpiece
🎯 Goal: Save your world, then add YOUR idea — you write the prompts now, in your own words.
First: "Save my world in the browser so it is still there when I come back. Add a New World button that asks are-you-sure first." Then ideas to steal (or invent your own!): - a sun that moves across the sky, with sunset and night - clouds drifting overhead - a pig or dog made of blocks that wanders around - block placing and breaking sounds - double-tap space to FLY like creative mode - TNT... if you dare 💥
👀 Check it: Close everything, come back tomorrow — world still there? Then show your masterpiece to the family!
🛠 Remember the Golden Rules: one small thing at a time. Get the pig standing before you make it walk. 🐷

🎬 PART 3: YOUR WORLD, YOUR STARS

Your world works. Now make it feel ALIVE — with a village, villagers... and the stars of the Miky & JJ channel playing the game! 🌟

🏘 Level 17: Build a Village
🎯 Goal: Your world starts with a little village — houses you can actually walk into.
When the world is generated, also build a small village near where I start: 3 or 4 little houses made of wood and stone, each with a doorway I can walk through and windows. Connect the houses with dirt paths. Put the village on flat ground.
👀 Check it: Walk down the path, go through a doorway, and look out a window from inside.
🛠 If it's not right: "The houses are half-buried in a hill. Put the village on flat ground." "I can't fit through the doorway. Make it two blocks tall." "The houses have no roofs — add pointy roofs like real Minecraft villages."
🧑‍🌾 Level 18: The Villagers
🎯 Goal: Blocky villagers who wander around the village and notice you.
Add a few blocky villagers who slowly walk around the village. They stay on the ground, don't walk through walls or each other, and stay near the village. When I get close to a villager, it turns to look at me.
👀 Check it: Follow a villager around. Then walk right up to one — does it turn and look at you? 👀
🛠 If it's not right: "The villagers walk straight through the house walls." "They wander far away and get lost. Keep them near the village." "Make one villager wave its arm at me when I get close."
🌟 Level 19: Play as JJ or Miky!
🎯 Goal: A "Choose Your Character" screen with the stars of the Miky & JJ channel — and you play as the one you pick!

⚠️ Important: the AI has never seen you two! Fill in the blanks below with what you REALLY look like — hair, favorite shirt colors, anything special. The better you describe, the better your characters look. That's what great prompting is!

Before the game starts, show a "Choose Your Character" screen with the two stars of the Miky & JJ YouTube channel. Make them as blocky Minecraft-style characters: - JJ: [describe JJ! example: short black hair, a red shirt, blue pants, a big smile] - Miky: [describe Miky! example: brown hair, a yellow shirt with a star, black pants] Show both characters side by side so I can click the one I want to play as. After I choose, that character is me in the game. Add a V key that switches between first-person view and a behind-the-back view, so I can see my character walking and jumping.
👀 Check it: Pick Miky, press V, and watch him run and jump. Then start a new game and pick JJ. Do they look like you two?
🛠 If it's not right: "The behind-the-back camera is inside my character's head. Move it back and up a little." "JJ's hair is wrong — it should be [say how it really is]." "The character slides without moving his legs. Make arms and legs swing when walking." "Write 'Miky & JJ' at the top of the choose screen like our channel logo."

🚀 Publishing a finished level

Every time a level works, ask a grown-up to publish it. Then your games are LIVE at jjaihw.com/game.html (2D) and jjaihw.com/game3d.html (3D) — on the real internet, where you can show anyone!

👨‍👩‍👦 Note for grown-ups

Setup (once): open Terminal, go to the website folder and start the coding agent — e.g. cd ~/Desktop/Projects/my-coding-projects then claude (Claude Code), or any agent you prefer. The kid types (or dictates) the prompts — resist the urge to type for them!

Each level: the agent edits game.html in this folder. Check the result together in the browser. When it works: git add -A && git commit -m "Level N" && git push — Netlify puts it on jjaihw.com/game.html automatically in ~30 seconds.

Part 2 (3D): the agent will pull in three.js (usually from a CDN), so the 3D game needs internet to load. If a step goes badly sideways, "please undo that last change" or git checkout game3d.html is your reset button. Levels 10–11 are the rockiest — a black screen is normal; have the kid report it as a bug.

The point: the checkboxes here are self-graded on purpose. The skill being taught is describe → look → describe what's wrong → repeat. Let them struggle a little on Level 6 — that's where the learning is.