Build a top-down character controller that feels great to play. It runs as a clean state machine: idle, walk, run, and a movement-locked attack. You also get four-way directional animation and a follow camera that smooths the chase.
9
Lessons
865
XP Reward
Beginner
Difficulty
No videos to zone out to. You write the code yourself in the browser, and Code Checks show what your code passed as you go.
Campaign preview: The complete 2D top-down RPG this campaign builds toward


Free quest. No membership needed.
0 of 9 lessons completed
Free download. Needs a free account, no card.
It is the finished project for the whole quest. Use it to compare your work or to recover a broken step.
8-direction movement, mouse aim, a dash with i-frames and a follow camera with shake. Free to download, MIT licensed, no account needed.
View the free open-source version on GitHub What is in the Top-Down Controller projectBuild a top-down character controller that feels great to play. It runs as a clean state machine: idle, walk, run, and a movement-locked attack. You also get four-way directional animation and a follow camera that smooths the chase.
Finish it, then keep the momentum. Here's the logical next step.
Recommended
Tile-Based World & Map Building
Quest 3 of 11 in the 2D Top-Down RPG campaign.
Build top-down RPG worlds with TileMapLayer: tilesets, terrain autotiling, tile collision, Y-sort depth, and clean room and scene transitions.
First 2 lessons free6-8 hours
2D Top-Down Combat & Damage
Optional. Not part of your current route. Needs: Code From Zero, or you can already read GDScript.
Build real-time top-down combat: Area2D hitboxes and hurtboxes, a reusable HealthComponent, melee swings, knockback, i-frames, and hit feedback that actually feels good.
First 4 lessons free6-9 hours
2D Top-Down Enemy AI
Optional. Not part of your current route. Needs: Code From Zero, or you can already read GDScript.
Give your enemies a brain. You'll build a 2D finite state machine with six states: idle, roam, chase, a telegraphed leap attack, hitstun and death. It drives CharacterBody2D movement using NavigationAgent2D pathfinding and distance-based detection.
First 2 lessons free6-9 hours
Browse campaigns Submit a build to the Showcase Back to your dashboard