diff --git a/Core/src/main/java/com/plotsquared/core/generator/ClassicPlotWorld.java b/Core/src/main/java/com/plotsquared/core/generator/ClassicPlotWorld.java
index 63d7afd02..fa5e36900 100644
--- a/Core/src/main/java/com/plotsquared/core/generator/ClassicPlotWorld.java
+++ b/Core/src/main/java/com/plotsquared/core/generator/ClassicPlotWorld.java
@@ -46,6 +46,7 @@ public abstract class ClassicPlotWorld extends SquarePlotWorld {
public int ROAD_HEIGHT = 62;
public int PLOT_HEIGHT = 62;
public int WALL_HEIGHT = 62;
+ public int MIN_GEN_HEIGHT = 0;
public BlockBucket MAIN_BLOCK = new BlockBucket(BlockTypes.STONE);
public BlockBucket TOP_BLOCK = new BlockBucket(BlockTypes.GRASS_BLOCK);
public BlockBucket WALL_BLOCK = new BlockBucket(BlockTypes.STONE_SLAB);
@@ -114,6 +115,9 @@ public abstract class ClassicPlotWorld extends SquarePlotWorld {
new ConfigurationNode("wall.height", this.WALL_HEIGHT, TranslatableCaption.of("setup.wall_height"),
ConfigurationUtil.INTEGER
),
+ new ConfigurationNode("world.min_gen_height", this.MIN_GEN_HEIGHT, TranslatableCaption.of("setup.min_gen_height"),
+ ConfigurationUtil.INTEGER
+ ),
new ConfigurationNode("plot.bedrock", this.PLOT_BEDROCK, TranslatableCaption.of("setup.bedrock_boolean"),
ConfigurationUtil.BOOLEAN
)};
@@ -127,6 +131,7 @@ public abstract class ClassicPlotWorld extends SquarePlotWorld {
public void loadConfiguration(ConfigurationSection config) {
super.loadConfiguration(config);
this.PLOT_BEDROCK = config.getBoolean("plot.bedrock");
+ this.MIN_GEN_HEIGHT = Math.max(getMinGenHeight(), config.getInt("world.min_gen_height"));
this.PLOT_HEIGHT = Math.min(getMaxGenHeight(), config.getInt("plot.height"));
this.MAIN_BLOCK = new BlockBucket(config.getString("plot.filling"));
this.TOP_BLOCK = new BlockBucket(config.getString("plot.floor"));
diff --git a/Core/src/main/resources/lang/messages_en.json b/Core/src/main/resources/lang/messages_en.json
index 96475e3e8..50b3639df 100644
--- a/Core/src/main/resources/lang/messages_en.json
+++ b/Core/src/main/resources/lang/messages_en.json
@@ -161,8 +161,9 @@
"setup.road_width": "Road width",
"setup.road_height": "Road height",
"setup.road_block": "Road block",
- "setup.wall_filling_block": "Wall filling block (Block(s) been put under the plot border down to Y1)",
+ "setup.wall_filling_block": "Wall filling block (Block(s) been put under the plot border down to min gen height + 1)",
"setup.wall_height": "Wall height",
+ "setup.min_gen_height": "Minimum height from which to generate (for 1.18+ can be negative).",
"setup.bedrock_boolean": "Whether a bedrock layer under the plot should be generated or not",
"setup.singleplotarea_void_world": "Void world",
"plotareatype.plot_area_type_normal": "Standard plot generation",