Description
Describe the project you are working on
A 2d pixel platformer.
Describe the problem or limitation you are having in your project
I've drawn a basic tileset for a platformer I'm working on. It's specifically set up in a way that works well with the Tiled tilemap editor's corner-based terrain set system. I can fairly easily draw with it in Tiled since when I select the terrain set, it automatically gives me a 2x2 brush to work with. I'm essentially painting in the corners and it's able to easily place my tiles in.
2025-04-22.23-33-11.mp4
The same does not work in Godot. If I set up the terrain set in the same way I set up the Tiled version, I can't actually draw with the paint tool. The only way to make it draw would be to set up my "full" tile as having the center bit set, which would then force anything I draw to be in minimum groups of 3x3 tiles instead of minimum groups of 2x2. The only way to get the results I'd prefer is by manually drawing with the rectangle tool. This is significantly less smooth than using a paint tool like I would in Tiled.
2025-04-22.23-38-42.mp4
Describe the feature / enhancement and how it helps to overcome the problem or limitation
There are a few possibilities for this. However, I think the most robust option that would help beyond just this situation is adding a variable size for the TileMap Paint Tool.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
When the player selects the TileMap Paint Tool, it shows a SpinBox in the same place as where the Bucket Tool shows the "Contiguous" CheckBox. The number in it can be changed to set the size of the Paint Tool. When drawing the tilemap, it centers a square based on that size around the cursor and places a tile in each of those, akin to how the Rectangle tool would place a square.
The drawing process would look something like:
The user clicks, and then
If this enhancement will not be used often, can it be worked around with a few lines of script?
It would be used as often as corner-based terrain sets. Which, admittedly, I don't know the frequency of use for. But regardless, it cannot be worked around easily.
Is there a reason why this should be core and not an add-on in the asset library?
It's a change to an aspect of a core engine feature. I'm not sure if this even could be implemented as an add-on.