<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Chris' Tutorials — Godot 4 articles</title>
    <link>https://christutorials.com/articles/</link>
    <description>Hands-on Godot 4 recipes, plus lessons from running a plugin test and proof pipeline.</description>
    <language>en</language>
    <atom:link href="https://christutorials.com/rss.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Godot 4 tilemap collision: the TileMapLayer setup</title>
      <link>https://christutorials.com/articles/how-to-add-tilemap-collisions-in-godot-4/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/how-to-add-tilemap-collisions-in-godot-4/</guid>
      <description>Add collision to a TileMapLayer in Godot 4.3+: a TileSet physics layer, per-tile collision polygons, a CharacterBody2D mask that matches, and one-way platforms.</description>
      <pubDate>Thu, 05 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Item Vault Lite vs full: what the free version includes</title>
      <link>https://christutorials.com/articles/item-vault-lite-vs-full/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/item-vault-lite-vs-full/</guid>
      <description>The free Item Vault Lite covers item definitions, containers, drop tables, 2D pickups, the wallet, and JSON saves. The full edition adds 3D pickups, scene spawners, shop pricing, and crafting.</description>
      <pubDate>Thu, 05 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Godot 2D platformer: state machine, attacks, and enemies</title>
      <link>https://christutorials.com/articles/godot-2d-platformer-state-machine/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/godot-2d-platformer-state-machine/</guid>
      <description>A 2D platformer in Godot 4 built as one explicit state machine: idle, run, jump, fall and attack, coyote time, hitboxes that only fire on active frames, and enemies that react.</description>
      <pubDate>Tue, 03 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Godot AnimationTree: conditions and blend spaces for 2D</title>
      <link>https://christutorials.com/articles/godot-animation-tree-conditions-and-blendspaces/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/godot-animation-tree-conditions-and-blendspaces/</guid>
      <description>Drive a 2D character's AnimationTree from GDScript: a state machine whose transitions read conditions, a BlendSpace2D for eight directions, and the parameter names that must match.</description>
      <pubDate>Tue, 03 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Godot 4 UI: one Theme, and a pause menu that pauses</title>
      <link>https://christutorials.com/articles/godot-ui-theme-and-pause-menu/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/godot-ui-theme-and-pause-menu/</guid>
      <description>Build a Godot 4 UI theme once — fonts, StyleBoxes, type variations — and a pause menu that stops the tree, keeps the menu alive, and does not leak focus back into the game.</description>
      <pubDate>Tue, 03 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Godot 2D top-down game: the systems, in order</title>
      <link>https://christutorials.com/articles/how-to-make-a-2d-top-down-game-in-godot/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/how-to-make-a-2d-top-down-game-in-godot/</guid>
      <description>Build a 2D top-down game in Godot 4 in the order the systems depend on each other: character, depth sorting, tile collisions, camera, animation, then interaction.</description>
      <pubDate>Tue, 03 Nov 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Godot multiplayer grid placement: one host, four sessions</title>
      <link>https://christutorials.com/articles/godot-multiplayer-grid-placement/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/godot-multiplayer-grid-placement/</guid>
      <description>Four placement sessions on one Grid Placement host: independent previews and catalogues, one committed grid, and the networking boundary left to your game.</description>
      <pubDate>Thu, 29 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Godot 2D grid building system: paint, place, save</title>
      <link>https://christutorials.com/articles/godot-2d-grid-building-system/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/godot-2d-grid-building-system/</guid>
      <description>Build a 2D grid building system in Godot 4: five terrain brush modes, buildings on TileMapLayer cells, and a save that restores both layers.</description>
      <pubDate>Wed, 28 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Godot 3D grid building system: the runtime loop</title>
      <link>https://christutorials.com/articles/godot-3d-grid-building-system/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/godot-3d-grid-building-system/</guid>
      <description>Build a player-facing 3D grid building system in Godot 4: place, manipulate, demolish with refunds, and save the build so it reloads where it stood.</description>
      <pubDate>Wed, 28 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Godot 4 grid-building plugins: build mode vs editor tools</title>
      <link>https://christutorials.com/articles/grid-building-plugins-godot-4-compared/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/grid-building-plugins-godot-4-compared/</guid>
      <description>What the Godot 4 grid placement options actually are, what each one covers, and which fits a runtime build mode. Verified against each project's own documentation.</description>
      <pubDate>Wed, 28 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>3D room placement in Godot: build rooms and stack storeys</title>
      <link>https://christutorials.com/articles/how-to-place-and-stack-rooms-in-a-3d-grid-in-godot/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/how-to-place-and-stack-rooms-in-a-3d-grid-in-godot/</guid>
      <description>3D room placement in Godot 4: place a whole room as one object on a GridMap, stack the same room on the storey above, and read the refusals it hands back.</description>
      <pubDate>Mon, 26 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>3D grid placement in Godot 4: full setup tutorial</title>
      <link>https://christutorials.com/articles/how-to-set-up-3d-grid-placement-in-godot/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/how-to-set-up-3d-grid-placement-in-godot/</guid>
      <description>Wire 3D grid placement into a Godot 4 project with Grid Placement 6.3: host nodes, snap profiles, terrain palettes, catalog, input actions, then place.</description>
      <pubDate>Thu, 22 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>GdUnit failures: assertions vs cases</title>
      <link>https://christutorials.com/articles/gdunit-failed-assertions-vs-failing-cases/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/gdunit-failed-assertions-vs-failing-cases/</guid>
      <description>A GdUnit run can report thousands of failures across a few hundred cases. Count failing cases, print both numbers, and keep the red signal meaningful.</description>
      <pubDate>Sun, 11 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Find blank frames in Godot test captures</title>
      <link>https://christutorials.com/articles/godot-blank-frame-screenshot-detection/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/godot-blank-frame-screenshot-detection/</guid>
      <description>A screenshot of nothing is still a valid PNG. Refuse flat frames in your Godot capture pipeline so blank evidence fails your build instead of passing.</description>
      <pubDate>Sun, 11 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Age crops and NPCs on game days in Godot</title>
      <link>https://christutorials.com/articles/how-to-age-crops-and-npcs-in-godot/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/how-to-age-crops-and-npcs-in-godot/</guid>
      <description>Pick the right Calendar Time ageing model: discrete date ticks for crops and birthdays, continuous clock seconds for buffs and spoilage, per system.</description>
      <pubDate>Sun, 11 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>How to make a shop in Godot</title>
      <link>https://christutorials.com/articles/how-to-make-a-shop-in-godot/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/how-to-make-a-shop-in-godot/</guid>
      <description>Sell from an Item Vault inventory with DropTable stock, atomic buys, and game-owned prices: the vault moves goods, your game moves gold after commit.</description>
      <pubDate>Sun, 11 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Snap to a TileMap in Godot: 2D grid placement</title>
      <link>https://christutorials.com/articles/how-to-snap-2d-objects-to-a-tilemap-grid-in-godot/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/how-to-snap-2d-objects-to-a-tilemap-grid-in-godot/</guid>
      <description>How to snap to a TileMap in Godot 4: place 2D furniture, props, and buildings on a TileMapLayer with anchored scenes, live cell previews, and commit results.</description>
      <pubDate>Sun, 11 Oct 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Godot drag and drop inventory</title>
      <link>https://christutorials.com/articles/godot-drag-and-drop-inventory/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/godot-drag-and-drop-inventory/</guid>
      <description>Build drag and drop inventory UI on Item Vault: game-owned slots over container add and remove, with stacking, partial moves, and a redraw after every mutation.</description>
      <pubDate>Sun, 27 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Godot inventory system tutorial</title>
      <link>https://christutorials.com/articles/godot-inventory-system-tutorial/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/godot-inventory-system-tutorial/</guid>
      <description>Build a complete Item Vault inventory for a 2D or 3D Godot 4 game: pickups, enemy drops, stacking, crafting, equipment, and save and load sharing one item model.</description>
      <pubDate>Sun, 27 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>2D and 3D day-night cycle in Godot 4 tutorial</title>
      <link>https://christutorials.com/articles/how-to-make-a-day-night-cycle-in-godot-4/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/how-to-make-a-day-night-cycle-in-godot-4/</guid>
      <description>Build a 2D or 3D day-night cycle in Godot 4 with Calendar Time: author times of day, drive the clock, light the scene, and keep saves honest.</description>
      <pubDate>Sun, 27 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>How to make a farming system in Godot</title>
      <link>https://christutorials.com/articles/how-to-make-a-farming-system-in-godot/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/how-to-make-a-farming-system-in-godot/</guid>
      <description>Grow crops on Grid Placement soil plots with Calendar Time ageing: one growth tick per game day, seasons from the calendar, save-safe harvests.</description>
      <pubDate>Sun, 27 Sep 2026 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>How to snap objects to a 3D grid in Godot</title>
      <link>https://christutorials.com/articles/how-to-snap-objects-to-a-3d-grid-in-godot/</link>
      <guid isPermaLink="true">https://christutorials.com/articles/how-to-snap-objects-to-a-3d-grid-in-godot/</guid>
      <description>Snap LEGO-style bricks, furniture, and structures to a 3D GridMap with Grid Placement: mounts, previews, rotation, validation, and save-safe restore.</description>
      <pubDate>Sun, 27 Sep 2026 00:00:00 GMT</pubDate>
    </item>
  </channel>
</rss>
