For a while I've been pondering how the helperblock system could be used to bring more randomness to buildings, like some walls, windows, floors and ceilings being damaged, and decided to quickly cobble together a tiny 'mod' that adds a new helperblock in that extends the woodBlock, with a small chance of spawning in BurntWoodblock1, and a smaller chance of spawning other variations in. Below is the main overview of three identical structures in shape.
Below are three screenshots, one in each building from left to right. https://imgur.com/Quk1WFt https://imgur.com/RASxFPr https://imgur.com/WVMeeKa
This item goes into the 'blocks' config file.
<property name="Extends" value="woodMaster"/>
<property name="CreativeMode" value="Dev"/>
<property name="CustomIcon" value="woodBlock"/> <property name="CustomIconTint" value="ff8080"/>
<property name="Class" value="Loot"/>
<property name="LootList" value="16"/>
<property name="Model" value="siding_burnt01"/>
<property name="Texture" value="23,23,23,23,23,241"/>
<property name="ImposterExchange" value="imposterBlock" param1="86"/>
<property name="FilterTags" value="fdesign"/>
This item goes into the 'blockplaceholders' file.
<block name="woodBlock" prob="1"/>
<block name="burntWoodBlock1" prob=".25"/>
<block name="burntWoodBlock2" prob=".15"/>
<block name="burntWoodBlock3" prob=".1"/>
<block name="burntWoodBlock4" prob=".05"/>
<block name="burntWoodBlock5" prob=".05"/>
<block name="burntWoodBlock6" prob=".05"/>
I haven't seen anything of this nature before, or simply missed it, and I'm not entirely sure what to do regarding the resource itself, as I wanted the 'burntwoodsiding1' to be the preview block, so you could point it in the correct direction, and paint the inside/outside wall better making it blend in better and default to the painted texture, but I'd like to just put this out there as a basic resource to see what people might think, and whether this could be useful somehow for the game.
Some ideas would be walls that may or may not be damaged, if the damaged blocks are given a weaker material, then it would have a mechanical difference in the game, windows that have a high chance as spawning as intact, less chance of spawning in as broken, or boarded up, doors that are locked spawning in as normal, boarded up or re-enforced with metal.
For example you could create some basic little residential prefabs with a fence around them, though all identical in basic shape, could be easier or harder to break into depending on the condition of the blocks, maybe a wall is already broken or missing entirely, or the building is in good condition, so it's the windows then, or a roof piece is missing entirely. You could go further and have a decoration helperblock that can spawn in just about anything you want - maybe a back garden has a stump, chair, statue, fountain, or a indoor item that spawns in a airblock, decor-trash, corpse block and so on, meaning even a building that's been generated twice may be quite different from last time.
If I may, I did also wonder about the use of dynamic prefabs within a prefab - taking a basic residential prefab, with random room fillings, etc.
Hopefully this is all okay for discussion, and perhaps somehow helpful.