
Download Godot, set up a 2D project with the forward renderer, and explore the interface including scene, inspector, and file system while saving a main 2D scene.
Create a 2d camera in Godot 4, set its anchor to fixed up left, and adjust zoom to control what the player views, preparing to attach a script.
Create the player in Godot 4 with a 2D body and collision shape. Add sprite sheet, set nearest filter, and define idle, walk, and jump animations.
Master Godot 4 to code player movement in a 2D game by building a dedicated script, handling input, velocity, animations, and sprite flipping.
Build a ground tile map in Godot 4 by creating a tile set and a terrain for auto tiling, and enable gravity with a physical layer collision.
Learn how to implement a jump mechanic in Godot 4 by creating an input map with ui_jump, mapping space and a gamepad button, and applying velocity.y as the jump.
integrate jump and fall animations into the move function by using input to set vertical velocity and is_on_floor checks to play jump and fall animations.
Implement a double jump by tracking how long the jump key is pressed. Use a pressed variable and jump when not on the floor; reset the variable when grounded.
Learn to implement a sword attack in Godot 4 by adding an Area2D collision shape, enabling it during attack frames, and wiring an input map to trigger the swirl animation.
Implement a finite state machine in Godot 4 using an enum-based player state with move and swirled, driven by a match statement in _physics_process, and reset on animation finish.
Create a destroyable crate in Godot 4 using Area2D signals, collision layers, and an animation. Detect sword hits, play animations, await completion, and remove the crate when elf reaches zero.
Polish a Godot 4 game by composing a multi-layer background with Sprite 2D nodes and z-indexed elements, and align the camera and viewport for a 320x180 canvas.
Create the first enemy in Godot by adding a character body 2D, collision shape 2D, sprite 2D, and raycast 2D; set idle and dead animations with a seven-frame sprite sheet.
Learn to code enemy movement in godot 4 by creating a movement script, using velocity, gravity, and raycasts for floor and wall detection, with sprite flipping and idle animation.
Learn to build a killable enemy in Godot 4 for a 2-game project by adding an area 2D hitbox, sword collision, elf health, and death animation.
Learn to build a player health system in Godot 4 by tracking lives with a global auto-load script, applying enemy damage, and handling death with scene reload.
Fix a bug and design a Godot 4 gui that displays player lives and coins using a canvas layer, sprites, and a dynamic label.
Learn to build a heart-based gui in Godot 4 by looping over player lives, instantiating heart sprites, arranging them in rows with constants, and updating visuals in process delta.
Learn to apply post-render effects with a 2D canvas item shader in Godot 4, creating a shader material, exporting color and flash modifier, and wiring hurt feedback to sprites.
Build a collectible coin in Godot 4 by creating an area 2D with a collision shape, sprite and two animations, then script coin collection to update a global coin counter.
Learn how to display the coin count in the gui using a global autoload variable in Godot 4, updating a coin text label with to_string when coins are collected.
Learn to script a camera in Godot 4 that follows the player using process delta, get_node path references, and a twin transition for smooth movement.
Build a door and switch system in Godot 4 by creating a static 2D door with sprite animations, then an area 2D switch with activation states and scenes.
Trigger a door in Godot 4 by wiring a switch to respond to an area entered signal, playing activating and opened animations, and emitting a custom opening door signal.
Change levels in Godot 4 by using a portal area 2D that changes scenes to level two, and manage reusability by wiring door-specific signals.
Add sound effects to Godot 4 games by importing audio files, adding audio stream players to game objects such as the player, coins, and doors, and wiring playback in scripts.
Create looping music in Godot 4 by using an audio stream player, enabling auto play, and scripting the loop property to control playback from the main scene.
Learn to build a breakable platform in a 2D side-scrolling game using a static body 2D, an area 2D, collision shapes, and an animation player to destroy and respawn it.
Create a Godot 4 map scene with a tile map, color overlay, and player head marker; toggle visibility with a key to pause the game and display the player's position.
Create a saving system in Godot 4 by adding a save manager to save and load the player's position and other data using JSON.
Implement a bench-based save point in Godot 4 by gating saves with a global can_save flag, using area2d signals and a save manager to store progress.
Create a Godot 4 title screen using a 2D scene with a background, play and quit buttons, and an animated title. Implement up/down and accept input to change scenes.
Learn to implement wall slide and wall jump in Godot 4 using two raycast 2D checks for wall proximity. Use velocity tweaks and controlled input for jumps.
Implement a wall slide by adjusting vertical velocity when touching walls, flip the sprite direction, and adjust collision layers and masks for ground and walls.
Fix wall slide movement with wall checks and a dedicated wall speed, and update the title screen with a sprite and the renamed cursed tower for the course.
Create a Godot 4 project, import pixel art, and build a 2D player with directional idle and walk animations, collisions, and movement scripting.
Learn to drive character animations in Godot 4 by mapping input movement to directional and idle animations, updating via a function, and preparing for swell animation and a state machine.
Set up the sword collision shape in Godot 4 by keyframing enable/disable with the swell animation, align the collision area, copy tracks, and map input to trigger the animation.
Create a finite state machine in Godot 4 by defining current_state and a player_state enum with move and swelled, using a match statement in _physics_process(delta) to drive transitions.
Create a crate in Godot 4 using a static body 2D and a rectangle collision shape; connect area enter to destroy the crate on sword slash, and set collision layers.
Discover how to create a background in Godot 4 using a tile map, atlas, and auto tile terrain across layers such as ground and flowers, with painting and erasing tools.
Create an animated tile map in Godot 4 by adding an animated plant and water tiles, configuring frame timings, and painting them on separate layers for easy management.
Learn to set up an animation tree in Godot 4, connect an animation player, and build a state machine with a 2d blend space to drive idle and directional animations.
Learn to drive Godot 4 animation trees from code by accessing the animation tree and state, setting blend parameters, and triggering idle, walk, and work animations based on player input.
Make a camera that follows the player in Godot 4 and stops at tile map edges. Export the tile map, compute world size, and set the right and bottom limits.
Create a house in Godot 4 with a static body 2D, region-cropped sprite, and area 2D detector; adjust the sprite alpha on player enter and reset on exit.
Create a collectible coin in Godot 4 by adding an area 2D with circle collision, a sprite, and an animation; script a pickup that plays the animation and disables collision.
Learn how to loot coins from a crate by preloading a coin scene, instantiating it at the crate's global position, and adding it to the main scene with get_tree().get_root().add_child.
Create trees as static bodies with sprite and collision shapes, organize them under a trees node, enable Y sort to display them neatly, and spawn variations to populate the scene.
Learn to build a gui in Godot 4 by creating coin, lives, and heads ui elements, wiring a global script to track coins and display them in real-time.
Display the player's lives in the GUI with a Zelda-style heart system, using a global lives variable and a loop to position and update full or empty hearts.
Create spikes in Godot 4 by adding a sprite sheet to an Area2D with a collision shape, configure active and inactive animations, and decrement the player's lives on collision.
Create a 2D hurt shader in Godot 4, exposing color and flash strength, apply to the player, and trigger via Area2D collisions and asset groups for damage.
Implement a death state in the player state machine to restart the level when global player life reaches zero, and trigger the dead 2D blend space in the animation tree.
Learn to implement checkpoints in Godot 4 by recording the player's last position in a variable when entering a checkpoint area and restoring it on level restart via UI input.
Learn to build a static laser enemy in Godot 4, spawn lasers using raycast detection and marker 2D, animate the laser, and toggle collision masks for controlled firing.
Create a variation of the laser enemy by saving a new scene as laser enemy two, updating its sprite animation, raycast, and marker 2D to spawn lasers in two directions.
Learn to make lasers damage the player and provide visual impact when they collide, using a hitbox, signals, and an instantiated explosion scene for dynamic feedback in Godot 4.
Fix the laser enemy by removing it from its parent to correct z-order, and adjust collision layers and masks so it properly collides with the player.
Create a crawling enemy in Godot 4 by building a 2D character with sprite and collision shapes; set four directional animations and a death sequence, then use inheritance in code.
Create an enemy movement system in Godot 4 by building a separate entity movement script with a state machine (move up, down, left, right, dead) and inheritance.
Learns to implement random enemy movement in Godot 4 by updating move up/down/left/right, clamping speed, preventing diagonal drift, and using a timer-driven random direction with a simple state machine.
Configure enemy collision using layers and tilemap plots, enabling wall, floor, and ceiling detection and y-sort collision to drive direction, then implement kill logic with area enter and explosion effects.
Group the enemy hitboxes as assault and set collision layers. Test damage, enable laser firing with a raycast, and reuse the main script entity to cherry-pick actions.
Create a chest that spawns a key in Godot 4, updates the global key count, and displays it in the GUI when the chest opens.
Create an interactive door in Godot 4 that opens with a key. Toggle visibility of a B button when the player enters an area and trigger an open animation.
In this lesson we build a closing door that opens only after defeating enemies, using Godot 4, an area 2D detector, and open/close animations.
Implement a defeat all enemies door in Godot 4 using get_child_count and the enemy_defeated signal. Open the door with an animation and prevent loops with set_block_signal.
Create a Godot 4 save system by building a save manager that stores player data in json, handles save and load, and reads from the user data folder.
In this course you'll learn the basics of programming a 2D Metroidvania game similar to Hollow Knight or Celeste and a 2D RPG similar to Zelda A link to the past with lots of different mechanic like double jumping, using a sword to kill enemy and break elements, breaking platform and way much more.
I will cover in this course everything you need to know about creating a 2D game in the Godot Engine 4. This course cover all important aspects of creating a 2D game in Godot including:
Game mechanics like player movement, double jump, collectibles, wall slide, wall jump
Creating a health system inspired by Zelda with a system of heart
Enemy
Adding mechanic like a sword to slash the enemy or break crates
Scene structure and project organization
Sound effects & music
Creating a saving system in two different ways
Creating a map to display the position of your player
Learning how to use shader
This list is not exhaustive - please see the course outline for a glimpse into what you're about to learn soon.
I have made that course for beginner looking to understand the key concept of programming as well as for programmer coming from different engine (like Unity or GameMaker) that want to create a lots of different key mechanic of a game that are rarely covered in Godot 4.
What you’ll learn
2D platformer mechanics - double jumping, collectables, enemies, sword
2D RPG mechanics: system of doors to open with keys, enemy throwing projectile at us, patrolling enemy
Sounds effects, doors and switches to change levels
Godot Engine Concepts - leveraging a variety of nodes, structuring scenes, signals, and more
Creating map and a flexible saving system
Are there any course requirements or prerequisites?
Some programming knowledge are a plus, but you can start from scratch, GDscript (the langage used in Godot) is one of the easiest language for game development
Who this course is for:
Beginner
Intermediate programmers
Intermediate game developers
Beginner game developers with programming experience
Individuals who are looking to push their project over the edge by adding lots of fun game mechanics