Official curriculum
The Codo roadmap
From making games in Scratch to shipping a real product with AI. Each course is 10 sessions of 2 hours, with a clear result at the end. School grade sets the age group. A short placement check sets the skill level.
- 27courses on this path
- 10sessions in each course
- 2hours each session
The learning order, separate from school grade
Group 1
Grade 3
Game making with Scratch — beginner
- 01The world of game makingPlace a balloon, click to pop it, and bring it back with the flag
- 02My characterPlace your hero, stamp a home, and let the flag walk them
- 03Controlling the gameDrive with the arrow keys and honk with space
- 04Motion and collisionWalk to the star, touch it to win, and let the edge send you home
- 05Sound and animationChange costume, dance to a beat, and bow on a click
- 06Score!Catch the apples and raise the score to 5
- 07Enemies and obstaclesReach the cheese before the cat catches you
- 08Level designPaint a maze, add walls, and reach the goal
- 09Build the final gamePut walking, a score, a sound, and a bee into one game
- 10Game makers celebrationTest in silence, fix one thing, and show the game
Game making with Scratch — intermediate
- 01What makes a better game?Game design, goals, rules, and the game loop
- 02ConditionsIf, if/else, and making decisions
- 03LoopsRepeat, repeat until, and when to use a loop
- 04MessagesBroadcast and letting characters talk to each other
- 05Score systemScore, lives, time, and high score
- 06Smarter enemiesChasing the player and automatic movement
- 07More than one levelStages, changing level, and raising difficulty
- 08Game menuStart, stop, lose, and win
- 09Final projectBuild a multi-level game
- 10Publish and presentTest, debug, improve, and present
Game making with Scratch — advanced
- 01A professional game designerGame design, genre, and game mechanics
- 02Game systemsDesign systems you can reuse
- 03Enemies and simple AIEnemy behavior, chase, and patrol
- 04Game physicsSpeed, acceleration, jump, and gravity
- 05Level designLevel design, difficulty, and the player path
- 06InterfaceMenu, lives, score, and messages
- 07Save and high scoreHigh score and saving the game state
- 08Design my own gameDesign the whole project
- 09Build the final projectBuild it and test it
- 10Present the gameFinal fixes, introduction, and presentation
Group 1
Grade 4
In grade 4, Scratch is no longer the only goal. AI becomes part of making the game.
Game making with Scratch and AI
- 01What is AI?AI and how it shows up in games
- 02Ideas with AIMaking an idea, a story, and the rules
- 03Character design with AICharacter ideas and pictures
- 04Build the game worldBackdrops and places, with help from AI
- 05Sound with AIVoice, music, and effects
- 06AI helps with codingAsking questions, getting ideas, and fixing code
- 07Game charactersDialogue and how a character behaves
- 08AI and Scratch togetherBring the outputs into Scratch and build the game
- 09Final projectBuild a complete game
- 10Game showcaseTest, fix, and present
Creative games with AI
- 01From idea to gameTurn an idea into a game plan
- 02The game storyCharacter, story, and mission
- 03Character designCharacter work and design with AI
- 04World designBuild the world of the game
- 05Level designPath, challenge, and reward
- 06Sound and musicMake and choose sound
- 07An interactive gameDialogue and player choices
- 08Build a first versionA prototype
- 09Finish the gameTest and fix problems
- 10Present the projectIntroduce the game and get feedback
Game Creator — a complete game
- 01My game ideaChoose an idea and sketch it
- 02Game designRules, goal, and mechanics
- 03Character and worldUse AI to make the content
- 04Build the gamePut it together
- 05Level oneDesign and build it
- 06Level twoRaise the challenge
- 07Sound and effectsSound, music, and effects
- 08Test the gameFind problems and fix them
- 09Get ready to publishIcon, pictures, description, and the final version
- 10Game festivalPresent the finished game
Group 2
Grade 5
Game making with Scratch — beginner
- 01Meet game makingScratch, games, characters, and levels
- 02Character and motionSprites, coordinates, and movement
- 03Controlling the gameInput and control
- 04CollisionCollisions and the rules of the game
- 05Sound and animationAnimation and sound
- 06VariablesScore, lives, and time
- 07Enemies and obstaclesEnemies and challenges
- 08Level designLevel design
- 09Game projectBuild a game
- 10PresentationTest and present
Game making with Scratch — intermediate
- 01Game designMechanics and rules
- 02ConditionsMaking decisions
- 03LoopsRepetition and logic
- 04MessagesHow characters communicate
- 05Score systemScore, health, and a timer
- 06EnemiesHow an enemy behaves and moves
- 07Several levelsStages and progress
- 08Game menuA simple interface
- 09Final projectBuild the game
- 10PresentationTest and publish
Game making with Scratch — advanced
- 01Professional game designGame design
- 02Game systemsDesigning systems
- 03Enemy intelligenceAutomatic behavior
- 04PhysicsJump, gravity, and speed
- 05Level designLevel design
- 06InterfaceHUD and menus
- 07High score and saveHigh score
- 08Project designA game plan
- 09Build the gameThe final project
- 10PresentationTest and present
Group 2
Grade 6
In this grade, the Godot game engine takes the place of Roblox.
Game making with Godot — beginnerGodot Game Development — Beginner
- 01Enter GodotThe game engine, a project, scenes, and nodes
- 02Build the game worldNodes, sprites, and the place
- 03Move a characterGDScript and control
- 04PhysicsCharacterBody and collision
- 05AnimationAnimation and motion
- 06Enemies and obstaclesEnemies and collision
- 07Score and livesVariables and the interface
- 08Level designLevel design
- 09Build a gameA complete project
- 10ExportTest, build, and present
Game making with Godot — intermediate
- 01GDScriptVariables, functions, and how a program is organized
- 02Conditions and loopsProgram logic
- 03SignalsHow objects talk to each other
- 04Enemy systemSimple AI
- 05Game systemsScore, lives, and time
- 06InterfaceUI and menus
- 07Saving the gameSave and load
- 08Level designSeveral levels and progress
- 09Final projectBuild the game
- 10ReleaseExport and present
Game making with Godot and AI
- 01AI as an assistantUsing AI well
- 02Coding with AIWriting and explaining code
- 03Fixing errors with AIDebugging
- 04Game design with AIIdeas and game design
- 05Assets with AIPictures and game pieces
- 06Sound with AIMusic and effects
- 07A smart NPCDialogue and behavior
- 08Connect the systemsJoin the parts of the game
- 09Final projectBuild an AI game
- 10PresentationTest and publish
Group 2
Grade 7
Python for games and AI
- 01Start PythonPrograms, variables, and types of data
- 02DecisionsConditions
- 03RepetitionLoops
- 04CollectionsLists and dictionaries
- 05FunctionsWriting a function
- 06FilesReading and writing data
- 07A text gameGame logic
- 08Using librariesUsing tools that already exist
- 09ProjectBuild a small game
- 10PresentationFinish and present
Build projects with AIBuild with AI
- 01How does AI work?Models, data, and generative AI
- 02Working with language modelsConversation and instructions
- 03Prompt engineeringPrompt engineering
- 04Using an APIConnect a program to AI
- 05Build a chatbotA chatbot
- 06Generating textUse AI inside a program
- 07Image and soundAI for more than text
- 08Build the projectConnect the parts
- 09Finish the projectTest and fix problems
- 10PresentationA demo
AI Game Developer
- 01A smart gameWhere AI fits in a game
- 02A smart NPCCharacters you can interact with
- 03AI conversationDialogue that changes
- 04AI and soundSpeech and voice
- 05AI and imagesA first look at computer vision
- 06Game contentAssets and story
- 07Coding with AIWriting and fixing code
- 08Project designDesign the game
- 09Build the gameThe final project
- 10Publish and presentBuild and demo
Group 3
Grade 8
Game making with Unity — beginner
- 01Enter UnityProjects, scenes, and GameObjects
- 02Build a placeTransform, sprites, and the camera
- 03Beginner C#Variables and statements
- 04Control a characterInput and movement
- 05PhysicsRigidbody and colliders
- 06EnemiesAn enemy
- 07Score and UICanvas and a score system
- 08Level designLevel design
- 09Build a gameThe final project
- 10ExportBuild and present
Unity — intermediate
- 01Practical C#Classes and objects
- 02Game systemsA simple architecture
- 03AnimationThe Animator
- 04Enemy AIHow an enemy behaves
- 05A fuller UIMenus and the HUD
- 06AudioSound and music
- 07Save systemSaving the game
- 08Level designDesigning levels
- 09ProjectBuild the game
- 10BuildTest and export
Unity + AI
- 01AI in the makingAI as a collaborator
- 02Coding with AIWriting C#
- 03Debugging with AIFinding errors
- 04Game design with AIIdeas and design
- 05Assets with AIPictures and models
- 06Sound with AIVoice and music
- 07A smart NPCConversation
- 08AI in gameplaySmart behavior
- 09Final projectBuild the game
- 10PresentationBuild and demo
Group 3
Grade 9
3D game making with Unity
- 01A 3D world3D, the scene, and the camera
- 02Models and materialsModels and materials
- 03LightingLight and shadow
- 04Control a characterThe character controller
- 053D physicsRigidbody
- 06Animation3D animation
- 07The game environmentTerrain
- 08Level designLevel design
- 09ProjectBuild a 3D game
- 10ExportBuild and present
Smart game developmentAdvanced AI Game Development
- 01AI architecture in a gameDifferent kinds of AI
- 02A smart NPCBehavior
- 03Smart conversationA language model
- 04SoundSpeech-to-text and text-to-speech
- 05Computer visionRecognizing images
- 06AI APIConnect Unity to AI
- 07Smart gameplayMaking decisions
- 08Project designThe shape of the project
- 09Build itImplementation
- 10DemoTest and present
Make a mobile game
- 01Mobile gamesHow a phone game differs from a computer game
- 02Touch controlTouch input
- 03A mobile interfaceThe interface
- 04PerformanceMaking it run well
- 05Saving dataSave
- 06AdsWhat it means for a game to earn money
- 07Player analyticsAnalytics
- 08Get ready to publishIcon, screenshots, and a build
- 09ReleaseMake the final version
- 10PresentationA game someone can install
Group 3
Grade 10
Python and AI programming
- 01Python, further onA clearer program structure
- 02Object-oriented programmingClasses and objects
- 03Working with dataJSON and data
- 04LibrariesInstall and use them
- 05APIHow programs talk to each other
- 06Git and GitHubLooking after a project
- 07Connect to AIAn AI API
- 08Build an AI toolA project
- 09FinishTest and debug
- 10PresentationPublish the project
Building AI applications
- 01AI architectureThe parts of an AI product
- 02Language modelsLanguage models
- 03Prompt engineeringDesigning instructions
- 04RAGUsing your own information
- 05ChatbotBuild a chatbot
- 06Computer visionImage AI
- 07VoiceSpeech AI
- 08AgentAn agent that can act
- 09ProjectBuild an application
- 10PresentationA demo
Build a real product with AI
- 01Find a problemProblem discovery
- 02Product ideaA product idea
- 03DesignUI and UX
- 04Coding with AICoding with AI beside you
- 05BackendData and an API
- 06Connect AIAn AI feature
- 07TestingFinding errors
- 08ReleaseDeployment
- 09Prepare the productThe final version
- 10Demo DayPresent the product
Final stretch
Grades 11 and 12
Advanced AI development
- 01AI system architectureThe parts of the system
- 02Python, further onHow a project is organized
- 03LLMLanguage models
- 04RAG, further onSearch and your own knowledge
- 05AI agentTools and decisions
- 06Computer visionWorking with images
- 07AutomationLetting work run on its own
- 08Connect servicesAPI and backend
- 09ProjectBuild a system
- 10PresentationDemo and write-up
Product development with AI
- 01A real problemFinding a need
- 02Product designFeatures and an MVP
- 03UI/UXDesigning the experience
- 04FrontendBuild the interface
- 05BackendAPI and logic
- 06DatabaseStoring information
- 07AI featureAdd AI
- 08AuthenticationUsers and basic security
- 09DeploymentPublish the product
- 10Product demoPresent the product
Final project — a real productFor a student who has already finished at least one programming path or one AI path.
- 01My ideaChoose a problem and a product
- 02ResearchUnderstand the user
- 03Product designMVP and features
- 04Technical designArchitecture
- 05Build the first versionProgramming
- 06Add AIA smart capability
- 07TestingFix problems
- 08ReleaseDeploy
- 09Prepare the presentationDemo and portfolio
- 10Demo DayPresent the product to other people
Placement
A student does not enter only by school grade
Enrollment includes a short check. Age sets the age group, not the skill level.
A grade 6 student, for example
- No experience yetStarts atBeginner Scratch
- Already knows ScratchStarts atBeginner Godot
- Already knows GodotStarts atIntermediate Godot
- Already writes programsStarts atPython and AI
- Level 1No experienceStarts at Beginner Scratch
- Level 2ScratchStarts at Intermediate or advanced Scratch
- Level 3Game developmentStarts at Godot or Unity
- Level 4ProgrammingStarts at Python
- Level 5AIStarts at AI development
- Level 6AdvancedStarts at AI product
A student who has already programmed for two years does not start again at beginner Scratch.