swydev
swydev
  • 26
  • 68 349
Make Your FIRST 2D Game with Godot 4.3! | FULL Beginner Tutorial
Learn how to build a 2D platformer in Godot 4.3 from zero! In this tutorial, I'll walk you through how to make your own 2D platformer game step-by-step using Godot Game Engine!
00:00:00 Tilemap Layers and Level Design
00:13:28 Character Movement and Inputs
00:26:04 Pickups (Coins) and Autoloads
00:41:25 Enemies
00:53:37 Particles and Projectiles
01:10:11 Music and Sound Effects
01:14:26 Creating a Main Menu
01:18:44 Exporting Your Game
Links to assets used in tutorial:
Download Godot Game Engine (FREE):
godotengine.org/download/
Mossy Cavern by Maaot:
maaot.itch.io/mossy-cavern
Coins/Gems by Lared Games:
laredgames.itch.io/gems-coins-free
Music by Alkakrab:
alkakrab.itch.io/fantasy-rpg-soundtrack-music
SoundFX by Kronbits:
kronbits.itch.io/freesfx
#gamedev #godot #gamedevelopment
Переглядів: 12 327

Відео

SIMPLE 3rd Person Character Controller Godot 4 Tutorial
Переглядів 1,5 тис.2 місяці тому
Learn how to set up a 3rd person character controller in Godot 4 for your 3D game. This tutorial will guide you step-by-step through creating a smooth and responsive third-person character controller, perfect for any 3D game project using Godot 4. #gamedev #godot #godotengine #gamedevelopment
EASILY Export Mixamo Animations to Godot | Godot 4 Tutorial
Переглядів 8822 місяці тому
Here's the easiest way to get your character animations from Mixamo to Godot 4 using Blender! #gamedev #godot #godotengine #gamedevelopment #mixamo
QUICKLY Model, Rig, & Animate 3D Characters! Blender Tutorial
Переглядів 9942 місяці тому
Model, rig, and animate 3D characters at light speed! Check out this video on how to use the skin modifier in Blender with Adobe Mixamo to create rigged, animated characters quickly to use in your video games and animations. This method will work for Godot, Unity, Unreal Engine, or any other game engine you use for 3D game development! #gamedevelopment #blender #3dmodeling #mixamo #gamedev
The SECRET to Making Your Game Irresistible
Переглядів 3502 місяці тому
Have you ever wondered what makes your favorite games so addictive and engaging? Today, We'll check out some popular games and break down the key elements that make players love them and keep coming back for more and give you some ideas of mechanics you can work into your own games! 0:00 Intro 0:38 Super Mario Bros 1:12 Dark Souls 1:29 Legend of Zelda: Breath of the Wild 1:50 The Witcher 3 2:08...
MASTER 2D Movement in Godot - Everything You Need To Know
Переглядів 4 тис.2 місяці тому
In this tutorial, you’ll learn everything you need to know about basic character movement in Godot 4.3 using CharacterBody2D. This video covers essential techniques to make your characters move smoothly and responsively. 📌 What You’ll Learn: *8-Way Movement: Master multi-directional movement to give your characters the freedom to explore. *Mouse & Keyboard Control: Discover how to move and rota...
10 Godot Tips You (Probably) Didn't Know About
Переглядів 2,3 тис.2 місяці тому
Ready to level up your Godot game development skills? In this video, I’m sharing some fantastic tips and tricks to help you use Godot more effectively and build your games with ease. Stick around until the end because the last tip is an absolute game-changer! Got any tips of your own? I’d love to hear about them, so please drop them in the comments below. If you found this video helpful, don't ...
Should YOU use GET & SET Functions? | Getters and Setters in Godot 4
Переглядів 3,3 тис.3 місяці тому
In Godot, getters and setters are methods that allow you to control access to an object's properties. A getter retrieves the value of a property, while a setter updates the value. So why use getters and setters in Godot? The main reasons are encapsulation and data integrity. By using these methods, you keep your object's internal state private and only expose necessary details. This prevents un...
Add QUESTS To YOUR Game in 10 Minutes! | Godot Tutorial
Переглядів 6 тис.3 місяці тому
Quests are essential for game development, adding depth, immersion, and guiding players through their adventure. They provide a rewarding sense of achievement upon completion. In this tutorial, learn how to create a simple quest system using Godot. We'll show you step-by-step how to design engaging quests that you can easily expand and customize. Perfect for both beginners and experienced devel...
Create Water Reflections in Godot 4 | Shader Tutorial
Переглядів 3,5 тис.3 місяці тому
Create awesome water reflections for your 2d game in Godot! In this tutorial, you'll learn how to set up a shader that reflects the world above, adding a captivating touch to your indie game. Follow along for a step-by-step guide that will have you creating realistic water effects in just a few minutes. Perfect for game developers looking to elevate their visuals! Watch now to transform your ga...
Should YOU Use Godot For YOUR Game?
Переглядів 2,4 тис.3 місяці тому
Are you new to game development and curious about the Godot game engine or thinking about switching over from Unity? In this quick 5-minute overview, we’ll break down how Godot works, perfect for absolute beginners! Learn about its intuitive interface, powerful scene system, and essential tools to kickstart your game development journey. This video will simplify the basics and help you build a ...
STOP Making SLOW Games - Do THIS Instead!
Переглядів 13 тис.3 місяці тому
Curious if static typing can boost your Godot game's performance? Discover the answer in this video where we dive into the numbers and show you the results! 👉 Official Godot 4 Static Typing Documentation: docs.godotengine.org/en/stable/tutorials/scripting/gdscript/static_typing.html 0:00 Intro 0:30 Defining variables 1:57 Benchmark results 3:05 Conclusion #gamedev #godot #gamedevelopment
Make A Video Game in 30 Minutes | Quick Godot 4 Tutorial
Переглядів 2,5 тис.3 місяці тому
Learn to make the classic Breakout/Brick Breaker arcade game with procedural levels and increasing difficulty using Godot 4.3! Unlock the power of game development with Godot 4.3 by creating the timeless Breakout/Brick Breaker arcade game! In this tutorial, you'll master how to design procedural levels and implement increasing difficulty, taking your skills to the next level. Perfect for both b...
How To Dash & Double Jump - Godot 4 2D Tutorial
Переглядів 1,7 тис.3 місяці тому
Learn how to make your character dash and double jump with a particle trail in Godot 4.3! Discover how to implement dash and double jump mechanics, complete with a stunning particle trail effect. Perfect for game developers looking to enhance their characters' agility and visual flair. #gamedev #godot #gamedevelopment
EASY Checkpoints & Respawn Points - Godot 4 Tutorial
Переглядів 1,4 тис.3 місяці тому
Easily create checkpoints to respawn your player using Godot 4.3! Learn how to easily create checkpoints for player respawn in Godot 4.3! In this tutorial, we'll guide you step-by-step to set up efficient respawn points, enhancing your game's user experience. Master checkpoint systems with our simple, beginner-friendly Godot 4.3 tutorial. #gamedev #godot #gamedevelopment
QUICKEST Way To Add Portal System - Godot 4 2D Tutorial
Переглядів 2,3 тис.3 місяці тому
QUICKEST Way To Add Portal System - Godot 4 2D Tutorial
How To Create a Water Shader for Underwater Effect - Godot 4 2D Tutorial
Переглядів 3 тис.3 місяці тому
How To Create a Water Shader for Underwater Effect - Godot 4 2D Tutorial
How To Create Fire & Smoke Particle System - Godot 4 2D Tutorial
Переглядів 1,6 тис.3 місяці тому
How To Create Fire & Smoke Particle System - Godot 4 2D Tutorial
How To Export Your Game - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
Переглядів 1594 місяці тому
How To Export Your Game - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
How To Create a Menu / GUI - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
Переглядів 4924 місяці тому
How To Create a Menu / GUI - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
How To Add Music & SoundFX - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
Переглядів 2574 місяці тому
How To Add Music & SoundFX - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
How To Create Particles & Projectiles - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
Переглядів 9924 місяці тому
How To Create Particles & Projectiles - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
How To Create Enemies & Deathzones - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
Переглядів 6414 місяці тому
How To Create Enemies & Deathzones - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
How To Pickup Coins - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
Переглядів 9474 місяці тому
How To Pickup Coins - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
How To Create a Character Controller - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
Переглядів 7624 місяці тому
How To Create a Character Controller - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
How To Design a Level with Tilemap Layers - Make a 2D Platformer in Godot 4 (Beginner Tutorial)
Переглядів 1,1 тис.4 місяці тому
How To Design a Level with Tilemap Layers - Make a 2D Platformer in Godot 4 (Beginner Tutorial)

КОМЕНТАРІ

  • @thygrrr
    @thygrrr 2 дні тому

    Whats with the AAA games footage...

  • @LordAragorn1978
    @LordAragorn1978 5 днів тому

    I want to thank you for the excellent info! Your video really inspires me to learn more, as I just started studying to make games on my free time. You should create a masterclass and get students coming in! Thank you so much and I will be using all your videos from now on!

  • @1just_like_that
    @1just_like_that 8 днів тому

    Thank You sir!

  • @sprite9849
    @sprite9849 12 днів тому

    Stumbled over a goldmine :)

  • @teed-dnd
    @teed-dnd 12 днів тому

    cool!

  • @RodJSmith
    @RodJSmith 14 днів тому

    Thanks for the helpful video. I had a question - for some reason I get the coin SFX when picking up the first few bunches of coins(with the first one being loud and the 2nd group playing the sound more quietly), but after that, picking up new groups of coins does not produce any sound effects. Is the sound playing where the first group of coins was picked up and on collecting later sets I'm too far away to hear it? Can you check if your version does this as well and if so, how to fix? Thanks

  • @amineoubellil8956
    @amineoubellil8956 15 днів тому

    Where can l download the scripts ?

  • @RodJSmith
    @RodJSmith 15 днів тому

    Great video. Short and to the point. Any chance you can make a quick video about grid based movement? From chess to JRPG style games to puzzle/casual games (2048, match 3 style games) grid movement pops up a lot. Just wondering the best way to implement movement (eg WASD) but within the confines of a game grid.

  • @koldwen
    @koldwen 16 днів тому

    The main reason static typing is preferable to dynamic typing is that it makes the code more scalable and safer overall. You don't have to worry about mixing values in a variable, as it’s restricted to a single type (this is a blessing while debugging). The autocomplete also works way better this way. Even if you're working on a small project and think you might not need static typing, it’s better to use it in case you decide to continue working on that project or it becomes more complex than expected. There’s simply no good reason to choose dynamic typing over static, aside from "b-but it saves me a few seconds sometimes...". I would only choose dynamic if there's a deadline (Game Jams) and those few seconds are actually really needed, or if I'm prototyping something I know I will change.

  • @dungeonchunks2344
    @dungeonchunks2344 16 днів тому

    Thank you for your tutorials. If you ever have time for a health bar and damage from enemies for this game would be greatly appreciated, keep up with these great tutorials.

    • @bwenman1992
      @bwenman1992 10 днів тому

      I don't know if you've seen gdquest, they have a free learn to code course and part of that is focused on health bars. There's like 26 interactive lessons well worth a look, I'm on 18 atm ✌️

  • @rodolfolorote9059
    @rodolfolorote9059 16 днів тому

    You're truly one of the best Godot UA-camrs. I appreciate how your tutorials are always clear, concise, and easy to follow. Also great editing.

  • @GavinMasters
    @GavinMasters 18 днів тому

    Nice tutorial! I followed along, made my own, and learned a lot! Thank you for this, swydev! XD

  • @bard-anilsen
    @bard-anilsen 22 дні тому

    Are you sure this is for people new to Godot? You click way to fast for anyone to be able to se what you click on and you use keyboard shortcuts. People used to Godot might know what you are doing but a newbie dont and wil use a lot of time going back to see simple tings over and over.

  • @ihevdabestgaminchair
    @ihevdabestgaminchair 23 дні тому

    pls tell me how to make the 2d physics ( when you jump you fall down)

  • @craigbryan1479
    @craigbryan1479 25 днів тому

    I know the music is baked in and there's nothing I can do about it, but I really wish UA-cam would allow creators to add the music later as a post-processing effect that the viewers can turn off. It's infuriating! This looks like it might be a great tutorial but it's unwatchable (for me). It's probably just my autism but I can't hear anything at all because my brain is distracted by, and can only focus on, the awful music! Please consider not using it in any future tutorials you might make.

  • @kyraaqilla
    @kyraaqilla 25 днів тому

    I follow all your video step by step sec by sec min by min but why my "enemy" not moving left or right my prob come at this min 52:07

  • @gamingking5927
    @gamingking5927 27 днів тому

    is anyone else getting the unused parameter message that is quite annoying can you help please? Its my first game and I need assistance thank you.

  • @thevibeott7030
    @thevibeott7030 28 днів тому

    Thank you for this tutorial. I'm using Godot 4.3 and I've input everything exactly but my character won't move... I've actually tried a few different variations of the movement script and nothing works. It's getting really frustrating.

  • @seemoxhi2534
    @seemoxhi2534 28 днів тому

    RTX 4090 !!!!!!!!!????????

  • @CrepsDelic
    @CrepsDelic Місяць тому

    I just reproduced this, but the issues arise when wanting to duplicate the scene. Do you have some recommendation so that the image is duplicated as well and not only the shader?

  • @IsabellsHelpfulLessons-m1y
    @IsabellsHelpfulLessons-m1y Місяць тому

    The background music is too loud. It is too distracting for me to continue watching. I hope this feedback is helpful.

  • @gigamlbb6734
    @gigamlbb6734 Місяць тому

    Its amazing, the amount of time ive put into making this to work and still didnt manage to do it, i copy every single thing these tutorials show and its the only thing that simply doesnt work... no code errors, no crashing, just nothing happens

    • @gigamlbb6734
      @gigamlbb6734 Місяць тому

      Update, got it to work, but somehow my script is a bit different from yours If on godot for(mobile version at least) code is exactly the same as shown, however u gotta change it to body.set_global_position()

    • @wwemoments7281
      @wwemoments7281 Місяць тому

      @@gigamlbb6734 please say how to fix it

  • @GRiNDZoMBi
    @GRiNDZoMBi Місяць тому

    So I love this video, I've watched it several times and have been using it to learn. For some reason when I go to build it and follow step-by-step, I cannot get the coin section to work. I'm going to start again from scratch because I must've screwed up. Does moving things between folders like script and seeing make a difference?

  • @Funtime32324
    @Funtime32324 Місяць тому

    Hey, do you know what buttons you pressed to move that big chunk of script after highlighting it? Pls reply soon!

    • @Funtime32324
      @Funtime32324 Місяць тому

      Also: the autoload setting is just not showing up for me. I go to project settings, and autoload just isn’t there!

  • @Chris-oo4sr
    @Chris-oo4sr Місяць тому

    A bit late but at the 45:37, you used 800 px for the bottom. For some reason mine only work on 5000px after countless of trying and experimenting because everytime I set it to 800, my camera vision went to look on the background instead and not showing the map or the playercase

  • @jbn1087
    @jbn1087 Місяць тому

    How do I make the quest box?

  • @ArturoAlbero
    @ArturoAlbero Місяць тому

    Not only the performance is better, but also the autocompletion and the legibility of the code. Actually, I don't think you should use dynamic type at all, it is much more prone to error and it allows clumsier programming (which is a problem in the long run). And, as you said, it's just a ":" for the simpler and more used types. In Godot, however, the first approach was dynamic typing because GDS is based on python (a dynamic typing language). The static typing was implemented for Godot 4 (I think), that's why some documentation does not use static typing.

  • @monstercode196
    @monstercode196 Місяць тому

    What if I do this on mobile

  • @woogieboogie3889
    @woogieboogie3889 Місяць тому

    Nice!!!

  • @randomnyyStrannik
    @randomnyyStrannik Місяць тому

    Awesome tutorial, everything is clear and understandable, instant subscribe

  • @Ocdib
    @Ocdib Місяць тому

    Expot variables and unique identifiers may better than chaining get_parent functions

    • @TRT_1000
      @TRT_1000 Місяць тому

      i had an error because of that. i had to do get_node("/root/Game/CheckpointManager")

  • @Crax1415
    @Crax1415 Місяць тому

    I don't get it, why wouldn't you just call the functions directly via signals? Like _on_gold_pickup(): gold += 50 animation.play() and so on...

  • @NexusBaum
    @NexusBaum Місяць тому

    thx for the video! <3

  • @Baratinha
    @Baratinha Місяць тому

    Hi swydev, tnks for the tutorial, Im at the last section. This it's my second Godot tutorial and it's been amazing how you're organizing the files and explaining why we're using each part of code. A quick question tho, in this part ua-cam.com/video/4EhcfH_YpNg/v-deo.htmlsi=voUnGd3tkQyqLs32&t=4043 It seems that the projectiles aren't vanishing after 2sec like they're supposed to (in my machine). I triple checked the code in the video and it keeps happening here (I think maybe in the video too since I cant see projectiles past 2secs). I did the following print and it seems the code isnt calling this function correctly, but I dont have any Idea how to fix it: func _on_timer_timeout(): print("TIMEOUT") queue_free()

    • @Baratinha
      @Baratinha Місяць тому

      I just started the timer before checking the timeout and it solved: $Timer.start() $Timer.connect("timeout", _on_timer_timeout) But if there's any other more ellegant or "correct" solution please share with us. Thanks again.

  • @sugarpoyon2077
    @sugarpoyon2077 Місяць тому

    I'm trying to make a movement bases in Hyper light Drifter, but since there's no tutorials I'm kinda lost. At least this movement worked for me (using Godot 4 for Android) but now I want to add animation to the sprite based on the direction you move, I'll see how it goes

  • @ThisGuyGamesiscool
    @ThisGuyGamesiscool Місяць тому

    i copied the script to the last detail and when i run the debug test i just go through the portal. does that have to do with something wrong in my collision? ive also been looking everywhere for a solid tutorial and this is the best one i found

  • @LifeInGeneral-z6f
    @LifeInGeneral-z6f Місяць тому

    Hey Swydev, I am following your tutorial at 7:20 I found an easier way to make the top shape section without having to do the cumbersome alternate tile editing. (Although its a great skill to learn) while on TileMap if you select a tile, then click the rotate buttons on the same toolbar that the pencil is on, you can rotate the tiles as you go. This was still kind of cumbersome, but if you use the Z or X hotkeys then it goes much faster. Thank you for the awesome content :)

    • @LifeInGeneral-z6f
      @LifeInGeneral-z6f Місяць тому

      Even better, if you go to the original base tiles. You select the second tile from the top and hold shift, you can then select all tiles going down except the last one. You will then be able to have a whole piece that you can rotate with the Z or X keys and place as a big piece.

  • @najate2
    @najate2 Місяць тому

    Great video!

  • @Mythos_Musik
    @Mythos_Musik Місяць тому

    This is the latest in a couple of intro vids I have seen in the last few days but the first to cover 4.3 and the first to resize the tiles. When I resize mine like yours, my grid is WAY smaller with about 4100 squares in the space you have one. Any suggestions? I'm still super new to this and any and all constructive feedback is welcome, thanks!

  • @marz7016
    @marz7016 Місяць тому

    damn this is fantastic, thanks!

  • @8ack2Lobby
    @8ack2Lobby Місяць тому

    Magic timer wasn't working for me, So I figured it out by reading the docs. You have to check the `autostart` option in the Timer node at 59:11. Or you could manually start the timer using `$Timer.start()` at 01:02:33.

  • @Promptshot
    @Promptshot 2 місяці тому

    why is the gravity so scruffed in this tutorial but all other tutorials the gravity seems right and you dont have to use hbig values like 3000?

  • @ZebulonsPi
    @ZebulonsPi 2 місяці тому

    About half an hour in (taking a small break), and I wanted to comment on two things, that you may or may not fix in the remaining video: - you appear to have missed the 'jump' animation - the coin sprite looks really blurry. Should you have imported a different way, or set it to some type of 'point' sprite renderer (not sure of the Godot name for pixel-perfect) Otherwise, I really like what you're doing here!

  • @Lersday
    @Lersday 2 місяці тому

    When I hit xray mode at around 4:00, mine just shows me the vertices I created, not the entire mesh around the character. Did I miss a step, it doesnt seem like you talked about that. And when I select it, it only selects the vertices we created, not the entire head and P doesnt do what you suggest which makes me think youve changed the keybinds (Blender 4.0 and 4.2). Aside from that, you assume a lot of people know how to do things like select as if its just holding left click when it isnt. The tutorial is great but there are a ton of pieces missing. How come when you get to that part your cube only has a subdivision and not the skin and mirror we added before?

  • @Uhfgood
    @Uhfgood 2 місяці тому

    Well imagine my confusion coming from a Pascal background where := means something entirely different :-) -- Honestly I don't know why dynamic typing is a thing anyways. As you showed not only is it slower, but you might be more prone to errors if you're just making types anyways. I understand, for instance, if you're using an integer for a state machine, you might want to make it more explicit by later changing it to a string, however changing a variable definition to use a different type is not really that hard, and even in here it's almost too easy. The only thing is I might would recommend against the := because you may forget, and in some cases not even remember that you made it a static type. Might be a better deal to just do it long hand var myVar : string = "hello"

    • @vonbluhm7201
      @vonbluhm7201 2 місяці тому

      Pascal is one of those languages that feels quite strongly about you defining variable types in advance, lest it won't compile your code at all.

    • @Uhfgood
      @Uhfgood 2 місяці тому

      @@vonbluhm7201 - Partly why I like it.

  • @Exeetan
    @Exeetan 2 місяці тому

    hi swydev, nice tutorial but unfortunately I'm stuck at one point, I can't add the death zone because when I add this code: func gameOver(): get_tree().reload_current_scene() func _on_death_zone_body_entered(body): gameOver() when I start the ball is still and in the debuger they start sending me messages and the messages say this: THIS IS THE FIRST And 0:00:01:0366 Ball.gd:23 @ gameOver(): This function can't be used during the in/out signal. <C++ Error> Condition "locked" is true. <C++ Source> scene/2d/area_2d.cpp:328 @ _clear_monitoring() <Stack Trace> Ball.gd:23 @ gameOver() Ball.gd:26 @ _on_death_zone_body_entered() THIS IS THE SECOND And 0:00:01:0366 Ball.gd:23 @ gameOver(): Removing a CollisionObject node during a physics callback is not allowed and will cause undesired behavior. Remove with call_deferred() instead. <C++ Source> scene/2d/collision_object_2d.cpp:98 @ _notification() <Stack Trace> Ball.gd:23 @ gameOver() Ball.gd:26 @ _on_death_zone_body_entered() how do I fix?

  • @caepncrunch3741
    @caepncrunch3741 2 місяці тому

    Great videos so far, love to watch it, hope you bring much more of it. I like this character and level asset, where can I buy it?

    • @swydev
      @swydev 2 місяці тому

      thanks for watching! the portal sprite link is in the description. the character and level sprites I purchased from the unity asset store.

    • @caepncrunch3741
      @caepncrunch3741 2 місяці тому

      @@swydev Thank you for the Info.

  • @AppMaker728
    @AppMaker728 2 місяці тому

    Godot yeah heck yeah I started back making games again because of Godot I quit using Unity

    • @swydev
      @swydev 2 місяці тому

      Let’s go!

  • @iTzMeLaur
    @iTzMeLaur 2 місяці тому

    Great tutorial! I managed to make to make everything until the coding of the enemies. Very easy to read and understand! The only problems I had were about the version gap (4.2.2 here and you had 4.3) and with the coding of respawning of the player. I somehow managed to fix the problems I had, but overall good video.

    • @swydev
      @swydev 2 місяці тому

      Yeah godot updates come quick! There are already some updates to 4.3 since I recorded this lol thanks for watching!

  • @Eragoth186
    @Eragoth186 2 місяці тому

    Quality channel, glad I found you!

    • @swydev
      @swydev 2 місяці тому

      Thanks for watching!