diff --git a/generated/json/plugin-modules.json b/generated/json/plugin-modules.json index 3b1d8ee..8fe914c 100644 --- a/generated/json/plugin-modules.json +++ b/generated/json/plugin-modules.json @@ -10099,6 +10099,8965 @@ ] } ] + }, + { + "plugin": "Tim", + "repo": "Anxious112/TIM-RUSHER-PLUGIN-1.21.4", + "features": [ + { + "name": "BaromineHUD", + "class_name": "BaromineHud", + "feature_type": "hud", + "description": "Displays Baromine status, progress, tool durability and session runtime.", + "settings": [] + }, + { + "name": "ChambersAssistantHUD", + "class_name": "ChambersAssistantHud", + "feature_type": "hud", + "description": "Displays Trial Chamber element counts.", + "settings": [] + }, + { + "name": "CityAssistantHUD", + "class_name": "CityAssistantHud", + "feature_type": "hud", + "description": "Displays Ancient City element counts and Warden timers.", + "settings": [] + }, + { + "name": "DungeonAssistantHUD", + "class_name": "DungeonAssistantHud", + "feature_type": "hud", + "description": "Displays dungeon element counts.", + "settings": [] + }, + { + "name": "DuraPanelHUD", + "class_name": "DuraPanelHUD", + "feature_type": "hud", + "description": "Shows main-hand and off-hand item durability.", + "settings": [] + }, + { + "name": "EightToOneHUD", + "class_name": "EightToOneHUD", + "feature_type": "hud", + "description": "Tracks Nether portal and Respawn Anchor counts.", + "settings": [] + }, + { + "name": "EndAssistantHUD", + "class_name": "EndAssistantHud", + "feature_type": "hud", + "description": "Displays End Assistant stats: elytras, chests and shulkers.", + "settings": [] + }, + { + "name": "GatekeeperHUD", + "class_name": "GatekeeperHUD", + "feature_type": "hud", + "description": "Displays tracked End portal and End gateway counts.", + "settings": [] + }, + { + "name": "InfoAssistantHUD", + "class_name": "InfoAssistantHud", + "feature_type": "hud", + "description": "Lists the currently enabled Tim modules.", + "settings": [] + }, + { + "name": "LastSeenPlayerHUD", + "class_name": "LastSeenPlayerHud", + "feature_type": "hud", + "description": "Shows the most recently seen nearby player.", + "settings": [] + }, + { + "name": "LootLensHUD", + "class_name": "LootLensHud", + "feature_type": "hud", + "description": "Displays tracked container counts from Loot Lens.", + "settings": [] + }, + { + "name": "MotanceHUD", + "class_name": "MotanceHud", + "feature_type": "hud", + "description": "Shows movement state: sneaking, jumping, and sprinting.", + "settings": [] + }, + { + "name": "NeighbourhoodWatchHUD", + "class_name": "NeighbourhoodWatchHUD", + "feature_type": "hud", + "description": "Lists nearby players with their tracked status.", + "settings": [] + }, + { + "name": "PortalMakerHUD", + "class_name": "PortalMakerHud", + "feature_type": "hud", + "description": "Displays the progress of the Portal Maker module.", + "settings": [] + }, + { + "name": "PortalStockHUD", + "class_name": "PortalStockHud", + "feature_type": "hud", + "description": "Displays obsidian / ender chest stock and portal frame progress.", + "settings": [] + }, + { + "name": "PositionHUD", + "class_name": "PositionHud", + "feature_type": "hud", + "description": "Shows coordinates, dimension and Nether/Overworld equivalents.", + "settings": [] + }, + { + "name": "RocketPilotHUD", + "class_name": "RocketPilotHud", + "feature_type": "hud", + "description": "Displays RocketPilot status, elytra durability and rocket count.", + "settings": [] + }, + { + "name": "SecondLifeHUD", + "class_name": "SecondLifeHUD", + "feature_type": "hud", + "description": "Shows how many Totems of Undying you are carrying.", + "settings": [] + }, + { + "name": "ServerReportHUD", + "class_name": "ServerReportHUD", + "feature_type": "hud", + "description": "Shows biome, weather and active status effects.", + "settings": [] + }, + { + "name": "StatisticsInformation", + "class_name": "StatisticsInformation", + "feature_type": "hud", + "description": "Shows FPS, ping, TPS, loaded chunks, position and facing.", + "settings": [] + }, + { + "name": "TimeThrottleHUD", + "class_name": "TimeThrottleHUD", + "feature_type": "hud", + "description": "Displays the system speed impact of the Timethrottle module.", + "settings": [] + }, + { + "name": "baromine", + "class_name": "Baromine", + "feature_type": "module", + "description": "Automated Baritone miner for targeted ores or blocks with heavy safety protocols.", + "settings": [ + { + "name": "target-mode", + "var_name": "targetMode", + "description": "What type of block to mine.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "TargetMode.Ores", + "children": [] + }, + { + "name": "target-ores", + "var_name": "targetOres", + "description": "Ores to mine. Full block picker -- add as many as you like.", + "type": "blocklist", + "setting_class": "BlockListSetting", + "default": "Blocks.DIAMOND_ORE", + "children": [] + }, + { + "name": "target-blocks", + "var_name": "targetBlocks", + "description": "Blocks to mine. Full block picker -- add as many as you like.", + "type": "blocklist", + "setting_class": "BlockListSetting", + "default": "Blocks.STONE", + "children": [] + }, + { + "name": "include-deepslate", + "var_name": "includeDeepslate", + "description": "Also mine the deepslate variant of each selected ore.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "target-stacks", + "var_name": "targetStacks", + "description": "Total stacks to mine before stopping the module entirely.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1, + "children": [] + }, + { + "name": "auto-craft", + "var_name": "autoCraft", + "description": "Automatically crafts items using a crafting table.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "CraftMode.Disabled", + "children": [] + }, + { + "name": "craft-ore-list", + "var_name": "craftOreList", + "description": "Ore blocks to craft from raw materials (e.g. Iron Block, Diamond Block).", + "type": "blocklist", + "setting_class": "BlockListSetting", + "default": null, + "children": [] + }, + { + "name": "craft-block-list", + "var_name": "craftBlockList", + "description": "Blocks to craft from mined materials (e.g. Stone Bricks, slabs, stairs).", + "type": "blocklist", + "setting_class": "BlockListSetting", + "default": null, + "children": [] + }, + { + "name": "warning-health", + "var_name": "warningHealth", + "description": "Health level to trigger a warning.", + "type": "number", + "setting_class": "NumberSetting", + "default": 12.0, + "children": [] + }, + { + "name": "critical-health", + "var_name": "criticalHealth", + "description": "Health level to trigger an instant disconnect.", + "type": "number", + "setting_class": "NumberSetting", + "default": 6.0, + "children": [] + }, + { + "name": "disconnect-on-player", + "var_name": "disconnectOnPlayer", + "description": "Instantly disconnects if another player enters render distance.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "pause-in-combat", + "var_name": "pauseInCombat", + "description": "Pauses if a hostile mob is within ~6 blocks.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "golden-helmet", + "var_name": "goldenHelmet", + "description": "Stops mining if you are not wearing a Golden Helmet.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "lava-avoidance", + "var_name": "lavaAvoidance", + "description": "Activates safety protocols if lava is directly touching you.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "water-avoidance", + "var_name": "waterAvoidance", + "description": "Activates safety protocols if water is directly touching you.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "drop-excess", + "var_name": "dropExcessMode", + "description": "Automatically drops excess blocks, keeping only a single stack.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ExcessDropMode.Disabled", + "children": [] + }, + { + "name": "avoid-deep-dark", + "var_name": "avoidDeepDark", + "description": "Tactical retreat if you enter the Deep Dark biome.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "safe-logout", + "var_name": "safeLogout", + "description": "Hides inside a wall before turning off when the target is reached.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "min-y-level", + "var_name": "minYLevel", + "description": "Stops mining if the player goes below this Y-level.", + "type": "number", + "setting_class": "NumberSetting", + "default": -64, + "children": [] + }, + { + "name": "max-y-level", + "var_name": "maxYLevel", + "description": "Stops mining if the player goes above this Y-level.", + "type": "number", + "setting_class": "NumberSetting", + "default": 320, + "children": [] + }, + { + "name": "radius-limit", + "var_name": "radiusLimit", + "description": "Stops mining if the player wanders too far from the start.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "radius-blocks", + "var_name": "radiusBlocks", + "description": "The maximum block radius from the starting position.", + "type": "number", + "setting_class": "NumberSetting", + "default": 500, + "children": [] + }, + { + "name": "deposit-mode", + "var_name": "depositMode", + "description": "Where to stash items.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "DepositMode.EnderChest", + "children": [] + }, + { + "name": "deposit-stacks", + "var_name": "depositStacks", + "description": "How many stacks in your inventory trigger the deposit process.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1, + "children": [] + }, + { + "name": "swap-slot", + "var_name": "swapSlot", + "description": "The hotbar slot used to swap Shulkers / Ender Chests into.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1, + "children": [] + }, + { + "name": "tool-enchant", + "var_name": "toolEnchant", + "description": "Which enchantment to require when breaking blocks / replacing tools.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ToolEnchant.SilkTouch", + "children": [] + }, + { + "name": "food-items", + "var_name": "foodItems", + "description": "Food items to pull from the Ender Chest when low. Full item picker.", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": "Items.ENCHANTED_GOLDEN_APPLE", + "children": [] + }, + { + "name": "min-food-count", + "var_name": "minFoodCount", + "description": "Minimum total of the selected foods to keep.", + "type": "number", + "setting_class": "NumberSetting", + "default": 10, + "children": [] + }, + { + "name": "highlight-craft-container", + "var_name": "highlightContainerKey", + "description": "Look at a Shulker Box or Chest and press to set it as the crafting material source.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "auto-mend", + "var_name": "autoMend", + "description": "Mines XP ores to repair tools, then resumes.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "mend-ores", + "var_name": "mendOres", + "description": "Ore blocks to mine for XP when auto-mending. Full block picker.", + "type": "blocklist", + "setting_class": "BlockListSetting", + "default": "Blocks.NETHER_QUARTZ_ORE", + "children": [] + }, + { + "name": "max-mend-durability", + "var_name": "maxMendDurability", + "description": "Durability % to reach before stopping Auto-Mend.", + "type": "number", + "setting_class": "NumberSetting", + "default": 70.0, + "children": [] + }, + { + "name": "min-tool-durability", + "var_name": "minToolDurability", + "description": "Durability % to trigger replacing tools / activating Auto-Mend.", + "type": "number", + "setting_class": "NumberSetting", + "default": 10.0, + "children": [] + }, + { + "name": "anti-afk", + "var_name": "antiAfk", + "description": "Periodically jumps and swings to prevent AFK kicks when stuck.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "enable-max-runtime", + "var_name": "enableMaxRuntime", + "description": "Enables a maximum time limit before auto-off.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "max-runtime-hours", + "var_name": "maxRuntimeHours", + "description": "Maximum hours to run before turning off.", + "type": "number", + "setting_class": "NumberSetting", + "default": 8.0, + "children": [] + }, + { + "name": "auto-reconnect", + "var_name": "autoReconnect", + "description": "Reconnects after X hours if disconnected by safety or timeout.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "delay-hours", + "var_name": "reconnectHours", + "description": "How many hours to wait before attempting to reconnect.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "ping-mode", + "var_name": "pingMode", + "description": "How you want to be notified of module events.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "PingMode.Both", + "children": [] + }, + { + "name": "warning-sound", + "var_name": "warningSound", + "description": "Which sound to play for notifications.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "WarningSound.Pling", + "children": [] + }, + { + "name": "volume", + "var_name": "soundVolume", + "description": "The volume of the warning sound.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + } + ] + }, + { + "name": "chambers-assistant", + "class_name": "ChambersAssistant", + "feature_type": "module", + "description": "Highlights Trial Chambers elements: spawners, vaults, pots, and breezes.", + "settings": [ + { + "name": "range", + "var_name": "range", + "description": "Detection range in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 16, + "children": [] + }, + { + "name": "chamber-y-level", + "var_name": "chamberYLevel", + "description": "Maximum Y level to scan. Trial Chambers can generate up to around Y = 40.", + "type": "number", + "setting_class": "NumberSetting", + "default": 40, + "children": [] + }, + { + "name": "render-mode", + "var_name": "renderMode", + "description": "GLOW = layered bloom boxes. SPECTRAL = outline shader. PULSE = fading highlight.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "RenderMode.GLOW", + "children": [] + }, + { + "name": "beam-width", + "var_name": "beamWidth", + "description": "Width of the beams for entities and anomalies.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Number of bloom layers rendered around each target.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "How far each bloom layer expands outward (in blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.04, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Alpha of the innermost glow layer (0-255).", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "spectral-block-fill-alpha", + "var_name": "spectralBlockFillAlpha", + "description": "Fill alpha for block targets in SPECTRAL mode (0 = invisible, 30 = subtle).", + "type": "number", + "setting_class": "NumberSetting", + "default": 30, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "track-spawners", + "var_name": "trackSpawners", + "description": "Highlight Trial Spawners (normal and ominous).", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "spawner-color", + "var_name": "spawnerColor", + "description": "Color for idle Trial Spawners.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 255, 255)", + "children": [] + }, + { + "name": "active-spawner-color", + "var_name": "activeSpawnerColor", + "description": "Color for Trial Spawners that are currently active.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 0, 0, 255)", + "children": [] + }, + { + "name": "ejecting-spawner-color", + "var_name": "ejectingSpawnerColor", + "description": "Color for Trial Spawners that are ejecting rewards.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 0, 255)", + "children": [] + }, + { + "name": "ominous-spawner-color", + "var_name": "ominousSpawnerColor", + "description": "Color for idle Ominous Spawners.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 180, 255, 255)", + "children": [] + }, + { + "name": "active-ominous-spawner-color", + "var_name": "activeOminousSpawnerColor", + "description": "Color for Ominous Spawners that are currently active.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(180, 0, 0, 255)", + "children": [] + }, + { + "name": "track-vaults", + "var_name": "trackVaults", + "description": "Highlight Vaults (normal and ominous).", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "vault-color", + "var_name": "vaultColor", + "description": "Color for active/unlooted vaults.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 215, 0, 255)", + "children": [] + }, + { + "name": "ejecting-vault-color", + "var_name": "ejectingVaultColor", + "description": "Color for vaults that are currently ejecting loot.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 0, 255)", + "children": [] + }, + { + "name": "ominous-vault-color", + "var_name": "ominousVaultColor", + "description": "Color for Ominous Vaults.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(180, 0, 255, 255)", + "children": [] + }, + { + "name": "track-containers", + "var_name": "trackContainers", + "description": "Highlight standard chests, barrels, and dispensers.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "container-color", + "var_name": "containerColor", + "description": "Color for standard chests, barrels, and dispensers.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 0, 255, 255)", + "children": [] + }, + { + "name": "container-whitelist", + "var_name": "containerWhitelist", + "description": "Items to alert you about when opening Chests/Barrels/Dispensers.", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": "Items.NETHERITE_BLOCK", + "children": [] + }, + { + "name": "pot-whitelist", + "var_name": "potWhitelist", + "description": "Items to search for inside Decorated Pots.", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": "Items.DIAMOND", + "children": [] + }, + { + "name": "loot-pot-color", + "var_name": "lootPotColor", + "description": "Color for pots containing whitelisted items.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 255, 255)", + "children": [] + }, + { + "name": "track-breezes", + "var_name": "trackBreezes", + "description": "Highlights Breezes and Wind Charge projectiles.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "breeze-color", + "var_name": "breezeColor", + "description": "Color for Breezes and Wind Charges.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 255, 255)", + "children": [] + }, + { + "name": "track-item-frames", + "var_name": "trackOminousItemFrames", + "description": "Highlights invisible Ominous Item Frames holding items.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "item-frame-color", + "var_name": "itemFrameColor", + "description": "Color for invisible Item Frames.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 0, 255, 255)", + "children": [] + }, + { + "name": "track-keys-and-bottles", + "var_name": "trackTrialItems", + "description": "Highlights dropped Trial Keys and Ominous Bottles.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "trial-item-color", + "var_name": "trialItemColor", + "description": "Color for dropped Trial Keys and Ominous Bottles.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 0, 255)", + "children": [] + }, + { + "name": "auto-open-vaults", + "var_name": "autoOpenVaults", + "description": "Automatically opens Vaults when you have a Trial Key.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "auto-drink-ominous", + "var_name": "autoDrinkOminous", + "description": "Automatically drinks an Ominous Bottle when near a Trial Spawner to trigger Ominous state.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "alerts", + "var_name": "enableAlerts", + "description": "Master toggle for audio cues, reward announcements, and omen effect warnings.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "alert-sound", + "var_name": "alertSound", + "description": "Which sound to play for module alerts.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "AlertSound.DRAGON_GROWL", + "children": [] + }, + { + "name": "alert-volume", + "var_name": "alertVolume", + "description": "Volume of the alert sound. Goes up to 5.0 for extra loud alerts.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "alert-on-loot-pot", + "var_name": "alertOnLootPot", + "description": "Plays a sound and warns you when a pot containing whitelisted loot is found.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "disconnect-on-player", + "var_name": "disconnectOnPlayer", + "description": "Instantly disconnects from the server if another player enters render distance.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "auto-disable-on-low-health", + "var_name": "autoDisableOnLowHealth", + "description": "Disables the module if health is critical.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + } + ] + }, + { + "name": "city-assistant", + "class_name": "CityAssistant", + "feature_type": "module", + "description": "Highlights Ancient City elements: shriekers, sensors, chests, and pings for Wardens.", + "settings": [ + { + "name": "range", + "var_name": "range", + "description": "Detection range in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 16, + "children": [] + }, + { + "name": "city-y-level", + "var_name": "cityYLevel", + "description": "Maximum Y level to scan. Ancient Cities generate around Y = -52.", + "type": "number", + "setting_class": "NumberSetting", + "default": -20, + "children": [] + }, + { + "name": "render-mode", + "var_name": "renderMode", + "description": "GLOW = layered bloom boxes. SPECTRAL = outline shader. PULSE = fading highlight.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "RenderMode.GLOW", + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Number of bloom layers rendered around each target.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "How far each bloom layer expands outward (in blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.04, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Alpha of the innermost glow layer (0-255).", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "spectral-block-fill-alpha", + "var_name": "spectralBlockFillAlpha", + "description": "Fill alpha for block targets in SPECTRAL mode (0 = invisible, 30 = subtle).", + "type": "number", + "setting_class": "NumberSetting", + "default": 30, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "track-shriekers", + "var_name": "trackShriekers", + "description": "Highlight Sculk Shriekers.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "shrieker-color", + "var_name": "shriekerColor", + "description": "Color for idle Sculk Shriekers.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 180, 255, 255)", + "children": [] + }, + { + "name": "active-shrieker-color", + "var_name": "activeShriekerColor", + "description": "Color for currently shrieking blocks.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 0, 0, 255)", + "children": [] + }, + { + "name": "disabled-shrieker-color", + "var_name": "disabledShriekerColor", + "description": "Color for Shriekers that can no longer summon Wardens.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(100, 100, 100, 255)", + "children": [] + }, + { + "name": "track-sensors", + "var_name": "trackSensors", + "description": "Highlight Sculk Sensors.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "sensor-color", + "var_name": "sensorColor", + "description": "Color for idle Sculk Sensors.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 255, 255)", + "children": [] + }, + { + "name": "active-sensor-color", + "var_name": "activeSensorColor", + "description": "Color for actively listening/triggered Sculk Sensors.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 100, 0, 255)", + "children": [] + }, + { + "name": "track-containers", + "var_name": "trackContainers", + "description": "Highlight standard chests.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "container-color", + "var_name": "containerColor", + "description": "Color for standard chests.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 0, 255, 255)", + "children": [] + }, + { + "name": "container-whitelist", + "var_name": "containerWhitelist", + "description": "Items to alert you about when opening Chests.", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": "Items.NETHERITE_BLOCK", + "children": [] + }, + { + "name": "alerts", + "var_name": "enableAlerts", + "description": "Master toggle for audio cues and loot announcements.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "alert-sound", + "var_name": "alertSound", + "description": "Which sound to play for module alerts.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "AlertSound.WARDEN_ROAR", + "children": [] + }, + { + "name": "alert-volume", + "var_name": "alertVolume", + "description": "Volume of the alert sound. Goes up to 5.0 for extra loud alerts.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "warden-ping", + "var_name": "enableWardenPing", + "description": "Plays a distinct sound and warns you heavily when a Warden spawns or approaches.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "auto-milk-darkness", + "var_name": "autoMilkDarkness", + "description": "Automatically drinks milk to clear the Darkness effect.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "disconnect-on-player", + "var_name": "disconnectOnPlayer", + "description": "Instantly disconnects from the server if another player enters render distance.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "auto-disable-on-low-health", + "var_name": "autoDisableOnLowHealth", + "description": "Disables the module if health is critical.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + } + ] + }, + { + "name": "datamine", + "class_name": "Datamine", + "feature_type": "module", + "description": "Queues blocks for fast packet mining with double break.", + "settings": [ + { + "name": "mining-mode", + "var_name": "miningMode", + "description": "Packet uses exploit bursts for instant breaking. Normal uses standard vanilla breaking.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "MiningMode.Packet", + "children": [] + }, + { + "name": "instant-remine", + "var_name": "instantRemine", + "description": "Automatically mines the last broken block when it is replaced.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "remine-delay", + "var_name": "remineDelay", + "description": "Delay in ticks before checking for a replaced block. 0 = instant.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "validation-ticks", + "var_name": "validationTicks", + "description": "Ticks to wait before validating whether a block was broken.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "max-attempts", + "var_name": "maxAttempts", + "description": "Maximum total mining attempts for each block.", + "type": "number", + "setting_class": "NumberSetting", + "default": 3, + "children": [] + }, + { + "name": "auto-swap", + "var_name": "swapMode", + "description": "How to switch tools. Silent switches server-side without changing your visible hotbar.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "SwapMode.Normal", + "children": [] + }, + { + "name": "silent-swing", + "var_name": "silentSwing", + "description": "Hides the client-side hand swing animation. (Server still receives the packet).", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "durability-protection", + "var_name": "durabilityProtection", + "description": "Prevents the auto-tool feature from selecting tools that are about to break.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "durability-threshold", + "var_name": "durabilityThreshold", + "description": "The minimum durability remaining for a tool to be used.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "vanilla-bypass", + "var_name": "vanilla", + "description": "Bypasses the mining queue for blocks that break within this many ticks. 0 = disabled.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0, + "children": [] + }, + { + "name": "auto-collect", + "var_name": "autoCollect", + "description": "Uses Baritone to pathfind and collect dropped items when the queue is empty.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "collect-range", + "var_name": "collectRange", + "description": "Maximum distance to search for dropped items.", + "type": "number", + "setting_class": "NumberSetting", + "default": 16, + "children": [] + }, + { + "name": "collect-whitelist", + "var_name": "collectWhitelist", + "description": "Only collects the specified items. Leave empty to collect all items.", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": null, + "children": [] + }, + { + "name": "collect-delay", + "var_name": "collectDelay", + "description": "Delay in ticks after an item drops before auto-collect activates.", + "type": "number", + "setting_class": "NumberSetting", + "default": 10, + "children": [] + }, + { + "name": "collect-grace-period", + "var_name": "gracePeriod", + "description": "Seconds after a whitelisted item drops to actively search for it.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "render", + "var_name": "render", + "description": "Renders packet-mining progress and queued blocks.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "highlight-style", + "var_name": "highlightStyle", + "description": "The style to highlight blocks with.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "HighlightStyle.GLOW", + "children": [] + }, + { + "name": "shape-mode", + "var_name": "shapeMode", + "description": "How mining progress and queued blocks are rendered.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ShapeMode.Both", + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Bloom layer count.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "Bloom spread.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Bloom alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 50, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "spectral-line-alpha", + "var_name": "spectralLineAlpha", + "description": "Outline alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 255, + "children": [] + }, + { + "name": "spectral-fill-alpha", + "var_name": "spectralFillAlpha", + "description": "Fill alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "spectral-expand", + "var_name": "spectralExpand", + "description": "Box expansion.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "queue-color", + "var_name": "queueColor", + "description": "The color for queued blocks.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 200, 255, 200)", + "children": [] + }, + { + "name": "primary-color", + "var_name": "primaryColor", + "description": "The color for the primary target.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 100, 255)", + "children": [] + }, + { + "name": "secondary-color", + "var_name": "secondaryColor", + "description": "The color for the secondary target.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(180, 0, 255, 200)", + "children": [] + } + ] + }, + { + "name": "dungeon-assistant", + "class_name": "DungeonAssistant", + "feature_type": "module", + "description": "Highlights dungeon elements: spawners, chests, and dungeon blocks.", + "settings": [ + { + "name": "range", + "var_name": "range", + "description": "Detection range in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 16, + "children": [] + }, + { + "name": "dungeon-y-level", + "var_name": "dungeonYLevel", + "description": "Maximum Y level to scan.", + "type": "number", + "setting_class": "NumberSetting", + "default": 100, + "children": [] + }, + { + "name": "render-mode", + "var_name": "renderMode", + "description": "GLOW = layered bloom boxes. SPECTRAL = outline shader. PULSE = fading highlight.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "RenderMode.GLOW", + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Number of bloom layers rendered around each target.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "How far each bloom layer expands outward.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.04, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Alpha of the innermost glow layer.", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "spectral-block-fill-alpha", + "var_name": "spectralBlockFillAlpha", + "description": "Fill alpha for block targets in SPECTRAL mode.", + "type": "number", + "setting_class": "NumberSetting", + "default": 30, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "steal-dump-buttons", + "var_name": "stealDumpButtons", + "description": "Show steal and dump buttons on container screens.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "beam-style", + "var_name": "beamStyle", + "description": "BOX = box beam. GUARDIAN = wide glow beam.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "BeamStyle.GUARDIAN", + "children": [] + }, + { + "name": "beam-width", + "var_name": "beamWidth", + "description": "Box beam width (hundredths of a block).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "merge-beams", + "var_name": "mergeBeams", + "description": "Merge beams for nearby targets.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "merge-distance", + "var_name": "mergeDistance", + "description": "Distance within which beams are merged.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2.0, + "children": [] + }, + { + "name": "guardian-radius", + "var_name": "guardianBeamRadius", + "description": "Guardian beam radius (blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.08, + "children": [] + }, + { + "name": "guardian-strands", + "var_name": "guardianStrands", + "description": "Guardian glow layer count.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "guardian-spin-speed", + "var_name": "guardianSpinSpeed", + "description": "Unused (visual pacing).", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "guardian-core-alpha", + "var_name": "guardianCoreAlpha", + "description": "Alpha of the beam centre core.", + "type": "number", + "setting_class": "NumberSetting", + "default": 90, + "children": [] + }, + { + "name": "guardian-strand-alpha", + "var_name": "guardianStrandAlpha", + "description": "Alpha of the outer glow layers.", + "type": "number", + "setting_class": "NumberSetting", + "default": 160, + "children": [] + }, + { + "name": "guardian-glow", + "var_name": "guardianGlow", + "description": "Add a soft bloom halo around the guardian beam.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "guardian-glow-radius", + "var_name": "guardianGlowRadius", + "description": "Radius of the bloom halo.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.18, + "children": [] + }, + { + "name": "chest-beam-mode", + "var_name": "chestBeamMode", + "description": "Connecting beams from chests to the sky.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ChestBeamMode.NONE", + "children": [] + }, + { + "name": "chest-beam-y-level", + "var_name": "chestBeamMinY", + "description": "Only render beams on chests at or above this Y level.", + "type": "number", + "setting_class": "NumberSetting", + "default": -64, + "children": [] + }, + { + "name": "chest-beam-color", + "var_name": "chestBeamColor", + "description": "Color of the beams drawn on chests.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 215, 0, 180)", + "children": [] + }, + { + "name": "track-spawners", + "var_name": "trackSpawners", + "description": "Highlight monster spawners.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "spawner-color", + "var_name": "spawnerColor", + "description": "Monster spawner highlight color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 0, 0, 255)", + "children": [] + }, + { + "name": "highlight-spawner-torches", + "var_name": "highlightSpawnerTorches", + "description": "Highlights torches within 5 blocks of a spawner.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "spawner-torch-color", + "var_name": "spawnerTorchColor", + "description": "Color for torches near spawners.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 0, 255)", + "children": [] + }, + { + "name": "track-chests", + "var_name": "trackChests", + "description": "Highlight chests and count broken ones.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "chest-color", + "var_name": "chestColor", + "description": "Chest highlight color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 215, 0, 255)", + "children": [] + }, + { + "name": "scan-blocks", + "var_name": "scanCustomBlocks", + "description": "Highlight selected blocks in the surrounding area.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "blocks", + "var_name": "filterBlocks", + "description": "Blocks to search for and highlight in the world.", + "type": "blocklist", + "setting_class": "BlockListSetting", + "default": "Blocks.COBBLESTONE", + "children": [] + }, + { + "name": "block-color", + "var_name": "customBlockColor", + "description": "Highlight color for the selected blocks.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(128, 200, 128, 255)", + "children": [] + }, + { + "name": "toggle-key", + "var_name": "toggleBlocksKey", + "description": "Key to toggle custom block scanning on/off.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "misrotated-deepslate", + "var_name": "trackMisrotatedDeepslate", + "description": "Highlights Deepslate blocks facing the wrong direction.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "misrotated-deepslate-color", + "var_name": "misrotatedDeepslateColor", + "description": "Highlight color for misrotated Deepslate.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 180, 255, 255)", + "children": [] + }, + { + "name": "low-y-stone-dirt", + "var_name": "trackLowYStoneDirt", + "description": "Highlights Stone and Dirt below a specified Y level.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "low-y-level", + "var_name": "lowYLevel", + "description": "The Y level below which Stone and Dirt will be highlighted.", + "type": "number", + "setting_class": "NumberSetting", + "default": -5, + "children": [] + }, + { + "name": "low-y-color", + "var_name": "lowYStoneDirtColor", + "description": "Highlight color for Stone and Dirt below the Y level.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(128, 128, 128, 255)", + "children": [] + }, + { + "name": "track-chest-minecarts", + "var_name": "trackChestMinecarts", + "description": "Highlight chest minecarts.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "chest-minecart-color", + "var_name": "chestMinecartColor", + "description": "Chest minecart highlight color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 180, 0, 255)", + "children": [] + }, + { + "name": "minecart-anomalies", + "var_name": "trackAnomalousMinecarts", + "description": "Highlights displaced or misrotated chest minecarts.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "misrotated-minecart-color", + "var_name": "misrotatedMinecartColor", + "description": "Color for misrotated chest minecarts.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(180, 0, 255, 255)", + "children": [] + }, + { + "name": "displaced-minecart-color", + "var_name": "displacedMinecartColor", + "description": "Color for physically displaced chest minecarts.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 255, 255)", + "children": [] + }, + { + "name": "track-endermites", + "var_name": "trackEndermites", + "description": "Highlights Endermites in the Overworld.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "endermite-color", + "var_name": "endermiteColor", + "description": "The highlight color for Endermites.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(138, 43, 226, 255)", + "children": [] + }, + { + "name": "track-xp-orbs", + "var_name": "trackXpOrbs", + "description": "Highlights Experience Orbs in the world.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "xp-orb-color", + "var_name": "xpOrbColor", + "description": "The highlight color for Experience Orbs.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 0, 255)", + "children": [] + }, + { + "name": "auto-open-break", + "var_name": "autoOpenBreak", + "description": "Automatically open, check, and break empty containers.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "silent-mode", + "var_name": "silentMode", + "description": "Open containers invisibly and switch tools silently.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "break-delay", + "var_name": "breakDelay", + "description": "Ticks to wait before breaking an empty container.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "whitelisted-items", + "var_name": "whitelistedItems", + "description": "Items to look for — if found the container is left open and a sound plays.", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": "Items.ENCHANTED_GOLDEN_APPLE", + "children": [] + }, + { + "name": "auto-break-spawners", + "var_name": "autoBreakSpawners", + "description": "Automatically break spawners in range.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "spawner-break-range", + "var_name": "spawnerBreakRange", + "description": "Range in blocks to break spawners.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "spawner-break-delay", + "var_name": "spawnerBreakDelay", + "description": "Ticks to wait before breaking a spawner.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "prioritize-spawners", + "var_name": "prioritizeSpawners", + "description": "Break spawners before opening chests.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "auto-disable-on-low-health", + "var_name": "autoDisableOnLowHealth", + "description": "Auto-disable if health is critically low with a totem equipped.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "low-health-threshold", + "var_name": "lowHealthThreshold", + "description": "Health level (in hearts) to trigger auto-disable.", + "type": "number", + "setting_class": "NumberSetting", + "default": 3, + "children": [] + } + ] + }, + { + "name": "eight-to-one", + "class_name": "EightToOne", + "feature_type": "module", + "description": "Tracks Nether portals and Respawn Anchors with 8:1 conversion awareness.", + "settings": [ + { + "name": "scan-anchors", + "var_name": "scanAnchors", + "description": "Scan Respawn Anchors.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "range", + "var_name": "range", + "description": "Portal detection range in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 32, + "children": [] + }, + { + "name": "show-created-count", + "var_name": "showCreatedCount", + "description": "Show a chat message each time a new portal you created is discovered.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "coord-visibility", + "var_name": "coordVisibility", + "description": "Controls how coordinates are displayed in chat.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "CoordVisibility.Visible", + "children": [] + }, + { + "name": "different-sizes", + "var_name": "differentiatePortalSizes", + "description": "Scans Nether portals and gives exit portals and custom/built portals different colors.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "auto-mark-range", + "var_name": "autoMarkRange", + "description": "Auto-mark Nether portals within this many blocks of the player as created by you.", + "type": "number", + "setting_class": "NumberSetting", + "default": 10, + "children": [] + }, + { + "name": "color-exit-portal", + "var_name": "netherColorFull", + "description": "Exit portal color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(180, 60, 255, 255)", + "children": [] + }, + { + "name": "color-custom-built", + "var_name": "netherColorCustom", + "description": "Custom/built portal color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 140, 0, 255)", + "children": [] + }, + { + "name": "color-charged", + "var_name": "anchorChargedColor", + "description": "Charged anchor color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 200, 0, 255)", + "children": [] + }, + { + "name": "color-uncharged", + "var_name": "anchorUnchargedColor", + "description": "Uncharged anchor color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(100, 100, 120, 255)", + "children": [] + }, + { + "name": "only-charged", + "var_name": "onlyShowChargedAnchors", + "description": "Only highlight anchors that have at least 1 charge.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "shape-mode", + "var_name": "shapeMode", + "description": "Box render mode.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "BoxMode.Both", + "children": [] + }, + { + "name": "highlight-style", + "var_name": "highlightStyle", + "description": "Highlight style.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "HighlightStyle.GLOW", + "children": [] + }, + { + "name": "highlight-frame", + "var_name": "highlightFrame", + "description": "Highlights the obsidian frame of Nether portals.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "dynamic-colors", + "var_name": "dynamicColors", + "description": "Cycle colors over time.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Bloom layer count.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "Bloom spread.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Bloom alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 50, + "children": [] + }, + { + "name": "line-alpha", + "var_name": "spectralLineAlpha", + "description": "Outline alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 255, + "children": [] + }, + { + "name": "fill-alpha", + "var_name": "spectralFillAlpha", + "description": "Fill alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "expand", + "var_name": "spectralExpand", + "description": "Box expansion.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "show-beam", + "var_name": "showBeam", + "description": "Render a vertical beam at each structure.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "beam-range", + "var_name": "beamRange", + "description": "Maximum horizontal distance (in chunks) to render the vertical beam.", + "type": "number", + "setting_class": "NumberSetting", + "default": 16, + "children": [] + }, + { + "name": "only-nearest-beam", + "var_name": "onlyNearestBeam", + "description": "Only render the beam for the portal closest to the player.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "beam-style", + "var_name": "beamStyle", + "description": "Beam style.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "BeamStyle.GUARDIAN", + "children": [] + }, + { + "name": "beam-width", + "var_name": "beamWidth", + "description": "Beam width.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "guardian-radius", + "var_name": "guardianRadius", + "description": "Guardian strand radius.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.08, + "children": [] + }, + { + "name": "guardian-strands", + "var_name": "guardianStrands", + "description": "Guardian strand count.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "guardian-spin-speed", + "var_name": "guardianSpinSpeed", + "description": "Guardian spin speed.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "guardian-core-alpha", + "var_name": "guardianCoreAlpha", + "description": "Guardian core alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 90, + "children": [] + }, + { + "name": "guardian-strand-alpha", + "var_name": "guardianStrandAlpha", + "description": "Guardian strand alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 160, + "children": [] + }, + { + "name": "replenish-mode", + "var_name": "replenishMode", + "description": "Toggles the replenish keybind.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "replenish-item", + "var_name": "replenishItem", + "description": "The item to replenish.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ReplenishItem.Obsidian", + "children": [] + }, + { + "name": "use-selected-slot", + "var_name": "useSelectedSlot", + "description": "Replenishes the currently selected hotbar slot instead of a specific one.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "target-slot", + "var_name": "targetSlot", + "description": "The specific hotbar slot to replenish (1-9).", + "type": "number", + "setting_class": "NumberSetting", + "default": 1, + "children": [] + }, + { + "name": "replenish-key", + "var_name": "replenishKey", + "description": "Replenishes the target hotbar slot's item to its max stack size from the main inventory.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + } + ] + }, + { + "name": "elytra-assistant", + "class_name": "ElytraAssistant", + "feature_type": "module", + "description": "Smart elytra and rocket management.", + "settings": [ + { + "name": "auto-replace", + "var_name": "autoReplace", + "description": "Automatically replace elytra when durability is low.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "durability-threshold", + "var_name": "durabilityThreshold", + "description": "Minimum durability before replacing.", + "type": "number", + "setting_class": "NumberSetting", + "default": 10, + "children": [] + }, + { + "name": "warning-sound", + "var_name": "warningSoundType", + "description": "Sound played when no replacement elytra is available.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "WarningSound.Anvil", + "children": [] + }, + { + "name": "warning-volume", + "var_name": "warningSoundVolume", + "description": "Volume of the warning sound.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "toggle-key", + "var_name": "toggleKey", + "description": "Key to toggle auto replace.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "action", + "var_name": "middleClickAction", + "description": "Item to use when middle clicking.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "MiddleClickAction.None", + "children": [] + }, + { + "name": "silent-rocket", + "var_name": "silentRocket", + "description": "Prevents hand swing animation when using rockets.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "rocket-replenish", + "var_name": "rocketReplenishEnabled", + "description": "Enables the rocket replenish keybind.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "use-selected-slot", + "var_name": "useSelectedSlot", + "description": "Replenishes the currently selected hotbar slot instead of a specific one.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "target-slot", + "var_name": "targetSlot", + "description": "The specific hotbar slot to replenish (1-9).", + "type": "number", + "setting_class": "NumberSetting", + "default": 8, + "children": [] + }, + { + "name": "replenish-key", + "var_name": "rocketReplenishKey", + "description": "Replenishes the target hotbar slot's item to its max stack size from the main inventory.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "anti-afk", + "var_name": "antiAfk", + "description": "Prevents AFK kick by swinging hand periodically.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + } + ] + }, + { + "name": "gatekeeper", + "class_name": "Gatekeeper", + "feature_type": "module", + "description": "Advanced End gateway and End portal tracking with integrated End Assistant.", + "settings": [ + { + "name": "end-portals", + "var_name": "scanEndPortals", + "description": "Scan End portal blocks.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "end-gateways", + "var_name": "scanEndGateways", + "description": "Scan End gateways.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "range", + "var_name": "range", + "description": "Detection range in chunks for all features.", + "type": "number", + "setting_class": "NumberSetting", + "default": 16, + "children": [] + }, + { + "name": "end-assistant", + "var_name": "enableEndAssistant", + "description": "Master toggle for all End Assistant features.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "end-portal-color", + "var_name": "endPortalColor", + "description": "End portal color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 128, 255)", + "children": [] + }, + { + "name": "end-gateway-color", + "var_name": "endGatewayColor", + "description": "End gateway color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 0, 255, 255)", + "children": [] + }, + { + "name": "shape-mode", + "var_name": "shapeMode", + "description": "Box render mode.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "BoxMode.Both", + "children": [] + }, + { + "name": "render-mode", + "var_name": "renderMode", + "description": "GLOW = layered bloom boxes. SPECTRAL = outline shader. PULSE = fading highlight.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "RenderMode.GLOW", + "children": [] + }, + { + "name": "dynamic-colors", + "var_name": "dynamicColors", + "description": "Cycle colors over time.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Number of bloom layers rendered around each target.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "How far each bloom layer expands outward (in blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.04, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Alpha of the innermost glow layer (0-255).", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "spectral-fill-alpha", + "var_name": "spectralFillAlpha", + "description": "Fill alpha for block targets in SPECTRAL mode.", + "type": "number", + "setting_class": "NumberSetting", + "default": 30, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "show-beam", + "var_name": "showBeam", + "description": "Render a vertical beam at each structure.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "beam-range", + "var_name": "beamRange", + "description": "Maximum horizontal distance (in chunks) to render the vertical beam.", + "type": "number", + "setting_class": "NumberSetting", + "default": 16, + "children": [] + }, + { + "name": "nearest-beam", + "var_name": "onlyNearestBeam", + "description": "Only render the beam for the portal closest to the player.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "beam-style", + "var_name": "beamStyle", + "description": "Beam style.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "BeamStyle.GUARDIAN", + "children": [] + }, + { + "name": "beam-width", + "var_name": "beamWidth", + "description": "Width of the box-style beam.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "guardian-radius", + "var_name": "guardianRadius", + "description": "Radius of guardian-style beam strands.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.08, + "children": [] + }, + { + "name": "guardian-strands", + "var_name": "guardianStrands", + "description": "Number of rotating strands.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "guardian-spin-speed", + "var_name": "guardianSpinSpeed", + "description": "Rotation speed of strands.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "guardian-core-alpha", + "var_name": "guardianCoreAlpha", + "description": "Alpha of the beam center.", + "type": "number", + "setting_class": "NumberSetting", + "default": 90, + "children": [] + }, + { + "name": "guardian-strand-alpha", + "var_name": "guardianStrandAlpha", + "description": "Alpha of the rotating strands.", + "type": "number", + "setting_class": "NumberSetting", + "default": 160, + "children": [] + }, + { + "name": "city-y-level", + "var_name": "cityYLevel", + "description": "Minimum Y level to scan. End Cities generate above Y = 0.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0, + "children": [] + }, + { + "name": "track-chests", + "var_name": "trackContainers", + "description": "Highlight standard chests.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "chest-color", + "var_name": "containerColor", + "description": "Color for standard chests.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 215, 0, 255)", + "children": [] + }, + { + "name": "chest-whitelist", + "var_name": "containerWhitelist", + "description": "Items to alert you about when opening Chests.", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": "Items.NETHERITE_BLOCK", + "children": [] + }, + { + "name": "elytra-frames", + "var_name": "trackElytras", + "description": "Highlights Item Frames holding an Elytra.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "elytra-color", + "var_name": "elytraColor", + "description": "Color for Elytra Item Frames.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 0, 255)", + "children": [] + }, + { + "name": "shulkers", + "var_name": "trackShulkers", + "description": "Highlights Shulkers and Shulker Bullets.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "shulker-color", + "var_name": "shulkerColor", + "description": "Color for Shulkers and Shulker Bullets.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 0, 255, 255)", + "children": [] + }, + { + "name": "alerts", + "var_name": "enableAlerts", + "description": "Master toggle for audio cues and loot announcements.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "alert-sound", + "var_name": "alertSound", + "description": "Which sound to play for module alerts.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "AlertSound.ENDER_DRAGON_GROWL", + "children": [] + }, + { + "name": "alert-volume", + "var_name": "alertVolume", + "description": "Volume of the alert sound.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "auto-open-chests", + "var_name": "autoOpenChests", + "description": "Automatically opens nearby chests.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "auto-milk-levitation", + "var_name": "autoMilkLevitation", + "description": "Automatically drinks milk to clear the Levitation effect.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "disconnect-on-player", + "var_name": "disconnectOnPlayer", + "description": "Instantly disconnects from the server if another player enters render distance.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "auto-disable-on-low-health", + "var_name": "autoDisableOnLowHealth", + "description": "Disables the module if health is critical.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + } + ] + }, + { + "name": "graveyard", + "class_name": "Graveyard", + "feature_type": "module", + "description": "Highlights valuable items and XP on the ground.", + "settings": [ + { + "name": "range", + "var_name": "range", + "description": "Detection range in blocks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 32, + "children": [] + }, + { + "name": "show-beam", + "var_name": "showBeam", + "description": "Show beam above found items.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "beam-color", + "var_name": "beamColor", + "description": "Color of the beam.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 255, 200)", + "children": [] + }, + { + "name": "beam-width", + "var_name": "beamWidth", + "description": "Beam thickness (blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.15, + "children": [] + }, + { + "name": "only-nearest", + "var_name": "onlyNearest", + "description": "Only highlight and notify about the closest item.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "notification", + "var_name": "notification", + "description": "Send chat messages and play sound when new whitelisted items or XP orbs are found.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "sort-by-distance", + "var_name": "sortByDistance", + "description": "If enabled, prioritizes closest items.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "whitelisted-items", + "var_name": "whitelistedItems", + "description": "Items to look for on the ground, like diamond swords and valuable gear.", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": "Items.ELYTRA", + "children": [] + }, + { + "name": "detect-xp-orbs", + "var_name": "detectXpOrbs", + "description": "Detects Experience Orbs on the ground and creates a beam and notifier.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "xp-beam-color", + "var_name": "xpBeamColor", + "description": "Color of the beam for Experience Orbs.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 0, 200)", + "children": [] + }, + { + "name": "enchanted-only", + "var_name": "enchantedOnly", + "description": "Only highlight whitelisted items if they are enchanted. Items that cannot be enchanted (shulker boxes, totems, etc.) are always shown regardless.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "enchanted-beam-color", + "var_name": "enchantedBeamColor", + "description": "Beam color override for enchanted items when enchanted-only is off, so both plain and enchanted items can be told apart visually.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(180, 80, 255, 220)", + "children": [] + }, + { + "name": "separate-enchanted-color", + "var_name": "separateEnchantedColor", + "description": "Use the enchanted beam color above to visually distinguish enchanted items from plain ones.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + } + ] + }, + { + "name": "handhold", + "class_name": "Handhold", + "feature_type": "module", + "description": "Follow a player or lead with mutual safety disconnects.", + "settings": [ + { + "name": "target", + "var_name": "targetName", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Leader's name if you are Follower, Follower's name if you are Leader.", + "children": [] + }, + { + "name": "role", + "var_name": "role", + "description": "Are you leading the flight, or following?", + "type": "enum", + "setting_class": "EnumSetting", + "default": "Role.Follower", + "children": [] + }, + { + "name": "disable-when-target-lands", + "var_name": "disableWhenTargetLands", + "description": "Disable Handhold and Rocket Pilot when the target stops flying", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "pace-control", + "var_name": "enablePaceControl", + "description": "Automatically slow down if you pull too far ahead of the follower.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "max-lead-distance", + "var_name": "maxLeadDistance", + "description": "Horizontal distance before starting to slow down.", + "type": "number", + "setting_class": "NumberSetting", + "default": 50.0, + "children": [] + }, + { + "name": "resume-distance", + "var_name": "resumeDistance", + "description": "Horizontal distance to the follower before resuming normal speed.", + "type": "number", + "setting_class": "NumberSetting", + "default": 30.0, + "children": [] + }, + { + "name": "slowdown-pitch", + "var_name": "slowdownPitch", + "description": "How aggressively to pitch up to bleed speed (negative = up).", + "type": "number", + "setting_class": "NumberSetting", + "default": -35.0, + "children": [] + }, + { + "name": "min-follow-distance", + "var_name": "minFollowDistance", + "description": "If closer than this, orbit instead of aiming directly at them.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5.0, + "children": [] + }, + { + "name": "orbit-offset", + "var_name": "orbitOffset", + "description": "How many degrees to shift your yaw when orbiting too close.", + "type": "number", + "setting_class": "NumberSetting", + "default": 25.0, + "children": [] + }, + { + "name": "orbit-side", + "var_name": "orbitSide", + "description": "Which side to orbit on when you get too close.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "OrbitSide.Left", + "children": [] + }, + { + "name": "look-at-target", + "var_name": "lookAtTarget", + "description": "Always keep your camera aimed at the target.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "rotation-speed", + "var_name": "rotationSpeed", + "description": "How smoothly to turn towards the target (lower = smoother).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.1, + "children": [] + }, + { + "name": "limit-rotation-speed", + "var_name": "limitRotationSpeed", + "description": "Caps rotation speed per tick to reduce anti-cheat flags.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "max-rotation-per-tick", + "var_name": "maxRotationPerTick", + "description": "Maximum degrees to rotate per tick.", + "type": "number", + "setting_class": "NumberSetting", + "default": 20.0, + "children": [] + }, + { + "name": "safety-disconnect", + "var_name": "safetyDisconnect", + "description": "Triggers a panic rocket towards their last location, then DCs if they aren't found.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "disconnect-delay", + "var_name": "disconnectDelay", + "description": "Seconds to fly towards last location before giving up and disconnecting.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4.0, + "children": [] + }, + { + "name": "pause-on-obstacle", + "var_name": "pauseOnObstacle", + "description": "Stops looking at target if a wall is in the way.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "obstacle-pause-ticks", + "var_name": "obstaclePauseTicks", + "description": "How many ticks to pause tracking when an obstacle is hit.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + } + ] + }, + { + "name": "handmold", + "class_name": "Handmold", + "feature_type": "module", + "description": "Adjusts the position, scale, and rotation of each hand independently.", + "settings": [ + { + "name": "no-hand-bob", + "var_name": "noHandBob", + "description": "Disables hand bobbing while walking.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "hide-empty-mainhand", + "var_name": "hideEmptyMainhand", + "description": "Hides the main hand when not holding any item.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "hide-offhand-completely", + "var_name": "hideOffhandCompletely", + "description": "Hides the offhand completely regardless of what it holds.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "eat-position", + "var_name": "eatPosition", + "description": "Where the hand moves to while eating or drinking. Custom defaults to 0 (center) unless changed.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "EatPosition.Custom", + "children": [] + }, + { + "name": "eat-target-x", + "var_name": "eatTargetX", + "description": "The X position the hand slides to while eating. 0 = center, negative = left, positive = right.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "x", + "var_name": "mainX", + "description": "Horizontal offset.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "y", + "var_name": "mainY", + "description": "Vertical offset.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "z", + "var_name": "mainZ", + "description": "Depth offset.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "scale", + "var_name": "mainScale", + "description": "Scale multiplier.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "rot-x", + "var_name": "mainRotX", + "description": "Rotation around X axis (degrees).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "rot-y", + "var_name": "mainRotY", + "description": "Rotation around Y axis (degrees).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "rot-z", + "var_name": "mainRotZ", + "description": "Rotation around Z axis (degrees).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "x", + "var_name": "offX", + "description": "Horizontal offset.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "y", + "var_name": "offY", + "description": "Vertical offset.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "z", + "var_name": "offZ", + "description": "Depth offset.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "scale", + "var_name": "offScale", + "description": "Scale multiplier.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "rot-x", + "var_name": "offRotX", + "description": "Rotation around X axis (degrees).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "rot-y", + "var_name": "offRotY", + "description": "Rotation around Y axis (degrees).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "rot-z", + "var_name": "offRotZ", + "description": "Rotation around Z axis (degrees).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + } + ] + }, + { + "name": "illushine", + "class_name": "Illushine", + "feature_type": "module", + "description": "Highlights mobs with a wireframe or spectral outline by hostility type.", + "settings": [ + { + "name": "highlight-mode", + "var_name": "highlightMode", + "description": "How mobs are outlined. Wireframe draws a bounding-box outline; Spectral uses the vanilla glow pipeline.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "HighlightMode.Wireframe", + "children": [] + }, + { + "name": "range", + "var_name": "range", + "description": "Range to highlight mobs.", + "type": "number", + "setting_class": "NumberSetting", + "default": 64, + "children": [] + }, + { + "name": "ignored-entities", + "var_name": "ignoredEntities", + "description": "Entities to ignore.", + "type": "entitytypelist", + "setting_class": "EntityTypeListSetting", + "default": null, + "children": [] + }, + { + "name": "outline-scale", + "var_name": "outlineScale", + "description": "Scale of the wireframe outline (Wireframe mode only).", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "crosshair-mode", + "var_name": "crosshairMode", + "description": "The crosshair style to display while Illushine is active.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "CrosshairMode.Normal", + "children": [] + }, + { + "name": "crosshair-color", + "var_name": "crosshairColor", + "description": "Color of the Normal crosshair lines.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 255, 255)", + "children": [] + }, + { + "name": "crosshair-size", + "var_name": "crosshairSize", + "description": "Half-length of each crosshair arm in pixels.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "crosshair-gap", + "var_name": "crosshairGap", + "description": "Gap (in pixels) between center and each arm.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "crosshair-thickness", + "var_name": "crosshairThickness", + "description": "Thickness of the crosshair lines in pixels.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1, + "children": [] + }, + { + "name": "highlight-passive", + "var_name": "highlightPassive", + "description": "Highlight passive mobs.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "passive-color", + "var_name": "passiveColor", + "description": "Outline color for passive mobs.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 100, 255)", + "children": [] + }, + { + "name": "passive-scale", + "var_name": "passiveScale", + "description": "Visual scale for passive mobs.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "highlight-neutral", + "var_name": "highlightNeutral", + "description": "Highlight neutral mobs.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "neutral-color", + "var_name": "neutralColor", + "description": "Outline color for neutral mobs.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 200, 0, 255)", + "children": [] + }, + { + "name": "neutral-scale", + "var_name": "neutralScale", + "description": "Visual scale for neutral mobs.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "highlight-hostile", + "var_name": "highlightHostile", + "description": "Highlight hostile mobs.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "hostile-color", + "var_name": "hostileColor", + "description": "Outline color for hostile mobs.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 50, 50, 255)", + "children": [] + }, + { + "name": "hostile-scale", + "var_name": "hostileScale", + "description": "Visual scale for hostile mobs.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "player-scale", + "var_name": "playerScale", + "description": "Visually scales your own player model and camera height.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "scale-other-players", + "var_name": "scaleOtherPlayers", + "description": "Apply a visual scale to other players.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "other-player-scale", + "var_name": "otherPlayerScale", + "description": "Visual scale applied to other players.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + } + ] + }, + { + "name": "inspector-gadget", + "class_name": "InspectorGadget", + "feature_type": "module", + "description": "Walks a custom path of tiles to scan nearby storage blocks using Baritone.", + "settings": [ + { + "name": "target-storage", + "var_name": "targetStorage", + "description": "Which storage blocks to scan and open.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "StorageTarget.Chests_And_Barrels", + "children": [] + }, + { + "name": "add-tile-key", + "var_name": "addTileKey", + "description": "Key to add a tile while looking at a block.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "start-key", + "var_name": "startKey", + "description": "Key to start the automated pathing sequence.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "clear-key", + "var_name": "clearKey", + "description": "Key to clear all created tiles.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "pause-key", + "var_name": "pauseKey", + "description": "Pauses the pathing so you can chat or move. Press again to resume.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "tile-scan-range", + "var_name": "tileScanRange", + "description": "Radius to scan for storage blocks around each tile.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "open-delay", + "var_name": "openDelay", + "description": "How long to wait between opening and closing containers to prevent anti-cheat kicks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "completion-sound", + "var_name": "completionSound", + "description": "Sound played when all tiles have been scanned.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "CompletionSound.LevelUp", + "children": [] + }, + { + "name": "highlight-mode", + "var_name": "highlightMode", + "description": "GLOW = layered bloom boxes. SPECTRAL = subtle fill and outline. PULSE = fading in/out bloom.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "HighlightMode.GLOW", + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Bloom layer count.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "Bloom spread.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Bloom alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "spectral-line-alpha", + "var_name": "spectralLineAlpha", + "description": "Outline alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 255, + "children": [] + }, + { + "name": "spectral-fill-alpha", + "var_name": "spectralFillAlpha", + "description": "Fill alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 30, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "storage-color", + "var_name": "highlightColor", + "description": "Color of the storage blocks found during scan.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 215, 0, 200)", + "children": [] + }, + { + "name": "tile-color", + "var_name": "pathColor", + "description": "Color of the pathing tiles and sequence pillars.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 100, 200)", + "children": [] + } + ] + }, + { + "name": "inventory-101", + "class_name": "Inventory101", + "feature_type": "module", + "description": "Manages inventory layouts with shulker boxes.", + "settings": [ + { + "name": "preset-1-name", + "var_name": "preset1Name", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Custom name for Preset 1.", + "children": [] + }, + { + "name": "preset-2-name", + "var_name": "preset2Name", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Custom name for Preset 2.", + "children": [] + }, + { + "name": "preset-1-data", + "var_name": "preset1Data", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Saved data for inventory preset 1.", + "children": [] + }, + { + "name": "preset-2-data", + "var_name": "preset2Data", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Saved data for inventory preset 2.", + "children": [] + }, + { + "name": "regear-show-button", + "var_name": "showRegearButton", + "description": "Shows the G (Gear) button in shulker boxes.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "regear-delay", + "var_name": "regearDelay", + "description": "Delay in ticks between armor movement actions.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "replenish-show-button", + "var_name": "showReplenishButton", + "description": "Shows the R (Replenish) button in shulker boxes.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "ender-chest", + "var_name": "replenishEnderChest", + "description": "Replenish Ender Chests from shulker boxes.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "ender-chest-mode", + "var_name": "enderChestMode", + "description": "How many Ender Chests to keep in inventory.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ReplenishMode.Fill", + "children": [] + }, + { + "name": "ender-chest-count", + "var_name": "enderChestCount", + "description": "Exact number of Ender Chests to maintain.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1, + "children": [] + }, + { + "name": "obsidian", + "var_name": "replenishObsidian", + "description": "Replenish Obsidian from shulker boxes.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "obsidian-mode", + "var_name": "obsidianMode", + "description": "How many Obsidian to keep in inventory.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ReplenishMode.Fill", + "children": [] + }, + { + "name": "obsidian-count", + "var_name": "obsidianCount", + "description": "Exact number of Obsidian to maintain.", + "type": "number", + "setting_class": "NumberSetting", + "default": 64, + "children": [] + }, + { + "name": "firework-rocket", + "var_name": "replenishFireworkRocket", + "description": "Replenish Firework Rockets from shulker boxes.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "firework-rocket-mode", + "var_name": "fireworkRocketMode", + "description": "How many Firework Rockets to keep in inventory.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ReplenishMode.Fill", + "children": [] + }, + { + "name": "firework-rocket-count", + "var_name": "fireworkRocketCount", + "description": "Exact number of Firework Rockets to maintain.", + "type": "number", + "setting_class": "NumberSetting", + "default": 64, + "children": [] + }, + { + "name": "enchanted-golden-apple", + "var_name": "replenishEnchantedGoldenApple", + "description": "Replenish Enchanted Golden Apples from shulker boxes.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "enchanted-golden-apple-mode", + "var_name": "enchantedGoldenAppleMode", + "description": "How many Enchanted Golden Apples to keep in inventory.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ReplenishMode.Single", + "children": [] + }, + { + "name": "enchanted-golden-apple-count", + "var_name": "enchantedGoldenAppleCount", + "description": "Exact number of Enchanted Golden Apples to maintain.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1, + "children": [] + }, + { + "name": "totem-of-undying", + "var_name": "replenishTotem", + "description": "Replenish Totems of Undying from shulker boxes.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "totem-mode", + "var_name": "totemMode", + "description": "How many Totems of Undying to keep in inventory.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ReplenishMode.Single", + "children": [] + }, + { + "name": "totem-count", + "var_name": "totemCount", + "description": "Exact number of Totems to maintain.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1, + "children": [] + }, + { + "name": "elytra", + "var_name": "replenishElytra", + "description": "Replenish Elytras from shulker boxes (durability-aware swapping).", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "elytra-mode", + "var_name": "elytraMode", + "description": "How many Elytras to keep in inventory (not counting armor slot).", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ReplenishMode.Single", + "children": [] + }, + { + "name": "elytra-count", + "var_name": "elytraCount", + "description": "Exact number of Elytras to maintain (inventory only).", + "type": "number", + "setting_class": "NumberSetting", + "default": 1, + "children": [] + }, + { + "name": "elytra-threshold", + "var_name": "elytraThreshold", + "description": "Durability threshold to consider an elytra as needing replacement.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "end-crystal", + "var_name": "replenishEndCrystal", + "description": "Replenish End Crystals from shulker boxes.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "end-crystal-mode", + "var_name": "endCrystalMode", + "description": "How many End Crystals to keep in inventory.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ReplenishMode.Fill", + "children": [] + }, + { + "name": "end-crystal-count", + "var_name": "endCrystalCount", + "description": "Exact number of End Crystals to maintain.", + "type": "number", + "setting_class": "NumberSetting", + "default": 16, + "children": [] + }, + { + "name": "custom-items-enabled", + "var_name": "replenishCustom", + "description": "Enable replenishing custom items from shulker boxes.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "custom-items", + "var_name": "customReplenishItems", + "description": "Additional items to replenish (priority = list order).", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": null, + "children": [] + }, + { + "name": "custom-mode", + "var_name": "customMode", + "description": "Replenish mode for all custom items.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ReplenishMode.Fill", + "children": [] + }, + { + "name": "custom-count", + "var_name": "customCount", + "description": "Exact number to maintain for each custom item.", + "type": "number", + "setting_class": "NumberSetting", + "default": 64, + "children": [] + }, + { + "name": "replenish-delay", + "var_name": "replenishDelay", + "description": "Delay in ticks between movement actions.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "show-sort-button", + "var_name": "showSortButton", + "description": "Show a sort button in chests.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "sort-delay", + "var_name": "sortDelay", + "description": "Delay in ticks between sort actions.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "shift-click-all", + "var_name": "shiftClickAll", + "description": "When shift-clicking an item, moves all items of the same type from that inventory.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "auto-trash", + "var_name": "autoTrash", + "description": "Automatically discards whitelisted items.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "trash-items", + "var_name": "trashItems", + "description": "Items to automatically discard.", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": null, + "children": [] + }, + { + "name": "trash-delay", + "var_name": "trashDelay", + "description": "Delay in ticks between discard actions.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "auto-tool", + "var_name": "autoTool", + "description": "Automatically swaps to the best tool when breaking blocks.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "silent-swap", + "var_name": "silentAutoTool", + "description": "Swaps to the tool silently.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + } + ] + }, + { + "name": "lava-marker", + "class_name": "LavaMarker", + "feature_type": "module", + "description": "Highlights fully-flowed lava falls in the Nether.", + "settings": [ + { + "name": "chunk-radius", + "var_name": "chunkRadius", + "description": "Horizontal scan radius in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "vertical-radius", + "var_name": "verticalRadius", + "description": "Vertical scan radius in blocks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 64, + "children": [] + }, + { + "name": "flowing-lava", + "var_name": "color", + "description": "Color for fully-flowed lava falls. (Alpha is used for GLOW and SPECTRAL outlines).", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 100, 0, 200)", + "children": [] + }, + { + "name": "min-fall-height", + "var_name": "minFallHeight", + "description": "Lava falls shorter than this will be ignored.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "max-render-blocks", + "var_name": "maxRenderBlocks", + "description": "Maximum number of blocks to render per frame to prevent crashes.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5000, + "children": [] + }, + { + "name": "render-mode", + "var_name": "renderMode", + "description": "GLOW = layered bloom boxes. SPECTRAL = subtle fill box. PULSE = fading in/out highlight.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "RenderMode.GLOW", + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Number of bloom layers rendered around each lava block.", + "type": "number", + "setting_class": "NumberSetting", + "default": 3, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "How far each bloom layer expands outward (in blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.04, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Opacity of the outer glow layers in GLOW mode (0-255).", + "type": "number", + "setting_class": "NumberSetting", + "default": 40, + "children": [] + }, + { + "name": "spectral-fill-alpha", + "var_name": "spectralFillAlpha", + "description": "Opacity of the fill box in SPECTRAL mode (0 = invisible, 80 = subtle).", + "type": "number", + "setting_class": "NumberSetting", + "default": 40, + "children": [] + }, + { + "name": "spectral-outline", + "var_name": "spectralOutline", + "description": "Draw a solid outline around lava blocks in SPECTRAL mode.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest opacity reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak opacity reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + } + ] + }, + { + "name": "loot-lens", + "class_name": "LootLens", + "feature_type": "module", + "description": "Highlights storage containers confirmed to hold shulkers or custom items.", + "settings": [ + { + "name": "range", + "var_name": "range", + "description": "Container detection range in blocks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 128, + "children": [] + }, + { + "name": "notification", + "var_name": "notification", + "description": "Send chat messages and play sound when shulkers are found.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "custom-items", + "var_name": "customItems", + "description": "Additional items to highlight in containers.", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": "Items.ENCHANTED_GOLDEN_APPLE", + "children": [] + }, + { + "name": "steal-dump-buttons", + "var_name": "stealDumpButtons", + "description": "Show steal and dump buttons on container screens.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "render-mode", + "var_name": "renderMode", + "description": "GLOW = layered bloom boxes. SPECTRAL = subtle fill. PULSE = fading highlight.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "RenderMode.GLOW", + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Number of bloom layers rendered around each container.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "How far each bloom layer expands outward (in blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.04, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Alpha of the innermost glow layer (0-255).", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "spectral-fill-alpha", + "var_name": "spectralFillAlpha", + "description": "Fill alpha for block containers in SPECTRAL mode.", + "type": "number", + "setting_class": "NumberSetting", + "default": 40, + "children": [] + }, + { + "name": "spectral-outline", + "var_name": "spectralOutline", + "description": "Draw a crisp outline around block containers in SPECTRAL mode.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "pulse-beams", + "var_name": "pulseBeams", + "description": "Also pulse the beam opacity in sync with the highlights.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "beam-style", + "var_name": "beamStyle", + "description": "BOX = simple box beam. GUARDIAN = wider glow beam.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "BeamStyle.GUARDIAN", + "children": [] + }, + { + "name": "beam-width", + "var_name": "beamWidth", + "description": "Box beam width (in hundredths of a block).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "merge-beams", + "var_name": "mergeBeams", + "description": "Merge beams for nearby shulker containers to reduce clutter.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "merge-distance", + "var_name": "mergeDistance", + "description": "Distance within which beams are merged.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2.0, + "children": [] + }, + { + "name": "guardian-radius", + "var_name": "guardianBeamRadius", + "description": "Radius of the guardian beam (blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.08, + "children": [] + }, + { + "name": "guardian-strands", + "var_name": "guardianStrands", + "description": "Guardian glow layer count.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "guardian-spin-speed", + "var_name": "guardianSpinSpeed", + "description": "Unused (visual pacing).", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "guardian-core-alpha", + "var_name": "guardianCoreAlpha", + "description": "Alpha of the solid centre core of the guardian beam.", + "type": "number", + "setting_class": "NumberSetting", + "default": 90, + "children": [] + }, + { + "name": "guardian-strand-alpha", + "var_name": "guardianStrandAlpha", + "description": "Alpha of the outer glow layers.", + "type": "number", + "setting_class": "NumberSetting", + "default": 160, + "children": [] + }, + { + "name": "guardian-glow", + "var_name": "guardianGlow", + "description": "Add a soft bloom halo around the guardian beam.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "guardian-glow-radius", + "var_name": "guardianGlowRadius", + "description": "Radius of the bloom halo around the guardian beam.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.18, + "children": [] + }, + { + "name": "chests", + "var_name": "scanChests", + "description": "Detect chests and trapped chests.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "chest-color", + "var_name": "chestColor", + "description": "Chest color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 215, 0, 200)", + "children": [] + }, + { + "name": "barrels", + "var_name": "scanBarrels", + "description": "Detect barrels.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "barrel-color", + "var_name": "barrelColor", + "description": "Barrel color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(139, 69, 19, 200)", + "children": [] + }, + { + "name": "shulker-boxes", + "var_name": "scanShulkerBoxes", + "description": "Detect shulker boxes placed in the world.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "shulker-box-color", + "var_name": "shulkerBoxColor", + "description": "Shulker box color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(160, 32, 240, 200)", + "children": [] + }, + { + "name": "ender-chests", + "var_name": "scanEnderChests", + "description": "Detect ender chests.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "ender-chest-color", + "var_name": "enderChestColor", + "description": "Ender chest color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(75, 0, 130, 200)", + "children": [] + }, + { + "name": "chest-minecarts", + "var_name": "scanChestMinecarts", + "description": "Detect chest minecarts.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "chest-minecart-color", + "var_name": "chestMinecartColor", + "description": "Chest minecart color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 180, 0, 200)", + "children": [] + }, + { + "name": "stacked-threshold", + "var_name": "stackedMinecartThreshold", + "description": "Minecarts at one block position that count as 'stacked'.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "stacked-minecart-color", + "var_name": "stackedMinecartColor", + "description": "Highlight/beam color for stacked chest minecarts.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 0, 255, 255)", + "children": [] + }, + { + "name": "shulker-found-color", + "var_name": "shulkerFoundColor", + "description": "Bright color for containers confirmed to hold shulkers/custom items.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 80, 255)", + "children": [] + }, + { + "name": "utility-blocks", + "var_name": "scanUtility", + "description": "Detect furnaces, hoppers, dispensers, droppers.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "utility-color", + "var_name": "utilityColor", + "description": "Utility container color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(150, 150, 150, 200)", + "children": [] + }, + { + "name": "decorative-blocks", + "var_name": "scanDecorative", + "description": "Detect brewing stands, crafters, chiseled bookshelves, decorated pots.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "decorative-color", + "var_name": "decorativeColor", + "description": "Decorative container color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(180, 100, 220, 200)", + "children": [] + }, + { + "name": "item-frames", + "var_name": "scanItemFramesSetting", + "description": "Detect item frames holding shulker boxes or custom items.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "item-frame-color", + "var_name": "itemFrameColor", + "description": "Item frame highlight color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 100, 255, 200)", + "children": [] + }, + { + "name": "beds", + "var_name": "scanBeds", + "description": "Highlight all coloured beds using their matching dye colour.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "bed-fill-alpha", + "var_name": "bedFillAlpha", + "description": "Fill transparency for bed highlights.", + "type": "number", + "setting_class": "NumberSetting", + "default": 50, + "children": [] + } + ] + }, + { + "name": "manor-assistant", + "class_name": "ManorAssistant", + "feature_type": "module", + "description": "Highlights Woodland Manor elements: secret chests, evokers, vindicators, and dropped totems.", + "settings": [ + { + "name": "range", + "var_name": "range", + "description": "Detection range in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 16, + "children": [] + }, + { + "name": "manor-y-level", + "var_name": "manorYLevel", + "description": "Minimum Y level to scan. Mansions generate above Y = 60.", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "render-mode", + "var_name": "renderMode", + "description": "GLOW = layered bloom boxes. SPECTRAL = outline shader. PULSE = fading highlight.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "RenderMode.GLOW", + "children": [] + }, + { + "name": "beam-width", + "var_name": "beamWidth", + "description": "Width of the beams for dropped Totems.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Number of bloom layers rendered around each target.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "How far each bloom layer expands outward (in blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.04, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Alpha of the innermost glow layer (0-255).", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "spectral-block-fill-alpha", + "var_name": "spectralBlockFillAlpha", + "description": "Fill alpha for block targets in SPECTRAL mode.", + "type": "number", + "setting_class": "NumberSetting", + "default": 30, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "track-chests", + "var_name": "trackContainers", + "description": "Highlight standard chests.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "chest-color", + "var_name": "containerColor", + "description": "Color for standard chests.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 0, 255, 255)", + "children": [] + }, + { + "name": "track-secret-chests", + "var_name": "trackSecretContainers", + "description": "Highlight chests hidden inside walls (secret rooms).", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "secret-chest-color", + "var_name": "secretContainerColor", + "description": "Color for hidden chests.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 0, 255, 255)", + "children": [] + }, + { + "name": "chest-whitelist", + "var_name": "containerWhitelist", + "description": "Items to alert you about when opening Chests.", + "type": "itemlist", + "setting_class": "ItemListSetting", + "default": "Items.NETHERITE_BLOCK", + "children": [] + }, + { + "name": "track-evokers", + "var_name": "trackEvokers", + "description": "Highlights Evokers (Totem droppers).", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "evoker-color", + "var_name": "evokerColor", + "description": "Color for Evokers.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(150, 0, 255, 255)", + "children": [] + }, + { + "name": "track-vindicators", + "var_name": "trackVindicators", + "description": "Highlights Vindicators (Axe mob).", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "vindicator-color", + "var_name": "vindicatorColor", + "description": "Color for Vindicators.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 100, 0, 255)", + "children": [] + }, + { + "name": "track-dropped-totems", + "var_name": "trackDroppedTotems", + "description": "Highlights dropped Totems of Undying with a massive beam.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "totem-color", + "var_name": "totemColor", + "description": "Color for dropped Totems.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 215, 0, 255)", + "children": [] + }, + { + "name": "enable-alerts", + "var_name": "enableAlerts", + "description": "Master toggle for audio cues and loot announcements.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "alert-sound", + "var_name": "alertSound", + "description": "Which sound to play for module alerts.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "AlertSound.EVOKER_CAST", + "children": [] + }, + { + "name": "alert-volume", + "var_name": "alertVolume", + "description": "Volume of the alert sound.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "auto-open-chests", + "var_name": "autoOpenChests", + "description": "Automatically opens nearby chests.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "disconnect-on-player", + "var_name": "disconnectOnPlayer", + "description": "Instantly disconnects from the server if another player enters render distance.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "auto-disable-on-low-health", + "var_name": "autoDisableOnLowHealth", + "description": "Disables the module if health is critical.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + } + ] + }, + { + "name": "mendbot", + "class_name": "Mendbot", + "feature_type": "module", + "description": "Automatically mends items using XP bottles or Mining.", + "settings": [ + { + "name": "mend-source", + "var_name": "mendSource", + "description": "How to get XP (Bottles, Mining, or Leveling).", + "type": "enum", + "setting_class": "EnumSetting", + "default": "MendSource.Bottles", + "children": [] + }, + { + "name": "mend-target", + "var_name": "mendTarget", + "description": "What to repair.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "MendTarget.Elytra", + "children": [] + }, + { + "name": "target-level", + "var_name": "targetLevel", + "description": "The XP level to reach.", + "type": "number", + "setting_class": "NumberSetting", + "default": 30, + "children": [] + }, + { + "name": "min-bottle-slots", + "var_name": "minBottleSlots", + "description": "Minimum hotbar slots with XP bottles before resuming. 0 = only pause when completely out.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0, + "children": [] + }, + { + "name": "use-smart-mining", + "var_name": "useSmartMining", + "description": "Automatically selects ores based on dimension (Nether/Overworld).", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "mining-preset", + "var_name": "miningPreset", + "description": "Select the mining target.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "MiningPreset.All_Materials", + "children": [] + }, + { + "name": "baritone-start", + "var_name": "baritoneStartCommand", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Manual command to run (Only used if Smart Mining is off).", + "children": [] + }, + { + "name": "baritone-pause", + "var_name": "baritonePauseCommand", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Command to pause Baritone before swapping items.", + "children": [] + }, + { + "name": "baritone-resume", + "var_name": "baritoneResumeCommand", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Command to resume Baritone after swapping items.", + "children": [] + }, + { + "name": "baritone-stop", + "var_name": "baritoneStopCommand", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Command to run when stopping Mining Mode.", + "children": [] + }, + { + "name": "swap-delay", + "var_name": "swapDelay", + "description": "Ticks to wait after pausing before swapping items.", + "type": "number", + "setting_class": "NumberSetting", + "default": 10, + "children": [] + }, + { + "name": "action-delay", + "var_name": "actionDelay", + "description": "Ticks to wait after resuming and swapping (Fixes kicking).", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "low-health-disable", + "var_name": "lowHealthDisable", + "description": "Automatically disable the module if your health drops.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "health-threshold", + "var_name": "healthThreshold", + "description": "The health value to disable at.", + "type": "number", + "setting_class": "NumberSetting", + "default": 6, + "children": [] + }, + { + "name": "golden-helmet", + "var_name": "goldenHelmet", + "description": "Equips a golden helmet for safety (e.g. piglin bartering).", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "packets-per-burst", + "var_name": "packetsPerBurst", + "description": "How many XP bottles to throw per burst.", + "type": "number", + "setting_class": "NumberSetting", + "default": 3, + "children": [] + }, + { + "name": "burst-delay", + "var_name": "burstDelay", + "description": "Ticks to wait between bursts.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "auto-disable", + "var_name": "autoDisable", + "description": "Disable module when finished or out of XP.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + } + ] + }, + { + "name": "mobanom", + "class_name": "Mobanom", + "feature_type": "module", + "description": "Detects and highlights mobs in the wrong dimension or with unnatural items.", + "settings": [ + { + "name": "highlight-mode", + "var_name": "highlightMode", + "description": "How anomalous mobs are outlined. Wireframe draws a box outline; Spectral uses the vanilla glow pipeline; Pulse uses a fading bloom effect.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "HighlightMode.Wireframe", + "children": [] + }, + { + "name": "chat-notification", + "var_name": "chatNotification", + "description": "Notify in chat when an anomaly is detected.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "ignored-entities", + "var_name": "ignoredEntities", + "description": "Entities to ignore.", + "type": "entitytypelist", + "setting_class": "EntityTypeListSetting", + "default": null, + "children": [] + }, + { + "name": "range", + "var_name": "range", + "description": "The range to detect anomalies.", + "type": "number", + "setting_class": "NumberSetting", + "default": 128, + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Number of bloom layers rendered around each mob.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "How far each bloom layer expands outward (in blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Alpha of the innermost glow layer (0-255).", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "overworld-line-color", + "var_name": "overworldLineColor", + "description": "Glow color for Overworld mobs found in other dimensions.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 0, 255)", + "children": [] + }, + { + "name": "nether-line-color", + "var_name": "netherLineColor", + "description": "Glow color for Nether mobs found in other dimensions.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 0, 0, 255)", + "children": [] + }, + { + "name": "end-line-color", + "var_name": "endLineColor", + "description": "Glow color for End mobs found in other dimensions.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 0, 255, 255)", + "children": [] + }, + { + "name": "detect-unnatural-items", + "var_name": "detectUnnaturalItems", + "description": "Detects mobs holding or wearing player-like items.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "item-anomaly-line-color", + "var_name": "itemAnomalyLineColor", + "description": "The glow color for mobs with unnatural items.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 255, 255)", + "children": [] + }, + { + "name": "detect-pumpkins", + "var_name": "detectPumpkins", + "description": "Detects mobs wearing carved pumpkins or jack-o'-lanterns.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "detect-chested-animals", + "var_name": "detectChestedAnimals", + "description": "Detects animals (donkeys, llamas, etc.) carrying a chest.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + } + ] + }, + { + "name": "neighbourhood-watch", + "class_name": "NeighbourhoodWatch", + "feature_type": "module", + "description": "Manages player tracking, safety, server monitoring, and keyword alerts.", + "settings": [ + { + "name": "disconnect-on-player", + "var_name": "disconnectOnPlayer", + "description": "Disconnects when another player is detected nearby.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "player-detection-range", + "var_name": "playerDetectionRange", + "description": "Distance within which a player triggers a disconnect.", + "type": "number", + "setting_class": "NumberSetting", + "default": 32, + "children": [] + }, + { + "name": "ignore-friends-on-disconnect", + "var_name": "ignoreFriendsOnDisconnect", + "description": "Does not disconnect if the nearby player is a friend.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "ignore-proxies-on-disconnect", + "var_name": "ignoreProxiesOnDisconnect", + "description": "Does not disconnect if the nearby player is a proxy.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "mode", + "var_name": "filterMode", + "description": "Censor: replaces matched keywords with XXXX. AutoIgnore: runs /ignorehard on the sender.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "FilterMode.Censor", + "children": [] + }, + { + "name": "keywords", + "var_name": "ignoreKeywords", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Comma-separated words to act on. Censor mode redacts them; AutoIgnore mode silences the sender. Case-insensitive.", + "children": [] + }, + { + "name": "track-players", + "var_name": "trackPlayers", + "description": "Highlights and notifies when players enter visual range.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "track-range", + "var_name": "trackRange", + "description": "Distance within which players are tracked.", + "type": "number", + "setting_class": "NumberSetting", + "default": 128, + "children": [] + }, + { + "name": "track-filter", + "var_name": "trackFilter", + "description": "Which player category to highlight and notify for.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "TabFilter.Enemies", + "children": [] + }, + { + "name": "notify-chat", + "var_name": "notifyChat", + "description": "Send a chat message when a player enters range.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "custom-message", + "var_name": "customMessage", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Notification message. Use {player} for name and {status} for relation.", + "children": [] + }, + { + "name": "danger-sound", + "var_name": "dangerSound", + "description": "Sound played when a matching player enters visual range. Off = silent.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "DangerSound.Off", + "children": [] + }, + { + "name": "sound-volume", + "var_name": "soundVolume", + "description": "Volume of the danger sound.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "sound-pitch", + "var_name": "soundPitch", + "description": "Pitch of the danger sound. 1.0 = normal.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "highlight-mode", + "var_name": "highlightMode", + "description": "Wireframe draws a bounding box outline. Spectral uses the vanilla glow pipeline.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "HighlightMode.Wireframe", + "children": [] + }, + { + "name": "outline-scale", + "var_name": "outlineScale", + "description": "Scale of the wireframe outline (Wireframe mode only). 1.0 = exact model size.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.02, + "children": [] + }, + { + "name": "friends", + "var_name": "friends", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Comma-separated players treated as friends. Case-insensitive.", + "children": [] + }, + { + "name": "friend-color", + "var_name": "friendColor", + "description": "Highlight color for friends.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 0, 255)", + "children": [] + }, + { + "name": "enemies", + "var_name": "enemies", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Comma-separated players treated as enemies. Case-insensitive.", + "children": [] + }, + { + "name": "enemy-color", + "var_name": "enemyColor", + "description": "Highlight color for enemies.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 0, 0, 255)", + "children": [] + }, + { + "name": "proxies", + "var_name": "proxies", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Comma-separated players treated as proxies. Case-insensitive.", + "children": [] + }, + { + "name": "proxy-color", + "var_name": "proxyColor", + "description": "Highlight color for proxies.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 140, 0, 255)", + "children": [] + }, + { + "name": "other-color", + "var_name": "otherColor", + "description": "Highlight color for unknown players.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(139, 0, 0, 255)", + "children": [] + }, + { + "name": "event", + "var_name": "tabEvent", + "description": "Which tab-list event to notify on.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "TabEvent.Both", + "children": [] + }, + { + "name": "notify-for", + "var_name": "tabFilter", + "description": "Which player category triggers a notification.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "TabFilter.All", + "children": [] + } + ] + }, + { + "name": "penpal", + "class_name": "Penpal", + "feature_type": "module", + "description": "Quickly message custom users or bots via /msg using custom modifier keys and binds.", + "settings": [ + { + "name": "random-pool", + "var_name": "randomPool", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Comma-separated list of commands to randomly pick from for RANDOM.", + "children": [] + }, + { + "name": "human-like-delay", + "var_name": "humanDelay", + "description": "Adds a randomized 50-150ms delay before sending to bypass anti-spam packet timing.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "global-cooldown-ms", + "var_name": "globalCooldown", + "description": "Prevents triggering any slot again for this many milliseconds after a message is sent.", + "type": "number", + "setting_class": "NumberSetting", + "default": 500, + "children": [] + }, + { + "name": "chat-feedback", + "var_name": "chatFeedback", + "description": "Shows a message when a message is sent.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "target-user-1", + "var_name": "target1", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "The username to send the message to.", + "children": [] + }, + { + "name": "message-type-1", + "var_name": "type1", + "description": "RANDOM randomly picks from the pool. CUSTOM uses your specific text.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "MessageType.RANDOM", + "children": [] + }, + { + "name": "custom-message-1", + "var_name": "message1", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "The message to send. Only used if Message Type is set to CUSTOM.", + "children": [] + }, + { + "name": "modifier-1", + "var_name": "modifier1", + "description": "The modifier key to hold.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "Modifier.NONE", + "children": [] + }, + { + "name": "trigger-key-1", + "var_name": "key1", + "description": "The key to press to send the message.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "target-user-2", + "var_name": "target2", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "The username to send the message to.", + "children": [] + }, + { + "name": "message-type-2", + "var_name": "type2", + "description": "RANDOM randomly picks from the pool. CUSTOM uses your specific text.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "MessageType.RANDOM", + "children": [] + }, + { + "name": "custom-message-2", + "var_name": "message2", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "The message to send. Only used if Message Type is set to CUSTOM.", + "children": [] + }, + { + "name": "modifier-2", + "var_name": "modifier2", + "description": "The modifier key to hold.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "Modifier.NONE", + "children": [] + }, + { + "name": "trigger-key-2", + "var_name": "key2", + "description": "The key to press to send the message.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "target-user-3", + "var_name": "target3", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "The username to send the message to.", + "children": [] + }, + { + "name": "message-type-3", + "var_name": "type3", + "description": "RANDOM randomly picks from the pool. CUSTOM uses your specific text.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "MessageType.RANDOM", + "children": [] + }, + { + "name": "custom-message-3", + "var_name": "message3", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "The message to send. Only used if Message Type is set to CUSTOM.", + "children": [] + }, + { + "name": "modifier-3", + "var_name": "modifier3", + "description": "The modifier key to hold.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "Modifier.NONE", + "children": [] + }, + { + "name": "trigger-key-3", + "var_name": "key3", + "description": "The key to press to send the message.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "target-user-4", + "var_name": "target4", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "The username to send the message to.", + "children": [] + }, + { + "name": "message-type-4", + "var_name": "type4", + "description": "RANDOM randomly picks from the pool. CUSTOM uses your specific text.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "MessageType.RANDOM", + "children": [] + }, + { + "name": "custom-message-4", + "var_name": "message4", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "The message to send. Only used if Message Type is set to CUSTOM.", + "children": [] + }, + { + "name": "modifier-4", + "var_name": "modifier4", + "description": "The modifier key to hold.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "Modifier.NONE", + "children": [] + }, + { + "name": "trigger-key-4", + "var_name": "key4", + "description": "The key to press to send the message.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + } + ] + }, + { + "name": "portal-maker", + "class_name": "PortalMaker", + "feature_type": "module", + "description": "Builds and lights a minimal Nether portal (10 obsidian).", + "settings": [ + { + "name": "place-delay", + "var_name": "placeDelay", + "description": "Ticks to wait between placement actions.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "finish-delay", + "var_name": "finishDelay", + "description": "Ticks to wait after lighting the portal before turning off.", + "type": "number", + "setting_class": "NumberSetting", + "default": 20, + "children": [] + }, + { + "name": "air-place", + "var_name": "airPlace", + "description": "Lets you place obsidian in mid-air without needing a solid block to click against.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "use-baritone", + "var_name": "useBaritone", + "description": "Uses Baritone to automatically path into the portal.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "entry-mode", + "var_name": "entryMode", + "description": "How to enter the portal after it is created.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "EntryMode.Walk", + "children": [] + }, + { + "name": "auto-recycle", + "var_name": "autoRecycle", + "description": "After changing dimension, automatically step out, wait, and go back in.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "cancel-on-movement", + "var_name": "cancelOnMovement", + "description": "Cancels the recycle process if you manually press a movement key.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "recycle-wait-time", + "var_name": "recycleDelaySeconds", + "description": "How many seconds to wait before going back into the portal.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "recycle-key", + "var_name": "recycleKey", + "description": "Manual keybind to trigger the recycle cycle (step out -> wait -> in).", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "dimension-switch-cooldown", + "var_name": "dimensionSwitchCooldownTicks", + "description": "Ticks to wait after a dimension change before resuming operations (e.g., recycling).", + "type": "number", + "setting_class": "NumberSetting", + "default": 40, + "children": [] + }, + { + "name": "render", + "var_name": "render", + "description": "Show remaining portal frame positions.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "shape-mode", + "var_name": "shapeMode", + "description": "How the preview boxes are rendered.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "FrameShape.Both", + "children": [] + }, + { + "name": "side-color", + "var_name": "sideColor", + "description": "Fill color for preview blocks.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(80, 160, 255, 35)", + "children": [] + }, + { + "name": "line-color", + "var_name": "lineColor", + "description": "Outline color for preview blocks.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(100, 180, 255, 255)", + "children": [] + }, + { + "name": "render-mode", + "var_name": "renderMode", + "description": "GLOW = layered bloom boxes. SPECTRAL = subtle fill. PULSE = fading in/out highlight.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "RenderMode.GLOW", + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Number of bloom layers rendered around each preview block.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "How far each bloom layer expands outward (in blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Alpha of the innermost glow layer (0-255).", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "spectral-fill-alpha", + "var_name": "spectralFillAlpha", + "description": "Fill alpha for preview blocks in SPECTRAL mode.", + "type": "number", + "setting_class": "NumberSetting", + "default": 40, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + } + ] + }, + { + "name": "raidar", + "class_name": "Raidar", + "feature_type": "module", + "description": "Finds and highlights stashes with advanced scanning, custom Y limits, and beam thresholds.", + "settings": [ + { + "name": "range", + "var_name": "range", + "description": "Scan range in blocks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 128, + "children": [] + }, + { + "name": "y-filter-mode", + "var_name": "yFilterMode", + "description": "Filter which Y levels are scanned.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "YFilterMode.NONE", + "children": [] + }, + { + "name": "min-y", + "var_name": "minY", + "description": "Minimum Y level to scan.", + "type": "number", + "setting_class": "NumberSetting", + "default": -64, + "children": [] + }, + { + "name": "max-y", + "var_name": "maxY", + "description": "Maximum Y level to scan.", + "type": "number", + "setting_class": "NumberSetting", + "default": 320, + "children": [] + }, + { + "name": "clear-beams", + "var_name": "clearBeamsKey", + "description": "Toggles rendering of beams on and off.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "chests", + "var_name": "scanChests", + "description": "Scan for standard and trapped chests.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "chest-color", + "var_name": "chestColor", + "description": "Chest color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 215, 0, 255)", + "children": [] + }, + { + "name": "barrels", + "var_name": "scanBarrels", + "description": "Scan for barrels.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "barrel-color", + "var_name": "barrelColor", + "description": "Barrel color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(139, 69, 19, 255)", + "children": [] + }, + { + "name": "shulkers", + "var_name": "scanShulkers", + "description": "Scan for shulker boxes.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "shulker-color", + "var_name": "shulkerColor", + "description": "Shulker color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(160, 32, 240, 255)", + "children": [] + }, + { + "name": "ender-chests", + "var_name": "scanEnderChests", + "description": "Scan for ender chests.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "ender-color", + "var_name": "enderColor", + "description": "Ender chest color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(75, 0, 130, 255)", + "children": [] + }, + { + "name": "nether-obsidian", + "var_name": "scanObsidian", + "description": "Detects unnatural obsidian clusters in the Nether only.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "obsidian-color", + "var_name": "obsidianColor", + "description": "Obsidian color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(30, 30, 30, 255)", + "children": [] + }, + { + "name": "max-cluster-size", + "var_name": "maxObsidianCluster", + "description": "Max obsidian in a cluster before ignoring it. 0 to disable.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "utility-blocks", + "var_name": "scanUtility", + "description": "Detect furnaces, hoppers, dispensers, etc.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "utility-color", + "var_name": "utilityColor", + "description": "Utility color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(150, 150, 150, 255)", + "children": [] + }, + { + "name": "decorative-blocks", + "var_name": "scanDecorative", + "description": "Detect brewing stands, crafters, pots, etc.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "decorative-color", + "var_name": "decorativeColor", + "description": "Decorative color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(180, 100, 220, 255)", + "children": [] + }, + { + "name": "shape-mode", + "var_name": "shapeMode", + "description": "Box render mode.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "BoxMode.Both", + "children": [] + }, + { + "name": "highlight-style", + "var_name": "highlightStyle", + "description": "Highlight style.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "HighlightStyle.GLOW", + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Bloom layer count.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "Bloom spread.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Bloom alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 50, + "children": [] + }, + { + "name": "line-alpha", + "var_name": "spectralLineAlpha", + "description": "Outline alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 255, + "children": [] + }, + { + "name": "fill-alpha", + "var_name": "spectralFillAlpha", + "description": "Fill alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "expand", + "var_name": "spectralExpand", + "description": "Box expansion.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "min-chests-for-beam", + "var_name": "minChestsForBeam", + "description": "Minimum chests in a cluster to trigger a beam.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "min-barrels-for-beam", + "var_name": "minBarrelsForBeam", + "description": "Minimum barrels in a cluster to trigger a beam.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "min-shulkers-for-beam", + "var_name": "minShulkersForBeam", + "description": "Minimum shulkers in a cluster to trigger a beam.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1, + "children": [] + }, + { + "name": "min-ender-chests-for-beam", + "var_name": "minEnderChestsForBeam", + "description": "Minimum ender chests in a cluster to trigger a beam.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "min-obsidian-for-beam", + "var_name": "minObsidianForBeam", + "description": "Minimum obsidian blocks in a cluster to trigger a beam.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1, + "children": [] + }, + { + "name": "merge-beams", + "var_name": "mergeBeams", + "description": "Merge beams for nearby clusters.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "merge-distance", + "var_name": "mergeDistance", + "description": "Distance within which beams are merged.", + "type": "number", + "setting_class": "NumberSetting", + "default": 3.0, + "children": [] + }, + { + "name": "beam-style", + "var_name": "beamStyle", + "description": "Beam style.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "BeamStyle.GUARDIAN", + "children": [] + }, + { + "name": "beam-width", + "var_name": "beamWidth", + "description": "Box beam width.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "guardian-radius", + "var_name": "guardianRadius", + "description": "Guardian beam radius.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.08, + "children": [] + }, + { + "name": "guardian-strands", + "var_name": "guardianStrands", + "description": "Guardian glow layer count.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "guardian-spin-speed", + "var_name": "guardianSpinSpeed", + "description": "Unused (visual pacing).", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + } + ] + }, + { + "name": "rocket-pilot", + "class_name": "RocketPilot", + "feature_type": "module", + "description": "Automatic elytra + rocket flight with height maintenance, auto-takeoff, and pattern flight.", + "settings": [ + { + "name": "use-target-y", + "var_name": "useTargetY", + "description": "Whether to maintain a specific Y level.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "target-y", + "var_name": "targetY", + "description": "The Y level to maintain.", + "type": "number", + "setting_class": "NumberSetting", + "default": 120.0, + "children": [] + }, + { + "name": "flight-tolerance", + "var_name": "flightTolerance", + "description": "Allowable drop below target Y before climbing.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2.0, + "children": [] + }, + { + "name": "use-freelook-y", + "var_name": "useFreeLookY", + "description": "Render the camera at a specific Y level while flying.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "freelook-y", + "var_name": "freeLookY", + "description": "The Y level to render the camera at.", + "type": "number", + "setting_class": "NumberSetting", + "default": 120.0, + "children": [] + }, + { + "name": "toggle-freelook-y", + "var_name": "toggleFreeLookY", + "description": "Key to toggle the freelook Y feature.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "auto-takeoff", + "var_name": "autoTakeoff", + "description": "Automatically jump and fire a rocket to start elytra flight.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "disable-on-land", + "var_name": "disableOnLand", + "description": "Automatically disable the module when you land.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "rocket-delay", + "var_name": "rocketDelay", + "description": "Delay in milliseconds between rockets.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2000, + "children": [] + }, + { + "name": "silent-rockets", + "var_name": "silentRockets", + "description": "Suppresses the hand swing animation when firing rockets.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "flight-mode", + "var_name": "flightMode", + "description": "The primary flight mode for pitch control.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "FlightMode.Normal", + "children": [] + }, + { + "name": "pitch-smoothing", + "var_name": "pitchSmoothing", + "description": "How smoothly pitch changes in Normal and Pattern modes (lower = smoother).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.15, + "children": [] + }, + { + "name": "upper-y", + "var_name": "pitch40UpperY", + "description": "Upper Y-level ceiling; stop climbing above this.", + "type": "number", + "setting_class": "NumberSetting", + "default": 120.0, + "children": [] + }, + { + "name": "lower-y", + "var_name": "pitch40LowerY", + "description": "Lower Y-level floor; start climbing below this.", + "type": "number", + "setting_class": "NumberSetting", + "default": 110.0, + "children": [] + }, + { + "name": "smoothing", + "var_name": "pitch40Smoothing", + "description": "How smoothly to adjust pitch in Pitch40 mode.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "below-min-delay", + "var_name": "pitch40BelowMinDelay", + "description": "Time in ms to remain below lower-y before firing rockets.", + "type": "number", + "setting_class": "NumberSetting", + "default": 8000, + "children": [] + }, + { + "name": "flight-pattern", + "var_name": "flightPattern", + "description": "The flight pattern to follow. Manual allows free mouse look.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "FlightPattern.Manual", + "children": [] + }, + { + "name": "sweep-width", + "var_name": "sweepWidth", + "description": "Total side-to-side distance in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 10, + "children": [] + }, + { + "name": "sweep-advance", + "var_name": "sweepAdvance", + "description": "Forward distance moved per sweep in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "sweep-expansion-rate", + "var_name": "sweepExpansionRate", + "description": "Percentage increase in sweep width/advance per full cycle (e.g., 0.1 for 10% increase).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "sweep-max-factor", + "var_name": "sweepMaxFactor", + "description": "Maximum multiplier for sweep width/advance (e.g., 2.0 for double the initial size).", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "auto-update-origin", + "var_name": "sweepAutoUpdate", + "description": "Relocates the sweep pattern origin to your position if you manually fly too far from the current target.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "climb-pitch", + "var_name": "bounceClimbPitch", + "description": "Pitch angle while climbing aggressively (negative = nose up).", + "type": "number", + "setting_class": "NumberSetting", + "default": -35.0, + "children": [] + }, + { + "name": "glide-pitch", + "var_name": "bounceGlidePitch", + "description": "Pitch angle during the glide descent phase (positive = nose down).", + "type": "number", + "setting_class": "NumberSetting", + "default": 20.0, + "children": [] + }, + { + "name": "peak-y", + "var_name": "bouncePeakY", + "description": "Y level to reach before cutting rockets and beginning the glide.", + "type": "number", + "setting_class": "NumberSetting", + "default": 130.0, + "children": [] + }, + { + "name": "floor-y", + "var_name": "bounceFloorY", + "description": "Y level at which the glide ends and the climb begins again.", + "type": "number", + "setting_class": "NumberSetting", + "default": 100.0, + "children": [] + }, + { + "name": "bounce-pitch-smoothing", + "var_name": "bouncePitchSmoothing", + "description": "How smoothly to transition between climb and glide pitches.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.08, + "children": [] + }, + { + "name": "pause-key", + "var_name": "pauseKey", + "description": "Pauses/resumes the current flight pattern or drunk spiral.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "turn-speed", + "var_name": "patternTurnSpeed", + "description": "How quickly to yaw toward pattern waypoints.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.1, + "children": [] + }, + { + "name": "waypoint-reach-radius", + "var_name": "waypointReachRadius", + "description": "Horizontal distance (blocks) to a waypoint before advancing.", + "type": "number", + "setting_class": "NumberSetting", + "default": 30, + "children": [] + }, + { + "name": "grid-spacing", + "var_name": "gridSpacing", + "description": "Distance between grid lines in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 8, + "children": [] + }, + { + "name": "circle-segments", + "var_name": "circleSegments", + "description": "Number of waypoints per full spiral rotation.", + "type": "number", + "setting_class": "NumberSetting", + "default": 32, + "children": [] + }, + { + "name": "circle-expansion", + "var_name": "circleExpansion", + "description": "How many chunks the radius increases per rotation.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "hexagon-side-length", + "var_name": "hexagonSideLength", + "description": "Side length of the hexagon in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "hexagon-expansion", + "var_name": "hexagonExpansion", + "description": "Chunks the hexagon side length grows per full rotation.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "triangle-side-length", + "var_name": "triangleSideLength", + "description": "Side length of the triangle in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 6, + "children": [] + }, + { + "name": "triangle-expansion", + "var_name": "triangleExpansion", + "description": "Chunks the triangle side length grows per full rotation.", + "type": "number", + "setting_class": "NumberSetting", + "default": 3, + "children": [] + }, + { + "name": "zigzag-leg-length", + "var_name": "zigzagLegLength", + "description": "Length of each zigzag leg in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "zigzag-angle", + "var_name": "zigzagAngle", + "description": "Turn angle at each ZigZag corner (degrees from forward).", + "type": "number", + "setting_class": "NumberSetting", + "default": 45.0, + "children": [] + }, + { + "name": "figure-eight-radius", + "var_name": "figureEightRadius", + "description": "Radius of the loops in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "spiral-mode", + "var_name": "drunkSpiralMode", + "description": "Constrains drunk wandering to follow an expanding grid or circular spiral outward.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "DrunkSpiralMode.None", + "children": [] + }, + { + "name": "change-interval", + "var_name": "drunkInterval", + "description": "Ticks between direction changes.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "intensity", + "var_name": "drunkIntensity", + "description": "Maximum yaw change per update (degrees). Applied when coordinate-bias is None.", + "type": "number", + "setting_class": "NumberSetting", + "default": 120.0, + "children": [] + }, + { + "name": "coordinate-bias", + "var_name": "drunkBias", + "description": "Constrains drunk-pilot heading. None = fully random.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "DrunkBias.None", + "children": [] + }, + { + "name": "avoid-visited", + "var_name": "drunkAvoidVisited", + "description": "Attempts to steer the Drunk Pilot away from chunks it has already flown over.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "drunk-smoothing", + "var_name": "drunkSmoothing", + "description": "How smoothly to rotate to the new heading (lower = smoother).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "drunk-grid-spacing", + "var_name": "drunkGridSpacing", + "description": "Distance (chunks) between grid legs when spiral-mode is Grid.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "drunk-circle-segments", + "var_name": "drunkCircleSegments", + "description": "Waypoints per full rotation when spiral-mode is Circle.", + "type": "number", + "setting_class": "NumberSetting", + "default": 24, + "children": [] + }, + { + "name": "drunk-circle-expansion", + "var_name": "drunkCircleExpansion", + "description": "Chunks the circle radius grows per full rotation.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "drunk-hexagon-side-length", + "var_name": "drunkHexagonSideLength", + "description": "Side length (chunks) of each hexagon edge when spiral-mode is Hexagon.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "drunk-hexagon-expansion", + "var_name": "drunkHexagonExpansion", + "description": "Chunks the hexagon side length grows per full rotation.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "drunk-triangle-side-length", + "var_name": "drunkTriangleSideLength", + "description": "Side length (chunks) of each triangle edge when spiral-mode is Triangle.", + "type": "number", + "setting_class": "NumberSetting", + "default": 6, + "children": [] + }, + { + "name": "drunk-triangle-expansion", + "var_name": "drunkTriangleExpansion", + "description": "Chunks the triangle side length grows per full rotation.", + "type": "number", + "setting_class": "NumberSetting", + "default": 3, + "children": [] + }, + { + "name": "spiral-noise", + "var_name": "drunkSpiralNoise", + "description": "Random yaw offset (degrees) added to the spiral heading for the drunk feel.", + "type": "number", + "setting_class": "NumberSetting", + "default": 30.0, + "children": [] + }, + { + "name": "spiral-waypoint-reach", + "var_name": "drunkSpiralReach", + "description": "Horizontal distance (blocks) to a spiral waypoint before advancing.", + "type": "number", + "setting_class": "NumberSetting", + "default": 20, + "children": [] + }, + { + "name": "collision-avoidance", + "var_name": "collisionAvoidance", + "description": "Attempts to avoid flying straight into walls.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "avoidance-distance", + "var_name": "avoidanceDistance", + "description": "How far ahead to look for obstacles (blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 10, + "children": [] + }, + { + "name": "limit-rotation-speed", + "var_name": "limitRotationSpeed", + "description": "Caps rotation speed per tick to reduce anti-cheat flags.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "max-rotation-per-tick", + "var_name": "maxRotationPerTick", + "description": "Maximum degrees to rotate per tick.", + "type": "number", + "setting_class": "NumberSetting", + "default": 20.0, + "children": [] + }, + { + "name": "panic-key", + "var_name": "panicKey", + "description": "Immediately disconnects from the server and disables the module.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "auto-disable-on-low-health", + "var_name": "autoDisableOnLowHealth", + "description": "Disables the module if health is critically low while a totem is equipped.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "low-health-threshold", + "var_name": "lowHealthThreshold", + "description": "Health level (hearts) to trigger auto-disable.", + "type": "number", + "setting_class": "NumberSetting", + "default": 3, + "children": [] + }, + { + "name": "disconnect-on-totem-pop", + "var_name": "disconnectOnTotemPop", + "description": "Disconnect from the server if a totem of undying is consumed.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "disconnect-on-low-rockets", + "var_name": "disconnectOnLowRockets", + "description": "Disconnect from the server when your firework rocket count drops below the minimum.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "min-rockets", + "var_name": "minRockets", + "description": "Minimum number of firework rockets to keep before disconnecting.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + } + ] + }, + { + "name": "safety-net", + "class_name": "SafetyNet", + "feature_type": "module", + "description": "Protects you from the void by warning, disconnecting, or chorus teleporting at low Y levels.", + "settings": [ + { + "name": "dimension", + "var_name": "dimension", + "description": "Which dimension(s) to protect you in.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "DimensionMode.End", + "children": [] + }, + { + "name": "per-dimension-thresholds", + "var_name": "perDimensionThresholds", + "description": "Use separate warn and disconnect Y levels for the Overworld and End instead of shared values.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "warn-enabled", + "var_name": "warnEnabled", + "description": "Play a sound and show a title warning when below the warning Y level.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "warn-y-level", + "var_name": "warnY", + "description": "Y level at which the warning ping triggers. Used when sharing thresholds for both dimensions.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0, + "children": [] + }, + { + "name": "warn-interval", + "var_name": "warnInterval", + "description": "How often the warning repeats while below the Y level, in ticks (20 = 1 second). Set to 0 to warn only once.", + "type": "number", + "setting_class": "NumberSetting", + "default": 40, + "children": [] + }, + { + "name": "warn-sound", + "var_name": "warnSound", + "description": "The sound played when the warning triggers.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "WarnSound.Pling", + "children": [] + }, + { + "name": "warn-volume", + "var_name": "warnVolume", + "description": "Volume of the warning ping sound (0.0 = silent, 1.0 = full volume).", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "disconnect-enabled", + "var_name": "disconnectEnabled", + "description": "Automatically disconnect when below the disconnect Y level.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "disconnect-y-level", + "var_name": "disconnectY", + "description": "Y level at which auto-disconnect triggers. Used when sharing thresholds for both dimensions.", + "type": "number", + "setting_class": "NumberSetting", + "default": -10, + "children": [] + }, + { + "name": "overworld-warn-y-level", + "var_name": "overworldWarnY", + "description": "Overworld Y level at which the warning triggers.", + "type": "number", + "setting_class": "NumberSetting", + "default": -60, + "children": [] + }, + { + "name": "overworld-disconnect-y-level", + "var_name": "overworldDisconnectY", + "description": "Overworld Y level at which auto-disconnect triggers.", + "type": "number", + "setting_class": "NumberSetting", + "default": -70, + "children": [] + }, + { + "name": "end-warn-y-level", + "var_name": "endWarnY", + "description": "End Y level at which the warning triggers.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0, + "children": [] + }, + { + "name": "end-disconnect-y-level", + "var_name": "endDisconnectY", + "description": "End Y level at which auto-disconnect triggers.", + "type": "number", + "setting_class": "NumberSetting", + "default": -10, + "children": [] + }, + { + "name": "grace-enabled", + "var_name": "graceEnabled", + "description": "Wait a set number of ticks below the threshold before firing warnings or disconnect. Prevents false triggers from lag spikes or brief knockback.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "grace-ticks", + "var_name": "graceTicks", + "description": "How many consecutive ticks the player must be below the threshold before actions fire (20 = 1 second).", + "type": "number", + "setting_class": "NumberSetting", + "default": 10, + "children": [] + }, + { + "name": "chorus-escape-key", + "var_name": "chorusEscapeKey", + "description": "Eats a chorus fruit to escape the void. Ignores warnings/disconnects while active and disables module on landing.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + } + ] + }, + { + "name": "server-healthcare-system", + "class_name": "ServerHealthcareSystem", + "feature_type": "module", + "description": "SHS — Manages health, safety, tracking, and server monitoring.", + "settings": [ + { + "name": "mode", + "var_name": "mode", + "description": "Changes the behavior of the module between Default and Quick Respawn modes.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "OperationMode.Default", + "children": [] + }, + { + "name": "auto-respawn", + "var_name": "autoRespawn", + "description": "Automatically respawns after death.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "auto-totem", + "var_name": "autoTotem", + "description": "Automatically equips a totem of undying in your offhand.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "auto-armor", + "var_name": "autoArmor", + "description": "Automatically equips the best armor in your inventory.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "ignored-armor-slot", + "var_name": "ignoredArmorSlot", + "description": "Ignores the selected armor slot when Auto Armor is enabled.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "IgnoredArmorSlot.None", + "children": [] + }, + { + "name": "chestplate-mode", + "var_name": "chestplateMode", + "description": "How to manage the chest slot. Smart auto-swaps based on movement.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ChestplateMode.Chestplate", + "children": [] + }, + { + "name": "switch-preference-key", + "var_name": "switchModeKey", + "description": "Cycles chestplate mode: Chestplate -> Elytra -> Smart.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "smart-toggle-key", + "var_name": "smartToggleKey", + "description": "Quickly toggle smart chestplate on/off.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "manual-swap-key", + "var_name": "manualSwapKey", + "description": "Manually swap between chestplate and elytra.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "swap-cooldown-ms", + "var_name": "swapCooldownMs", + "description": "Milliseconds to wait between swaps to prevent spam.", + "type": "number", + "setting_class": "NumberSetting", + "default": 400, + "children": [] + }, + { + "name": "jump-delay-ms", + "var_name": "jumpDelayMs", + "description": "Milliseconds after jumping before swapping to elytra. If you land before this expires, the swap is cancelled.", + "type": "number", + "setting_class": "NumberSetting", + "default": 200, + "children": [] + }, + { + "name": "fall-distance-trigger", + "var_name": "fallDistanceTrigger", + "description": "Fall distance that forces an elytra swap (even without jumping).", + "type": "number", + "setting_class": "NumberSetting", + "default": 3.5, + "children": [] + }, + { + "name": "swap-back-on-land", + "var_name": "swapBackOnLand", + "description": "Swap back to chestplate when you touch the ground.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "ignored-enchantments", + "var_name": "ignoredEnchantments", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Comma-separated enchantment ids (e.g. minecraft:binding_curse). Armor with these is ignored by Auto Armor.", + "children": [] + }, + { + "name": "auto-eat", + "var_name": "autoEat", + "description": "Automatically eats food when conditions are met.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "prefer-enchanted", + "var_name": "preferEnchanted", + "description": "Prefer enchanted golden apples over regular ones when emergency eating.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "health-threshold", + "var_name": "healthThreshold", + "description": "Health at which auto-eat triggers (out of 20). Set to 0 to disable health-based eating.", + "type": "number", + "setting_class": "NumberSetting", + "default": 10, + "children": [] + }, + { + "name": "hunger-loss", + "var_name": "hungerLoss", + "description": "How many TOTAL hunger points must be lost to trigger eating.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "eat-on-fire", + "var_name": "eatOnFire", + "description": "Eat gapples when on fire and taking damage to gain fire resistance.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "eat-cooldown", + "var_name": "eatCooldown", + "description": "Ticks to wait after eating before eating again.", + "type": "number", + "setting_class": "NumberSetting", + "default": 20, + "children": [] + }, + { + "name": "swap-back", + "var_name": "swapBack", + "description": "Swap back to original slot after eating.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "pause-in-combat", + "var_name": "pauseInCombat", + "description": "Don't eat normal food while taking damage (gapples still work).", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "skip-if-regen", + "var_name": "skipIfRegen", + "description": "Doesn't eat golden apples for hunger if you already have regeneration.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "pause-baritone", + "var_name": "pauseBaritone", + "description": "Pauses Baritone while auto-eating to prevent it from interrupting or skipping meals.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "disconnect-on-totem-pop", + "var_name": "disconnectOnTotemPop", + "description": "Disconnects when a totem of undying is consumed.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "disconnect-on-no-totems", + "var_name": "disconnectOnNoTotems", + "description": "Disconnects if totem count reaches zero.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "break-bed-hotkey", + "var_name": "breakBedHotkey", + "description": "Hotkey to automatically break the nearest bed when in Quick Respawn mode.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + } + ] + }, + { + "name": "sign-scanner", + "class_name": "SignScanner", + "feature_type": "module", + "description": "Scans and displays sign text.", + "settings": [ + { + "name": "chunks", + "var_name": "chunks", + "description": "Radius in chunks to scan for signs.", + "type": "number", + "setting_class": "NumberSetting", + "default": 16, + "children": [] + }, + { + "name": "chat-messages", + "var_name": "chatMessages", + "description": "Notify in chat when a sign is found.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "cache-sign-text", + "var_name": "cacheSignText", + "description": "Cache sign text to improve performance.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "update-interval", + "var_name": "updateInterval", + "description": "How often to scan for signs (in ticks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 20, + "children": [] + }, + { + "name": "censorship", + "var_name": "censorship", + "description": "Censors bad words on signs.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "banned-words", + "var_name": "badWords", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Comma-separated words to censor.", + "children": [] + }, + { + "name": "auto-sign", + "var_name": "autoSign", + "description": "Writes configured text on signs automatically when the edit screen opens.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "active-profile", + "var_name": "activeProfile", + "description": "Which message profile to use for Auto Sign.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "MessageProfile.MESSAGE_1", + "children": [] + }, + { + "name": "switch-profile-key", + "var_name": "switchProfileKey", + "description": "Press this key to swap between Message 1 and Message 2.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "message-1-lines", + "var_name": "message1Lines", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Comma-separated lines for Message 1 (up to 4).", + "children": [] + }, + { + "name": "message-2-lines", + "var_name": "message2Lines", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Comma-separated lines for Message 2 (up to 4).", + "children": [] + }, + { + "name": "editor-delay", + "var_name": "editorDelay", + "description": "Ticks to wait before submitting the sign.", + "type": "number", + "setting_class": "NumberSetting", + "default": 8, + "children": [] + }, + { + "name": "auto-glow-dye", + "var_name": "autoGlowDye", + "description": "Automatically applies a glow ink sac and selected dye to the sign after editing.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "dye-color", + "var_name": "dyeColor", + "description": "Which color dye to apply to the sign.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "DyeColor.WHITE", + "children": [] + }, + { + "name": "auto-date", + "var_name": "autoDate", + "description": "Automatically stamps the current date onto the sign.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "date-format", + "var_name": "dateFormat", + "description": "How the date is formatted.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "DateFormat.Readable", + "children": [] + }, + { + "name": "date-line", + "var_name": "dateLine", + "description": "Which line to place the date on.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "DateLine.Line_4", + "children": [] + }, + { + "name": "scale", + "var_name": "scale", + "description": "Scale of the rendered text.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.5, + "children": [] + }, + { + "name": "text-color", + "var_name": "textColor", + "description": "Text color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 255, 255)", + "children": [] + }, + { + "name": "use-sign-color", + "var_name": "useSignColor", + "description": "Use the sign's dye color for text.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "background", + "var_name": "background", + "description": "Render a background behind the text.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "background-color", + "var_name": "backgroundColor", + "description": "Background color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(30, 30, 30, 160)", + "children": [] + }, + { + "name": "highlight-style", + "var_name": "highlightStyle", + "description": "Panel highlight style.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "HighlightStyle.GLOW", + "children": [] + }, + { + "name": "merge", + "var_name": "merge", + "description": "Merge signs that are close together.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "merge-distance", + "var_name": "mergeDistance", + "description": "Distance in pixels to merge signs.", + "type": "number", + "setting_class": "NumberSetting", + "default": 20.0, + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Bloom layer count.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "How far each bloom layer expands outward (pixels).", + "type": "number", + "setting_class": "NumberSetting", + "default": 3.0, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Alpha of the innermost glow layer.", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "glow-color", + "var_name": "glowColor", + "description": "Color of the bloom glow.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(100, 180, 255, 255)", + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "spectral-color", + "var_name": "spectralColor", + "description": "Color of the spectral outline border.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 255, 255)", + "children": [] + }, + { + "name": "thickness", + "var_name": "spectralThickness", + "description": "Thickness of the spectral border lines (pixels).", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.5, + "children": [] + }, + { + "name": "expand", + "var_name": "spectralExpand", + "description": "How far the border sits beyond the panel edge (pixels).", + "type": "number", + "setting_class": "NumberSetting", + "default": 2.0, + "children": [] + }, + { + "name": "spectral-pulse", + "var_name": "spectralPulse", + "description": "Pulsate the spectral border alpha over time.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "fill-alpha", + "var_name": "spectralFillAlpha", + "description": "Alpha of a faint tinted fill drawn inside the border.", + "type": "number", + "setting_class": "NumberSetting", + "default": 20, + "children": [] + } + ] + }, + { + "name": "third-sight", + "class_name": "ThirdSight", + "feature_type": "module", + "description": "Third-person camera with configurable distance, no block clipping, and free look.", + "settings": [ + { + "name": "no-distance-key", + "var_name": "noDistanceKey", + "description": "Toggles a mode that disables camera distance modifications, allowing vanilla third person unless zooming.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "distance", + "var_name": "distance", + "description": "Camera distance from the player.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4.0, + "children": [] + }, + { + "name": "transition-speed", + "var_name": "transitionSpeed", + "description": "How smoothly the camera transitions between distances and FOV. 1.0 = instant.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.15, + "children": [] + }, + { + "name": "custom-first-person-fov", + "var_name": "customFov", + "description": "Overrides your FOV while in First Person, allowing you to push past the vanilla limit of 115.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "target-fov", + "var_name": "targetFov", + "description": "The FOV to use while in First Person. Can be pushed past vanilla limits.", + "type": "number", + "setting_class": "NumberSetting", + "default": 110.0, + "children": [] + }, + { + "name": "free-look", + "var_name": "freeLook", + "description": "Orbit the camera around the player without affecting movement direction.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "sensitivity", + "var_name": "sensitivity", + "description": "Free-look mouse sensitivity.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "follow-speed", + "var_name": "followSpeed", + "description": "How quickly the camera yaw catches up to the direction you're looking when free-look is off. 1.0 = instant.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.12, + "children": [] + }, + { + "name": "scroll-wheel-adjust", + "var_name": "scrollWheelAdjust", + "description": "Use the mouse scroll wheel to adjust the third-person camera distance on the fly. \"\n + \"Only active while in third person and not zooming. Disabling reverts to the slider value.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "scroll-wheel-key", + "var_name": "scrollWheelKey", + "description": "Keybind to toggle the scroll wheel camera distance adjustment on or off.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "scroll-speed", + "var_name": "scrollSpeed", + "description": "Distance added/removed per scroll click. Positive scroll = zoom in, negative = zoom out.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "zoom-distance", + "var_name": "zoomDistance", + "description": "Camera distance when zoomed in.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2.0, + "children": [] + }, + { + "name": "zoom-fov", + "var_name": "zoomFov", + "description": "Field of View when zooming in First Person.", + "type": "number", + "setting_class": "NumberSetting", + "default": 30.0, + "children": [] + }, + { + "name": "zoom-key", + "var_name": "zoomKey", + "description": "Key to activate zoom.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "toggle-mode", + "var_name": "zoomToggle", + "description": "If true, press to toggle zoom. If false, hold to zoom.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + } + ] + }, + { + "name": "time-throttle", + "class_name": "Timethrottle", + "feature_type": "module", + "description": "Automatically adjusts game speed based on server TPS, chunk loading, and ping.", + "settings": [ + { + "name": "slow-down-smoothing", + "var_name": "slowDownSmoothing", + "description": "How quickly speed drops when throttling. 0 = instant, higher = more gradual.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.1, + "children": [] + }, + { + "name": "speed-up-smoothing", + "var_name": "speedUpSmoothing", + "description": "How quickly speed recovers after throttling. 0 = instant, higher = more gradual. Higher values give chunks more time to catch up.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.4, + "children": [] + }, + { + "name": "absolute-min-speed", + "var_name": "absoluteMinSpeed", + "description": "The hard floor for game speed.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.15, + "children": [] + }, + { + "name": "target-tps", + "var_name": "targetTps", + "description": "TPS above which no throttling is applied.", + "type": "number", + "setting_class": "NumberSetting", + "default": 19.0, + "children": [] + }, + { + "name": "min-tps", + "var_name": "minTps", + "description": "TPS at which the slowest speed is applied.", + "type": "number", + "setting_class": "NumberSetting", + "default": 10.0, + "children": [] + }, + { + "name": "min-speed", + "var_name": "tpsMinSpeed", + "description": "Speed multiplier applied when TPS is at or below min-tps.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.5, + "children": [] + }, + { + "name": "chunk-throttle", + "var_name": "chunkThrottle", + "description": "Slow down when chunks are missing to force them to load.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "chunk-min-speed", + "var_name": "chunkLoadSlowdown", + "description": "Speed to lock to when max-throttle is reached. (0.7 = 70%)", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.7, + "children": [] + }, + { + "name": "stall-detection", + "var_name": "stallDetection", + "description": "Give up early if chunks aren't actually loading (stalled).", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "stall-timeout", + "var_name": "stallTimeout", + "description": "Seconds without chunk-loading progress before giving up.", + "type": "number", + "setting_class": "NumberSetting", + "default": 8, + "children": [] + }, + { + "name": "max-throttle-time", + "var_name": "maxThrottleTime", + "description": "Max seconds of continuous chunk-throttling before giving up and running at normal speed. 0 = disabled.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "give-up-cooldown", + "var_name": "giveUpCooldown", + "description": "Seconds at normal speed after giving up before re-evaluating chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 3, + "children": [] + }, + { + "name": "chunk-smoothing", + "var_name": "chunkEmaFactor", + "description": "Smooths the unloaded-chunk count to prevent jittery speed changes. 0 = no smoothing, higher = more smoothing.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.5, + "children": [] + }, + { + "name": "dimension-override", + "var_name": "dimensionOverride", + "description": "Use different chunk thresholds for Overworld, Nether, and End.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "overworld-start", + "var_name": "owStart", + "description": "Missing chunks to start slowing down in the Overworld.", + "type": "number", + "setting_class": "NumberSetting", + "default": 10, + "children": [] + }, + { + "name": "overworld-max", + "var_name": "owMax", + "description": "Missing chunks for max slowdown in the Overworld.", + "type": "number", + "setting_class": "NumberSetting", + "default": 80, + "children": [] + }, + { + "name": "nether-start", + "var_name": "netherStart", + "description": "Missing chunks to start slowing down in the Nether.", + "type": "number", + "setting_class": "NumberSetting", + "default": 50, + "children": [] + }, + { + "name": "nether-max", + "var_name": "netherMax", + "description": "Missing chunks for max slowdown in the Nether.", + "type": "number", + "setting_class": "NumberSetting", + "default": 200, + "children": [] + }, + { + "name": "end-start", + "var_name": "endStart", + "description": "Missing chunks to start slowing down in the End.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "end-max", + "var_name": "endMax", + "description": "Missing chunks for max slowdown in the End.", + "type": "number", + "setting_class": "NumberSetting", + "default": 50, + "children": [] + }, + { + "name": "start-throttle", + "var_name": "chunkLoadThreshold", + "description": "Missing chunks to start slowing down.", + "type": "number", + "setting_class": "NumberSetting", + "default": 10, + "children": [] + }, + { + "name": "max-throttle", + "var_name": "maxChunkThreshold", + "description": "Missing chunks to hit the maximum slowdown.", + "type": "number", + "setting_class": "NumberSetting", + "default": 80, + "children": [] + }, + { + "name": "ping-throttle", + "var_name": "pingThrottle", + "description": "Slow down when server ping is high.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "ping-threshold", + "var_name": "pingThreshold", + "description": "Ping (ms) above which throttling begins.", + "type": "number", + "setting_class": "NumberSetting", + "default": 150, + "children": [] + }, + { + "name": "max-ping", + "var_name": "maxPing", + "description": "Ping (ms) at which the slowest speed is applied.", + "type": "number", + "setting_class": "NumberSetting", + "default": 400, + "children": [] + }, + { + "name": "ping-min-speed", + "var_name": "pingMinSpeed", + "description": "Speed multiplier applied when ping is at or above max-ping.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.6, + "children": [] + }, + { + "name": "combat-safety", + "var_name": "combatSafety", + "description": "Disables throttling when in combat or near enemies.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "detect-attacking", + "var_name": "detectSwing", + "description": "Resume normal speed when you swing your weapon.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "safety-range", + "var_name": "safetyRange", + "description": "Radius to check for hostile entities or players.", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "safety-duration", + "var_name": "safetyDuration", + "description": "Ticks to keep throttling disabled after a safety trigger.", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + } + ] + }, + { + "name": "total-disposal", + "class_name": "TotalDisposal", + "feature_type": "module", + "description": "Drop items and /kill via dedicated key combinations.", + "settings": [ + { + "name": "drop-key", + "var_name": "dropKey", + "description": "Key to drop the entire inventory.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "kill-key", + "var_name": "killKey", + "description": "Key to send the /kill command.", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "modifier", + "var_name": "modifier", + "description": "The required modifier key that must be held.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ModifierKey.Control", + "children": [] + } + ] + }, + { + "name": "tunnelers", + "class_name": "Tunnelers", + "feature_type": "module", + "description": "Highlights player-made tunnels and shafts.", + "settings": [ + { + "name": "range", + "var_name": "range", + "description": "Scan range in chunks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 8, + "children": [] + }, + { + "name": "scan-delay", + "var_name": "scanDelay", + "description": "Ticks between out-of-range pruning passes.", + "type": "number", + "setting_class": "NumberSetting", + "default": 40, + "children": [] + }, + { + "name": "shape-mode", + "var_name": "shapeMode", + "description": "Box render mode.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "BoxMode.Both", + "children": [] + }, + { + "name": "highlight-style", + "var_name": "highlightStyle", + "description": "GLOW renders layered bloom. SPECTRAL renders a crisp outline. PULSE renders a fading bloom effect.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "HighlightStyle.GLOW", + "children": [] + }, + { + "name": "fade-with-distance", + "var_name": "fadeWithDistance", + "description": "Reduces opacity of highlights that are further away.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "max-render-boxes", + "var_name": "maxRenderBoxes", + "description": "Maximum merged boxes rendered per frame.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2000, + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Number of bloom layers rendered around each box.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "How far each bloom layer expands outward (in blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Alpha of the innermost glow layer (0-255).", + "type": "number", + "setting_class": "NumberSetting", + "default": 60, + "children": [] + }, + { + "name": "pulse-speed", + "var_name": "pulseSpeed", + "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pulse-min-alpha", + "var_name": "pulseMinAlpha", + "description": "Lowest alpha reached during the pulse (0 = invisible).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse-max-alpha", + "var_name": "pulseMaxAlpha", + "description": "Peak alpha reached during the pulse.", + "type": "number", + "setting_class": "NumberSetting", + "default": 220, + "children": [] + }, + { + "name": "expand", + "var_name": "spectralExpand", + "description": "How much to expand the outline box beyond each tunnel box surface (in blocks).", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.05, + "children": [] + }, + { + "name": "line-alpha", + "var_name": "spectralLineAlpha", + "description": "Opacity of the spectral outline (0-255).", + "type": "number", + "setting_class": "NumberSetting", + "default": 255, + "children": [] + }, + { + "name": "fill-alpha", + "var_name": "spectralFillAlpha", + "description": "Alpha of a faint tinted fill drawn inside the outline (0 = lines only).", + "type": "number", + "setting_class": "NumberSetting", + "default": 15, + "children": [] + }, + { + "name": "pulse", + "var_name": "spectralPulse", + "description": "Pulsate the spectral outline alpha over time.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "1x1", + "var_name": "find1x1", + "description": "Detect 1x1 tunnels.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "min-1x1-length", + "var_name": "min1x1Length", + "description": "Minimum length of a 1x1 tunnel to be rendered.", + "type": "number", + "setting_class": "NumberSetting", + "default": 8, + "children": [] + }, + { + "name": "color-1x1", + "var_name": "color1x1", + "description": "Color for 1x1 tunnels.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 0, 75)", + "children": [] + }, + { + "name": "other-tunnels", + "var_name": "findOtherTunnels", + "description": "Detect 1x2, 2x2, 3x3, 4x4, and 5x5 tunnels.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "min-other-length", + "var_name": "minOtherLength", + "description": "Minimum length for other tunnels to be rendered.", + "type": "number", + "setting_class": "NumberSetting", + "default": 2, + "children": [] + }, + { + "name": "color-other", + "var_name": "colorOtherTunnels", + "description": "Color for 1x2, 2x2, 3x3, 4x4, and 5x5 tunnels.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 200, 0, 75)", + "children": [] + }, + { + "name": "shaft-mode", + "var_name": "shaftMode", + "description": "Which vertical shaft types to detect: Holes, LadderShafts, or Both.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ShaftMode.Both", + "children": [] + }, + { + "name": "min-hole-height", + "var_name": "minHoleHeight", + "description": "Minimum shaft depth to be detected as a hole.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "color-holes", + "var_name": "colorHoles", + "description": "Color for holes.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 255, 75)", + "children": [] + }, + { + "name": "min-ladder-height", + "var_name": "minLadderHeight", + "description": "Minimum consecutive ladder blocks to count as a shaft.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "color-ladder-shafts", + "var_name": "colorLadderShafts", + "description": "Color for ladder shafts.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 0, 75)", + "children": [] + } + ] + }, + { + "name": "waypearl", + "class_name": "Waypearl", + "feature_type": "module", + "description": "Detects nearby stasis pearls sitting above bubble columns.", + "settings": [ + { + "name": "range", + "var_name": "range", + "description": "Detection radius in blocks.", + "type": "number", + "setting_class": "NumberSetting", + "default": 64, + "children": [] + }, + { + "name": "scan-interval", + "var_name": "scanInterval", + "description": "Ticks between bubble column background scans.", + "type": "number", + "setting_class": "NumberSetting", + "default": 40, + "children": [] + }, + { + "name": "render-mode", + "var_name": "renderMode", + "description": "Default = bubble column beams. Pearls Only = entity outlines & soul sand beams.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "RenderMode.Default", + "children": [] + }, + { + "name": "highlight-own-pearl", + "var_name": "highlightOwnPearl", + "description": "Use a distinct color for your own pearls.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "own-pearl-color", + "var_name": "ownPearlColor", + "description": "Color for your own pearl's outline in Default mode.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 0, 255)", + "children": [] + }, + { + "name": "highlight-columns", + "var_name": "columnsEnabled", + "description": "Highlight bubble columns with a beam.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "core-color", + "var_name": "coreColor", + "description": "Beam core color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(180, 230, 255, 255)", + "children": [] + }, + { + "name": "glow-color", + "var_name": "glowColor", + "description": "Beam glow color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 180, 255, 50)", + "children": [] + }, + { + "name": "core-width", + "var_name": "coreWidth", + "description": "Beam core half-width.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.03, + "children": [] + }, + { + "name": "glow-spread", + "var_name": "glowSpread", + "description": "Beam glow spread.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.08, + "children": [] + }, + { + "name": "glow-layers", + "var_name": "glowLayers", + "description": "Beam glow layer count.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "glow-base-alpha", + "var_name": "glowBaseAlpha", + "description": "Beam glow alpha.", + "type": "number", + "setting_class": "NumberSetting", + "default": 50, + "children": [] + }, + { + "name": "cap-position", + "var_name": "capPosition", + "description": "Where to draw a cap box.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "CapPosition.BOTTOM", + "children": [] + }, + { + "name": "cap-color", + "var_name": "capColor", + "description": "Cap box color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 200, 255, 160)", + "children": [] + }, + { + "name": "cap-size", + "var_name": "capSize", + "description": "Cap box half-size.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.4, + "children": [] + }, + { + "name": "cap-thickness", + "var_name": "capThickness", + "description": "Cap box thickness.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.04, + "children": [] + }, + { + "name": "cap-shape-mode", + "var_name": "capShapeMode", + "description": "Cap box render mode.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "BoxMode.Both", + "children": [] + }, + { + "name": "cap-glow", + "var_name": "capGlow", + "description": "Render cap box glow.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "sound-ping", + "var_name": "soundEnabled", + "description": "Play a sound when a new pearl is detected.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "sound", + "var_name": "pingSound", + "description": "Ping sound.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "PingSound.BeaconActivate", + "children": [] + }, + { + "name": "volume", + "var_name": "soundVolume", + "description": "Ping volume.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "pitch", + "var_name": "soundPitch", + "description": "Ping pitch.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.8, + "children": [] + }, + { + "name": "mode", + "var_name": "moduleMode", + "description": "Assistant pulls pearls for others; Requester asks a bot.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "ModuleMode.Requester", + "children": [] + }, + { + "name": "bot-username", + "var_name": "botUsername", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "The assistant bot's username.", + "children": [] + }, + { + "name": "trigger-phrase", + "var_name": "triggerPhrase", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Comma-separated trigger keywords.", + "children": [] + }, + { + "name": "whitelist", + "var_name": "whitelist", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Comma-separated players allowed to trigger a pull (Assistant mode).", + "children": [] + }, + { + "name": "self-trigger-key", + "var_name": "selfTriggerKey", + "description": "Key to request a pull from the bot (Requester mode).", + "type": "keybind", + "setting_class": "BindSetting", + "default": "NullKey.INSTANCE", + "children": [] + }, + { + "name": "cooldown", + "var_name": "pullCooldown", + "description": "Seconds between pulls.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + }, + { + "name": "pull-order", + "var_name": "pullOrder", + "description": "Order to pick pearls when multiple match.", + "type": "enum", + "setting_class": "EnumSetting", + "default": "PullOrder.DISCOVERY", + "children": [] + }, + { + "name": "notify-requester", + "var_name": "notifyEnabled", + "description": "Whisper the requester when pulling.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "notify-message", + "var_name": "notifyMessage", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Message whispered to the requester. {player} = name.", + "children": [] + }, + { + "name": "walker-enabled", + "var_name": "walkerEnabled", + "description": "Walk to out-of-reach trapdoors.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "interact-reach", + "var_name": "interactReach", + "description": "Reach to interact with a trapdoor.", + "type": "number", + "setting_class": "NumberSetting", + "default": 3.5, + "children": [] + }, + { + "name": "slow-zone-radius", + "var_name": "slowZoneRadius", + "description": "Distance to stop sprinting near the target.", + "type": "number", + "setting_class": "NumberSetting", + "default": 6.0, + "children": [] + }, + { + "name": "waypoint-spacing", + "var_name": "waypointSpacing", + "description": "Distance between path waypoints.", + "type": "number", + "setting_class": "NumberSetting", + "default": 6.0, + "children": [] + }, + { + "name": "walk-timeout", + "var_name": "walkTimeoutTicks", + "description": "Ticks before a walk aborts.", + "type": "number", + "setting_class": "NumberSetting", + "default": 200, + "children": [] + }, + { + "name": "return-timeout", + "var_name": "returnTimeoutTicks", + "description": "Ticks before a return aborts.", + "type": "number", + "setting_class": "NumberSetting", + "default": 200, + "children": [] + }, + { + "name": "return-tolerance", + "var_name": "returnTolerance", + "description": "How close to idle counts as returned.", + "type": "number", + "setting_class": "NumberSetting", + "default": 1.0, + "children": [] + }, + { + "name": "stuck-threshold", + "var_name": "stuckThresholdTicks", + "description": "Ticks of no movement before aborting.", + "type": "number", + "setting_class": "NumberSetting", + "default": 30, + "children": [] + }, + { + "name": "stuck-min-movement", + "var_name": "stuckMovementMin", + "description": "Minimum XZ movement per tick to not be stuck.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.02, + "children": [] + }, + { + "name": "void-abort-y", + "var_name": "voidAbortY", + "description": "Abort if Y drops below this.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.0, + "children": [] + }, + { + "name": "return-after-pull", + "var_name": "returnAfterPull", + "description": "Walk back to the idle position after pulling.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "sprint", + "var_name": "walkerSprint", + "description": "Sprint while walking.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "auto-jump", + "var_name": "walkerJump", + "description": "Jump when stuck.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "jump-attempt-ticks", + "var_name": "jumpAttemptTicks", + "description": "Stuck ticks before jumping.", + "type": "number", + "setting_class": "NumberSetting", + "default": 8, + "children": [] + }, + { + "name": "jump-cooldown", + "var_name": "jumpCooldownTicks", + "description": "Ticks between jumps.", + "type": "number", + "setting_class": "NumberSetting", + "default": 12, + "children": [] + }, + { + "name": "sneak-on-interact", + "var_name": "sneakOnInteract", + "description": "Sneak while interacting with the trapdoor.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "abort-on-low-health", + "var_name": "abortOnLowHealth", + "description": "Abort the walk if health is low.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "low-health-threshold", + "var_name": "lowHealthThreshold", + "description": "Hearts at which to abort.", + "type": "number", + "setting_class": "NumberSetting", + "default": 4, + "children": [] + }, + { + "name": "abort-on-fire", + "var_name": "abortOnFire", + "description": "Abort the walk if on fire.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "outline", + "var_name": "poOutlineEnabled", + "description": "Renders an outline around the pearl entity.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "outline-color", + "var_name": "poOutlineColor", + "description": "Outline color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 200, 255, 255)", + "children": [] + }, + { + "name": "glow-strength", + "var_name": "poGlowStrength", + "description": "Brightens the outline color channels (1-8).", + "type": "number", + "setting_class": "NumberSetting", + "default": 3, + "children": [] + }, + { + "name": "own-outline", + "var_name": "poOwnOutlineEnabled", + "description": "Renders an outline around your own pearl.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "own-outline-color", + "var_name": "poOwnOutlineColor", + "description": "Own outline color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 255, 0, 255)", + "children": [] + }, + { + "name": "own-glow-strength", + "var_name": "poOwnGlowStrength", + "description": "Own outline brightness.", + "type": "number", + "setting_class": "NumberSetting", + "default": 3, + "children": [] + }, + { + "name": "beam", + "var_name": "poBeamEnabled", + "description": "Renders a beam down to the soul sand.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "beam-color", + "var_name": "poBeamColor", + "description": "Beam color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(255, 140, 0, 200)", + "children": [] + }, + { + "name": "beam-inner-radius", + "var_name": "poBeamInnerRadius", + "description": "Beam core radius.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.1, + "children": [] + }, + { + "name": "beam-glow-radius", + "var_name": "poBeamOuterRadius", + "description": "Beam glow radius.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.175, + "children": [] + }, + { + "name": "beam-height", + "var_name": "poBeamHeight", + "description": "How high up the beam shoots.", + "type": "number", + "setting_class": "NumberSetting", + "default": 64, + "children": [] + }, + { + "name": "own-beam", + "var_name": "poOwnBeamEnabled", + "description": "Renders a beam for your own pearl.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "own-beam-color", + "var_name": "poOwnBeamColor", + "description": "Own beam color.", + "type": "color", + "setting_class": "ColorSetting", + "default": "new Color(0, 255, 0, 200)", + "children": [] + }, + { + "name": "own-beam-inner-radius", + "var_name": "poOwnBeamInnerRadius", + "description": "Own beam core radius.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.1, + "children": [] + }, + { + "name": "own-beam-glow-radius", + "var_name": "poOwnBeamOuterRadius", + "description": "Own beam glow radius.", + "type": "number", + "setting_class": "NumberSetting", + "default": 0.175, + "children": [] + }, + { + "name": "own-beam-height", + "var_name": "poOwnBeamHeight", + "description": "Own beam height.", + "type": "number", + "setting_class": "NumberSetting", + "default": 64, + "children": [] + }, + { + "name": "disconnect-enabled", + "var_name": "disconnectEnabled", + "description": "Disconnects when another player enters render distance.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": false, + "children": [] + }, + { + "name": "ignore-friends", + "var_name": "ignoreFriendsOnDisconnect", + "description": "Doesn't disconnect if the entering player is a NeighbourhoodWatch friend.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "ignore-bot-user", + "var_name": "ignoreBotUser", + "description": "Doesn't trigger if the entering player is the configured bot username.", + "type": "boolean", + "setting_class": "BooleanSetting", + "default": true, + "children": [] + }, + { + "name": "disconnect-notify-user", + "var_name": "disconnectUser", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Username to notify before disconnecting (Assistant mode).", + "children": [] + }, + { + "name": "disconnect-message", + "var_name": "disconnectMessage", + "description": null, + "type": "string", + "setting_class": "StringSetting", + "default": "Message sent to the notify user. {player} = triggering player.", + "children": [] + }, + { + "name": "anti-spam-interval", + "var_name": "disconnectAntiSpam", + "description": "Minimum seconds between outgoing disconnect notifications.", + "type": "number", + "setting_class": "NumberSetting", + "default": 5, + "children": [] + } + ] + } + ] } ] }