Godot 4: Build & Launch Full 2D Roguelike Game
From first line of code to finished 2D game. Master Godot, GDScript, and essential game dev patterns.
What is Godot?
Godot is a powerful, open-source cross-platform game engine with a user-friendly editor available for Windows, macOS, and Linux. It supports seamless development for various platforms, including mobile, desktop, consoles, and web, making it a popular choice for both indie and professional developers.
What Will You Build?
Embark on an immersive journey by building a captivating 2D survival game from scratch: "Unknown Adventure." This course will teach you essential Godot skills, from core engine concepts to creating robust, reusable systems.
Project: Unknown Adventure
You will learn how to design and develop an entire survival game where the player must battle increasingly challenging monsters, each possessing unique abilities, and strive to survive as long as possible.
Core Skills and Systems You'll Master
Basics & Tilemaps
Get started with Godot's interface, set up your project, and master the creation of 2D tile-based environments using Godot's powerful Tilemap system.
Nodes & Scenes
Understand Godot's foundational architecture, including nodes, scenes, and instancing, for building organized and scalable projects.
GDScript Fundamentals
Learn GDScript, Godot's dedicated scripting language, to implement all gameplay logic, systems, and interactive features.
Modular Ability System
Create a flexible, modular ability system that allows for easy creation and management of new abilities for both players and enemies. The system is designed for reusability and expandability.
Dynamic Enemy Spawning
Develop an adaptive enemy spawning system so every playthrough delivers fresh challenges and escalating difficulty.
Real-Time UI for Game Stats
Build an intuitive user interface that displays player health, score, and other crucial stats, updated dynamically throughout the game session.
Comprehensive Damage & Health System
Implement balanced and scalable health management for both the player and various enemy types, including damage calculation and effects.
Start/Options Menu
Design a polished menu system for starting new games, adjusting settings, and selecting your protagonist or game parameters.
Score Screen & Replay Functionality
Set up an engaging score/achievement screen at the end of each run, along with a seamless restart function to encourage replayability.
Emphasis on Reusability
Focus on developing reusable scripts, nodes, and systems, empowering you to efficiently build future Godot games.
Main Goal
The primary goal of this course is to equip you with the knowledge and practical skills to build reusable, modular systems in Godot. You will gain a deep understanding of how to design scalable, flexible, and efficient components that streamline game development for a wide range of game genres and projects.
By the end of this course, you won't just have completed your own 2D survival game—you'll have laid the foundation for future independent game development with Godot.
Anyone with minimal programming knowledge.
Preview
Heads Up: Fixing Errors
Init Project
Scene
Camera
Add player sprites
GD Script
Change player position
Get movement input
Custom inputs and normalize
Follow Camera
Flip Animated Sprite
Run animation
Tilemaps
Tilemaps nearest texture
Ability Controller
Handle key press down
Create ability action
Get ability by idx
Ability Components
Spawn object ability component
Slash Effect Scene
Add effect in the tree
Entity
Spawn node as child
Spawn offset
Ability Manifest
New melee sprite
Turn to mouse position
Cleanup slash effect
Alternate slash
Add weapon to player
Mirror weapon position
Ability Context
Rotate weapon to mouse pos
Rotate weapon to slash origin
Alternate rotation offset
Clone weapon
Add ability cooldown
Manage cooldowns
Add Skeleton
Add player to group
Move to player loc
Velocity and speed
Flip enemy to face player
Stop distance
Animation runner
Animation wrapper
Handle high prio animations
Target player and deal damage components
Set player as target
Health
Deal damage
About shaders
Mix Colors
Blinking effect
Delay deal damage
Autoload
Display damage text
Find spawn position for text
Tweens
Better tweens
Custom font
Round the text
Push back attack
Push back reset timer
Turn to mouse
Turning cooldown
Get target component
Deal damage to Skeleton
Display damage effect on Skeleton
Get height
Get multiple targets
Handle dead _ anim
Improve attack FPS
Create debug circle
Spawn circle in mouse dir
Use of dot product
Dot Product Explanation
Ability component group
Particles 2d
Add hit particles to skeleton
Player die animation
Increase attack radius for Player
Handle game over respawn
Game over signal
Screen overlays
Pathfinding start
Get neighbour skeletons
Exclude neighbour
Separation
Fix separation
Demon enemy
Fireball manifest
Fireball ability
Projectile movement
Fireball enter area signal
Deal damage with projectile
Play cast animation
Throw ability
Target cursor and max distance
Rotate weapon and target enemies
Audio start
Audio config
Audio controller
Play sound with controller
Audio max distance
Play impact sound
Fireball hit sound
Footstep sound
Bg music
Footstep particles
Footstep effect done
Footstep particles improvement
Spellbar start
Spell button ui
Scaling mode
Spell button and spell bar scripts
Init shortcuts
Assign ability to button
Abillity icon
Event bus emit ability
Texture progress bar
Display progress visually
Manage real cooldown
Cooldown label
Keybind label
Health and energy bars
Set healthbar
Override apply damage
Signal health change
Generic progress bar
Handle energy cost
Regenerate energy
Handle energy corner cases
Add labels to progress bars
Can cast ability check
Shaking button
Energy reset
Dash ability
Ability clone self
Clone finished
Home Scene
Go to play scene
Pause button
Pause game
Pause menu
Resume game
Handle pause bg color
Back to home scene
Aggressive behavior
Enemy memory
Handle chasing and projectiles
Handle timer in pause
Enemy Spawner
Spawn around player
Audio controller rework
Bg music done
Hit particle error fix
Build the game
Final lecture
Filip Jerga
No worries! Every video has a discussion section where you can ask questions or describe your issue. I usually reply quickly to help you get back on track.
Not at all! You can jump straight to any lecture you’re interested in. Just download the right version of the project from the lecture resources to follow along.
Single Course Access
€19,99
Access to this course only.
Get started nowMonthly Membership
€19,00 / month
Cancel Anytime!
Get started nowAnnual Membership
€190,00 / year
Cancel Anytime!
Get started now