Description

Thanks for watching this tutorial video about how to make a game in Godot before the end of the day! Take this mini course and finish your first game.

Here is the github repo to the project: https://github.com/uheartbeast/make-your-first-game-mini-course/tree/main

If you are interested in taking a deeper dive into the Godot game engine you can buy my 1-bit Godot Course at this link: https://www.heartgamedev.com/1-bit-godot-course-youtube

Twitter: https://twitter.com/uheartbeast

Thank you all so much for your support!

My Notes

  • 00:00: Agenda
    • You should be able to finish this project before the end of the day.
  • 01:39: Start of tutorial: Installing Godot
  • 02:03: Creating a project
  • 03:42: Downloading assets
  • 04:43: Project settings
    • Texture Filter: Nearest (for pixel art)
    • 05:31: Viewport dimensions
    • 06:25: Scale window size to stretch it larger
      • Under “stretch > Mode > viewport”
      • See also 28:00
    • 07:08: Also look for Window width override
  • 08:02: Explanation of Nodes in Godot.
  • 9:00: Adding background sprite
  • 11:47: StaticBody2D used for objects that are not going to move, but need collision. e.g. wall
  • 14:14: Defining wall collision objects
  • 14:45: Duplicating nodes (how to make unique)
    • By default duplicated nodes will share resources, so editing one will affect the other.
    • In this example, go into the CollisionShape2D, click the Shape in the inspector and click Make Unique
  • 16:31: Defining balloon playable character
    • 18:56: How to turn Snapping on
  • 19:01: Locking nodes and their children
  • 20:33: Script for balloon object:
  • 27:57: Fix jittery movement
    • Switch Stretch Mode from viewport to canvas items
      • viewport means “snap items to pixels”
  • 28:59: Creating sawblades (RigidBody2D).
    • Damping mode: 32:53: Replace means that when it collides with another object, it will change directions without losing speed.
  • 33:29: Collision Layers
    • Edit layer names
    • 34:29: The layer is where you are and the mask is what you’re looking to.

    • My understanding:
      • The layer is like who the object will talk to. (i.e. output)
      • The mask is like who the object will listen to (i.e. input)
  • 35:47: Making the sawblades spin with AnimationPlayer
    • Rotating 90 deg. every second and looping the animation.
  • 39:39: The ballon’s hurtbox
    • There are multiple types of collisions: touches and overlaps.
  • 47:31: Telegraphing the position and direction of new saw blades that will be spawned
  • 1:04:40: Defining the spawn zone of new saw blades:
  • 1:10:00: Creating an Events singleton in autoload
  • 1:13:23: Adding a UI
  • 1:18:06: How to export a project