Godot 3.5: Let's Build a 2D Platformer!: Part 25 (Keys & Doors!)

Поділитися
Вставка
  • Опубліковано 28 жов 2024

КОМЕНТАРІ • 71

  • @Grobusck
    @Grobusck Рік тому +5

    Dude you are my little brothers high school teacher! I used your videos in high school too! It’s so cool that my little brother know you and I had no idea you taught in my city!

  • @iakobs
    @iakobs Рік тому +9

    man, I'm coding doors and keys in my godot 3d game JUST NOW 😂😂😂 the timing!

  • @heartbreakandmotorjive1867
    @heartbreakandmotorjive1867 Рік тому +2

    I left one of your playlist running all night while I slept. I woke up and decided to subscribe. When I hit subscribe, it gave me an error even though the ui showed it worked. And when I hit notifications, it gave me another error. Don't worry, I restarted the UA-cam app and went back to your channel and it worked. I've never had that happen before, but I thought it was interesting after watching you script in Gadot in for hours. 😂😂😂 Great content! I started making a game in blender about 13 years ago and then life happened. After watching your simple 3d game in Gadot tutorial I'm thinking of revisiting it. You're a great teacher! Thank you for sharing your knowledge. I'm going to download Gadot and start messing around with it.

  • @mingle-h4k
    @mingle-h4k 19 днів тому +1

    I have to confess this is the easiest tutorial about godot, event it is about godot 3.5 or even earlier, for me to learn godot 4.3, it still feels so smooth. thanks colin, after watching your tutorial, I had deciced to donate some dollars to buy you a cup of coffee for your great work, but it tell me I cannot donate from my area (China Mainland),, sorry for that.
    hope you can continue to do more tutorial for godot, really you helped a lot for us

  • @veylore
    @veylore Рік тому +2

    you taught me 3d and are now teaching me how to learn godot, cant thank u enough for ur vids over the years

    • @BornCG
      @BornCG  Рік тому

      That's awesome!

  • @doogiedog48
    @doogiedog48 10 місяців тому +1

    I couldn't get the teleport line of code to work in Godot 3.5.3 where the player was assigned the new coordinates of the other door until I used this line of code
    player.position = target.global_position.
    Great tutorial Colin. This is the best tutorial out there for learning the engine.

  • @chumptree
    @chumptree Рік тому +13

    Please do a tutorial on save and load! I'm having difficulty learning it and u make things so easy to understand!

  • @Vexatious00111000
    @Vexatious00111000 Рік тому +4

    Thanks colin! I feel like I have enough experience in Godot now to make my own features and mechanics. Would love to see more tutorials though!

  • @pietraderdetective8953
    @pietraderdetective8953 Рік тому +4

    Your Godot videos are super awesome! Definitely gonna binge watch while code along.

  • @CalmProto
    @CalmProto Рік тому +5

    Entertaining and informative. Thank you.

  • @Justine-justin
    @Justine-justin Рік тому +2

    Pretty cool, makes you think of all the time it takes to make a game.

  • @antoniowagner8914
    @antoniowagner8914 Рік тому +1

    Another great video. I also wish you a great 2023.

  • @EggsToMe
    @EggsToMe Рік тому +2

    Hey! I really love your tutorials, and i want to know if you will make more 3D Godot tutorials with the new version, they helped me a lot with making my games :D

    • @BornCG
      @BornCG  Рік тому

      Stay tuned! 🤩

  • @irayala
    @irayala Рік тому +6

    interested in how to save progress in the game. are you planning a lesson on this topic?
    before that, I didn't understand the programming language in Godot at all. and he didn't know how to program. but after watching your training videos, I began to understand how it works. thank you for your work)))

    • @ThatElfNerd
      @ThatElfNerd Рік тому +1

      Progress saving is definitely something I would like to learn as well, but considering that the tutorial series is completely built on making one, singular level, I don't know if that will be covered. As it is, I had to use tutorials from others, as well as experimenting with my own code in order to not only make multiple levels, but also level selection screens, and a code that recognizes individual worlds and levels.
      That's why it's always good to look up tutorials from other sources, and also check Godot forums. Sometimes you find things from one source that another source might not have talked about.

    • @irayala
      @irayala Рік тому +1

      @@ThatElfNerd , yes, I also watch other authors, but there is so little detail and clear on UA-cam. I figured out a little about saving, I can save an array with different data and now I need to apply this knowledge to a game with several levels. here's the catch. but nothing, I think there are a lot of new and interesting things ahead))

  • @rendcycle
    @rendcycle Рік тому +2

    Hoping you will release tutorials for Godot 4. :-)

  • @hr78gamedev
    @hr78gamedev Рік тому +4

    Hi, First of all THANKS for your excellent tutorials.
    I hope this is not an old questions, but could you do a mini tutorial on converting the project of this tutorials serie for Godot 4 , when it will be released as Stable?

  • @Nebular_Games1234
    @Nebular_Games1234 Рік тому +5

    Great tutorials, can you make one about load and save. If you could that would be amazing!

  • @basiladeeb
    @basiladeeb Рік тому +1

    I have a question. How did you learn to do all of this? Is there a book maybe or a YT channel that helped you? And when you are stuck, what do you do?

    • @BornCG
      @BornCG  Рік тому +1

      I'm a high-school computer Science teacher and was a computer summer camp manager for years, so having a background in programming fundamentals has definitely helped, as all languages share many of the same concepts, but Godot's official documentation, online forums and tutorials and videos are all good places to pull from.

    • @basiladeeb
      @basiladeeb Рік тому

      @@BornCG Thank you for sharing what you know with the rest of us.

  • @zixuntan0417
    @zixuntan0417 Рік тому +1

    Thanks so much man!

  • @muajin
    @muajin Рік тому

    Hello! I tried to bring up the project in godot 4 but getting an error with velocity. Any way to fix that? net says to delete the error line, but can't identity which one that is.

  • @muhammedalfaya5258
    @muhammedalfaya5258 Рік тому +1

    ur a legend

  • @andrejmaimakov8438
    @andrejmaimakov8438 Рік тому +4

    oh nice a Video again, one thing, could you pleas make a second level and show us how we add everyting from the first one, i tried it but it all ended up a faliur and so im asking you to explain it in a Video, it would be verry halpfull, btw. i love your Videos and like how you are explaining it. 😀

  • @QqQq-bf8bd
    @QqQq-bf8bd Рік тому +1

    i made 3d game in godot 3.5.1 and export apk, but not working in mobile. splash screen open and app has been stopped, 2d game working properly but 3d game not working in mobile (snapdragon, adreno) ,i will try single cube and camera but same result. please help what i do

  • @ericwood1185
    @ericwood1185 Рік тому

    Hello Colin I finally finished all your tutorials and now I'm trying to add levels 2 an more how do I have everything carry over to my new scenes ? Please do a video tutorial if it's not easy to do ,thanks Eric.

  • @hakimsmaili3838
    @hakimsmaili3838 Рік тому +1

    Can you give us an explanation of how to save the data, for example, the status of the player, the number of coins collected, or anything else

  • @iJokeOfficial
    @iJokeOfficial Рік тому

    please , a multiplayer game tutorial ?!.

  • @ireneahlberg7491
    @ireneahlberg7491 Рік тому +1

    Great tutorial as always! But ... at about 1:33:00, when you add "player.set_collision_layer_bit(0,true)" in teleportState 3, I get hurt by an enemy being outside the door. Seems logical since I am vulnerable the moment I get visible. Moving the line to teleportState 4, gave the enemy time to move on and worked perfectly. I hope it's not cause I missed something in the code.

  • @rremnar
    @rremnar Рік тому +1

    This is just my opinion; but in your key code, how is it that you can assign a node to a node path? They are 2 different types. Since you are originally type casting the variable to a node path, it shouldn't be possible to assign it a reference to an actual node. What I am guessing is that the node path is a memory reference itself, thus allowing your little hack to be possible. IMO, that is just bad. Wouldn't it be better to move your HUD scene into the autoload in project settings, thus making it accessible every where? Though if you do change your HUD, scene to scene, you'd have to rename it. Or , if you don't want to do that, just create an additional variable to hold the node reference. Assigning a object reference to a variable of the same name, also seems bad. Just because you can get away with it in GDScript doesn't mean you should put bad concepts into practice. I bet you won't be able to do this in other languages like C# or C++.
    export(NodePath) var HudPath
    onready var HudNode = get_node(HudPath)

    • @caiofernando
      @caiofernando Рік тому +1

      As I understand, the program doesn't assign a node path type to the variable, it assigns the node path type to the exported inspector field. What he does is possible because the variable hud is still dynamic despite the type assigned to the export field. You can check this by assigning a NodePath type to the hud variable itself. It will return an error if you do so. You can't do what he did in C# or C++ because they are statically typing languages, but GDScript is conceived as a dynamically typed language by nature, so this is not a hack, it's a feature of GDScript.

  • @ThatElfNerd
    @ThatElfNerd Рік тому

    I have to ask: Is there going to be a tutorial in the future on how to make hint blocks or hint zones where when a player interacts with it, it'll give them information on their next step? I've had people play my game who didn't know that wall jumping was a feature in my game until I told them, as they had gotten stuck on a level where you HAVE to wall jump in order to proceed. I imagine a similar issue could happen if I decide to introduce keys in my game, and the players make it to the door, not realizing that they were supposed to look for a key.

    • @BornCG
      @BornCG  Рік тому +2

      Godot 4 is coming up quick, so I am planning to start a new tutorial mini series project for that.
      A hint could pop up if you enter an area.. it could make a label or perhaps a secondary HUD with a label become visible, and then when you leave leave the area it could become invisible again. From the knowledge you've gained from the existing tutorials, I'm sure you can do it! 🙂👍

  • @jameswong9756
    @jameswong9756 Рік тому +1

    Strange. The Door can't detect the Key, Steve is carrying

  • @richardodell3062
    @richardodell3062 Рік тому +1

    not sure why but with Godot 3.5.1 var player creates errors but if you say var player = Vector2() then it works

  • @shalanijayasuriya1873
    @shalanijayasuriya1873 10 місяців тому +1

    Sir my when I created the door my character is behind the door when playing the game, how do i make the player appear in front of the door ?

    • @BornCG
      @BornCG  10 місяців тому

      In your node stack, put the Steve player node below the doors. Nodes lower down in the stack draw later, therefore on top.

    • @shalanijayasuriya1873
      @shalanijayasuriya1873 10 місяців тому

      Thank you so much very helpful video 🙏

  • @EmiliaKaida
    @EmiliaKaida Рік тому

    Are you using a custom theme/icon set on your Windows 11 ?

    • @BornCG
      @BornCG  Рік тому

      Nope, just Windows 11.

  • @fatimaanimation
    @fatimaanimation Рік тому

    I did every thing the same and checked them many times even repeated them but still cant pass to the other door, sometimes steve appear from somewhere else randomly thet even not related to the door, sometimes he open the door and go to the other door but steve cant 'appear' literally he froze and disappeared, cant move, there is just shooting fire nothing else, I don't know what's wrong with it, but I'm sure 100% that I did everything the same

  • @jameswong9756
    @jameswong9756 Рік тому

    The Key did not disappear from the HUD after it was used to unlock the Door.

  • @LandBeyond
    @LandBeyond Рік тому

    You did all that stuff for the Key to make the HUD inside the key not being forced to a certain HUD, but then forced the texture of the key from "Key" and not have the "hud" manage in case the hud is different. Should have just called a function inside "Hud" with a bool. So it could manager internal variables and what texture, instead of making your "Key" know all this and if you change your "Hud" you have to have a specific variable and texture. Your hud couldn't alter the key texture.

  • @Mr-Moka
    @Mr-Moka Рік тому

    broo how to add video in intro game

  • @BloohGameDev
    @BloohGameDev Рік тому

    Hey sir, can you make a toturail on how to Pass Data Between Scenes in Godot

    • @BornCG
      @BornCG  Рік тому +3

      Check out part 22 of this series on adding lives & hearts. In that tutorial I talk about singletons (auto load), which is what you’re looking for. 🙂👊👍

    • @BloohGameDev
      @BloohGameDev Рік тому +1

      @@BornCG Thanks for the response:) The tutorial help me a lot! THANK YOU😘😘

  • @jameswong9756
    @jameswong9756 Рік тому

    Sorry, the Near Door's collision shape doesn't detect the Key

    • @jameswong9756
      @jameswong9756 Рік тому

      Looks like something wrong with my Godot software, maybe it was affected by a disk cleanup the day before. But after reinstalling this tutorial works fine.

  • @giantfrogstudios839
    @giantfrogstudios839 Рік тому

    Why did this series suddenly stop?

    • @BornCG
      @BornCG  Рік тому

      As I talked about in this video, the keys and doors mechanism was the last promised feature from the outset of this tutorial series. Also: Godot 4 was released, which brings a lot of changes. It's time to move on to the next project! (coming soon-ish)

    • @MikeMcRoberts
      @MikeMcRoberts Рік тому

      @@BornCG Cool!

  • @truenincillo805
    @truenincillo805 8 місяців тому

    Please swim player in tilemap water in area2d (2d platform game)

  • @Dima_Bizonn
    @Dima_Bizonn Рік тому

    dobryy vecher kto znayet kak sdelat' godot pereklyucheniye urovnya

  • @Djien3jdn3jehuen
    @Djien3jdn3jehuen Рік тому

    How to export it into the apk bro

  • @ericwood1185
    @ericwood1185 Рік тому

    Sorry again, but please help, @export(NodePath) @onready var hud = get_node(hud) wont work in godot 4 i tried everything
    the error is Annotation "@export" requires at most 0 arguments, but 1 were given.

    • @samuraihoedown4761
      @samuraihoedown4761 11 місяців тому +1

      In Godot 4 I was never able to get this to work exactly as described in the video (I got the export to work, but never the key texture switching from it). I setup the export like this:
      @export_node_path("CanvasLayer") var hud
      @onready var _hud = get_node(hud)
      Since I couldn't get the texture switching to work via the export node path, I removed the line that should have done that under func _onKey_body_entered(body):
      _hud.keytexture = load("res://ASSETS/objects/hudKey_yellow.png")
      Instead I created a new function on the HUD to do the switching there based on the hasKey variable:
      func load_key():
      if hasKey:
      $Panel/Key.texture = load("res://ASSETS/objects/hudKey_yellow.png")
      else:
      $Panel/Key.texture = load("res://ASSETS/objects/hudKey_yellow_empty.png")
      I then have load_key() being checked here:
      func _physics_process(delta):
      load_key()
      On the Key, as part of func _on_Key_body_entered(body):, I have this line to update hasKey variable on the HUD:
      _hud.hasKey = true

    • @ericwood1185
      @ericwood1185 11 місяців тому +1

      @@samuraihoedown4761 I ended up getting Godot 3.5 an redoing the whole tutorial series, Every thing works now

  • @richardodell3062
    @richardodell3062 Рік тому

    small thing line player.get_node("Camera2d).rest_smoothing no matter how i type it it crashes my game

  • @richardodell3062
    @richardodell3062 Рік тому

    line player.set_collison_layers_bit(0, fasle) is also crashing my game

    • @ireneahlberg7491
      @ireneahlberg7491 Рік тому

      same here it's important to get everything spelled right: It's false not fasle. I hope that is it and the spelling error is just in your comment, then I'd feel rude :)

  • @3yadacom
    @3yadacom Рік тому

    are we going to see something like chatgpt in Blender soon ?