feat(hemp): wild patches in plains/forest + chest seed injection
Two new ways to find hemp seeds without already having any: 1. Worldgen: minecraft:scatter_feature spawns 1-3 mature silverlabs:hemp_crop blocks on grass/dirt in plains/forest/birch/ flower_forest biomes (~14% scatter chance per chunk surface pass). 2. Chest injection: 8% chance per chest first-open to plant 1-3 seeds in a random empty slot. Tracked per-chest via world dynamic property (rolling cap of 500 entries) so each chest only contributes once. Bedrock has no loot-table merge mechanism so we can't add seeds to vanilla village chests without losing their vanilla loot — script injection sidesteps that and stays version-independent. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
35
hemp-addon/hemp_BP/feature_rules/hemp_patch_rule.json
Normal file
35
hemp-addon/hemp_BP/feature_rules/hemp_patch_rule.json
Normal file
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"format_version": "1.21.0",
|
||||
"minecraft:feature_rules": {
|
||||
"description": {
|
||||
"identifier": "silverlabs:hemp_patch_rule",
|
||||
"places_feature": "silverlabs:hemp_patch_feature"
|
||||
},
|
||||
"conditions": {
|
||||
"placement_pass": "surface_pass",
|
||||
"minecraft:biome_filter": [
|
||||
{
|
||||
"any_of": [
|
||||
{ "test": "has_biome_tag", "value": "plains" },
|
||||
{ "test": "has_biome_tag", "value": "forest" },
|
||||
{ "test": "has_biome_tag", "value": "birch" },
|
||||
{ "test": "has_biome_tag", "value": "flower_forest" }
|
||||
]
|
||||
},
|
||||
{ "test": "has_biome_tag", "operator": "!=", "value": "monster" }
|
||||
]
|
||||
},
|
||||
"distribution": {
|
||||
"iterations": 1,
|
||||
"scatter_chance": 14,
|
||||
"x": { "distribution": "uniform", "extent": [0, 16] },
|
||||
"y": {
|
||||
"distribution": "fixed_grid",
|
||||
"extent": [0, 64],
|
||||
"grid_offset": 0,
|
||||
"step_size": 1
|
||||
},
|
||||
"z": { "distribution": "uniform", "extent": [0, 16] }
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user