Ultimate Base Builder Template for Godot
*The embedded demo is from the Pro version. Godot 4.4+
The goal of this project is to give you all the tools you might need to make a base builder game. The architecture is designed to be expandable and easy to use.
Basic Features (Free)
- Ghost Builder: Places buildings in-game.
- Gridmap Builder: Places buildings in the editor (for level design).
- Basic building components:
- Base collision – generates a collision shape based on
BuildingData.size. - Base highlight – highlights the base of the building.
- Building highlight – highlights the building on request.
- Grid lines – renders gridlines around the building.
- Range outline – renders a dotted line within
rangetiles of the building.
- Base collision – generates a collision shape based on
Extra Features (Pro)
- Includes all Basic Features.
- Extra building components:
- Building selection – detects selection via mouse input.
- Building UI – a basic interface to control the building.
- BBCode Popup – animates BBCode text popups.
- Progress indicator – shows a progress bar above the building.
- Under-construction – renders construction/repair/upgrade state, and disables the node while active.
- More features and updates coming soon...
Tutorial
- Download the source code.
- Drag and drop the "core" folder into your project.
- Use
core/exampleas a guide to create your own levels.
How to Make a Building
A building needs 3 items: Mesh scene, Building scene, and BuildingData resource.
- Mesh Scene: A simple
MeshInstance3Dwith your building model. Ensure the node is above the floor (y > 0) and centered on X and Z axes. You can change the transform attributes as you see fit. - Building Scene: Uses a
StaticBody3Das root with theBuildingscript attached. Add:- The mesh scene as a child.
- Base collision.
- Other optional components.
- BuildingData resource:
- Set
sizeto define how many tiles your building occupies. - Leave
surface collision layeras default if unsure.
- Set
How to Make a Level
To create a level, you need:
- Static bodies that make up the level’s design.
- Ghost Builder + Building Button +
Camera3D. - Gridmap Builder.
- An empty
BuildingContainernode.
Important: Pay attention to your static bodies’ collision layer.
If it doesn’t match the building’s surface collision layer, the building cannot be placed overlapping it.
The Building Button opens the Ghost Builder inside the level.
You can replace it with another implementation, but make sure to call:
ghost_builder.open(building_data).
To use GridmapBuilder:
Create an empty MeshLibrary, add the BuildingData resources to
buildings, and the node will auto-update the library.
Buildings placed in the Godot editor will then instantiate when the game starts.
HELP
If you need more help, please leave a comment on this page. I'll try my best to answer everyone :).
Credit to Kaykit: https://kaylousberg.itch.io/city-builder-bits
| Updated | 19 days ago |
| Status | In development |
| Category | Assets |
| Author | Polytube |
| Genre | Strategy |
| Made with | Godot |
| Tags | 2D, 3D, City Builder, Godot, Isometric, project-template, Project template, Tower Defense, Turn-based |
Download
Click download now to get access to the following files:

Leave a comment
Log in with itch.io to leave a comment.