I believe this has been a bug since ages. But I haven't noticed it fixed nor might've been reported. As this is a bug that mainly affects content creators by the likes of me, I doubt it has become noticeable for just normal players:
In any case, when you place an `.mcstructure` file under the `BP/structures/...` it should be able to load it fine using structure blocks or the `/structure` command in-game. However, sometimes, I usually have to organize these structure should I find it necessary. So I put these `.mcstructure` files under sub-directories within the `BP/structures/` folder. And from what I've noticed, `.mcstructure` files don't get parsed in-game when placed in a sub-directory.
Path example:
Behavior Pack
\manifest.json
\pack_icon.png
\structures (folder)
\...\dog.mcstructure
\...\cat.mcstructure
\...\other\ (folder)
\...\other\steve.mcstructure
\...\other\alex.mcstructure
You might notice four sample structures in this path: `dog`, `cat`, `steve`, and `alex` assuming with the default namespace `mystructure`. In this case, you would expect that all four of them would load in-game. But only two of them will actually just get parsed, the latter being missing or ignored: Both the `dog` and `cat` structures are loaded but not `steve` and `alex` which are in a sub-directory `other`.
When both `steve` and `alex` structures gets added or parsed into the world once, I'll bet it's most likely saved or cached on the world-side and not loaded what's from the behavior packs. And this is a bit inconvenient, saying this as a content creator myself. At least, we should be able to load and differentiate what's a world-side structure and a behavior pack-side structure.
Comments 2
I can't confirm. Structures in deeper directories are identified like so:
This couldn't have been more obvious. Though on my defense, that's still a quite confusing one. Having the very first sub-directory deep to be the namespace. I thought you can change namespace by referring it on the filename itself (e.g. `test:steve.mcstructure`). Nevertheless, thanks for pointing that out.
Edit: `:` is not even supported on filenames anyway. So yeah.
I can't confirm. Structures in deeper directories are identified like so: