2.0.0 Release Notes


This is the first major update to the grid builder project. This is more of a bug fix update than a feature update but some significant improvements were made. I wanted to get some of the project organization breaking changes out of the way before too many users adopt the plugin to keep things smoother down the road. Project file organization and naming should stay relatively consistent from now on.

Potentially Breaking Changes

  •  Updated file naming to be in line with Godot style conventions. This may break file references. If you run into any issues, Visual studio codes find and replace on the file names is a good way to replace file paths.
  • PlacementValidator base_rules property added to replace BuildingSystem's always_include_rules. Be sure to move your rules to the placement validator in the Building System inspector.
  • Tile collision indicator templates from project only have mask layer 1 set by default. If you need other layers, you should inherit, copy, or edit the scene and set other collision layers for tile collision indicators

Other Fixes

  • Added AbstractItemContainer class that you can use to inherit from and create a item container / inventory that will be compatible with the SpendMaterialsRule. Alternative you can still use the SpendMaterials-Generic rule which checks for and uses try_remove (returning amount removed int), get_count_of_type methods
  • SpendMaterialsRule checks containers of user to see if it can hold all spend item types before selecting it as a valid container for the rule
  • Fixed Rotation Bug for Collision Tile Indicator Generation. It should show the correct amount in the right spots now regardless of packed scene rotation values.
  • Building system scans slightly bigger than the base collision shapes for potential tile collision indicators now to be sure every tile with any collision will be picked up on

Be sure that you set your always include rules into the placement validator base rules when upgrading to 2.0.0. This change was made before the placement validator object handles all of the rule checking so it made more sense to have base rules there rather than on the building system parent object.


Example of a fix to placement for rotations - Collision shape is rotated 45 degrees on a capsule collider. Parts of the collision shape goes just over the sides of the grid spaces. Tile collision indicators should now properly generate for shapes like this.


The latest tutorial I posted yesterday is still largely valid. If you're starting from a fresh project, the above is the main difference you will notice compared to following the tutorial.

Files

GridBuilding-2.0.0.zip 144 kB
Aug 02, 2023

Get Grid Building Plugin for Godot 4

Buy Now$40.00 USD or more

Leave a comment

Log in with itch.io to leave a comment.