Grid Building 5.0.5 Patch Notes

Release Date: May 3, 2026 Version: 5.0.5 Type: Maintenance / Asset Loading / Web Export Documentation Release


Highlights

  • Recursive asset scanningGBAssetResolver now discovers assets in nested sub folders
  • Web Export Guide corrected — The real web export issue is documented: embedded SubResource(...) entries fail to load; typed arrays and _init() work correctly on Godot 4.6.2
  • Unified asset loading — Removed legacy PlaceableLoader; GBAssetResolver is now the single source of truth
  • 1661 tests passing — full regression coverage across 165 test suites

New Features

  • Recursive sub folder scanning in GBAssetResolver

    • _load_from_folder() now traverses nested directories instead of skipping them
    • Assets at any folder depth are automatically discovered
    • Matches the documented behavior and ensures complete asset enumeration
  • Sub folder test coverage for GBAssetResolver

    • 11 new tests validating recursive scanning across all asset types:
      • Placeables (5 tests): root includes sub folder assets, direct sub folder loading, nested sub folders, root reaches all depths, diagnostics reports subdirectories
      • Category tags (3 tests): root includes sub folder tags, direct sub folder loading, nested sub folder tags
      • Placeable sequences (3 tests): root includes sub folder sequences, direct sub folder loading, nested sub folder sequences
  • Test resource fixtures for sub folders

    • test/resources/placeable/subfolder/ and subfolder/nested/ with placeable and sequence .tres files
    • test/resources/tags/subfolder/ and subfolder/nested/ with tag .tres files

Bug Fixes

Asset Loading

  • Fixed GBAssetResolver ignoring nested folders
    • Directory entries (ending with /) were previously skipped, so assets in nested folders were silently ignored
    • Sub folders are now recursively scanned, matching the documented behavior

Web Export

  • Web Export Guide rewritten with corrected root cause

    • The main confirmed web export issue is now documented as embedded SubResource(...) entries fail to load on web
    • Both plain and typed array syntax (Array[ExtResource(...)](...)) work correctly on Godot 4.6.2 stable
    • _init() runs correctly during .tres deserialization in web exports on Godot 4.6.2
    • Earlier Godot version issues (typed array deserialization, _init() order) moved to troubleshooting as potential checks only
    • _ensure_*() lazy-loading methods described as safety nets, not required workarounds
  • Web export compatibility test fixed

    • web_export_rule_loading_test.gd now uses assert_str() (correct GDUnit4 API)
    • Simulates web-export condition via rule.messages = null to test _ensure_messages() lazy-loading

Technical Changes

  • CollisionsCheckRule._init() — Retains _ensure_messages() call for editor/runtime initialization; web-export tests explicitly null messages to simulate edge cases
  • Plugin version bumped to 5.0.5 — Updated plugin.cfg, guide frontmatters, and READMEs across both addons and documentation

Removed

  • PlaceableLoader — Deleted components/placeable_loader.gd. GBAssetResolver is now the single source of truth for asset loading, with recursive sub folder scanning, multi-type support, and structured error reporting. Backward compatibility tests removed from gb_asset_resolver_test.gd and web_path_validation_test.gd.

Test Suite

  • 1661 tests | 0 errors | 0 failures | 0 orphans | 1 flaky (passes on GdUnit4 retry)
    • 1526 addon tests + 135 demo tests across 165 suites

Status

  • Complete — Ready for release.