From 8e0c29b1e0e39071ea075c8f3fff5d1d3a2c2676 Mon Sep 17 00:00:00 2001 From: SD Date: Wed, 24 Mar 2021 22:23:18 +0530 Subject: [PATCH] Config translation keys --- .../dimdoors/DimensionalDoorsInitializer.java | 1 - .../java/org/dimdev/dimdoors/ModConfig.java | 58 ++++--- .../org/dimdev/dimdoors/world/ModBiomes.java | 5 +- .../dimdoors/world/feature/ModFeatures.java | 6 +- .../world/feature/gateway/LimboGateway.java | 12 +- .../resources/assets/dimdoors/lang/en_us.json | 150 +++++++++--------- 6 files changed, 117 insertions(+), 115 deletions(-) diff --git a/src/main/java/org/dimdev/dimdoors/DimensionalDoorsInitializer.java b/src/main/java/org/dimdev/dimdoors/DimensionalDoorsInitializer.java index 4c5975bf..433b9db3 100644 --- a/src/main/java/org/dimdev/dimdoors/DimensionalDoorsInitializer.java +++ b/src/main/java/org/dimdev/dimdoors/DimensionalDoorsInitializer.java @@ -6,7 +6,6 @@ import java.util.function.Supplier; import me.sargunvohra.mcmods.autoconfig1u.AutoConfig; import me.sargunvohra.mcmods.autoconfig1u.ConfigHolder; import org.dimdev.dimdoors.block.ModBlocks; -import org.dimdev.dimdoors.block.door.data.DoorDataReader; import org.dimdev.dimdoors.block.door.data.condition.Condition; import org.dimdev.dimdoors.block.entity.ModBlockEntityTypes; import org.dimdev.dimdoors.command.ModCommands; diff --git a/src/main/java/org/dimdev/dimdoors/ModConfig.java b/src/main/java/org/dimdev/dimdoors/ModConfig.java index b70aedbd..df0dd1da 100644 --- a/src/main/java/org/dimdev/dimdoors/ModConfig.java +++ b/src/main/java/org/dimdev/dimdoors/ModConfig.java @@ -6,8 +6,10 @@ import java.util.List; import me.sargunvohra.mcmods.autoconfig1u.AutoConfig; import me.sargunvohra.mcmods.autoconfig1u.ConfigData; import me.sargunvohra.mcmods.autoconfig1u.annotation.Config; +import me.sargunvohra.mcmods.autoconfig1u.annotation.ConfigEntry; import me.sargunvohra.mcmods.autoconfig1u.annotation.ConfigEntry.Category; import me.sargunvohra.mcmods.autoconfig1u.annotation.ConfigEntry.Gui.RequiresRestart; +import me.sargunvohra.mcmods.autoconfig1u.annotation.ConfigEntry.Gui.Tooltip; import me.sargunvohra.mcmods.autoconfig1u.annotation.ConfigEntry.Gui.TransitiveObject; import me.sargunvohra.mcmods.autoconfig1u.serializer.JanksonConfigSerializer; @@ -65,57 +67,53 @@ public final class ModConfig implements ConfigData { } public static class General { - public boolean closeDoorBehind = false; - public double teleportOffset = 0.5; - public boolean riftBoundingBoxInCreative; - public double riftCloseSpeed = 0.005; - public double riftGrowthSpeed = 1; - public int depthSpreadFactor = 20; - public double endermanSpawnChance = 0.001; - public double endermanAggressiveChance = 0.5; + @Tooltip public boolean closeDoorBehind = false; + @Tooltip public double teleportOffset = 0.5; + @Tooltip public boolean riftBoundingBoxInCreative; + @Tooltip public double riftCloseSpeed = 0.005; + @Tooltip public double riftGrowthSpeed = 1; + @Tooltip public int depthSpreadFactor = 20; + @Tooltip public double endermanSpawnChance = 0.001; + @Tooltip public double endermanAggressiveChance = 0.5; } public static class Pockets { - public int pocketGridSize = 32; - public int maxPocketSize = 15; - public int privatePocketSize = 2; - public int publicPocketSize = 1; - @RequiresRestart - public boolean loadAllSchematics = false; - @RequiresRestart - public int cachedSchematics = 10; + @Tooltip public int pocketGridSize = 32; + @Tooltip public int maxPocketSize = 15; + @Tooltip public int privatePocketSize = 2; + @Tooltip public int publicPocketSize = 1; } public static class World { @RequiresRestart - public double clusterGenChance = 20000; + @Tooltip public double clusterGenChance = 20000; @RequiresRestart - public int gatewayGenChance = 200; + @Tooltip public int gatewayGenChance = 200; @RequiresRestart - public List clusterDimBlacklist = new LinkedList<>(); + @Tooltip public List clusterDimBlacklist = new LinkedList<>(); @RequiresRestart - public List gatewayDimBlacklist = new LinkedList<>(); + @Tooltip public List gatewayDimBlacklist = new LinkedList<>(); } public static class Dungeons { - public int maxDungeonDepth = 50; + @Tooltip public int maxDungeonDepth = 50; } public static class Monoliths { - public boolean dangerousLimboMonoliths = false; - public boolean monolithTeleportation = true; + @Tooltip public boolean dangerousLimboMonoliths = false; + @Tooltip public boolean monolithTeleportation = true; } public static class Limbo { - public boolean universalLimbo = false; - public boolean hardcoreLimbo = false; - public double decaySpreadChance = 0.5; + @Tooltip public boolean universalLimbo = false; + @Tooltip public boolean hardcoreLimbo = false; + @Tooltip public double decaySpreadChance = 0.5; } public static class Graphics { - public boolean showRiftCore = false; - public int highlightRiftCoreFor = 15000; - public double riftSize = 1; - public double riftJitter = 1; + @Tooltip public boolean showRiftCore = false; + @Tooltip public int highlightRiftCoreFor = 15000; + @Tooltip public double riftSize = 1; + @Tooltip public double riftJitter = 1; } } diff --git a/src/main/java/org/dimdev/dimdoors/world/ModBiomes.java b/src/main/java/org/dimdev/dimdoors/world/ModBiomes.java index 5116c3fd..6d5218cd 100644 --- a/src/main/java/org/dimdev/dimdoors/world/ModBiomes.java +++ b/src/main/java/org/dimdev/dimdoors/world/ModBiomes.java @@ -103,11 +103,8 @@ public final class ModBiomes { GenerationStep.Feature.SURFACE_STRUCTURES, ModFeatures.LIMBO_GATEWAY_CONFIGURED_FEATURE ) - .feature( - GenerationStep.Feature.LAKES, - ModFeatures.ETERNAL_FLUID_LAKE) .surfaceBuilder( - SurfaceBuilder.NETHER.withConfig( + SurfaceBuilder.DEFAULT.withConfig( new TernarySurfaceConfig( ModBlocks.UNRAVELLED_FABRIC.getDefaultState(), ModBlocks.UNRAVELLED_FABRIC.getDefaultState(), diff --git a/src/main/java/org/dimdev/dimdoors/world/feature/ModFeatures.java b/src/main/java/org/dimdev/dimdoors/world/feature/ModFeatures.java index a431469c..305c9f22 100644 --- a/src/main/java/org/dimdev/dimdoors/world/feature/ModFeatures.java +++ b/src/main/java/org/dimdev/dimdoors/world/feature/ModFeatures.java @@ -30,16 +30,18 @@ import net.minecraft.world.gen.feature.SingleStateFeatureConfig; import net.fabricmc.loader.api.FabricLoader; +// IMPORTANT NOTE +// Do not remove deprecated stuff public final class ModFeatures { public static final Feature SCHEMATIC_GATEWAY_FEATURE = new SchematicV2GatewayFeature(SchematicV2GatewayFeatureConfig.CODEC); public static final Feature LIMBO_GATEWAY_FEATURE = Registry.register(Registry.FEATURE, new Identifier("dimdoors", "limbo_gateway"), new LimboGatewayFeature()); public static final SchematicV2Gateway SANDSTONE_PILLARS_GATEWAY = new SandstonePillarsV2Gateway(); public static final SchematicV2Gateway TWO_PILLARS_GATEWAY = new TwoPillarsV2Gateway(); - public static final Decorator ETERNAL_FLUID_LAKE_DECORATOR = new EternalFluidLakeDecorator(ChanceDecoratorConfig.CODEC); + @Deprecated public static final Decorator ETERNAL_FLUID_LAKE_DECORATOR = new EternalFluidLakeDecorator(ChanceDecoratorConfig.CODEC); public static final ConfiguredFeature SANDSTONE_PILLARS_FEATURE; public static final ConfiguredFeature TWO_PILLARS_FEATURE; public static final ConfiguredFeature LIMBO_GATEWAY_CONFIGURED_FEATURE; - public static final ConfiguredFeature ETERNAL_FLUID_LAKE = Feature.LAKE.configure(new SingleStateFeatureConfig(ModBlocks.ETERNAL_FLUID.getDefaultState())).decorate(ETERNAL_FLUID_LAKE_DECORATOR.configure(new ChanceDecoratorConfig(20))); + @Deprecated public static final ConfiguredFeature ETERNAL_FLUID_LAKE = Feature.LAKE.configure(new SingleStateFeatureConfig(ModBlocks.ETERNAL_FLUID.getDefaultState())).decorate(ETERNAL_FLUID_LAKE_DECORATOR.configure(new ChanceDecoratorConfig(20))); public static void init() { SANDSTONE_PILLARS_GATEWAY.init(); diff --git a/src/main/java/org/dimdev/dimdoors/world/feature/gateway/LimboGateway.java b/src/main/java/org/dimdev/dimdoors/world/feature/gateway/LimboGateway.java index 1878bd2b..bead1c77 100644 --- a/src/main/java/org/dimdev/dimdoors/world/feature/gateway/LimboGateway.java +++ b/src/main/java/org/dimdev/dimdoors/world/feature/gateway/LimboGateway.java @@ -25,14 +25,14 @@ public enum LimboGateway implements Gateway { BlockState unravelledFabric = ModBlocks.UNRAVELLED_FABRIC.getDefaultState(); // Build the gateway out of Unraveled Fabric. Since nearly all the blocks in Limbo are of // that type, there is no point replacing the ground. - world.setBlockState(pos.add(0, 3, 1), unravelledFabric, 2); - world.setBlockState(pos.add(0, 3, -1), unravelledFabric, 2); + world.setBlockState(pos.add(1, 3, 0), unravelledFabric, 2); + world.setBlockState(pos.add(-1, 3, 0), unravelledFabric, 2); // Build the columns around the door - world.setBlockState(pos.add(0, 2, -1), unravelledFabric, 2); - world.setBlockState(pos.add(0, 2, 1), unravelledFabric, 2); - world.setBlockState(pos.add(0, 1, 1), unravelledFabric, 2); - world.setBlockState(pos.add(0, 1, 1), unravelledFabric, 2); + world.setBlockState(pos.add(-1, 2, 0), unravelledFabric, 2); + world.setBlockState(pos.add(1, 2, 0), unravelledFabric, 2); + world.setBlockState(pos.add(1, 1, 0), unravelledFabric, 2); + world.setBlockState(pos.add(1, 1, 0), unravelledFabric, 2); this.placePortal(world, pos.add(0, 1, 0), Direction.NORTH); } diff --git a/src/main/resources/assets/dimdoors/lang/en_us.json b/src/main/resources/assets/dimdoors/lang/en_us.json index 8a873893..9f523765 100644 --- a/src/main/resources/assets/dimdoors/lang/en_us.json +++ b/src/main/resources/assets/dimdoors/lang/en_us.json @@ -1,5 +1,6 @@ { "itemGroup.dimdoors.dimensional_doors": "Dimensional Doors", + "block.dimdoors.gold_door": "Gold Door", "block.dimdoors.quartz_door": "Quartz Door", "block.dimdoors.iron_dimensional_door": "Iron Dimensional Door", @@ -45,6 +46,7 @@ "block.dimdoors.unravelled_fabric": "Unraveled Fabric", "block.dimdoors.rift": "Rift Scar", "block.dimdoors.eternal_fluid": "Eternal Fluid", + "item.dimdoors.gold_door": "Gold Door", "item.dimdoors.quartz_door": "Quartz Door", "item.dimdoors.iron_dimensional_door": "Iron Dimensional Door", @@ -70,12 +72,12 @@ "item.dimdoors.rift_stabilizer.already_stabilized": "This rift is already stable", "item.dimdoors.rift_blade": "Rift Blade", "item.dimdoors.rift_blade.rift_miss": "You can only use this item on a rift's core", - "item.dimdoors.world_thread": "World Thread", + "item.text.autoconfig.dimdoors.option.world_thread": "World Thread", "item.dimdoors.stable_fabric": "Stable Fabric", - "item.dimdoors.world_thread_boots": "Woven World Thread Boots", - "item.dimdoors.world_thread_helmet": "Woven World Thread Helmet", - "item.dimdoors.world_thread_leggings": "Woven World Thread Leggings", - "item.dimdoors.world_thread_chestplate": "Woven World Thread Chestplate", + "item.text.autoconfig.dimdoors.option.world_thread_boots": "Woven World Thread Boots", + "item.text.autoconfig.dimdoors.option.world_thread_helmet": "Woven World Thread Helmet", + "item.text.autoconfig.dimdoors.option.world_thread_leggings": "Woven World Thread Leggings", + "item.text.autoconfig.dimdoors.option.world_thread_chestplate": "Woven World Thread Chestplate", "item.dimdoors.rift_key.bound.info": "Bound", "item.dimdoors.rift_key.unbound.info": "Unbound", "item.dimdoors.iron_dimensional_door.info": "Place on the block under a rift \\nto activate that rift or place \\nanywhere else to create a \\npocket dimension.", @@ -97,8 +99,11 @@ "item.dimdoors.dimensional_eraser": "Dimensional Eraser", "item.dimdoors.dimensional_eraser.desc": "Erases entities", "item.dimdoors.monolith_spawner": "Monolith Spawner", + "fluid.dimdoors.eternal_fabric": "Eternal Fabric", + "entity.dimdoors.monolith": "", + "commands.dimteleport.usage": "/dimteleport [yaw] [pitch]", "commands.fabricconvert.usage": "/fabricconvert", "commands.fabricconvert.success": "All fabric of reality has been converted to black.", @@ -109,6 +114,7 @@ "commands.dimdoors.saveschem.success": "Pocket %s has been successfully saved", "commands.generic.dimdoors.not_in_pocket_dim": "You must be in a pocket dimension to use this command.", "commands.generic.dimdoors.not_in_pocket": "You must be in a pocket to use this command.", + "rifts.unlinked1": "This rift doesn't lead anywhere", "rifts.unlinked2": "This rift has closed", "rifts.isLocked": "This rift is locked", @@ -123,77 +129,77 @@ "rifts.destinations.private_pocket_exit.rift_has_closed": "The rift you used to enter the pocket dimension has closed and you ended up in Limbo!", "rifts.entrances.rift_too_close": "Placing a door this close to a tear in the world would be dangerous. Shift-right-click to place anyway, or place it on the rift's core (tesseract) to bind it to the rift.", "rifts.entrances.cannot_be_placed_on_rift": "This type of door can't be placed on a rift.", + "tools.rift_miss": "You can only use this item on a rift's core", "tools.target_became_block": "Failed, there is now a block at the stored location", - "dimdoors.general": "General Settings", - "dimdoors.general.tooltip": "General configuration settings for the mod", - "dimdoors.general.baseDimensionID": "Base Dimension ID", - "dimdoors.general.baseDimensionID.tooltip": "Dimension ID of the first Dimensional Doors dimension. Other dimensions will use consecutive IDs. It is strongly recommended to leave this to the default value.", - "dimdoors.general.useStatusBar": "Status Bar Messages", - "dimdoors.general.useStatusBar.tooltip": "Whether to use the status bar to send messages rather than the chat.", - "dimdoors.general.closeDoorBehind": "Close Door Behind", - "dimdoors.general.closeDoorBehind.tooltip": "When true, Dimensional Doors will automatically close when the player enters their portal.", - "dimdoors.general.depthSpreadFactor": "Depth Spread Factor", - "dimdoors.general.depthSpreadFactor.tooltip": "The scale of the dispersion when escaping from a pocket or limbo, in blocks/depth. It is important to remember that by default, limbo is treated as depth 50.", - "dimdoors.general.riftCloseSpeed": "Rift Close Speed", - "dimdoors.general.riftCloseSpeed.tooltip": "The speed at which rifts close when using the rift remover, in units of rift size per tick.", - "dimdoors.general.teleportOffset": "Teleport Offset", - "dimdoors.general.teleportOffset.tooltip": "Distance in blocks to teleport the player in front of the dimensional door.", - "dimdoors.general.riftBoundingBoxInCreative": "Rift Bounding Box in Creative", - "dimdoors.general.riftBoundingBoxInCreative.tooltip": "When true, shows the bounding boxes of floating rifts when the player is in creative.", - "dimdoors.pockets": "Pocket Dimension Settings", - "dimdoors.pockets.tooltip": "Settings that determine the spacing and maximum size of pockets in the pocket world", - "dimdoors.pockets.pocketGridSize": "Pocket Grid Size", - "dimdoors.pockets.pocketGridSize.tooltip": "Sets how many chunks apart all pockets in any pocket dimensions should be placed.", - "dimdoors.pockets.maxPocketSize": "Maximum Pocket Size", - "dimdoors.pockets.maxPocketSize.tooltip": "Sets the maximum size of any pocket. A size of x will allow for pockets up to (x + 1) * (x + 1) chunks. If this is set to any value bigger than pocketGridSize / 2, the value of pocketGridSize / 2 will be used instead.", - "dimdoors.pockets.privatePocketSize": "Private Pocket Size", - "dimdoors.pockets.privatePocketSize.tooltip": "Sets the minimum size of a newly created Private Pocket. If this is set to any value bigger than maxPocketSize, the value of maxPocketSize will be used instead.", - "dimdoors.pockets.publicPocketSize": "Public Pocket Size", - "dimdoors.pockets.publicPocketSize.tooltip": "Sets the minimum size of a newly created Public Pocket. If this is set to any value bigger than privatePocketSize, the value of privatePocketSize will be used instead.", - "dimdoors.pockets.loadAllSchematics": "Load All Schematics", - "dimdoors.pockets.loadAllSchematics.tooltip": " When true, all available Pocket Schematics will be loaded on game-start, even if the gridSize and pocketSize configuration fields would exclude these schematics from being used in 'naturally generated' pockets. The /pocket command can be used to force-generate these pockets for dungeon building or testing purposes.", - "dimdoors.pockets.cachedSchematics": "Maximum number of cached schematics", - "dimdoors.pockets.cachedSchematics.tooltip": " The maximum number of schematics cached as NBT instead of bytes. If a schematic is cached, it will be faster to place, but takes up more RAM. Schematics that are used more are more likely to be cached. The cache resets on restart.", - "dimdoors.pockets.dyeAlreadyAbsorbed": "The pocket is already that color, so the rift didn't absorb the dye.", + + "text.autoconfig.dimdoors.category.general": "General Settings", + "text.autoconfig.dimdoors.option.general.closeDoorBehind": "Close Door Behind", + "text.autoconfig.dimdoors.option.general.closeDoorBehind@Tooltip": "When true, Dimensional Doors will automatically close when the player enters their portal.", + "text.autoconfig.dimdoors.option.general.depthSpreadFactor": "Depth Spread Factor", + "text.autoconfig.dimdoors.option.general.depthSpreadFactor@Tooltip": "The scale of the dispersion when escaping from a pocket or limbo, in blocks/depth. Limbo is treated as depth 50.", + "text.autoconfig.dimdoors.option.general.riftCloseSpeed": "Rift Close Speed", + "text.autoconfig.dimdoors.option.general.riftCloseSpeed@Tooltip": "The speed at which rifts close when using the rift remover, in units of rift size per tick.", + "text.autoconfig.dimdoors.option.general.riftGrowthSpeed": "Rift Growth Speed", + "text.autoconfig.dimdoors.option.general.riftGrowthSpeed@Tooltip": "The speed at which rifts grow, in units of rift size per tick.", + "text.autoconfig.dimdoors.option.general.teleportOffset": "Teleport Offset", + "text.autoconfig.dimdoors.option.general.teleportOffset@Tooltip": "Distance in blocks to teleport the player in front of the dimensional door.", + "text.autoconfig.dimdoors.option.general.riftBoundingBoxInCreative": "Rift Bounding Box in Creative", + "text.autoconfig.dimdoors.option.general.riftBoundingBoxInCreative@Tooltip": "When true, shows the bounding boxes of floating rifts when the player is in creative.", + "text.autoconfig.dimdoors.option.general.endermanSpawnChance": "Enderman spawn chance", + "text.autoconfig.dimdoors.option.general.endermanSpawnChance@Tooltip": "The chance that an enderman spawns at a detached rift.", + "text.autoconfig.dimdoors.option.general.endermanAggressiveChance": "Enderman aggressive chance", + "text.autoconfig.dimdoors.option.general.endermanAggressiveChance@Tooltip": "The chance that an enderman spawned by a detached rift attacks the closest player.", + + "text.autoconfig.dimdoors.category.pockets": "Pocket Settings", + "text.autoconfig.dimdoors.option.pockets.pocketGridSize": "Pocket Grid Size", + "text.autoconfig.dimdoors.option.pockets.pocketGridSize@Tooltip": "Sets how many chunks apart all pockets in any pocket dimensions should be placed.", + "text.autoconfig.dimdoors.option.pockets.maxPocketSize": "Maximum Pocket Size", + "text.autoconfig.dimdoors.option.pockets.maxPocketSize@Tooltip": "Sets the maximum size of any pocket. A size of x will allow for pockets up to (x + 1) * (x + 1) chunks.", + "text.autoconfig.dimdoors.option.pockets.privatePocketSize": "Private Pocket Size", + "text.autoconfig.dimdoors.option.pockets.privatePocketSize@Tooltip": "Sets the minimum size of a newly created Private Pocket. If this is set to any value bigger than maxPocketSize, the value of maxPocketSize will be used instead.", + "text.autoconfig.dimdoors.option.pockets.publicPocketSize": "Public Pocket Size", + "text.autoconfig.dimdoors.option.pockets.publicPocketSize@Tooltip": "Sets the minimum size of a newly created Public Pocket. If this is set to any value bigger than privatePocketSize, the value of privatePocketSize will be used instead.", + "dimdoors.pocket.dyeAlreadyAbsorbed": "The pocket is already that color, so the rift didn't absorb the dye.", "dimdoors.pocket.pocketHasBeenDyed": "The pocket has been dyed %s.", "dimdoors.pocket.remainingNeededDyes": "The pocket has %s/%s of the dyes needed to be colored %s.", - "dimdoors.world": "World Generation Settings", - "dimdoors.world.tooltip": "Settings that determine where dimensional gateways and rift clusters can be generated and at what frequency", - "dimdoors.world.clusterGenChance": "Cluster Generation Chance", - "dimdoors.world.clusterGenChance.tooltip": "Sets the chance (out of 1) that a cluster of rifts will generate in a given chunk.", - "dimdoors.world.gatewayGenChance": "Gateway Generation Chance", - "dimdoors.world.gatewayGenChance.tooltip": "Sets the chance (out of 1) that a dimensional gateway will generate in a given chunk.", - "dimdoors.world.clusterDimBlacklist": "Cluster Dimension Blacklist", - "dimdoors.world.clusterDimBlacklist.tooltip": "Dimension Blacklist for the generation of Rift Scar clusters. Add a dimension ID here to prevent generation in certain dimensions.", - "dimdoors.world.gatewayDimBlacklist": "Gateway Dimension Blacklist", - "dimdoors.world.gatewayDimBlacklist.tooltip": "Dimension Blacklist for the generation of Dimensional Portal gateways. Add a dimension ID here to prevent generation in certain dimensions.", - "dimdoors.dungeons": "Dungeon Settings", - "dimdoors.dungeons.tooltip": "Settings that affect the generation of pocket dungeons", - "dimdoors.dungeons.maxDungeonDepth": "Maximum Dungeon Depth", - "dimdoors.dungeons.maxDungeonDepth.tooltip": "The depth at which limbo is located. If a Rift reaches any deeper than this while searching for a new destination, the player trying to enter the Rift will be sent straight to Limbo.", - "dimdoors.monoliths": "Monolith Settings", - "dimdoors.monoliths.tooltip": "Settings that determine how dangerous monoliths are", - "dimdoors.monoliths.dangerousLimboMonoliths": "Dangerous Limbo Monoliths", - "dimdoors.monoliths.dangerousLimboMonoliths.tooltip": "When true, Monoliths in Limbo attack the player and deal damage.", - "dimdoors.monoliths.monolithTeleportation": "Monolith Teleportation", - "dimdoors.monoliths.monolithTeleportation.tooltip": "When true, being exposed to the gaze of Monoliths for too long, will cause the player to be teleported to the void above Limbo.", - "dimdoors.limbo": "Limbo Settings", - "dimdoors.limbo.tooltip": "Settings that control various aspects of the Limbo dimension", - "dimdoors.limbo.universalLimbo": "Universal Limbo", - "dimdoors.limbo.universalLimbo.tooltip": "When true, players are also teleported to Limbo when they die in any non-Pocket Dimension (except Limbo itself). Otherwise, players only go to Limbo if they die in a Pocket Dimension.", - "dimdoors.limbo.hardcoreLimbo": "Hardcore Limbo", - "dimdoors.limbo.hardcoreLimbo.tooltip": "When true, a player dying in Limbo will respawn in Limbo, making Eternal Fluid or Golden Dimensional Doors the only way to escape Limbo.", - "dimdoors.graphics": "Graphics Settings", - "dimdoors.graphics.tooltip": "Settings that control the appearance of dimdoors, such as the rift animation.", - "dimdoors.graphics.highlightRiftCoreFor": "Time to Highlight Rift Core", - "dimdoors.graphics.highlightRiftCoreFor.tooltip": "How long, in milliseconds, the rift's core (tesseract animation) should be shown for when attempting to place a door near a large rift but not directly on it. Set to -1 to disable.", - "dimdoors.graphics.showRiftCore": "Always Show Rift Cores", - "dimdoors.graphics.showRiftCore.tooltip": "Set this to true to always show rifts' cores (tesseract animation).", - "dimdoors.graphics.riftSize": "Rift Size", - "dimdoors.graphics.riftSize.tooltip": "Multiplier affecting how large rifts should be rendered, 1 being the default size.", - "dimdoors.graphics.riftJitter": "Rift Jitter", - "dimdoors.graphics.riftJitter.tooltip": "Multiplier affecting how much rifts should jitter, 1 being the default size.", + + "text.autoconfig.dimdoors.category.world": "Worldgen Settings", + "text.autoconfig.dimdoors.option.world.clusterGenChance": "Cluster Generation Chance", + "text.autoconfig.dimdoors.option.world.clusterGenChance@Tooltip": "Sets the chance (out of 1) that a cluster of rifts will generate in a given chunk.", + "text.autoconfig.dimdoors.option.world.gatewayGenChance": "Gateway Generation Chance", + "text.autoconfig.dimdoors.option.world.gatewayGenChance@Tooltip": "Sets the chance (out of 1) that a dimensional gateway will generate in a given chunk.", + "text.autoconfig.dimdoors.option.world.clusterDimBlacklist": "Cluster Dimension Blacklist", + "text.autoconfig.dimdoors.option.world.clusterDimBlacklist@Tooltip": "Dimension Blacklist for the generation of Rift Scar clusters. Add a dimension ID here to prevent generation in certain dimensions.", + "text.autoconfig.dimdoors.option.world.gatewayDimBlacklist": "Gateway Dimension Blacklist", + "text.autoconfig.dimdoors.option.world.gatewayDimBlacklist@Tooltip": "Dimension Blacklist for the generation of Dimensional Portal gateways. Add a dimension ID here to prevent generation in certain dimensions.", + + "text.autoconfig.dimdoors.category.dungeons": "Dungeon Settings", + "text.autoconfig.dimdoors.option.dungeons.maxDungeonDepth": "Maximum Dungeon Depth", + "text.autoconfig.dimdoors.option.dungeons.maxDungeonDepth@Tooltip": "The depth at which limbo is located. If a Rift reaches any deeper than this while searching for a new destination, the player trying to enter the Rift will be sent straight to Limbo.", + + "text.autoconfig.dimdoors.category.monoliths": "Monolith Settings", + "text.autoconfig.dimdoors.option.monoliths.dangerousLimboMonoliths": "Dangerous Limbo Monoliths", + "text.autoconfig.dimdoors.option.monoliths.dangerousLimboMonoliths@Tooltip": "When true, Monoliths in Limbo attack the player and deal damage.", + "text.autoconfig.dimdoors.option.monoliths.monolithTeleportation": "Monolith Teleportation", + "text.autoconfig.dimdoors.option.monoliths.monolithTeleportation@Tooltip": "When true, being exposed to the gaze of Monoliths for too long, will cause the player to be teleported to the void above Limbo.", + + "text.autoconfig.dimdoors.category.limbo": "Limbo Settings", + "text.autoconfig.dimdoors.option.limbo.universalLimbo": "Universal Limbo", + "text.autoconfig.dimdoors.option.limbo.universalLimbo@Tooltip": "When true, players are also teleported to Limbo when they die in any non-Pocket Dimension (except Limbo itself). Otherwise, players only go to Limbo if they die in a Pocket Dimension.", + "text.autoconfig.dimdoors.option.limbo.hardcoreLimbo": "Hardcore Limbo", + "text.autoconfig.dimdoors.option.limbo.hardcoreLimbo@Tooltip": "When true, a player dying in Limbo will respawn in Limbo, making Eternal Fluid or Golden Dimensional Doors the only way to escape Limbo.", + + "text.autoconfig.dimdoors.category.graphics": "Graphics Settings", + "text.autoconfig.dimdoors.option.graphics.highlightRiftCoreFor": "Time to Highlight Rift Core", + "text.autoconfig.dimdoors.option.graphics.highlightRiftCoreFor@Tooltip": "How long, in milliseconds, the rift's core (tesseract animation) should be shown for when attempting to place a door near a large rift but not directly on it. Set to -1 to disable.", + "text.autoconfig.dimdoors.option.graphics.showRiftCore": "Always Show Rift Cores", + "text.autoconfig.dimdoors.option.graphics.showRiftCore@Tooltip": "Set this to true to always show rifts' cores (tesseract animation).", + "text.autoconfig.dimdoors.option.graphics.riftSize": "Rift Size", + "text.autoconfig.dimdoors.option.graphics.riftSize@Tooltip": "Multiplier affecting how large rifts should be rendered, 1 being the default size.", + "text.autoconfig.dimdoors.option.graphics.riftJitter": "Rift Jitter", + "text.autoconfig.dimdoors.option.graphics.riftJitter@Tooltip": "Multiplier affecting how much rifts should jitter, 1 being the default size.", + "argument.dimdoors.schematic.invalidNamespace": "Invalid schematic namespace. Expected one of %s, found %s.", "command.dimdoors.schematicv2.unknownSchematic": "Unknown schematic \"%s\" in namespace \"%s\" ", "dimdoors.config.screen.reload": "Reload Config",