Changelog

Changelog

This document details all the new features, improvements, and fixes we made with each release of learn to code from zero.

Learn to Code From Zero 1.2.1

Released on September 25, 2022

Content changes

  • Make some images smaller in debugger series
  • Clarify explanation in debugger series lesson 4
  • Re-capture images in debugger lesson 6 for a sharper look

Bug fixes

  • Fix practices dock not showing on startup
  • Restore error on call to show in debugger project

Learn to Code From Zero 1.2.0

Released on September 24, 2022

This release brings a completely new chapter dedicated to bug fixing. Through 6 lessons, it will teach about the debugger, an essential tool in your programming arsenal.

Based on your feedback, we also added new explanations and images to existing chapters. And as usual, we addressed all the bugs you reported, but their count and severity are getting lower with the latest releases.

Content changes

  • Add new chapter dedicated to bug fixing with the debugger
  • Add hints to last 9 practices (#292)
  • Update simple dialog box practice instructions
  • Fix typo in blue noise exercise
  • Fix punctuation in gems counting practice
  • Improve phrasing in Adding the menu to the obstacle course
  • Add mac hotkeys alternatives in lessons
  • Add page about the differences between Mac and PC hotkeys
  • Add extra illustration and explanation to top-down character sprite frame lookup
  • Break down variable assignment in slideshow series (#300)
  • Add new dictionary cheatsheet to chapter 6 (#296)
  • Remove unused floor normal on bat scripts in side scroller series
  • Rename variables to make them clearer and more different in slideshow series
  • Simplify speed boost code in obstacle course series
  • Add use and explanation of is_equal_approx() in speed boost lesson
  • Add errata to dialogue box theme video about tab position
  • Add explanation and link on security in resource vs JSON guide
  • Clarify that checkmarks are preserved in updating guide
  • Write bonus guide about animation easings in Godot
  • Add pictures showing how to add theme to slideshow

Improvements

  • Improve look of the demos browser in complete projects

Bug fixes

  • Prevent adding more skill points than allowed in character stats demo
  • Fix character avoiding slow down when using speed boost along wall in obstacle course series
  • Fix signal error when time depletes in obstacle course part 3
  • Ensure checkmark doesn’t always turn green in slowing turret practice
  • Fix dialogue box complete demo appearing truncated in completed project

Learn to Code From Zero 1.1.4

Released on August 26, 2022

Content changes

  • Suggest using AnimationPlayer.advance() in obstacle course series
  • Rewrite fortune cookie practice instructions
  • Break down how the add_line() function runs again in scoreboard series
  • Rename line to row in scoreboard series to distinguish from lines of code
  • Add more detailed explanations in listing names lesson introduction
  • Improve explanation of onready variable in scoreboard series
  • Improve phrasing in scoreboard name form lesson
  • Fix typo in object types and classes lesson
  • Fix typo in path of sorcerers challenge
  • Fix typo in Creating nodes and scene instances
  • Rename hurtbox into hitbox in Coding the first mob
  • Remake tests in picking up the gems practice to give precise feedback on what to change

Improvements

  • Show and hide the final game panel in the end game practice
  • Make increasing the gem counter practice more flexible

Bug fixes

  • Fix error making test always fail in blue noise practice
  • Correct code incorrectly passing check in marbles practice

Learn to Code From Zero 1.1.3

Released on August 15, 2022

Content changes

  • Correct discrepancy in practice name in tower defense series
  • Allow passing an argument to the start() function in Adding timer practice
  • Improve and clarify explanation of the queue_free() function
  • Correct typo in Pressure plate doors lesson
  • Add bonus guide on setting up a split screen co-op view
  • Properly override movement in rockets in tower defense series
  • Make the explanations of node and scene more concrete in script and scene instancing guide (#255)
  • Remake the bonus direction vector video with more explanations
  • Simplify bomb behavior in final project and lessons
  • Update required Godot version in how to install godot
  • Make all body_entered signal type hints Node for consistency
  • Add #… comments in coding character stats lesson
  • Fix typo in creating a disappearing platform practice

Bug fixes

  • Ensure visibility test is reliable in EndGame practice
  • Fix timer only detected as first child in adding timer practice
  • Fix speed going back up not properly detected in tower defense practice
  • Make steering practice tests more robust in first chapter
  • Better check if offsets are random in blue noise practice
  • Fix shader error introduced by Godot 3.5

Learn to Code From Zero 1.1.2

Released on July 28, 2022

Content changes

  • Add more information to description of The slowing turret practice
  • Fix typo in practice code tag
  • Fix typo in Listening to player input practice task list
  • Fix typo in Flipping sprites practice hints
  • Update download instructions
  • Explain the difference between relative and absolute paths
  • Add missing image in node and scene instance guide
  • Break down why we must set variables in setters in obstacle course

Improvements

  • Reduce minimum font size in GDQuest Practices dock
  • Make GDQuest Practices text size relative to editor font size setting
  • Reduce margins and separation for small displays
  • Scale Practices dock margins and vertical spacing with editor scale

Bug fixes

  • Attempt to fix a rare edge case when running the project with Run instead of Edit
  • Require two calls to randf() in random positions practice
  • Remove need for a specific file name in Fortune cookie practice
  • Bump user profile version number to force new practices to register
  • Update link to how to download and run Godot on website

Learn to Code From Zero 1.1.1

Released on July 12, 2022

Content changes

  • Improve phrasing in character stats lesson
  • Fix typo in Winning or losing the race
  • Clarify last section in Loading existing score lesson in scoreboard series
  • Remove duplicate condition in UICharacterStats.gd
  • Remove video playback issue note in Making the ship boost
  • Add intro guide on how to update to newer versions

Bug fixes

  • Correct tests in Adding keyboard input practice
  • Add missing start project for character stats lesson
  • Prevent error when there’s no simulated inputs in practices that use virtual input
  • Make boost input check more reliable in Adding boost timer practice
  • Ensure images load in physics cheatsheet
  • Add way to force Input.is_action_just_pressed() in _process()

Learn to Code From Zero 1.1.0

Released on July 9, 2022

New features

  • Redesign the practices dock
  • Add support for images in practices dock

Content changes

  • Add interactive demo about physics layers and masks
  • Add a video introduction to the tower defense series
  • Add a video on how to complete the first practice step-by-step
  • Add physics cheat sheet to obstacle course part 2
  • Replace hand pointers in the first five chapters’ videos
  • Review and improve the obstacle course part 3 series
  • Update Listening to player input practice to use Input.get_axis()
  • Remove obsolete mention about practice in Adding keyboard input
  • Modify turret lessons to properly override rotation behavior
  • Add extra hint to Adding a double jump practice to make velocity.y negative
  • Remove extra code lines from listing in Adding the speed boost pickup
  • Remove missing image in Exporting your game
  • Remove outdated code style rule from Our coding style guide
  • Rename area variable to something clearer in Obstacle course part 2
  • Correct instructions to change line color in Pressure plate doors
  • Add marble sprite to Marbles practice, update practice text
  • Add illustration of rock offsets in random rock series
  • Make a nicer inheritance tree image in character stats lesson
  • Remove two unused script files in tower defense series
  • Improve error messages and tests in pickup up gems practice (#231)
  • Add bonus video showcasing the collision layers and masks demo
  • Add instructions to double-check RESET animation in disappearing platform lesson
  • Add hints to practices
  • Rewrite many practices’ descriptions and tasks for the new dock
  • Add explicit instructions to open projects and scenes in every chapter
  • Add extra instructions to unzip and set up Godot projects in To Space and Beyond!
  • Add instructions to unzip project in last chapter
  • Add explanations on how to follow lessons in To Space and Beyond!
  • Add new guide about nodes and scene instances to scoreboard series
  • Add obstacle course part 3 practices to lessons
  • Rename first project to to space and beyond in practices dock

Bug fixes

  • Allow optional floats in eight-way movement practice
  • Rewrite input testing code for double jump in Adding double jump practice
  • Restore correct collision layers for slow down area in obstacle course series
  • Prevent hard-coded vector from completing random rocks practice
  • Prevent error when first running the UICustomizeCharacter scene

Learn to Code From Zero 1.0.3

Released on June 21, 2022

Content changes

  • Update completed demo lists in main menu, sort manually instead of by name
  • Teach Input.get_axis() in To space and beyond!
  • Update eight way movement series to explain Input.get_vector()
  • Remove errata in spaceship series after series remake
  • Change formatting of is_ready_to_attack() in last project, remove backslashes
  • Add instructions to create a TestRoom script in last chapter
  • Explain how to color the pressure plate and door connecting line
  • Update collision layers and masks in obstacle course part 2
  • Mention that practices don’t have to be completed in the intro guide
  • Replace “rewrite” with “override” in Coding a turret that shoots multiple enemies
  • Improve wording in introduction series
  • Remove required actions instructions for practices as we now simulate them
  • Improve wording in To space and beyond!
  • Add text explanation on how to toggle grid snapping in assemble game series
  • Add two questions and answers in Controlling the ship with the keyboard
  • Link to input action guide from other lesson in To space and beyond!
  • Add explanation of why we use drag_factor in Steering the ship smoothly
  • Add explicit script name in second part of Coding character stats
  • Update movement dead zone and add note to top-down movement series

Improvements

  • Limit the orbit distance of mobs

Bug fixes

  • Remove line causing error in Select random item practice
  • Fix error about missing nodes when first opening Saving practice
  • Fix error about missing nodes when first opening Equipping items practice
  • Fix several minor errors in complete demo projects
  • Add missing tests in equipment menu practice
  • Ensure player can’t avoid slow-down in obstacle course part 2
  • Prevent missing settings error in customization menu in obstacle course part 3
  • Make files in each part of the obstacle course series standalone

Learn to Code From Zero 1.0.2

Released on June 12, 2022

Content changes

  • Add English video subtitles for chapters 9 to 14.
  • Make the explanation more explicit for the inventory grid practice
  • Improve phrasing throughout the last chapter
  • Allow calling set_text() before adding TodoItem in TodoList practice
  • Add support for nesting instance() call in add_child() in InventoryTests practice
  • Remove duplicate instruction to add setter to settings in Obstacle course
  • Move function call from practice tests to practice in gems practice
  • Change the side scroller jumping pad practice to prevent 3 jumps
  • Rewrite double jump tests to simulate jumps double-jump practice

Bug fixes

  • Remove solution code from FlipSprite practice
  • Remove main scene in practices project
  • Remove line of code accessing nonexistent property in Obstacle course part 3
  • Fix practices with image files breaking when reverting them through dock

Learn to Code From Zero 1.0.1

Released on June 3, 2022

Content changes

  • Remove duplicate explanation in Coding the push mechanic
  • Update practice image in dialogue tree series
  • Remove buttons from picture in dialogue tree series
  • Explicitly initialize variable with null in Homing rocket lesson
  • Fix typo in Shooting homing rockets
  • Update roadmap following 1.0 release
  • Add missing pictures in course conclusion
  • Fix formatting in Creating the main scene

Bug fixes

  • Merge obstacle course part 3 practice files and register them in dock
  • Allow bat skin to rest when touching the ceiling without floor checks
  • Fix typo in obstacle course part 2 code
  • Attempt to fix errors showing up due to testing framework
  • Normalize direction vectors in three practices

Learn to Code From Zero 1.0.0

Released on May 31, 2022

Content changes

  • Add final project with 20 lessons and two new Godot projects
  • Add two more lessons to obstacle course part 3
  • Add four practices to obstacle course part 3
  • Improve phrasing in obstacle course part 3
  • Improve phrasing in side-scroller series
  • Remove unnecessary line of code in disappearing platform lesson
  • Correct typo in Creating a bat that chases the mouse
  • Improve phrasing in explanation of #… in Steering the ship smoothly
  • Make script names in random rock series match names used in lessons
  • Remove comments at the top of final code listings in random rock series
  • Link to bonus video in Controling the ship with the keyboard
  • Remove type hints from onready vars in second part of the obstacle course
  • Add explanation about rigid body center of mass to side-scroller series
  • Correct the ready question explanation in Listing names in the scoreboard
  • Add instruction to enable bbcode in dialogue tree series
  • Mention where to save the slideshow scene in the first lesson
  • Correct last sentence of Making the robot die lesson
  • Improve phrasing in our recommended editor settings

Improvements

  • Simulate inputs in practices instead of requiring manual input
  • Change project options and texture filtering to avoid gaps in tile maps

Bug fixes

  • Make provided dialog boxes fonts use a size of 26 to match lesson
  • Make text animation speed consistent in DialogueTree series, update lesson
  • Move bumping into walls practice to match much lesson order
  • Store initial collision mask in Animating and coding the ghost effect
  • Remove solution from the double jump practice code
  • Fourth attempt to address unreliable checks in practices with input actions
  • Add type for a variable that can’t use inferred type in dialogue tree series
  • Allow using int values with the thrusters in godot-practices project
  • Remove visual gaps in the tower defense series’ tilemap
  • Correct broken dependencies in rock scenes in blue noise demos
  • Correct node path in obstacle course part 2 starter project

Learn to Code From Zero 0.13.0

Released on May 22, 2022

Content changes

  • Add first 6 lessons of the obstacle course series, part 3.

Learn to Code From Zero 0.12.0

Released on May 20, 2022

Content changes

  • Add two more lessons to the platformer series
  • Make the jump pad practice match the code we wrote in the series more closely
  • Correct typo in Adding the speed boost pickup
  • Make timer signal match previous lesson in Adding the speed boost pickup
  • Fix typo in Coding the robot’s base movement

Bug fixes

  • Correct double jump practice completion not getting saved
  • Fix vector display in marbles practice and save on completion

Learn to Code From Zero 0.11.0

Released on May 19, 2022

  • Release the first 11 lessons in the platformer series along with 3 practices
  • Improve the phrasing and fix typos in the obstacle course part two

Bug fixes

  • Prevent solving Changing sprite frame practice by adding 1 to the frame
  • Prevent passing flipping sprites practice by setting flip properties to true
  • Add missing finish screen and test to EndGame practice
  • Allow calling set_text() before or after adding child in Poem practice

Learn to Code From Zero 0.10.0

Released on May 16, 2022

Content changes

  • Add 6 new video lessons to the obstacle course part 2 series
  • Add extra instruction in PartyMembersList practice
  • Explain adding fonts to rich text label in dialogue tree series
  • Mention that we keep textures for 2 slides in slideshow series
  • Mention to watch videos before reading the following text in intro
  • Changed confusing dialogue system intro title and phrasing
  • Update obstacle course level layout in part 2 series

Bug fixes

  • Remove dashed lines drawing on every circle collision shape

Learn to Code From Zero 0.9.0

Released on May 14, 2022

Content changes

  • Add obstacle course part 2 series with 8 lessons and 3 practices
    • More videos coming soon to complete this series
  • Correct typo in function name in Slowing down mobs
  • Add step-by-step instructions to import projects in Godot
  • Improve phrasing in tower defense series
  • Remove script icon from screenshot in shooting turret lesson
  • Improve phrasing and add explanations in picking the gems practice

Bug fixes

  • Account for absolute paths in Planet Defender practice

Learn to Code From Zero 0.8.1

Released on May 7, 2022

Content changes

  • Correct typo in function name in Changing the character sprite
  • Correct typo in Refactoring our code to make more turrets
  • Add missing gif image in Tower Defense series
  • Explain elif in Displaying the right text and character portrait
  • Move $ explanation in Listing names in the score panel
  • Improve the explanation of resources under Styling the scoreboard video
  • Explain why the signal callback needs an argument in obstacle course series

Bug fixes

  • Make chest animation name match between practice and completed project
  • Fix Bumping in walls practice getting stuck before running checks
  • Re-add missing variable in PlanetDefender practice
  • Improve rocket angle detection in PlanetDefender practice
  • Prevent from validating inputs pressed simultaneously in practices
  • Improve checks in steering ship practice when pressing keys quickly
  • Improve reliability of checks in Choose the right frame practice

Learn to Code From Zero 0.8.0

Released on May 7, 2022

Content changes

  • Add tower defense turret AI series with 10 lessons and 3 practices
  • Add explanation about updating player scores in Loading existing scores
  • Add instructions to make the container expand in Adding score to the Scoreboard
  • Improve phrasing and formatting in obstacle course series

Bug fixes

  • Add support for removing practices from user progress file
  • Fix simple dialogue practice checks not running
  • Don’t use node properties if node doesn’t exist in practice tester

Learn to Code From Zero 0.7.0

Released on May 4, 2022

This release polishes the obstacle course series and adds 3 practices for it.

Content changes

  • Replace animated gif in obstacle course series introduction
  • Add instructions to fix a bug with the push wall’s collision box
  • Add maze practice in the obstacle course series
  • Add Picking the gems practice to obstacle course series
  • Add two pictures at the start of Adding the finish area lesson
  • Swap two pictures order in obstacle course series
  • Clarify physics vs visuals explanation in obstacle course series
  • Add explanation about signal arguments in Coding the push mechanic
  • Add EndGame practice to obstacle course series

Bug fixes

  • Update completed obstacle course code to match lesson 10 of obstacle course series
  • Account for extra correct use of randi() in SelectRandomItem practice
  • Wait for the tested scene root to be ready to test signal connections in practices

Learn to Code From Zero 0.6.0

Released on May 2, 2022

Content changes

  • Add obstacle course series with 10 lessons

Learn to Code From Zero 0.5.0

Released on April 30, 2022

Content changes

  • Add series about generating random rocks with 4 lessons and 4 practices
  • Improve phrasing in top-down movement series
  • Make steering vector variable match between lesson and MakingShipSteer practice

Bug fixes

  • Re-add wrongly deleted slideshow backgrounds
  • Change assemble project to preserve aspect ratio to avoid health bar offset

Learn to Code From Zero 0.4.1

Released on April 25, 2022

Content changes

  • Explain why we create user interfaces in Dialogue system introduction
  • Add missing sophia_sad.png file in practice project
  • Add missing texture_rect definition in code listing in dialogue tree series
  • Fix missing add_quit_button() function in Adding buttons to our dialogue box
  • Rename variable in Eight way movement practice
  • Fix person names in practice description in Dissecting the dialogue’s data
  • Put plain link to youtube video in Making the ship boost to avoid error
  • Made code comments easier to read in code snippets

Bug fixes

  • Rewrite Eight way movement practice tests to be more reliable with input
  • Rewrite Flipping when going left practice test for more reliable checks
  • Rewrite Choose the right frame practice test for more reliable checks
  • Fix error when loading saved progress that would cause progress not to show
  • Fixed Making the ship boost lesson loading error

Learn to Code From Zero 0.4.0

Released on April 23, 2022

This content update brings two new chapters:

  • The branching dialogue
  • Top-down character movement

Content changes

  • Write dialogue tree series with 6 lessons and 2 practices
  • Add top-down character movement series with 7 lessons and 7 practices
  • Add English subtitles to videos in the first six chapters
  • Add alternate youtube link for video that won’t load on Firefox
  • Add instructions to create a new Godot project
  • Add errata with new folder path in To space and beyond
  • Add picture to show the attach script button in scoreboard lesson
  • Remove explanation about filename in preload function after lesson change
  • Add troubleshooting point when adding rooms to the assembled game

Bug fixes

  • Make practices progress save file update practice paths when they changed
  • Fix practice output panel getting cropped on macOS
  • Make the dialogue box advance slower in the Simple dialogue box practice

Learn to Code From Zero 0.3.1

Released on April 18, 2022

Content changes

  • Improve image dimensions in every chapter
  • Improve layout of the UI nodes cheat-sheet
  • Add instructions to assign the predefined theme to the slideshow
  • Add missing button variable definition in Coding the Slideshow
  • Add slideshow backgrounds to practice project
  • Make slideshow common folder structure match between practice and final project
  • Rename slide_data variable into slide in slideshow series
  • Add instruction to set the TextureRect’s size flag in Slideshow series
  • Rename DialogBoxes directories into DialogueBoxes
  • Compare slide index instead of button text to quit slideshow

Bug fixes

  • Fix fonts having a bad look for some users in godot-practices project

Learn to Code From Zero 0.3.0

Released on April 16, 2022

This update brings the slideshow series with 4 lessons, 2 videos, and 2 practices. We also added 2 new practices and 2 new guides to the scoreboard series initially released last week.

New features

  • Add overall progress bar to practices dock
  • Improved GDScript code syntax highlighting to make code more readable on the website
  • Added node icons next to node names in lessons

Content changes

  • Add Slideshow series with 4 lessons, 2 videos, and 2 practices
  • Add missing code to listing in Adding score to the form
  • Improve explanations and add gif in Designing the scoreboard
  • Explain resources and fonts in Styling the scoreboard with theme
  • Improve explanations and add code examples in Listing names in the score panel
  • Add reminder of what $ does in Listing names in the score panel
  • Add hide button image and purpose in Adding a form to enter your name
  • Add picture to Adding a score when pressing the Ok button
  • Improve phrasing and clarity in Adding score to the scoreboard form
  • Clarify the TodoList practice steps
  • Add scoreboard set_text practice
  • Add scoreboard instance() practice
  • Improve clarity and formatting in scoreboard series
  • Add instruction to attach a script to the ScoreForm
  • Add instruction to set the HideButton’s text to “Hide”
  • Write signals connection guide
  • Add most useful UI nodes cheatsheet
  • Replace temporary picture in dialogue system intro, add slideshow result
  • Temporarily remove blue noise practices
  • Specify in TodoList practice that you need to add TodoList children in error message
  • Write pitches for 2 more practices in the Scoreboard

Bug fixes

  • Remove solution from steering practice
  • Make ship thrusters work with max_speed being an int
  • Correct image with wrong node name in Adding score to the score form
  • Fix error when pressing key after removing member variable in practice
  • Fix practices added in new releases not marked as completed
  • Add missing image in last scoreboard lesson

Learn to Code From Zero 0.2.0

Released on April 9, 2022

This release adds the Scoreboard series with 8 lessons and 1 practice.

Content changes

  • Add Scoreboard series
  • Make velocity values not use constants in To Space and Beyond!
  • Correct two grammar mistakes in introduction
  • Clarify sentence in Flying spaceship: your first scene and script
  • Improve phrasing in Moving the spaceship
  • Add direction check explanation in Controling the ship with the keyboard
  • Update Early access page for release 0.2
  • Correct typo in How to stay productive and motivated
  • Clarify a sentence in How to use practices

Improvements

  • Reduce margin on buttons in practices dock
  • Make practice tests only run on a matching practice scene
  • Add system to test and warn user about practice code requirements

Bug fixes

  • Make input check pass with single quotes in Adding Input

Learn to Code From Zero 0.1.2

Released on April 5, 2022

Content changes

  • Make multiply by delta test work even with other multiplications
  • Add extra test to Listening to player input practice
  • Add comment not to override member variables in first practices
  • Write guide with our recommended editor settings
  • Add guide on how to work with the course’s practices
  • Move guide on how to install godot to introduction chapter
  • Remove space after links

Improvements

  • Make practice the main scene when opening through plugin
  • Show confirmation popup when resetting practices progress
  • Indicate success when resetting progress or practice

Bug fixes

  • Fix poor font rendering on high-dpi displays
  • Add test to steering practice to prevent erroneous answer
  • Fix steering practice check 2 sometimes failing on some systems
  • Make steering practice accept drag_factor up to 0.3 as valid
  • Make build system adapt links to the web platform

Learn to Code From Zero 0.1.1

Released on April 1, 2022

Content

  • Fix one word being cut in the video in Assembling your first game: introduction
  • Update images showing where to download course files
  • Make links clickable in The Learn GDScript app
  • Improve phrasing in What you’ll learn
  • Improve phrasing and fix grammar error in Our approach to teaching code
  • Fix typo in What to expect from the course
  • Improve phrasing in Roadmap
  • Add troubleshooting and answer to Adding the missing pieces

Bug fixes

  • Fix assert error when switching weapons too fast in godot-game-to-assemble
  • Fix some vertical doors not blocking player in godot-game-to-assemble

Learn to Code From Zero 0.1.0

Released on March 31, 2022

New features

  • Code a practice system running in Godot
  • Allow users to track and reset their progress with practices
  • Design an interface to open practices and see progress from the Godot editor
  • Design a title screen to browse finished demos

Content

  • Write five introduction guides to make the most of the course
  • New project: assembling your first game
  • New project: To Space and Beyond!
    • It comes with four tutorials, four practices, a guide on input mappings, and a guide to better understand Godot’s scenes, nodes, scripts, and scenes.
Community Discussion