
download the Godot engine from the official website or Steam, unzip or install, then create a new project and configure a 2d setup compatible with all devices.
Explore the concept of nodes in Godot, create a 2d scene with a main node, and organize elements like images, sounds, and particles.
Unpack and organize assets for a Godot 4 contra project, importing backgrounds, music, sound effects, fonts, sprites, and textures, and use the editor explorer to add your first sprite.
Create and organize a level in Godot 4 by adding an empty container, using sprites with textures, inspector properties, and a camera, while understanding parent and child relationships.
Explore node hierarchies and parent and child relationships, how transforming a parent affects children, and how transforming a child leaves the parent unchanged, with a camera setup for the level.
Create a 2D camera in Godot 4, set its view area, and adjust zoom on the x and y axes to fit the workspace. Enable or switch cameras as needed.
Create and animate a two-dimensional character in Godot 4 using spritesheets, splitting textures into horizontal frames and flipping sprites, while using zero-based indexing for frames to ensure pixel-perfect textures.
Explore Godot 4 physics bodies for player movement, from static and rigid body 2D to character body 2D and area 2D, with gravity, collisions, and checkpoints.
Create a ground with a static body and a collision shape 2D; use a rectangle shape for efficiency, and configure the player's collider for movement and jumping.
Extend from character body 2D to access physics, set speed and jump velocity, apply gravity with delta time, handle left-right input, and move via move_and_slide, with on floor checks.
Use a Godot 4 animation player to build idle and run animations from sprite sheets, set keyframes and textures, loop playback, and flip the sprite for direction.
Build a state-driven animation system in Godot 4, adding jump, crouch, and aim up animations with an animation player and sprite sheets, plus ground checks and collision shapes.
Create upright, right, down, and left aiming animations in Godot 4 using an animation player and keyframes; implement idle and running state logic and per-animation collision shapes with proper offsets.
Create a swimming animation in Godot 4 with the animation player and sprite sheet, using keyframes for idle, swim, and dive, and configure collision shapes and offsets.
Create water collisions with a static ground and water tag, switch to water state on contact, and play swim animations; use separate rectangle shapes for multiple water areas.
Polish the game to streamline testing phases, fix bugs, and clean up complex conditions in player movement and animations, ensuring correct transitions between floor, water, and swim states.
Master shot action by instantiating bullets from a saved scene, spawning them at player spawn points, and firing in a 360-degree aiming direction with constant velocity in Godot 4.
Create bullet spawn points and detect the player’s facing direction to shoot in right, left, up, down, or combinations. Use a match to set bullet velocity and adjust collision masks.
Design a power up container with a sprite, rectangular collision shape, and sinusoidal motion using delta time and velocity; spawn power ups as scenes on bullet collision.
Explore creating power up bullets in Godot 4, duplicating scenes, applying multiple directions, calculating final velocity with angles using radians, sine, and cosine, and ignoring bullet collisions via groups.
Build a laser weapon in Godot 4 by duplicating a three-part bullet, customizing textures and colliders, and using a dedicated parent script to rotate bullets and sprites.
Create and randomize power up types in a container, generate sprites and bullets, and assign the corresponding bullet to the player upon collection using dynamic variable names.
Create power up machines in Godot 4 that detect player bullets in a non moving area, animate open and closed states, and eject power ups when opened.
Create a base enemy in Godot 4 that moves on platforms under gravity, turns or jumps at edges, and dies on player or bullet collision, with run and jump animations.
Handle collisions between the enemy, player, and bullets to trigger death animations and free the defeated objects, while transitioning the player to a death state.
implement player respawn using a timed one-shot timer, spawning a new player at a spawn point, and decrementing lives; trigger game over when lives reach zero.
Create a second player in Godot 4 with unique inputs and a new script, enable respawn and collision exclusion, and use a shader to differentiate visuals and manage bullet collisions.
Move the camera with players using an active zone and a dead zone, constrained by minimum and maximum x bounds and body enter signals to lerp toward a target position.
Build a three-part moving bridge in Godot 4 using static bodies, regions, and area-triggered explosions with timer-driven phases.
In Godot 4, build a turret enemy from a static body sprite that rotates to face the nearest player, fires bullets with a cooldown, and handles collisions.
Design and implement a three-part boss in Godot 4, with two cannons and a core, gravity bullets, turret enemies, explosions, and a timer-driven shooting system with collision layers.
Implement a canvas layer UI in Godot 4 to display and dynamically update player lives and scores with sprites and 2D text, adjusting visibility as lives change and points accumulate.
build the main menu in Godot 4 using a canvas UI with a black background and an arrow selector to switch two options, plus a singleton to store player count.
Add looped background music and dynamic sound effects in Godot 4 with audio stream players loading ogg and wav files, instanced sound effects, and dead zones to trigger player death.
In this course we teach how to use Godot 4 to create free video games, in a simple way and explained without unnecessary technicalities, seeking the best possible results through experience.
On this occasion, recreating the Contra game, we will learn the basic fundamentals that will allow us to design a platform game (even for 2 players), both basic and complex, understanding the fundamental characteristics to carry it out.
We also recreate the different actors from the first level of the game, as well as the scene in its entirety, including the explosion of the bridge.
Fundamentals of the Godot interface, logic and algorithms are exhibited before different aspects of platform video games, and management of the GDScript language.
With this knowledge you will be able to create the other levels and also most of the 2D platform videogames that you know.
That's why is so important to learn how to create videogames, creating a classic. Because classic and older videogames, has a lot of features and mechanics. Modern-day games are based on different mechanics from old videogames. Some games, with a simple twist to this type of mechanics, manage to become a success. Thousands have been born from this classic video game, so it is a great starting point for success.