{
  "plugins": [
    {
      "added_at": "2023-10-21",
      "creator": {
        "avatar": "https://github.com/RusherDevelopment.png?size=20",
        "name": "RusherDevelopment",
        "url": "https://github.com/RusherDevelopment"
      },
      "description": "A basic example plugin demonstrating the structure and capabilities of RusherHacks plugins.",
      "downloads": 0,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 1,
        "total": 2
      },
      "features": [
        {
          "class_name": "ExampleHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "ExampleHudElement",
          "settings": []
        },
        {
          "class_name": "ExampleModule",
          "description": "Example plugin module",
          "feature_type": "module",
          "name": "Example",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Settings can optionally have a description",
              "name": "Boolean",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "exampleBoolean"
            },
            {
              "children": [],
              "default": 0.0,
              "description": null,
              "name": "Double",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "exampleDouble"
            },
            {
              "children": [],
              "default": null,
              "description": "Color.CYAN",
              "name": "Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "exampleColor"
            },
            {
              "children": [],
              "default": "Hello World!",
              "description": null,
              "name": "String",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "exampleString"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 0,
                  "description": null,
                  "name": "Yaw",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "rotateYaw"
                },
                {
                  "children": [],
                  "default": 0,
                  "description": null,
                  "name": "Pitch",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "rotatePitch"
                }
              ],
              "default": null,
              "description": "NullKey.INSTANCE /* unbound */",
              "name": "RotateBind",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "rotate"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "latest_release_tag": "",
      "mc_versions": "1.21.4",
      "name": "Example Plugin",
      "repo": "RusherDevelopment/example-plugin",
      "screenshots": [],
      "stars": 32,
      "type": "plugin",
      "updated_at": "2025-02-18"
    },
    {
      "added_at": "2023-10-22",
      "creator": {
        "avatar": "https://github.com/rfresh2.png?size=20",
        "name": "rfresh2",
        "url": "https://github.com/rfresh2"
      },
      "description": "2b2t data and statistics API commands and HUD.",
      "downloads": 1486,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 0,
        "total": 1
      },
      "features": [
        {
          "class_name": "Queue2b2tHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "2b2t Queue",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Show Prio",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showPrio"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Show Regular",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showRegular"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Show Updated Time",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showUpdatedTime"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/rfresh2/2b2t.vc-rusherhack/releases/tag/1.13",
      "latest_release_tag": "1.13",
      "mc_versions": "1.20.1, 1.20.2, 1.20.4, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.11",
      "name": "2b2t.vc Rusherhack",
      "repo": "rfresh2/2b2t.vc-rusherhack",
      "screenshots": [
        {
          "alt": "Hud Setting",
          "url": "./Assets/2b2t.vc Rusherhack/HudSettings.png",
          "width": 250
        },
        {
          "alt": "Hud Display w/2b2t Queue",
          "url": "./Assets/2b2t.vc Rusherhack/HudDisplay.png",
          "width": 550
        }
      ],
      "stars": 10,
      "type": "plugin",
      "updated_at": "2025-01-17"
    },
    {
      "added_at": "2024-10-17",
      "creator": {
        "avatar": "https://github.com/Aspect-404.png?size=20",
        "name": "Aspect-404",
        "url": "https://github.com/Aspect-404"
      },
      "description": "Create a customizable HUD element for Minecraft utility mod RusherHack.",
      "downloads": 668,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 0,
        "total": 1
      },
      "features": [
        {
          "class_name": "CustomHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "CustomHudElement",
          "settings": [
            {
              "children": [
                {
                  "children": [
                    {
                      "children": [],
                      "default": "color",
                      "description": "The color to display this string as.",
                      "name": "Color",
                      "setting_class": "ColorSetting",
                      "type": "color",
                      "var_name": "colorSetting"
                    }
                  ],
                  "default": "The string to display.",
                  "description": null,
                  "name": "String",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "stringSetting"
                }
              ],
              "default": null,
              "description": "The list of strings which are displayed.",
              "name": "Strings",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "stringSettings"
            },
            {
              "children": [],
              "default": true,
              "description": "Add a string on the end",
              "name": "Add",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "addSetting"
            },
            {
              "children": [],
              "default": true,
              "description": "Remove the last string.",
              "name": "Remove",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "removeSetting"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/Aspect-404/RusherHack-HudElement/releases/download/Release/HudElement.jar",
      "latest_release_tag": "Release",
      "mc_versions": "1.20.4, 1.21",
      "name": "RusherHack-HudElement",
      "repo": "Aspect-404/RusherHack-HudElement",
      "screenshots": [
        {
          "alt": "Hud Setting",
          "url": "./Assets/RusherHack-CustomHUDElement/HudSettings.png",
          "width": 250
        },
        {
          "alt": "Hud Element",
          "url": "./Assets/RusherHack-CustomHUDElement/HudElement.png",
          "width": 550
        }
      ],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-10-18"
    },
    {
      "added_at": "2023-12-04",
      "creator": {
        "avatar": "https://github.com/IceTank.png?size=20",
        "name": "IceTank",
        "url": "https://github.com/IceTank"
      },
      "description": "Automates the renaming process in anvils.",
      "downloads": 937,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoAnvilRenameModule",
          "description": "Renames items in an anvil automatically",
          "feature_type": "module",
          "name": "AutoAnvilRename",
          "settings": [
            {
              "children": [],
              "default": "Sponsored by RusherHack Plugins",
              "description": null,
              "name": "RenameText",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "renameText"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Selective",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "selectiveMode"
            },
            {
              "children": [],
              "default": "end_crystal",
              "description": null,
              "name": "ItemId",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "selectiveId"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "OnlyShulkers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyShulkers"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "OnlyRenamed",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyRenamed"
            },
            {
              "children": [],
              "default": 1,
              "description": null,
              "name": "Click Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "clickDelay"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "AutoXP",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoXP"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/IceTank/AutoAnvilRename/releases/download/v1.1.0/auto-anvil-1.1.0.jar",
      "latest_release_tag": "v1.1.0",
      "mc_versions": "1.21.4",
      "name": "Auto Anvil Rename",
      "repo": "IceTank/AutoAnvilRename",
      "screenshots": [
        {
          "alt": "Module",
          "url": "./Assets/AutoAnvilRename/Module.png",
          "width": 250
        },
        {
          "alt": "Module Info",
          "url": "./Assets/AutoAnvilRename/ModuleInfo.png",
          "width": 450
        }
      ],
      "stars": 6,
      "type": "plugin",
      "updated_at": "2025-10-28"
    },
    {
      "added_at": "2023-11-03",
      "creator": {
        "avatar": "https://github.com/GabiRP.png?size=20",
        "name": "GabiRP",
        "url": "https://github.com/GabiRP"
      },
      "description": "Manages queue positions and notifies users of their status.",
      "downloads": 613,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "QueueManagerModule",
          "description": "2b2t Queue status through discord bot",
          "feature_type": "module",
          "name": "QueueManager",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/GabiRP/QueueManager/releases/download/1.0.0/QueueManager.Rusher-1.0-SNAPSHOT.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.20.1",
      "name": "Queue Manager",
      "repo": "GabiRP/QueueManager",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2023-12-10"
    },
    {
      "added_at": "2023-12-12",
      "creator": {
        "avatar": "https://github.com/John200410.png?size=20",
        "name": "John200410",
        "url": "https://github.com/John200410"
      },
      "description": "Provides detailed information about the current instance.",
      "downloads": 1192,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "InstanceInfoModule",
          "description": "Add additional information to the game window's title",
          "feature_type": "module",
          "name": "InstanceInfo",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Account",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "account"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Server",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "server"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "SkinIcon",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "skinIcon"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/John200410/rusherhack-instance-info/releases/download/v1.2.2/instance-info-1.2.2.jar",
      "latest_release_tag": "v1.2.2",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "RusherHack Instance Info",
      "repo": "John200410/rusherhack-instance-info",
      "screenshots": [
        {
          "alt": "Module",
          "url": "./Assets/rusherhack-instance-info/Module.png",
          "width": 350
        },
        {
          "alt": "Player Head Info",
          "url": "./Assets/rusherhack-instance-info/PlayerHead.png",
          "width": 250
        },
        {
          "alt": "Player Head Info",
          "url": "./Assets/rusherhack-instance-info/WindowInfo.png",
          "width": 550
        }
      ],
      "stars": 4,
      "type": "plugin",
      "updated_at": "2025-05-21"
    },
    {
      "added_at": "2024-01-29",
      "creator": {
        "avatar": "https://github.com/xyzbtw.png?size=20",
        "name": "xyzbtw",
        "url": "https://github.com/xyzbtw"
      },
      "description": "A plugin to move stashes using pearls.",
      "downloads": 885,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "StashMover",
          "description": "Moves stashes with pearls",
          "feature_type": "module",
          "name": "StashMover",
          "settings": [
            {
              "children": [],
              "default": "MODES.MOVER",
              "description": null,
              "name": "Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "mode"
            },
            {
              "children": [],
              "default": 100,
              "description": "Distance between you and lootchests",
              "name": "ChestDistance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "distance"
            },
            {
              "children": [],
              "default": 1,
              "description": "Delay between chest clicks",
              "name": "ChestDelay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "chestDelay"
            },
            {
              "children": [],
              "default": false,
              "description": "Only steals shulkers",
              "name": "OnlyShulkers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyShulkers"
            },
            {
              "children": [],
              "default": true,
              "description": "uses echest.",
              "name": "UseEChest",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "useEchest"
            },
            {
              "children": [],
              "default": true,
              "description": "If lootchest is full.",
              "name": "AutoDisable",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDisable"
            },
            {
              "children": [],
              "default": true,
              "description": "Doesn't steal from single chests.",
              "name": "IgnoreSingleChest",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "ignoreSingular"
            },
            {
              "children": [],
              "default": "The username of the other person that's moving stash",
              "description": null,
              "name": "OtherIGN",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "otherIGN"
            },
            {
              "children": [],
              "default": "The message that both accounts use.",
              "description": null,
              "name": "LoadMessage",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "loadMessage"
            },
            {
              "children": [],
              "default": false,
              "description": "Censors your coords in chat",
              "name": "CensorCoords",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "censorCoordinates"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/xyzbtw/StashMoverPlugin/releases/download/1.21.4/stashmover-release-1.21.4.jar",
      "latest_release_tag": "1.21.4",
      "mc_versions": "1.20.1, 1.20.4, 1.20.6, 1.21, 1.21.1, 1.21.4",
      "name": "Stash Mover Plugin",
      "repo": "xyzbtw/StashMoverPlugin",
      "screenshots": [
        {
          "alt": "Stash Mover Demo",
          "url": "https://img.youtube.com/vi/gfnNFyRQavA/0.jpg"
        }
      ],
      "stars": 16,
      "type": "plugin",
      "updated_at": "2025-09-08"
    },
    {
      "added_at": "2025-08-02",
      "creator": {
        "avatar": "https://github.com/tr330ne.png?size=20",
        "name": "tr330ne",
        "url": "https://github.com/tr330ne"
      },
      "description": "Hud Element to display keybinds and active modules from both Meteor and Rusher, with advanced customization options, including the ability to modify individual modules, metadata, brackets, colors, and other.",
      "downloads": 540,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 0,
        "total": 1
      },
      "features": [
        {
          "class_name": "CombinedBindListHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "CombinedBindList",
          "settings": [
            {
              "children": [],
              "default": "CaseType.Default",
              "description": "",
              "name": "Case",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "caseSetting"
            },
            {
              "children": [],
              "default": "CaseType.Default",
              "description": "",
              "name": "KeyCase",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "keyCase"
            },
            {
              "children": [],
              "default": "CaseType.Default",
              "description": "",
              "name": "MetaCase",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "metaCase"
            },
            {
              "children": [],
              "default": true,
              "description": "Show keybind text for modules with keybinds",
              "name": "ShowKeys",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showKeys"
            },
            {
              "children": [],
              "default": false,
              "description": "Display raw key names instead of formatted names",
              "name": "RawKeys",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rawKeys"
            },
            {
              "children": [],
              "default": false,
              "description": "Shows active modules without a keybind",
              "name": "ActiveUnbound",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "activeUnbound"
            },
            {
              "children": [],
              "default": false,
              "description": "Display keybound modules as unbound active modules",
              "name": "BoundAsUnbound",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "boundAsUnbound"
            },
            {
              "children": [],
              "default": false,
              "description": "Hides modules with a keybind",
              "name": "HideBounded",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "hideBounded"
            },
            {
              "children": [],
              "default": false,
              "description": "Show metadata for modules with keybinds",
              "name": "BoundedMeta",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "boundedMeta"
            },
            {
              "children": [],
              "default": false,
              "description": "Show metadata for active unbound modules",
              "name": "UnboundMeta",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "unboundMeta"
            },
            {
              "children": [],
              "default": false,
              "description": "Use state color for keybind text",
              "name": "StateKeys",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "stateKeys"
            },
            {
              "children": [],
              "default": true,
              "description": "Use state color for metadata of bound modules",
              "name": "StateBMeta",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "stateBMeta"
            },
            {
              "children": [],
              "default": true,
              "description": "Use state color for keybind brackets",
              "name": "StateBrackets",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "useStateBrackets"
            },
            {
              "children": [],
              "default": true,
              "description": "Use state color for metadata brackets of bound modules",
              "name": "StateMBrackets",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "stateMBrackets"
            },
            {
              "children": [],
              "default": "KeyBracketsStyle.Square",
              "description": "Style of keybind brackets",
              "name": "KeyBStyle",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "keyBStyle"
            },
            {
              "children": [],
              "default": "MetaBracketsStyle.Round",
              "description": "Style of metadata brackets",
              "name": "MetaBStyle",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "metaBStyle"
            },
            {
              "children": [],
              "default": "Color.RED",
              "description": "Color for disabled modules",
              "name": "Disabled",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "disabledColor"
            },
            {
              "children": [],
              "default": "Color.CYAN",
              "description": "Color for active modules without keybinds",
              "name": "Unbound",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "unboundColor"
            },
            {
              "children": [],
              "default": "Color.WHITE",
              "description": "Color for keybind text",
              "name": "Keybinds",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "keybindsColor"
            },
            {
              "children": [],
              "default": "Color.BLUE",
              "description": "Color for keybind brackets",
              "name": "Brackets",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "bracketsColor"
            },
            {
              "children": [],
              "default": "Color.YELLOW",
              "description": "Color for metadata text of bound modules",
              "name": "MBound",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "mBoundColor"
            },
            {
              "children": [],
              "default": "Color.YELLOW",
              "description": "Color for metadata text of unbound modules",
              "name": "MUnbound",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "mUnboundColor"
            },
            {
              "children": [],
              "default": "Color.BLUE",
              "description": "Color for metadata brackets of bound modules",
              "name": "MBrackets",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "mBrackets"
            },
            {
              "children": [],
              "default": "Color.BLUE",
              "description": "Color for metadata brackets of unbound modules",
              "name": "MUBrackets",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "mUBrackets"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tr330ne/combined-bindlist/releases/download/v0.5/CombinedBindList-0.5.jar",
      "latest_release_tag": "v0.5",
      "mc_versions": "1.21.1, 1.21.3, 1.21.4",
      "name": "Combined Bind List",
      "repo": "tr330ne/combined-bindlist",
      "screenshots": [
        {
          "alt": "Preview",
          "url": "./Assets/CombinedBindList/Screenshot_1.png",
          "width": 453
        },
        {
          "alt": "Commands",
          "url": "./Assets/CombinedBindList/Screenshot_2.png",
          "width": 371
        },
        {
          "alt": "Customization",
          "url": "./Assets/CombinedBindList/Screenshot_3.png",
          "width": 321
        },
        {
          "alt": "Commands",
          "url": "./Assets/CombinedBindList/Screenshot_4.png",
          "width": 517
        }
      ],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-08-18"
    },
    {
      "added_at": "2025-08-13",
      "creator": {
        "avatar": "https://github.com/tr330ne.png?size=20",
        "name": "tr330ne",
        "url": "https://github.com/tr330ne"
      },
      "description": "Enhances Baritone elytra flight with smart auto-jump start/stop and visual display, compatible with Xaero Plus «Baritone Elytra Here», also supports manual Baritone commands input in addition to automation.",
      "downloads": 446,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "EFlyAutoJump",
          "description": "Enhances Baritone elytra flight with smart auto-jump start/stop and visual display, compatible with Xaero Plus “Baritone Elytra Here”, also supports manual Baritone commands input in addition to automation.",
          "feature_type": "module",
          "name": "EFlyAutoJump",
          "settings": [
            {
              "children": [],
              "default": "50L",
              "description": "Delay before stopping space spam after path ends (ms)",
              "name": "StopDelay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "stopDelay"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/tr330ne/efly-autojump/releases/download/v0.2/EFlyAutoJump-0.2.jar",
      "latest_release_tag": "v0.2",
      "mc_versions": "1.21.1, 1.21.3, 1.21.4",
      "name": "EFlyAutoJump",
      "repo": "tr330ne/efly-autojump",
      "screenshots": [
        {
          "alt": "Preview",
          "url": "./Assets/EFlyAutoJump/Screenshot_1.png",
          "width": 563
        },
        {
          "alt": "Preview",
          "url": "./Assets/EFlyAutoJump/Screenshot_2.png",
          "width": 757
        },
        {
          "alt": "Preview",
          "url": "./Assets/EFlyAutoJump/Screenshot_3.png",
          "width": 575
        }
      ],
      "stars": 3,
      "type": "plugin",
      "updated_at": "2025-08-18"
    },
    {
      "added_at": "2025-12-13",
      "creator": {
        "avatar": "https://github.com/tr330ne.png?size=20",
        "name": "tr330ne",
        "url": "https://github.com/tr330ne"
      },
      "description": "Automatically synchronizes waypoints from Xaero to Rusher.",
      "downloads": 272,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "WaypointSync",
          "description": "Automatically synchronizes waypoints from Xaero to Rusher",
          "feature_type": "module",
          "name": "WaypointSync",
          "settings": [
            {
              "children": [],
              "default": "DimensionFilter.ALL",
              "description": null,
              "name": "Dimension",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "dimensionFilter"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Deathpoints",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "includeDeathpoints"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "ShowInfo",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showInfo"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tr330ne/waypointsync/releases/download/v0.1/WaypointSync-0.1.jar",
      "latest_release_tag": "v0.1",
      "mc_versions": "1.21.1, 1.21.3, 1.21.4",
      "name": "WaypointSync",
      "repo": "tr330ne/waypointsync",
      "screenshots": [
        {
          "alt": "Preview",
          "url": "./Assets/WaypointSync/Screenshot_1.png",
          "width": 248
        }
      ],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-12-13"
    },
    {
      "added_at": "2024-01-29",
      "creator": {
        "avatar": "https://github.com/czho.png?size=20",
        "name": "czho",
        "url": "https://github.com/czho"
      },
      "description": "Rusherhack HUD element that shows active modules from both meteorclient and rusherhack.",
      "downloads": 0,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 0,
        "total": 1
      },
      "features": [
        {
          "class_name": "UnifiedModuleListHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "UnifiedModuleList",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Lowercase",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "lowercase"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "latest_release_tag": "",
      "mc_versions": "1.20.2, 1.20.3, 1.20.4",
      "name": "Unified Module List",
      "repo": "czho/unified-modulelist",
      "screenshots": [],
      "stars": 4,
      "type": "plugin",
      "updated_at": "2024-02-20"
    },
    {
      "added_at": "2023-10-23",
      "creator": {
        "avatar": "https://github.com/rfresh2.png?size=20",
        "name": "rfresh2",
        "url": "https://github.com/rfresh2"
      },
      "description": "Simple tweaks for quickly moving items in containers.",
      "downloads": 1453,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ContainerTweaks",
          "description": "Simple tweaks for moving items in containers",
          "feature_type": "module",
          "name": "ContainerTweaks",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": null,
                  "description": "RusherHackAPI.getBindManager().createKeyboardKey(GLFW.GLFW_KEY_LEFT_SHIFT)",
                  "name": "HoldKey",
                  "setting_class": "BindSetting",
                  "type": "keybind",
                  "var_name": "dragMoveBind"
                },
                {
                  "children": [],
                  "default": 2,
                  "description": null,
                  "name": "MaxPerTick",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "maxDragMovesPerTick"
                }
              ],
              "default": true,
              "description": null,
              "name": "DragMove",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "dragMove"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": null,
                  "description": "RusherHackAPI.getBindManager().createKeyboardKey(GLFW.GLFW_KEY_LEFT_CONTROL)",
                  "name": "HoldKey",
                  "setting_class": "BindSetting",
                  "type": "keybind",
                  "var_name": "quickMoveBind"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Whether to move only items matching the hovered stack or all items in the container",
                  "name": "MoveAll",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "quickMoveAll"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Whether to only quick move shulkers",
                  "name": "OnlyShulkers",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "quickMoveOnlyShulkers"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Moves items from higher inv slot ids before lower slot id's when moving from player inventory",
                  "name": "ReverseFromInv",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "quickMoveReverseOrderInventory"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Moves items from higher inv slot ids before lower slot id's when moving to player inventory",
                  "name": "ReverseToInv",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "quickMoveReverseOrderContainer"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Hijack the ChestStealer button actions to use quick move",
                  "name": "ChestStealer",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "hijackChestStealer"
                }
              ],
              "default": true,
              "description": null,
              "name": "QuickMove",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "quickMove"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "DragPickup",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "dragPickup"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/rfresh2/ContainerTweaks-rusherhack/releases/tag/1.12",
      "latest_release_tag": "1.12",
      "mc_versions": "1.21.4, 1.21.11",
      "name": "Container Tweaks",
      "repo": "rfresh2/ContainerTweaks-rusherhack",
      "screenshots": [
        {
          "alt": "Module",
          "url": "./Assets/ContainerTweaks/ModuleSettings.png",
          "width": 250
        }
      ],
      "stars": 13,
      "type": "plugin",
      "updated_at": "2025-01-30"
    },
    {
      "added_at": "2023-12-19",
      "creator": {
        "avatar": "https://github.com/John200410.png?size=20",
        "name": "John200410",
        "url": "https://github.com/John200410"
      },
      "description": "Integrates Spotify music playback controls and status into the RusherHacks client.",
      "downloads": 2417,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 0,
        "total": 1
      },
      "features": [
        {
          "class_name": "SpotifyHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "Spotify",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Authenticate",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "authenticateButton"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(BACKGROUND_COLOR, true)",
                  "name": "Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "backgroundColor"
                }
              ],
              "default": true,
              "description": null,
              "name": "Background",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "background"
            },
            {
              "children": [],
              "default": 0.5,
              "description": null,
              "name": "UpdateDelay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "updateDelay"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": null,
                  "description": "NullKey.INSTANCE",
                  "name": "Play/Pause",
                  "setting_class": "BindSetting",
                  "type": "keybind",
                  "var_name": "playPauseBind"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "NullKey.INSTANCE",
                  "name": "Back",
                  "setting_class": "BindSetting",
                  "type": "keybind",
                  "var_name": "backBind"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "NullKey.INSTANCE",
                  "name": "Next",
                  "setting_class": "BindSetting",
                  "type": "keybind",
                  "var_name": "nextBind"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "NullKey.INSTANCE",
                  "name": "Back 5",
                  "setting_class": "BindSetting",
                  "type": "keybind",
                  "var_name": "back5Bind"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "NullKey.INSTANCE",
                  "name": "Next 5",
                  "setting_class": "BindSetting",
                  "type": "keybind",
                  "var_name": "next5Bind"
                }
              ],
              "default": false,
              "description": null,
              "name": "Binds",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "binds"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/John200410/rusherhack-spotify/releases/download/1.2.1/rusherhack-spotify-1.2.1.jar",
      "latest_release_tag": "1.2.1",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "RusherHack Spotify Integration",
      "repo": "John200410/rusherhack-spotify",
      "screenshots": [
        {
          "alt": "Module",
          "url": "./Assets/spotify/Module.png",
          "width": 250
        },
        {
          "alt": "Spotify Hud Element",
          "url": "./Assets/spotify/HudElement.png",
          "width": 450
        }
      ],
      "stars": 16,
      "type": "plugin",
      "updated_at": "2025-05-13"
    },
    {
      "added_at": "2024-02-29",
      "creator": {
        "avatar": "https://github.com/FBanna.png?size=20",
        "name": "FBanna",
        "url": "https://github.com/FBanna"
      },
      "description": "Highly customizable rusher hack elytra flight plugin.",
      "downloads": 1646,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 2,
        "total": 2
      },
      "features": [
        {
          "class_name": "ElytraAutodisconnect",
          "description": "Disconnects when you have x number of elytra left",
          "feature_type": "module",
          "name": "Elytra Autodisconnect",
          "settings": [
            {
              "children": [],
              "default": 1,
              "description": null,
              "name": "Min Elytra",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minElytra"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Disable on dc",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disable"
            }
          ]
        },
        {
          "class_name": "EflyModule",
          "description": "vanilla efly!",
          "feature_type": "module",
          "name": "FBanna's Efly",
          "settings": [
            {
              "children": [],
              "default": -40,
              "description": null,
              "name": "Up Pitch",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "EflyUpPitch"
            },
            {
              "children": [],
              "default": 40,
              "description": null,
              "name": "Down Pitch",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "EflyDownPitch"
            },
            {
              "children": [],
              "default": 380,
              "description": null,
              "name": "Max Height",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "MaxHeight"
            },
            {
              "children": [],
              "default": 310,
              "description": null,
              "name": "Min Height",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "MinHeight"
            },
            {
              "children": [],
              "default": 10,
              "description": null,
              "name": "Step Count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "Steps"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/FBanna/Rusherhack-Vanilla-Efly/releases/download/2.1.3%2B1.21.4/FBanna.s-efly-2.1.3.jar",
      "latest_release_tag": "2.1.3+1.21.4",
      "mc_versions": "1.21.4",
      "name": "Vanilla Elytra Flight",
      "repo": "FBanna/Rusherhack-Vanilla-Efly",
      "screenshots": [],
      "stars": 10,
      "type": "plugin",
      "updated_at": "2025-03-05"
    },
    {
      "added_at": "2024-04-24",
      "creator": {
        "avatar": "https://github.com/Aspect-404.png?size=20",
        "name": "Aspect-404",
        "url": "https://github.com/Aspect-404"
      },
      "description": "Rusherhack plugin for bookbot.",
      "downloads": 495,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 2,
        "total": 2
      },
      "features": [
        {
          "class_name": "AutoDupe",
          "description": "Automatically dupes",
          "feature_type": "module",
          "name": "AutoDupe",
          "settings": [
            {
              "children": [],
              "default": "MODES.ChunkDupe",
              "description": "idk lol",
              "name": "Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "mode"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": "Select the container to contain the dupe books.",
                  "name": "Dupe Container",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "selectDupeContainer"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Select the container which contains the items to dupe.",
                  "name": "Item Container",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "selectItemContainer"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Select the container to store the duplicated items in, best to create a hopper system.",
                  "name": "Storage Container",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "selectStorageContainer"
                }
              ],
              "default": null,
              "description": "Select the different containers used in the chunk duplication.",
              "name": "Select Containers",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "selectOptions"
            }
          ]
        },
        {
          "class_name": "BookBot",
          "description": "Writes books",
          "feature_type": "module",
          "name": "BookBot",
          "settings": [
            {
              "children": [],
              "default": "MODES.Random",
              "description": "Random is useful for making high-data books for chunk duping and ban books, file will check .rusherhack/books directory for file.txt to write in a collection of books.",
              "name": "Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "mode"
            },
            {
              "children": [],
              "default": "Made using BookBot",
              "description": null,
              "name": "Book Name",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "bookName"
            },
            {
              "children": [],
              "default": 10,
              "description": "Maximum amount of pages to write per book, some servers have this set to an arbitrary limit.",
              "name": "Max Pages",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pages"
            },
            {
              "children": [],
              "default": "File name of the file to print to a book.",
              "description": null,
              "name": "File Name",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "fileName"
            },
            {
              "children": [],
              "default": true,
              "description": "ls .rusherhack/books/",
              "name": "List Files",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "listFiles"
            },
            {
              "children": [],
              "default": false,
              "description": "All pages will contain the same content as if it was pasted.",
              "name": "Pasted Pages",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "pastedPages"
            },
            {
              "children": [],
              "default": "CHARACTER_SET.Ascii",
              "description": "KeySpam will contain common keyboard keys, Ascii will contain a variety of Ascii characters, and Unicode will contain a variety of Unicode",
              "name": "Character Set",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "characterSet"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/Aspect-404/Rusherhack-BookBot/releases/download/Release/BookBot.jar",
      "latest_release_tag": "Release",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "Rusherhack BookBot",
      "repo": "Aspect-404/Rusherhack-BookBot",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-05-12"
    },
    {
      "added_at": "2024-05-08",
      "creator": {
        "avatar": "https://github.com/ShayBox.png?size=20",
        "name": "ShayBox",
        "url": "https://github.com/ShayBox"
      },
      "description": "A collection of small tweaks and improvements for the RusherHacks client.",
      "downloads": 1060,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 3,
        "total": 3
      },
      "features": [
        {
          "class_name": "AntiCrawl",
          "description": null,
          "feature_type": "module",
          "name": "AntiCrawl",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "PacketMine",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "packetOnly"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "PearlPhase",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "pearlPhase"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "CrawlBreak",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "crawlBreak"
            }
          ]
        },
        {
          "class_name": "KillEffects",
          "description": null,
          "feature_type": "module",
          "name": "KillEffects",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": "Only when you kill",
              "name": "Self",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "self"
            }
          ]
        },
        {
          "class_name": "SpawnLocations",
          "description": null,
          "feature_type": "module",
          "name": "SpawnLocations",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Pause",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "pause"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Players",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "players"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Hostiles",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "hostiles"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Passives",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "passives"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Neutrals",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "neutrals"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/ShayBox/ShaysRusherTweaks/releases/tag/0.10.2",
      "latest_release_tag": "0.10.2",
      "mc_versions": "1.20.1, 1.20.2, 1.20.4, 1.20.6, 1.21",
      "name": "Shay's RusherTweaks",
      "repo": "ShayBox/ShaysRusherTweaks",
      "screenshots": [],
      "stars": 8,
      "type": "plugin",
      "updated_at": "2024-07-06"
    },
    {
      "added_at": "2024-04-17",
      "creator": {
        "avatar": "https://github.com/beanbag44.png?size=20",
        "name": "beanbag44",
        "url": "https://github.com/beanbag44"
      },
      "description": "Epic nuker for nuking terrain.",
      "downloads": 1365,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 2,
        "total": 2
      },
      "features": [
        {
          "class_name": "ListenerModule",
          "description": null,
          "feature_type": "module",
          "name": "Listener Module",
          "settings": []
        },
        {
          "class_name": "RusherModule",
          "description": null,
          "feature_type": "module",
          "name": "Rusher",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/beanbag44/Nuker/releases/tag/Release-2.0.4",
      "latest_release_tag": "Release-2.0.4",
      "mc_versions": "1.20.4",
      "name": "Nuker",
      "repo": "beanbag44/Nuker",
      "screenshots": [
        {
          "alt": "Nuker Demo",
          "url": "https://img.youtube.com/vi/JUhgqLYdONs/0.jpg"
        }
      ],
      "stars": 16,
      "type": "plugin",
      "updated_at": "2025-10-03"
    },
    {
      "added_at": "2024-06-01",
      "creator": {
        "avatar": "https://github.com/cherosin.png?size=20",
        "name": "cherosin",
        "url": "https://github.com/cherosin"
      },
      "description": "Adds a \"Hold\" flag for all modules, if active keybind will only be toggled while held.",
      "downloads": 609,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": false,
      "jar_url": "https://github.com/cherosin/hold-rusher/releases/download/1.0.1/hold-rusher-1.0.1.jar",
      "latest_release_tag": "1.0.1",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1",
      "name": "Hold Rusher",
      "repo": "cherosin/hold-rusher",
      "screenshots": [],
      "stars": 7,
      "type": "plugin",
      "updated_at": "2025-02-17"
    },
    {
      "added_at": "2024-06-01",
      "creator": {
        "avatar": "https://github.com/Eonexe.png?size=20",
        "name": "Eonexe",
        "url": "https://github.com/Eonexe"
      },
      "description": "Removes the walking animation.",
      "downloads": 577,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "NoWalkAnimationModule",
          "description": "Disables players walking animation.",
          "feature_type": "module",
          "name": "Anti-Player Swing",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/Eonexe/NoWalkAnimation/releases/download/0.1.2/no-walk-animations-0.1.2.jar",
      "latest_release_tag": "0.1.2",
      "mc_versions": "1.20.4, 1.20.6, 1.21",
      "name": "No Walk Animation",
      "repo": "Eonexe/NoWalkAnimation",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-06-26"
    },
    {
      "added_at": "2024-07-06",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Rusher nbt paste and copy.",
      "downloads": 563,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/nbt-utils/releases/download/1.20.4-0.1.0/nbt-reader-0.1.0.jar",
      "latest_release_tag": "1.20.4-0.1.0",
      "mc_versions": "1.20.4",
      "name": "NBT Utils",
      "repo": "KybesRusherhackPlugins/nbt-utils",
      "screenshots": [],
      "stars": 3,
      "type": "plugin",
      "updated_at": "2024-07-06"
    },
    {
      "added_at": "2024-07-11",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Executes commands and resolves `<player>` to every player online.",
      "downloads": 617,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ExecuterGatherData",
          "description": "Gathers data for the executer module(for example tps)",
          "feature_type": "module",
          "name": "ExecuterGatherData",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/executer/releases/download/1.20.4-5.0.0/kybes-executer-5.0.0.jar",
      "latest_release_tag": "1.20.4-5.0.0",
      "mc_versions": "1.20.4",
      "name": "Rusherhack Executer",
      "repo": "KybesRusherhackPlugins/executer",
      "screenshots": [],
      "stars": 3,
      "type": "plugin",
      "updated_at": "2024-07-15"
    },
    {
      "added_at": "2024-07-15",
      "creator": {
        "avatar": "https://github.com/Doogie13.png?size=20",
        "name": "Doogie13",
        "url": "https://github.com/Doogie13"
      },
      "description": "Spoofs the F3 debug screen information.",
      "downloads": 0,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "F3Spoof",
          "description": "Spoofs coordinates in the F3 menu",
          "feature_type": "module",
          "name": "F3Spoof",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "latest_release_tag": "",
      "mc_versions": "1.20.4, 1.21",
      "name": "F3 Spoof",
      "repo": "Doogie13/f3-spoof",
      "screenshots": [],
      "stars": 4,
      "type": "plugin",
      "updated_at": "2024-07-15"
    },
    {
      "added_at": "2024-07-23",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Opens the folder for the module with a button click.",
      "downloads": 541,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "Module",
          "description": "Open Folder",
          "feature_type": "module",
          "name": "Open Folder",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": "Open Folder",
              "name": "Open rusherhack Folder",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rusherhack"
            },
            {
              "children": [],
              "default": false,
              "description": "Opens config Folder",
              "name": "Open config Folder",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "config"
            },
            {
              "children": [],
              "default": false,
              "description": "Opens binds Folder",
              "name": "Open binds Folder",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "binds"
            },
            {
              "children": [],
              "default": false,
              "description": "Opens modules Folder",
              "name": "Open modules Folder",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "modules"
            },
            {
              "children": [],
              "default": false,
              "description": "Opens themes Folder",
              "name": "Open themes Folder",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "themes"
            },
            {
              "children": [],
              "default": false,
              "description": "Opens windows Folder",
              "name": "Open windows Folder",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "windows"
            },
            {
              "children": [],
              "default": "Prefix for the command",
              "description": null,
              "name": "Prefix",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "prefix"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/open-folder/releases/download/1.21/open-folder-0.0.9.jar",
      "latest_release_tag": "1.21",
      "mc_versions": "1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8",
      "name": "Open Folder",
      "repo": "KybesRusherhackPlugins/open-folder",
      "screenshots": [
        {
          "alt": "Open Folder Demo",
          "url": "https://img.youtube.com/vi/m_O0ruTdto8/0.jpg"
        }
      ],
      "stars": 3,
      "type": "plugin",
      "updated_at": "2024-07-23"
    },
    {
      "added_at": "2024-07-20",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "One shot pretty much all mobs with a mace.",
      "downloads": 1332,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "MaceKiller",
          "description": "Makes more damage with mace",
          "feature_type": "module",
          "name": "Mace Killer",
          "settings": [
            {
              "children": [],
              "default": 170,
              "description": "Height",
              "name": "Height",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "height"
            },
            {
              "children": [],
              "default": true,
              "description": "Maximum",
              "name": "Maximum",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "maximum"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/mace-kill/releases/download/1.21.11/mace-kill-1.0.0.jar",
      "latest_release_tag": "1.21.11",
      "mc_versions": "1.21.11",
      "name": "Mace Kill",
      "repo": "KybesRusherhackPlugins/mace-kill",
      "screenshots": [
        {
          "alt": "Mace Kill Demo",
          "url": "https://img.youtube.com/vi/seP5OqcnFT4/0.jpg"
        }
      ],
      "stars": 5,
      "type": "plugin",
      "updated_at": "2026-08-06"
    },
    {
      "added_at": "2024-07-24",
      "creator": {
        "avatar": "https://github.com/Lokfid.png?size=20",
        "name": "Lokfid",
        "url": "https://github.com/Lokfid"
      },
      "description": "Allows players to change the weather in-game.",
      "downloads": 565,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "WeatherModule",
          "description": "Weather Changing Plugin",
          "feature_type": "module",
          "name": "Weather",
          "settings": [
            {
              "children": [],
              "default": "Weather.Clear",
              "description": "Which weather do you want",
              "name": "Weather",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "mode"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/Lokfid/WeatherChangingPlugin/releases/download/1.1.0/WeatherPlugin-1.1.jar",
      "latest_release_tag": "1.1.0",
      "mc_versions": "1.21.4",
      "name": "Weather Changing Plugin",
      "repo": "Lokfid/WeatherChangingPlugin",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-07-24"
    },
    {
      "added_at": "2024-07-25",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Allows you to throw windcharges with the middle mouse button and also jump at the same time so you can boost jump.",
      "downloads": 552,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/middleclick-wind-charge/releases/download/1.21-1.0.1/rusherhack-middleclick-wind-charge-1.0.1.jar",
      "latest_release_tag": "1.21-1.0.1",
      "mc_versions": "1.21",
      "name": "Middleclick Wind Charge",
      "repo": "KybesRusherhackPlugins/middleclick-wind-charge",
      "screenshots": [
        {
          "alt": "Middleclick Wind Charge Demo",
          "url": "https://img.youtube.com/vi/kaFZWN27RaY/0.jpg"
        }
      ],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2024-07-26"
    },
    {
      "added_at": "2024-07-26",
      "creator": {
        "avatar": "https://github.com/GarlicRot.png?size=20",
        "name": "GarlicRot",
        "url": "https://github.com/GarlicRot"
      },
      "description": "A RusherHacks Plugin - Crosshair Info - GarlicSight.",
      "downloads": 505,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 0,
        "total": 1
      },
      "features": [
        {
          "class_name": "GarlicSightHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "GarlicSight",
          "settings": [
            {
              "children": [],
              "default": "GarlicSight",
              "description": null,
              "name": "Title",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "titleSetting"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "'Block:' Title",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "blockTitle"
                },
                {
                  "children": [
                    {
                      "children": [],
                      "default": true,
                      "description": null,
                      "name": "'Pos:' Title",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "positionTitle"
                    }
                  ],
                  "default": false,
                  "description": null,
                  "name": "Block Position",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "blockPosition"
                }
              ],
              "default": true,
              "description": null,
              "name": "Block Info",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "blockInfo"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "'Entity:' Title",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "entityTitle"
                },
                {
                  "children": [
                    {
                      "children": [],
                      "default": true,
                      "description": null,
                      "name": "'Health:' Title",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "healthTitle"
                    }
                  ],
                  "default": true,
                  "description": null,
                  "name": "Entity Health",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "entityHealth"
                }
              ],
              "default": true,
              "description": null,
              "name": "Entity Info",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "entityInfo"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "'Redstone:' Title",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "redstoneTitle"
                }
              ],
              "default": true,
              "description": null,
              "name": "Redstone Info",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "redstoneInfo"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/GarlicRot/GarlicSight/releases/tag/v1.0.5",
      "latest_release_tag": "v1.0.5",
      "mc_versions": "1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.11",
      "name": "GarlicSight",
      "repo": "GarlicRot/GarlicSight",
      "screenshots": [
        {
          "alt": "Hud Element",
          "url": "./Assets/GarlicSight/hudinfo.png",
          "width": 250
        },
        {
          "alt": "Block Info",
          "url": "./Assets/GarlicSight/blockinfo.png",
          "width": 300
        },
        {
          "alt": "Entity Info",
          "url": "./Assets/GarlicSight/entityinfo.png",
          "width": 300
        }
      ],
      "stars": 3,
      "type": "plugin",
      "updated_at": "2026-06-14"
    },
    {
      "added_at": "2024-07-26",
      "creator": {
        "avatar": "https://github.com/GarlicRot.png?size=20",
        "name": "GarlicRot",
        "url": "https://github.com/GarlicRot"
      },
      "description": "A RusherHacks Plugin - Spawns Lightning On Totem Pops And Player Deaths - LightningPop.",
      "downloads": 493,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "LightningPopModule",
          "description": null,
          "feature_type": "module",
          "name": "LightningPop",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": "Lightning when you pop a totem",
                  "name": "Self",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "totemPopSelf"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Lightning when another player pops a totem",
                  "name": "Player",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "totemPopPlayer"
                }
              ],
              "default": true,
              "description": "Lightning on totem pop",
              "name": "TotemPop",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "totemPop"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": "Lightning on player attack death",
                  "name": "AttackDeath",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "attackDeath"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Lightning on any player death within visual range",
                  "name": "AnyDeath",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "anyDeath"
                }
              ],
              "default": true,
              "description": "Lightning on player death",
              "name": "PlayerDeath",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "playerDeath"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": "Lightning on mob attack kill",
                  "name": "AttackMob",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "attackMob"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Lightning on any mob death within visual range",
                  "name": "AnyMob",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "anyMob"
                }
              ],
              "default": true,
              "description": "Lightning on mob death",
              "name": "Mobs",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "mobs"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/GarlicRot/LightningPop/releases/tag/v1.0.8",
      "latest_release_tag": "v1.0.8",
      "mc_versions": "1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.11",
      "name": "LightningPop",
      "repo": "GarlicRot/LightningPop",
      "screenshots": [
        {
          "alt": "Module",
          "url": "./Assets/LightningPop/Module.png",
          "width": 250
        }
      ],
      "stars": 6,
      "type": "plugin",
      "updated_at": "2025-06-03"
    },
    {
      "added_at": "2024-08-02",
      "creator": {
        "avatar": "https://github.com/GarlicRot.png?size=20",
        "name": "GarlicRot",
        "url": "https://github.com/GarlicRot"
      },
      "description": "A RusherHacks Plugin - Auto Bucket Entities - AutoBucket.",
      "downloads": 402,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoBucketModule",
          "description": "Automatically buckets certain entities",
          "feature_type": "module",
          "name": "AutoBucket",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": "Enable rapid capture of entities",
              "name": "RapidCatch",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rapidCatch"
            },
            {
              "children": [],
              "default": 1,
              "description": "Cooldown between rapid captures (ticks)",
              "name": "RapidCooldown",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "rapidCooldown"
            },
            {
              "children": [],
              "default": true,
              "description": "Bucket Axolotls",
              "name": "Axolotls",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "targetAxolotls"
            },
            {
              "children": [],
              "default": true,
              "description": "Bucket Cod",
              "name": "Cod",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "targetCod"
            },
            {
              "children": [],
              "default": true,
              "description": "Bucket Pufferfish",
              "name": "Pufferfish",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "targetPufferfish"
            },
            {
              "children": [],
              "default": true,
              "description": "Bucket Salmon",
              "name": "Salmon",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "targetSalmon"
            },
            {
              "children": [],
              "default": true,
              "description": "Bucket Tadpoles",
              "name": "Tadpoles",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "targetTadpoles"
            },
            {
              "children": [],
              "default": true,
              "description": "Bucket Tropical Fish",
              "name": "TropicalFish",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "targetTropicalFish"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/GarlicRot/AutoBucket/releases/tag/v1.0.6",
      "latest_release_tag": "v1.0.6",
      "mc_versions": "1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "AutoBucket",
      "repo": "GarlicRot/AutoBucket",
      "screenshots": [
        {
          "alt": "Module",
          "url": "./Assets/AutoBucket/module.png",
          "width": 250
        }
      ],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2025-02-10"
    },
    {
      "added_at": "2024-08-11",
      "creator": {
        "avatar": "https://github.com/PhilipPanda.png?size=20",
        "name": "PhilipPanda",
        "url": "https://github.com/PhilipPanda"
      },
      "description": "A RusherHack module plugin for 1.20.4 that exploits boat movement packets to instantly kill all passengers.",
      "downloads": 538,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "BoatExecuteModule",
          "description": "Instantly kills by exploiting boat movement packets",
          "feature_type": "module",
          "name": "BoatExecute",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/PhilipPanda/RusherHack-BoatExecute/releases/download/Release-1.20.4/boatexecute-1.20.4.jar",
      "latest_release_tag": "Release-1.20.4",
      "mc_versions": "1.20.4",
      "name": "RusherHack-BoatExecute",
      "repo": "PhilipPanda/RusherHack-BoatExecute",
      "screenshots": [
        {
          "alt": "BoatExecute Demo",
          "url": "https://img.youtube.com/vi/h35gKz9ZQK4/0.jpg"
        }
      ],
      "stars": 8,
      "type": "plugin",
      "updated_at": "2024-08-11"
    },
    {
      "added_at": "2023-10-25",
      "creator": {
        "avatar": "https://github.com/Gentleman2292.png?size=20",
        "name": "Gentleman2292",
        "url": "https://github.com/Gentleman2292"
      },
      "description": "A plugin to view NBT data in Minecraft.",
      "downloads": 695,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": false,
      "jar_url": "https://github.com/Gentleman2292/NBT-viewer/releases/download/1.2/NBTViewer-plugin-1.2-release.jar",
      "latest_release_tag": "1.2",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4",
      "name": "NBT Viewer",
      "repo": "Gentleman2292/NBT-viewer",
      "screenshots": [
        {
          "alt": "NBT-viewer",
          "url": "./Assets/NBT-viewer/NBT-viewer.png",
          "width": 750
        }
      ],
      "stars": 7,
      "type": "plugin",
      "updated_at": "2023-10-26"
    },
    {
      "added_at": "2024-07-19",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A plugin for remote controlling RusherHacks.",
      "downloads": 497,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 3
      },
      "features": [
        {
          "class_name": null,
          "description": null,
          "feature_type": "unknown",
          "name": "All from the above",
          "settings": []
        },
        {
          "class_name": null,
          "description": null,
          "feature_type": "unknown",
          "name": "enter \".server 1\"",
          "settings": []
        },
        {
          "class_name": null,
          "description": null,
          "feature_type": "unknown",
          "name": "enter \".start\"",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/remote-controle/releases/download/1.20.4-1.0.0/remote-control-1.0.0.jar",
      "latest_release_tag": "1.20.4-1.0.0",
      "mc_versions": "1.20.4",
      "name": "Remote Control",
      "repo": "KybesRusherhackPlugins/remote-controle",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2024-07-19"
    },
    {
      "added_at": "2024-05-22",
      "creator": {
        "avatar": "https://github.com/Lokfid.png?size=20",
        "name": "Lokfid",
        "url": "https://github.com/Lokfid"
      },
      "description": "A plugin to measure speed in RusherHacks.",
      "downloads": 544,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "SpeedMeasureModule",
          "description": "Measures Speed over time",
          "feature_type": "module",
          "name": "SpeedMeasure",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/Lokfid/RusherHackSpeedMeasure/releases/download/1.0.1/SpeedMeasure-1.0.1.jar",
      "latest_release_tag": "1.0.1",
      "mc_versions": "1.20.4",
      "name": "Speed Measure",
      "repo": "Lokfid/RusherHackSpeedMeasure",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2024-08-12"
    },
    {
      "added_at": "2024-07-09",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A plugin to automate TNT bombing in Minecraft.",
      "downloads": 516,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "TntNukerModule",
          "description": "Uses tnt as nukes(scaffold)",
          "feature_type": "module",
          "name": "TntNuker",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Place tnt left",
              "name": "Left",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "leftTnt"
            },
            {
              "children": [],
              "default": true,
              "description": "Place tnt right",
              "name": "Right",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rightTnt"
            },
            {
              "children": [],
              "default": true,
              "description": "Place tnt bellow",
              "name": "Bellow",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "bellowTnt"
            },
            {
              "children": [],
              "default": false,
              "description": "Place tnt front",
              "name": "Front",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "frontTnt"
            },
            {
              "children": [],
              "default": false,
              "description": "Place tnt back",
              "name": "Back",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "backTnt"
            },
            {
              "children": [],
              "default": true,
              "description": "Place redstone",
              "name": "Redstone",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "placeRedstone"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/tnt-bomber/releases/download/1.20.4/tnt-nuker-1.0.0.jar",
      "latest_release_tag": "1.20.4",
      "mc_versions": "1.20.4",
      "name": "TNT Bomber",
      "repo": "KybesRusherhackPlugins/tnt-bomber",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2024-07-09"
    },
    {
      "added_at": "2023-11-20",
      "creator": {
        "avatar": "https://github.com/John200410.png?size=20",
        "name": "John200410",
        "url": "https://github.com/John200410"
      },
      "description": "A plugin to disable rendering of entities.",
      "downloads": 553,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "NoRenderListener",
          "description": null,
          "feature_type": "module",
          "name": "CustomNoRender",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "entityType.getDescription().getString()",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "entityTypeSetting"
                }
              ],
              "default": false,
              "description": null,
              "name": "CustomEntities",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "custom"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "entityType.getDescription().getString()",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "entityTypeSetting"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/John200410/norender-entities/releases/download/v1.0/norender-entities-1.0-SNAPSHOT.jar",
      "latest_release_tag": "v1.0",
      "mc_versions": "1.20.1",
      "name": "No Render Entities",
      "repo": "John200410/norender-entities",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2023-11-20"
    },
    {
      "added_at": "2024-01-22",
      "creator": {
        "avatar": "https://github.com/Gentleman2292.png?size=20",
        "name": "Gentleman2292",
        "url": "https://github.com/Gentleman2292"
      },
      "description": "A messaging plugin for RusherHacks.",
      "downloads": 750,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "MessengerSettings",
          "description": "settings for the messenger plugin",
          "feature_type": "module",
          "name": "Messenger settings",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "in-game notifications",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "Notifications"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Show offline friends",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showOfflineFriends"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/Gentleman2292/rusherhack-messenger/releases/download/1.0.3/messenger-plugin-1.0.3.jar",
      "latest_release_tag": "1.0.3",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4",
      "name": "RusherHack Messenger",
      "repo": "Gentleman2292/rusherhack-messenger",
      "screenshots": [
        {
          "alt": "rusherhack-messenger Demo",
          "url": "./Assets/rusherhack-messenger/rusherhack-messenger-demo.jpg"
        }
      ],
      "stars": 10,
      "type": "plugin",
      "updated_at": "2024-04-16"
    },
    {
      "added_at": "2024-08-11",
      "creator": {
        "avatar": "https://github.com/GarlicRot.png?size=20",
        "name": "GarlicRot",
        "url": "https://github.com/GarlicRot"
      },
      "description": "A forked version of the [original plugin](https://github.com/John200410/rusherhack-instance-info) with custom settings.",
      "downloads": 537,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "InstanceInfoModule",
          "description": "Add additional information to the game window's title",
          "feature_type": "module",
          "name": "InstanceInfo",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Use Custom Account",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "useCustomAccount"
                },
                {
                  "children": [],
                  "default": "Notch",
                  "description": null,
                  "name": "Custom Account Name",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "customAccountName"
                }
              ],
              "default": true,
              "description": null,
              "name": "Account",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "account"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Use Custom Server",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "useCustomServer"
                },
                {
                  "children": [],
                  "default": "oldfag.org",
                  "description": null,
                  "name": "Custom Server Name",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "customServerName"
                },
                {
                  "children": [],
                  "default": "Not Connected",
                  "description": null,
                  "name": "Not Connected Message",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "notConnectedMessage"
                },
                {
                  "children": [],
                  "default": "Singleplayer",
                  "description": null,
                  "name": "Singleplayer Message",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "singleplayerMessage"
                }
              ],
              "default": true,
              "description": null,
              "name": "Server",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "server"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "SkinIcon",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "skinIcon"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/GarlicRot/rusherhack-instance-info/releases/download/v1.3/instance-info-1.3.jar",
      "latest_release_tag": "v1.3",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21",
      "name": "RusherHack Instance Info (Fork)",
      "repo": "GarlicRot/rusherhack-instance-info",
      "screenshots": [
        {
          "alt": "Module",
          "url": "./Assets/rusherhack-instance-info-fork/Module.png",
          "width": 350
        },
        {
          "alt": "Player Head Info",
          "url": "./Assets/rusherhack-instance-info-fork/PlayerHead.png",
          "width": 250
        },
        {
          "alt": "Player Head Info",
          "url": "./Assets/rusherhack-instance-info-fork/WindowInfo.png",
          "width": 550
        }
      ],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2024-08-11"
    },
    {
      "added_at": "2024-08-13",
      "creator": {
        "avatar": "https://github.com/Lokfid.png?size=20",
        "name": "Lokfid",
        "url": "https://github.com/Lokfid"
      },
      "description": "A RusherHacks plugin for playing note blocks in Minecraft.",
      "downloads": 627,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "NoteBotModule",
          "description": "NoteBot Module (just turn it on)",
          "feature_type": "module",
          "name": "NoteBot",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/Lokfid/RusherHackNoteBot/releases/download/1.0.3/NoteBotPlugin-1.0.3.jar",
      "latest_release_tag": "1.0.3",
      "mc_versions": "1.20.4, 1.21, 1.21.1, 1.21.4",
      "name": "RusherHack NoteBot",
      "repo": "Lokfid/RusherHackNoteBot",
      "screenshots": [],
      "stars": 5,
      "type": "plugin",
      "updated_at": "2025-05-08"
    },
    {
      "added_at": "2024-08-14",
      "creator": {
        "avatar": "https://github.com/xyzbtw.png?size=20",
        "name": "xyzbtw",
        "url": "https://github.com/xyzbtw"
      },
      "description": "A RusherHacks plugin to view the contents of Shulker boxes in the inventory.",
      "downloads": 900,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ShulkerViewer",
          "description": "Show shulkers on sides",
          "feature_type": "module",
          "name": "ShulkerViewer",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "DynamicColor",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "dynamicColor"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(248, 248, 255, 150)",
              "name": "DefaultColor",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "backgroundColor"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Compact",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "compact"
            },
            {
              "children": [],
              "default": 1.0,
              "description": null,
              "name": "Scale",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "scale"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/xyzbtw/ShulkerViewer/releases/download/1.21.4/shulker-viewer-1.21.4.jar",
      "latest_release_tag": "1.21.4",
      "mc_versions": "1.20.1, 1.20.2, 1.20.4, 1.21, 1.21.1",
      "name": "ShulkerViewer",
      "repo": "xyzbtw/ShulkerViewer",
      "screenshots": [],
      "stars": 11,
      "type": "plugin",
      "updated_at": "2025-09-06"
    },
    {
      "added_at": "2024-08-14",
      "creator": {
        "avatar": "https://github.com/Lokfid.png?size=20",
        "name": "Lokfid",
        "url": "https://github.com/Lokfid"
      },
      "description": "Web Browser for rh.",
      "downloads": 389,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": false,
      "jar_url": "https://github.com/Lokfid/RusherWebPlugin/releases/download/1.2/web-1.2.jar",
      "latest_release_tag": "1.2",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.4",
      "name": "RusherWebPlugin",
      "repo": "Lokfid/RusherWebPlugin",
      "screenshots": [],
      "stars": 8,
      "type": "plugin",
      "updated_at": "2025-02-21"
    },
    {
      "added_at": "2024-06-18",
      "creator": {
        "avatar": "https://github.com/xyzbtw.png?size=20",
        "name": "xyzbtw",
        "url": "https://github.com/xyzbtw"
      },
      "description": "A plugin for an updated version of NCPEfly.",
      "downloads": 726,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "NCPElytraFly",
          "description": null,
          "feature_type": "module",
          "name": "UNCPEfly",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Descending",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "takeOffWaitForDescend"
                },
                {
                  "children": [],
                  "default": 0.15,
                  "description": null,
                  "name": "Timer",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "takeOffTimerSpeed"
                }
              ],
              "default": true,
              "description": null,
              "name": "TakeOff",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "takeOff"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "DeployOnLag",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "redeployOnLag"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Wait",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "autoRedeployWait"
                },
                {
                  "children": [],
                  "default": 0.1,
                  "description": null,
                  "name": "Timer",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "autoRedeployTimerSpeed"
                },
                {
                  "children": [],
                  "default": 0.5,
                  "description": null,
                  "name": "Delay",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "autoRedeployDelay"
                }
              ],
              "default": true,
              "description": null,
              "name": "AutoRedeploy",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoRedeploy"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 1,
                  "description": null,
                  "name": "ActiveSpeed",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "activeTimerSpeed"
                }
              ],
              "default": true,
              "description": null,
              "name": "UseTimer",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "useTimer"
            },
            {
              "children": [],
              "default": -4,
              "description": null,
              "name": "Pitch",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pitch"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "ResetSpeedRubberband",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rubberbandResetSpeed"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "CancelMotionRubberband",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rubberbandMotionCancel"
            },
            {
              "children": [],
              "default": 3,
              "description": null,
              "name": "Speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "speed"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 0.03,
                  "description": null,
                  "name": "BoostValue",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "boostValue"
                },
                {
                  "children": [],
                  "default": 1.5,
                  "description": null,
                  "name": "BoostDelay",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "speedBoostDelay"
                }
              ],
              "default": false,
              "description": null,
              "name": "SpeedBoost",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "speedBoost"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/xyzbtw/UpdatedNCPEfly/releases/download/release/NCP-ElytraFlight-1.0.0.jar",
      "latest_release_tag": "release",
      "mc_versions": "1.20.4, 1.20.6",
      "name": "UpdatedNCPEfly",
      "repo": "xyzbtw/UpdatedNCPEfly",
      "screenshots": [],
      "stars": 4,
      "type": "plugin",
      "updated_at": "2024-08-28"
    },
    {
      "added_at": "2024-08-22",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A plugin for logging chat messages to discord.",
      "downloads": 549,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "DiscordLogger",
          "description": "logs chat messages to discord",
          "feature_type": "module",
          "name": "DiscordLogger",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "acount for chat signing?",
              "name": "Chat Signing",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "chatSigning"
            },
            {
              "children": [],
              "default": "Start of the message",
              "description": null,
              "name": "Start Identifier",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "startIdentifier"
            },
            {
              "children": [],
              "default": "End of the message",
              "description": null,
              "name": "End Identifier",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "endIdentifier"
            },
            {
              "children": [],
              "default": "Start of the message",
              "description": null,
              "name": "Start Message Identifier",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "startMessageIdentifier"
            },
            {
              "children": [],
              "default": "OptionEnum.All",
              "description": "Wich mode to use",
              "name": "Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "option"
            },
            {
              "children": [],
              "default": "Wich players should be watched , seperated",
              "description": null,
              "name": "Players",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "players"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 0, 255)",
              "description": "Webhook color",
              "name": "Webhook Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "color"
            },
            {
              "children": [],
              "default": true,
              "description": "Ignore your own messages",
              "name": "Ignore Self",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "ignoreSelf"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": "Size of the avatar",
                  "description": null,
                  "name": "Size",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "avatarSize"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Show the avatar without the helmet",
                  "name": "No Helm",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "nohelm"
                },
                {
                  "children": [],
                  "default": "AvatarEnum.HEAD",
                  "description": "Type of the avatar",
                  "name": "Type",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "avatarType"
                },
                {
                  "children": [],
                  "default": "BodyEnum.LEFT",
                  "description": "Where the player is facing",
                  "name": "Orientation",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "bodylr"
                }
              ],
              "default": true,
              "description": "Show avatar",
              "name": "Avatar",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "avatar"
            },
            {
              "children": [],
              "default": "Weebhook displayed with *",
              "description": null,
              "name": "Webhooks",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "weebHook"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/dc-chat-logger/releases/download/3.0.0/dc-chat-logger-3.0.0.jar",
      "latest_release_tag": "3.0.0",
      "mc_versions": "1.21",
      "name": "dc-chat-logger",
      "repo": "KybesRusherhackPlugins/dc-chat-logger",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2024-09-25"
    },
    {
      "added_at": "2024-08-24",
      "creator": {
        "avatar": "https://github.com/John200410.png?size=20",
        "name": "John200410",
        "url": "https://github.com/John200410"
      },
      "description": "A replacement for FullBright when using shaders.",
      "downloads": 543,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "NightVisionModule",
          "description": "Enables night vision potion effect",
          "feature_type": "module",
          "name": "NightVision",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/John200410/rusherhack-nightvision-plugin/releases/download/v1.0.0/nightvision-1.0.0-1.21.jar",
      "latest_release_tag": "v1.0.0",
      "mc_versions": "1.21, 1.21.1",
      "name": "rusherhack-nightvision-plugin",
      "repo": "John200410/rusherhack-nightvision-plugin",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2024-08-24"
    },
    {
      "added_at": "2024-08-27",
      "creator": {
        "avatar": "https://github.com/xyzbtw.png?size=20",
        "name": "xyzbtw",
        "url": "https://github.com/xyzbtw"
      },
      "description": "A plugin that automates the process of upgrading gear to Netherite in Minecraft.",
      "downloads": 585,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoNetherite",
          "description": null,
          "feature_type": "module",
          "name": "AutoNetherite",
          "settings": [
            {
              "children": [],
              "default": 1,
              "description": null,
              "name": "Delay[ticks]",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "ToggleOnFinished",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "toggleOnFinished"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/xyzbtw/AutoNetherite/releases/download/1.21.4/autonetherite-1.21.4.jar",
      "latest_release_tag": "1.21.4",
      "mc_versions": "1.20.4, 1.20.6, 1.21, 1.21.1, 1.21.4",
      "name": "AutoNetherite",
      "repo": "xyzbtw/AutoNetherite",
      "screenshots": [],
      "stars": 4,
      "type": "plugin",
      "updated_at": "2025-07-29"
    },
    {
      "added_at": "2024-08-29",
      "creator": {
        "avatar": "https://github.com/xyzbtw.png?size=20",
        "name": "xyzbtw",
        "url": "https://github.com/xyzbtw"
      },
      "description": "A plugin that brings back old sign functionalities in Minecraft.",
      "downloads": 487,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "OldSigns",
          "description": null,
          "feature_type": "module",
          "name": "OldSigns",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Chat",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "chat"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Box",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "render"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(255, 166, 0, 100)",
              "name": "BoxColor",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "renderColor"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Tracer",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "tracer"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(255, 166, 0, 100)",
              "name": "TracerColor",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "tracerColor"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/xyzbtw/OldSignsPlugin/releases/download/release/oldsigns-1.0.0.jar",
      "latest_release_tag": "release",
      "mc_versions": "1.20.4",
      "name": "OldSignsPlugin",
      "repo": "xyzbtw/OldSignsPlugin",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-08-29"
    },
    {
      "added_at": "2024-04-12",
      "creator": {
        "avatar": "https://github.com/CherkaSSH.png?size=20",
        "name": "CherkaSSH",
        "url": "https://github.com/CherkaSSH"
      },
      "description": "A plugin to help locate stashes in Minecraft using RusherHack.",
      "downloads": 833,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "StashHunterModule",
          "description": "Auromatically scans territory",
          "feature_type": "module",
          "name": "StashHunter",
          "settings": [
            {
              "children": [],
              "default": 8,
              "description": "In blocks",
              "name": "Gap",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "gap"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Active",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "active"
            },
            {
              "children": [],
              "default": 4,
              "description": "in gaps",
              "name": "Radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "radius"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 10,
                  "description": null,
                  "name": "LogOnHealth",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "dishealth"
                }
              ],
              "default": false,
              "description": null,
              "name": "LogOnArrival",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnect"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/CherkaSSH/StashHunter-rusherhack/releases/download/hehe2/StashHunter-rusherhack-1.0.1.jar",
      "latest_release_tag": "hehe2",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1",
      "name": "StashHunter-rusherhack",
      "repo": "CherkaSSH/StashHunter-rusherhack",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2024-11-28"
    },
    {
      "added_at": "2024-09-01",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A rusherhack plugin that allows you to see the ETA of all Elytras in the player's inventory.",
      "downloads": 563,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 0,
        "total": 1
      },
      "features": [
        {
          "class_name": "ETAHud",
          "description": null,
          "feature_type": "hud",
          "name": "Elytra ETA",
          "settings": [
            {
              "children": [],
              "default": 500,
              "description": "Check delay",
              "name": "Delay ms",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/elytra-eta/releases/download/1.0.0/rusher-elytra-eta-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.21",
      "name": "rusher-elytra-eta",
      "repo": "KybesRusherhackPlugins/elytra-eta",
      "screenshots": [
        {
          "alt": "The hud Element",
          "url": "./Assets/rusher-elytra-eta/HudElement.png",
          "width": 250
        }
      ],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2024-09-01"
    },
    {
      "added_at": "2024-09-02",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Keeps Container GUI open",
      "downloads": 493,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "SilentClose",
          "description": "Silent close",
          "feature_type": "module",
          "name": "Silent close",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/silent-container-close/releases/download/1.0.0/silent-close-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.21",
      "name": "rusher-silent-close",
      "repo": "KybesRusherhackPlugins/silent-container-close",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-09-02"
    },
    {
      "added_at": "2024-09-19",
      "creator": {
        "avatar": "https://github.com/miles352.png?size=20",
        "name": "miles352",
        "url": "https://github.com/miles352"
      },
      "description": "A collection of RusherHacks addons including:",
      "downloads": 558,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 2,
        "total": 2
      },
      "features": [
        {
          "class_name": "AFKBoostFly",
          "description": "AFKBoostFly",
          "feature_type": "module",
          "name": "AFKBoostFly",
          "settings": [
            {
              "children": [],
              "default": 1000.0,
              "description": null,
              "name": "Millis Up",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "upTime"
            },
            {
              "children": [],
              "default": 3000.0,
              "description": null,
              "name": "Millis Down",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "downTime"
            },
            {
              "children": [],
              "default": -25.0,
              "description": null,
              "name": "Pitch Up",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "upPitch"
            },
            {
              "children": [],
              "default": 20.0,
              "description": null,
              "name": "Pitch Down",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "downPitch"
            }
          ]
        },
        {
          "class_name": "MapCopy",
          "description": "MapCopy",
          "feature_type": "module",
          "name": "MapCopy",
          "settings": [
            {
              "children": [],
              "default": 4,
              "description": null,
              "name": "Copy Amount",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "copyAmount"
            },
            {
              "children": [],
              "default": 100,
              "description": null,
              "name": "Delay in MS",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/miles352/rusherhack-addons/releases/download/1.21.1/jefffmod-1.0.0.jar",
      "latest_release_tag": "1.21.1",
      "mc_versions": "1.20.4",
      "name": "rusherhack-addons",
      "repo": "miles352/rusherhack-addons",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2024-12-31"
    },
    {
      "added_at": "2024-09-03",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A plugin that integrates Google Translate into RusherHack for translating chat messages.",
      "downloads": 592,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "GTranslateV2Module",
          "description": "Translates using google translate",
          "feature_type": "module",
          "name": "GTranslateV2Module",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": "TranslateLang.de",
                  "description": "The language to translate to",
                  "name": "Your lang",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "receiveLang"
                },
                {
                  "children": [],
                  "default": "ResponseType.newMsg",
                  "description": "the way the translated msg is shown",
                  "name": "Repsonse form",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "receiveMsg"
                }
              ],
              "default": true,
              "description": null,
              "name": "Translate Receiving messages",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "translateReceiving"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": "TranslateLang.en",
                  "description": "The language an message sending should be",
                  "name": "Sending Lang",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "sendLang"
                }
              ],
              "default": true,
              "description": null,
              "name": "Translate Sending messages",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "translateSending"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/google-translate/releases/download/2.0.0/gtranslate-v2-1.0.0.jar",
      "latest_release_tag": "2.0.0",
      "mc_versions": "1.21.4",
      "name": "rusher-gtranslate",
      "repo": "KybesRusherhackPlugins/google-translate",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-05-09"
    },
    {
      "added_at": "2024-09-05",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "No Fall by setting isFalling flag in movement packets to false (tested on 6b6t).",
      "downloads": 522,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "NoFall",
          "description": "Matrix No Fall",
          "feature_type": "module",
          "name": "Matrix No Fall",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/matrix-nofall/releases/download/1.0.0/kybe-nofall-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.21",
      "name": "rusher-matrix-nofall",
      "repo": "KybesRusherhackPlugins/matrix-nofall",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-09-05"
    },
    {
      "added_at": "2024-09-05",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Automatically breaks blocks to place obsidian and activate the nether portal.",
      "downloads": 501,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "PortalMakerModule",
          "description": "Makes Portals wow",
          "feature_type": "module",
          "name": "PortalMaker",
          "settings": [
            {
              "children": [],
              "default": 5,
              "description": "How many blocks to break in 1 tick",
              "name": "BreakBlocksPerTick",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "blockBreaksPerTick"
            },
            {
              "children": [],
              "default": 5,
              "description": "How many blocks to place in 1 tick",
              "name": "BlocksPerSecond",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "blockPlacesPerTick"
            },
            {
              "children": [],
              "default": false,
              "description": "Grim",
              "name": "Grim",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "grim"
            },
            {
              "children": [],
              "default": false,
              "description": "Auto Light the portel",
              "name": "Auto Light",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "light"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/auto-portal/releases/download/1.20.6-1.21.4/kybe-portal-maker-1.0.0.jar",
      "latest_release_tag": "1.20.6-1.21.4",
      "mc_versions": "1.20.4, 1.20.6, 1.21, 1.21.1, 1.21.4, 1.21.11",
      "name": "rusher-autoportal",
      "repo": "KybesRusherhackPlugins/auto-portal",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-05-18"
    },
    {
      "added_at": "2024-09-07",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A plugin that allows placing blocks in the air in Minecraft.",
      "downloads": 535,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "GrimAirPlace",
          "description": "Grim Air Place",
          "feature_type": "module",
          "name": "Grim Air Place",
          "settings": [
            {
              "children": [],
              "default": 5,
              "description": "Range for AirPlace",
              "name": "Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": true,
              "description": "Swing hand",
              "name": "Swing",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "swing"
            },
            {
              "children": [],
              "default": 4,
              "description": "Delay for AirPlace",
              "name": "Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            },
            {
              "children": [],
              "default": "new Color(0, 0, 0, 0)",
              "description": "Color",
              "name": "Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "color"
            },
            {
              "children": [],
              "default": false,
              "description": "Grim",
              "name": "Grim",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "grim"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/air-place/releases/download/1.0.0/kybe-airplace-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.20.1, 1.20.2, 1.20.4, 1.21, 1.21.1",
      "name": "rusher-air-place",
      "repo": "KybesRusherhackPlugins/air-place",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2024-09-07"
    },
    {
      "added_at": "2024-09-07",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A plugin that automatically spams or holds the space bar.",
      "downloads": 489,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "SpaceModule",
          "description": "Hold or spamm space",
          "feature_type": "module",
          "name": "Hold or spamm space",
          "settings": [
            {
              "children": [],
              "default": "Mode.HOLD",
              "description": null,
              "name": "Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "mode"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/space-spammer/releases/download/1.0.0.1/kybe-holdspace-1.0.0.jar",
      "latest_release_tag": "1.0.0.1",
      "mc_versions": "1.21, 1.21.1",
      "name": "rusher-hold-spamm-space",
      "repo": "KybesRusherhackPlugins/space-spammer",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-10-13"
    },
    {
      "added_at": "2024-09-08",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A plugin that automates bed bombing in Minecraft.",
      "downloads": 497,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoBedBomb",
          "description": "Auto Bed Bomb",
          "feature_type": "module",
          "name": "Auto Bed Bomb",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Inventory",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "inventory"
            },
            {
              "children": [],
              "default": 5,
              "description": "Range",
              "name": "Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": 5,
              "description": "Min Damage",
              "name": "Min Damage",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minDamage"
            },
            {
              "children": [],
              "default": 20,
              "description": "Max Self Damage",
              "name": "Max Self Damage",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxDamage"
            },
            {
              "children": [],
              "default": 5,
              "description": "max Blocks Break And Place Per Tick",
              "name": "max Blocks Break And Place Per Tick",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxBlocksBreakAndPlacePerTick"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Anti Suicide",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "antiSuicide"
            },
            {
              "children": [],
              "default": 7.5,
              "description": "if the excpected damage is more than this cancel. CALCULATIONS ARE WEARD SO MAKE IT HIGHER",
              "name": "anti Suicide alue",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "antiSuicideValue"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "RayTrace",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rayTrace"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/auto-bed-bomber/releases/download/idk/kybe-auto-bed-bomb-1.0.0.jar",
      "latest_release_tag": "idk",
      "mc_versions": "1.21",
      "name": "rusher-auto-bed-bomber",
      "repo": "KybesRusherhackPlugins/auto-bed-bomber",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-09-26"
    },
    {
      "added_at": "2024-09-13",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A plugin that makes end crystals spin faster or slower.",
      "downloads": 0,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "CrystalSpin",
          "description": "Crystal Spin",
          "feature_type": "module",
          "name": "Crystal Spin",
          "settings": [
            {
              "children": [],
              "default": 1,
              "description": "Speed boost off crystals",
              "name": "Speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "speed"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/crystal-spin/releases/download/1.0.0/kybe-holdspace-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.21",
      "name": "rusher-crystal-spin",
      "repo": "KybesRusherhackPlugins/crystal-spin",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-09-13"
    },
    {
      "added_at": "2024-09-12",
      "creator": {
        "avatar": "https://github.com/oisin404.png?size=20",
        "name": "oisin404",
        "url": "https://github.com/oisin404"
      },
      "description": "A plugin that automates shearing in Minecraft.",
      "downloads": 492,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoShear",
          "description": "Automatically shears nearby pumpkins, sheep, or beehives/nests",
          "feature_type": "module",
          "name": "AutoShear",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Rotates to target to bypass Anti-Cheat",
              "name": "Rotate",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rotate"
            },
            {
              "children": [],
              "default": 3,
              "description": null,
              "name": "Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": "Shear nearby sheep",
                  "name": "Sheep",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "shearSheep"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Carve nearby pumpkins",
                  "name": "Pumpkins",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "carvePumpkins"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Harvest honeycombs from nearby beehives/nests",
                  "name": "Beehives",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "harvestBeehives"
                }
              ],
              "default": true,
              "description": "Select targets for shearing/carving",
              "name": "Targets",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "targetsMenu"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/oisin404/AutoShear/releases/download/1.0.2/auto-shear-1.0.2.jar",
      "latest_release_tag": "1.0.2",
      "mc_versions": "1.21, 1.21.1",
      "name": "AutoShear",
      "repo": "oisin404/AutoShear",
      "screenshots": [
        {
          "alt": "Video Tutorial",
          "url": "https://img.youtube.com/vi/44b4QO6l1Pc/0.jpg",
          "width": 300
        }
      ],
      "stars": 4,
      "type": "plugin",
      "updated_at": "2024-09-26"
    },
    {
      "added_at": "2024-09-23",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A plugin that automatically equips your preferred kit.",
      "downloads": 516,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ExampleModule",
          "description": "Auto Kit",
          "feature_type": "module",
          "name": "AutoKit",
          "settings": [
            {
              "children": [],
              "default": 1,
              "description": "Delay in ms",
              "name": "Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            },
            {
              "children": [],
              "default": "Kit to use",
              "description": null,
              "name": "Kit",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "kit"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/autokit/releases/download/1.0.0/kybe-autokit-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.20.4",
      "name": "rusher-autokit",
      "repo": "KybesRusherhackPlugins/autokit",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-09-24"
    },
    {
      "added_at": "2024-10-24",
      "creator": {
        "avatar": "https://github.com/NinetyUnderScore.png?size=20",
        "name": "NinetyUnderScore",
        "url": "https://github.com/NinetyUnderScore"
      },
      "description": "Automatically places torches to light up areas in Minecraft.",
      "downloads": 526,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoTorchModule",
          "description": "Automatically light up areas in range",
          "feature_type": "module",
          "name": "AutoTorch",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Rotate",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rotateToPlace"
            },
            {
              "children": [],
              "default": 5.0,
              "description": null,
              "name": "Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/NinetyUnderScore/AutoTorch/releases/download/Release/autotorch-plugin-1.0.0.jar",
      "latest_release_tag": "Release",
      "mc_versions": "1.20.1",
      "name": "AutoTorch",
      "repo": "NinetyUnderScore/AutoTorch",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2024-10-24"
    },
    {
      "added_at": "2024-11-24",
      "creator": {
        "avatar": "https://github.com/cmg-divined.png?size=20",
        "name": "cmg-divined",
        "url": "https://github.com/cmg-divined"
      },
      "description": "Automatically swaps fully repaired Elytras with damaged ones for efficient XP farm repairs.",
      "downloads": 0,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ElytraSwapModule",
          "description": "Swaps out fully repaired Elytra with a less-than-full one",
          "feature_type": "module",
          "name": "ElytraSwap",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Prevents Elytra swaps while in inventory",
              "name": "Disable in inventory",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disableInInventory"
            },
            {
              "children": [],
              "default": true,
              "description": "Prevents Elytra swaps while flying",
              "name": "Disable while flying",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disableWhileFlying"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "latest_release_tag": "",
      "mc_versions": "1.20.4, 1.21",
      "name": "Elytra Swap",
      "repo": "cmg-divined/elytra-swap",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-12-23"
    },
    {
      "added_at": "2024-12-16",
      "creator": {
        "avatar": "https://github.com/CherkaSSH.png?size=20",
        "name": "CherkaSSH",
        "url": "https://github.com/CherkaSSH"
      },
      "description": "2b2t fast bypass.",
      "downloads": 463,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ExampleModule",
          "description": "Disables horizontal movement checks",
          "feature_type": "module",
          "name": "HDisabler",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/CherkaSSH/hdisabler/releases/download/idk/example-plugin-1.0.0.jar",
      "latest_release_tag": "idk",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3",
      "name": "HDisabler",
      "repo": "CherkaSSH/hdisabler",
      "screenshots": [
        {
          "alt": "Hud Setting",
          "url": "./Assets/HDisabler/HDisabler.png",
          "width": 250
        }
      ],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2024-12-18"
    },
    {
      "added_at": "2024-07-16",
      "creator": {
        "avatar": "https://github.com/CherkaSSH.png?size=20",
        "name": "CherkaSSH",
        "url": "https://github.com/CherkaSSH"
      },
      "description": "A plugin that allows you to save, manage, and follow coordinates with ease.",
      "downloads": 0,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "CoordFollowerModule",
          "description": null,
          "feature_type": "module",
          "name": "CoordFollower",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "AutoWalk",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "aw"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/CherkaSSH/CoordFollower-plugin/releases/tag/1.0",
      "latest_release_tag": "1.0",
      "mc_versions": "1.20.4",
      "name": "CoordFollower",
      "repo": "CherkaSSH/CoordFollower-plugin",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2024-07-19"
    },
    {
      "added_at": "2024-09-28",
      "creator": {
        "avatar": "https://github.com/CherkaSSH.png?size=20",
        "name": "CherkaSSH",
        "url": "https://github.com/CherkaSSH"
      },
      "description": "Chess module for RusherHacks, powered by [ChessLib](https://github.com/bhlangonijr/chesslib).",
      "downloads": 0,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 1,
        "total": 2
      },
      "features": [
        {
          "class_name": "GameHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "ChessRepresentation",
          "settings": []
        },
        {
          "class_name": "ChessTUI",
          "description": null,
          "feature_type": "module",
          "name": "Chess",
          "settings": [
            {
              "children": [],
              "default": 15,
              "description": "# of texts to await the request",
              "name": "Count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "chat"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "latest_release_tag": "",
      "mc_versions": "1.20.1, 1.20.2, 1.20.4",
      "name": "Rusher Chess TUI",
      "repo": "CherkaSSH/rusher-chess-tui",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-05-22"
    },
    {
      "added_at": "2024-12-22",
      "creator": {
        "avatar": "https://github.com/un0x9.png?size=20",
        "name": "un0x9",
        "url": "https://github.com/un0x9"
      },
      "description": "Detects activated spawners and provides visual feedback in RusherHacks.",
      "downloads": 756,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ActivatedSpawnerDetector",
          "description": null,
          "feature_type": "module",
          "name": "ActivatedSpawnerDetector",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Renders blocks",
              "name": "Block Render",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "blockRender"
            },
            {
              "children": [],
              "default": null,
              "description": "Color.RED",
              "name": "Spawner Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "spawnerColor"
            },
            {
              "children": [],
              "default": null,
              "description": "Color.PINK",
              "name": "Chest Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "chestColor"
            },
            {
              "children": [],
              "default": false,
              "description": "Only sends a message if a chest is found within a 16 block radius",
              "name": "Log Chests Only",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "chestsOnly"
            },
            {
              "children": [],
              "default": false,
              "description": "Tracers for Chests",
              "name": "Chest Tracers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "chestTracers"
            },
            {
              "children": [],
              "default": false,
              "description": "Tracers for Spawners",
              "name": "Spawner Tracers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "spawnerTracers"
            },
            {
              "children": [],
              "default": true,
              "description": "Notifies the chat",
              "name": "ChatNotify",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "chatNotify"
            },
            {
              "children": [],
              "default": true,
              "description": "Make alert noise",
              "name": "Sound alert",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "soundAlert"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/un0x9/ActivatedSpawnerDetector/releases/download/v1.2.2/ActivatedSpawnerDetector-1.2.2.jar",
      "latest_release_tag": "v1.2.2",
      "mc_versions": "1.21, 1.21.1",
      "name": "ActivatedSpawnerDetector",
      "repo": "un0x9/ActivatedSpawnerDetector",
      "screenshots": [],
      "stars": 3,
      "type": "plugin",
      "updated_at": "2024-12-27"
    },
    {
      "added_at": "2025-01-02",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Sends notifications from RusherHacks to a Discord channel.",
      "downloads": 457,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 1,
        "total": 2
      },
      "features": [
        {
          "class_name": "ExampleHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "ExampleHudElement",
          "settings": []
        },
        {
          "class_name": "ExampleModule",
          "description": "Example plugin module",
          "feature_type": "module",
          "name": "Example",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Settings can optionally have a description",
              "name": "Boolean",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "exampleBoolean"
            },
            {
              "children": [],
              "default": 0.0,
              "description": null,
              "name": "Double",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "exampleDouble"
            },
            {
              "children": [],
              "default": null,
              "description": "Color.CYAN",
              "name": "Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "exampleColor"
            },
            {
              "children": [],
              "default": "Hello World!",
              "description": null,
              "name": "String",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "exampleString"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 0,
                  "description": null,
                  "name": "Yaw",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "rotateYaw"
                },
                {
                  "children": [],
                  "default": 0,
                  "description": null,
                  "name": "Pitch",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "rotatePitch"
                }
              ],
              "default": null,
              "description": "NullKey.INSTANCE /* unbound */",
              "name": "RotateBind",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "rotate"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/discord-notifications/releases/download/1.0.0/discord-notifier-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.20.1",
      "name": "Rusher Discord Notifications",
      "repo": "KybesRusherhackPlugins/discord-notifications",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-01-02"
    },
    {
      "added_at": "2025-01-08",
      "creator": {
        "avatar": "https://github.com/John200410.png?size=20",
        "name": "John200410",
        "url": "https://github.com/John200410"
      },
      "description": "A RusherHacks plugin for automatically applying bonemeal to crops.",
      "downloads": 441,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoBoneMealModule",
          "description": "Automatically use bonemeal on crops",
          "feature_type": "module",
          "name": "AutoBoneMeal",
          "settings": [
            {
              "children": [],
              "default": 1,
              "description": null,
              "name": "Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Saplings",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "saplings"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Wheat",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "wheat"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Carrots",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "carrots"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Potatoes",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "potatoes"
                }
              ],
              "default": null,
              "description": null,
              "name": "Crops",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "crops"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": null,
                  "description": "ColorUtils.transparency(Color.RED, 0.25f)",
                  "name": "Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "color"
                }
              ],
              "default": true,
              "description": null,
              "name": "Render",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "render"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/John200410/rusherhack-autobonemeal/releases/download/v1.0.0/auto-bonemeal-1.0.0.jar",
      "latest_release_tag": "v1.0.0",
      "mc_versions": "1.20.4",
      "name": "AutoBonemeal",
      "repo": "John200410/rusherhack-autobonemeal",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-01-08"
    },
    {
      "added_at": "2025-01-15",
      "creator": {
        "avatar": "https://github.com/PK268.png?size=20",
        "name": "PK268",
        "url": "https://github.com/PK268"
      },
      "description": "A RusherHacks plugin for crafting duration 3 rockets.",
      "downloads": 452,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "Rocket3Module",
          "description": "Auto-crafts flight duration 3 rockets",
          "feature_type": "module",
          "name": "Rocket3",
          "settings": [
            {
              "children": [],
              "default": 0,
              "description": null,
              "name": "Delay (ms)",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/PK268/Rocket3/releases/download/v1.2.0/rocket3-1.2.0.jar",
      "latest_release_tag": "v1.2.0",
      "mc_versions": "1.20.1, 1.20.4, 1.20.6",
      "name": "Rocket3",
      "repo": "PK268/Rocket3",
      "screenshots": [],
      "stars": 4,
      "type": "plugin",
      "updated_at": "2025-01-17"
    },
    {
      "added_at": "2025-01-26",
      "creator": {
        "avatar": "https://github.com/GarlicRot.png?size=20",
        "name": "GarlicRot",
        "url": "https://github.com/GarlicRot"
      },
      "description": "A RusherHacks plugin that automates the breeding of mobs in Minecraft.",
      "downloads": 55,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 1,
        "total": 2
      },
      "features": [
        {
          "class_name": "AutoBreederHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "AutoBreederHudElement",
          "settings": [
            {
              "children": [],
              "default": "TimeFormat.SECONDS",
              "description": null,
              "name": "Cooldown Format",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "timeFormatSetting"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Show Animal Name",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showAnimalName"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Show No Cooldown Message",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showNoCooldownMessage"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Show Not Targeting Message",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showNotTargetingMessage"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Show Allay Cooldown",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showAllayCooldown"
            }
          ]
        },
        {
          "class_name": "AutoBreedModule",
          "description": "Automatically tames and feeds animals (babies instantly)",
          "feature_type": "module",
          "name": "AutoBreed",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": 5,
                  "description": null,
                  "name": "Breed Radius",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "breedRadius"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Prioritize Pairs",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "prioritizePairs"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Follow Mode",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "followMode"
                }
              ],
              "default": true,
              "description": null,
              "name": "General Settings",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "generalSettings"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Allays",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedAllays"
                },
                {
                  "children": [],
                  "default": 1,
                  "description": null,
                  "name": "Min Shard Count",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "shardCountRequired"
                }
              ],
              "default": true,
              "description": null,
              "name": "Allay Settings",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "allaySettings"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Feed Babies",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "feedBabies"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Cows",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedCows"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Sheep",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedSheep"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Pigs",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedPigs"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Chickens",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedChickens"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Wolves",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedWolves"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Cats",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedCats"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Foxes",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedFoxes"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Pandas",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedPandas"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Turtles",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedTurtles"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Bees",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedBees"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Frogs",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedFrogs"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Goats",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedGoats"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Hoglins",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedHoglins"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Striders",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedStriders"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Mooshrooms",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedMooshrooms"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Rabbits",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedRabbits"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Sniffers",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedSniffers"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Camels",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedCamels"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Axolotls",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "breedAxolotls"
                }
              ],
              "default": true,
              "description": null,
              "name": "Mobs",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "mobSettings"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Wolves",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "autoTameWolves"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Cats",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "autoTameCats"
                }
              ],
              "default": true,
              "description": null,
              "name": "Taming",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "tamingSettings"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/GarlicRot/GarlicBreeder/releases/tag/v1.0.6",
      "latest_release_tag": "v1.0.6",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4",
      "name": "GarlicBreeder",
      "repo": "GarlicRot/GarlicBreeder",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-07-03"
    },
    {
      "added_at": "2025-02-08",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A RusherHacks plugin that saves items from being lost.",
      "downloads": 440,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ItemSaverModule",
          "description": "Stops you from breaking tools",
          "feature_type": "module",
          "name": "Item Saver",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Sword",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "attackSword"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Axe",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "attackAxe"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Mace",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "attackMace"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Bow",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "attackBow"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Crossbow",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "attackCrossbow"
                }
              ],
              "default": null,
              "description": null,
              "name": "Attack",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "attack"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Shears",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "interactShears"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Fishing Rod",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "interactFishingRod"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Auto Disable Auto Fish",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "autoDisableAutoFish"
                }
              ],
              "default": null,
              "description": null,
              "name": "Interact",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "interact"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Shovel",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "pathingShovel"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Axe",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "pathingAxe"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Hoe",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "pathingHoe"
                }
              ],
              "default": null,
              "description": null,
              "name": "Pathing",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "pathing"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Pickaxe",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "miningPickaxe"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Axe",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "miningAxe"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Shovel",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "miningShovel"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Hoe",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "miningHoe"
                }
              ],
              "default": null,
              "description": null,
              "name": "Mining",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "mining"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/item-saver/releases/download/multiversion/item-saver-1.0.0.jar",
      "latest_release_tag": "multiversion",
      "mc_versions": "1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "Rusher Item Saver",
      "repo": "KybesRusherhackPlugins/item-saver",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-02-08"
    },
    {
      "added_at": "2025-02-08",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A RusherHacks plugin that automatically swaps to a mace when attacking.",
      "downloads": 898,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "MaceSwapModule",
          "description": "Mace Swap Module",
          "feature_type": "module",
          "name": "Mace Swap Module",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Only Players",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyPlayers"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/mace-swap/releases/download/fix1/mace-swap-1.0.0.jar",
      "latest_release_tag": "fix1",
      "mc_versions": "1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "RusherHack Mace Swap",
      "repo": "KybesRusherhackPlugins/mace-swap",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-02-08"
    },
    {
      "added_at": "2025-02-15",
      "creator": {
        "avatar": "https://github.com/RusherDevelopment.png?size=20",
        "name": "RusherDevelopment",
        "url": "https://github.com/RusherDevelopment"
      },
      "description": "A core plugin example demonstrating mixin support in RusherHack.",
      "downloads": 0,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": true,
      "latest_release_tag": "v1.0.0",
      "mc_versions": "1.20.1",
      "name": "Example Core Plugin",
      "repo": "RusherDevelopment/example-core-plugin",
      "screenshots": [],
      "stars": 6,
      "type": "plugin",
      "updated_at": "2025-02-18"
    },
    {
      "added_at": "2025-02-18",
      "creator": {
        "avatar": "https://github.com/xyzbtw.png?size=20",
        "name": "xyzbtw",
        "url": "https://github.com/xyzbtw"
      },
      "description": "A plugin for modifying the rendering of end crystals in Minecraft using mixins in RusherHack.",
      "downloads": 0,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "CrystalModifier",
          "description": null,
          "feature_type": "module",
          "name": "CrystalModifier",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": 1.0,
                  "description": null,
                  "name": "SpinMultiplier",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "spinMultiplier"
                }
              ],
              "default": true,
              "description": "Change the spin speed",
              "name": "Spin",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "spin"
            },
            {
              "children": [],
              "default": true,
              "description": "Disable crystal bounce.",
              "name": "DisableBounce",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disableBounce"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 1.0,
                  "description": null,
                  "name": "ScaleMultiplier",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "scaleMultiplier"
                }
              ],
              "default": true,
              "description": "Change the crystal scale",
              "name": "Scale",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "changeScale"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": true,
      "latest_release_tag": "",
      "mc_versions": "1.21.1",
      "name": "CrystalModifierRH",
      "repo": "xyzbtw/CrystalModifierRH",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-02-18"
    },
    {
      "added_at": "2025-02-18",
      "creator": {
        "avatar": "https://github.com/rfresh2.png?size=20",
        "name": "rfresh2",
        "url": "https://github.com/rfresh2"
      },
      "description": "Enables hat layer rendering for player heads on the tablist, even if the player isn't in render distance.",
      "downloads": 463,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": true,
      "jar_url": "https://github.com/rfresh2/TablistHats-rusherhack/releases/download/1.1/TablistHats-1.1%2B1.20.1-1.21.11.jar",
      "latest_release_tag": "1.1",
      "mc_versions": "1.20.1, 1.20.2, 1.20.4, 1.20.6, 1.21, 1.21.1, 1.21.4, 1.21.11",
      "name": "Tablist Hats",
      "repo": "rfresh2/TablistHats-rusherhack",
      "screenshots": [
        {
          "alt": "Tablist Hats Example",
          "url": "https://i.imgur.com/HEfpmLw.png",
          "width": 300
        }
      ],
      "stars": 7,
      "type": "plugin",
      "updated_at": "2025-02-18"
    },
    {
      "added_at": "2025-02-15",
      "creator": {
        "avatar": "https://github.com/John200410.png?size=20",
        "name": "John200410",
        "url": "https://github.com/John200410"
      },
      "description": "A core plugin that disables specific in-game sounds in RusherHack.",
      "downloads": 295,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "NoSoundsModule",
          "description": "Toggle some sounds of the game",
          "feature_type": "module",
          "name": "NoSounds",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": null,
              "name": "Sounds",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "sounds"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/John200410/nosound/releases/download/1.0.0/no-sound-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "NoSound",
      "repo": "John200410/nosound",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-10-29"
    },
    {
      "added_at": "2025-02-20",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A core plugin for spoofing player coordinates in RusherHack.",
      "downloads": 537,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "StreamerModeModule",
          "description": "Provides Utilities for streamers like offsetting your coordinates.",
          "feature_type": "module",
          "name": "Streamer Mode",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": "OffsetMode.STATIC_OFFSET",
                  "description": null,
                  "name": "Offset Mode",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "offsetMode"
                },
                {
                  "children": [],
                  "default": "OffsetRandom.NOT",
                  "description": null,
                  "name": "Offset Random",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "offsetRandom"
                },
                {
                  "children": [
                    {
                      "children": [],
                      "default": 0,
                      "description": null,
                      "name": "X Offset",
                      "setting_class": "NumberSetting",
                      "type": "number",
                      "var_name": "xOffset"
                    },
                    {
                      "children": [],
                      "default": 0,
                      "description": null,
                      "name": "Z Offset",
                      "setting_class": "NumberSetting",
                      "type": "number",
                      "var_name": "zOffset"
                    }
                  ],
                  "default": null,
                  "description": "WARNING! Under this is X and Z offset which can be used too get your coordinates!!!!",
                  "name": "WARNING! Under this is X and Z offset which can be used too get your coordinates!!!!",
                  "setting_class": "NullSetting",
                  "type": "null",
                  "var_name": "hidden"
                }
              ],
              "default": false,
              "description": null,
              "name": "Hide Coordinates",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "hideCoordinates"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Turn Bedrock into Stone/Netherack",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "turnBedrockIntoStoneOrNetherrack"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Hide Sign Text",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "hideSignText"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Hide Map Contents",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "hideMap"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Ignore First Player Position Packet",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "ignoreFirstPosition"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/KybesRusherhackPlugins/streamer-mode/releases/download/1.21.4-v3/streamer-mode-1.0.0.jar",
      "latest_release_tag": "1.21.4-v3",
      "mc_versions": "1.21.2, 1.21.3, 1.21.4",
      "name": "Rusherhack Streamer Mode",
      "repo": "KybesRusherhackPlugins/streamer-mode",
      "screenshots": [],
      "stars": 4,
      "type": "plugin",
      "updated_at": "2025-08-14"
    },
    {
      "added_at": "2025-02-28",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A plugin for automating item frame duplication in RusherHack.",
      "downloads": 695,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ItemFrameModule",
          "description": "Automatically item frame dupes",
          "feature_type": "module",
          "name": "Item Frame Dupe",
          "settings": [
            {
              "children": [],
              "default": 1,
              "description": "How Often the Item Should get Rotated",
              "name": "Rotation Count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "rotationCount"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 0,
                  "description": null,
                  "name": "Place To Insert Delay",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "placeToInsertDelay"
                },
                {
                  "children": [],
                  "default": 0,
                  "description": null,
                  "name": "Insert To Rotate Delay",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "insertToRotateDelay"
                },
                {
                  "children": [],
                  "default": 0,
                  "description": null,
                  "name": "Rotate To Rotate Delay",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "rotateToRotateDelay"
                },
                {
                  "children": [],
                  "default": 0,
                  "description": null,
                  "name": "Rotate To Break Delay",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "rotateToBreakDelay"
                },
                {
                  "children": [],
                  "default": 0,
                  "description": null,
                  "name": "Break To Place Delay",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "breakToPlaceDelay"
                }
              ],
              "default": null,
              "description": null,
              "name": "delays",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "delays"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": "Automatically drop shulkers",
                  "name": "Drop Shulkers",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "dropShulkers"
                },
                {
                  "children": [],
                  "default": 1,
                  "description": "Max amount of shulkers of a type in inventory",
                  "name": "Max Shulkers of Type in Inventory",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "maxShulkersOfTypeInInventory"
                }
              ],
              "default": false,
              "description": "Automatically queue shulkers",
              "name": "Smart Shulker Queue",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "smartShulkerQueue"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/auto-item-frame-dupe/releases/download/1.21.1-1.21.4/rusher-auto-item-frame-dupe-1.0.0.jar",
      "latest_release_tag": "1.21.1-1.21.4",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "Rusher Auto Item Frame Dupe",
      "repo": "KybesRusherhackPlugins/auto-item-frame-dupe",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2025-02-28"
    },
    {
      "added_at": "2025-04-15",
      "creator": {
        "avatar": "https://github.com/Lokfid.png?size=20",
        "name": "Lokfid",
        "url": "https://github.com/Lokfid"
      },
      "description": "A core plugin for adding custom emoji functionality in RusherHack.",
      "downloads": 465,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": true,
      "jar_url": "https://github.com/Lokfid/RusherMoji/releases/download/1.0.4-1.21.4-fix/emoji-1.0.4.jar",
      "latest_release_tag": "1.0.4-1.21.4-fix",
      "mc_versions": "1.21.4",
      "name": "RusherMoji",
      "repo": "Lokfid/RusherMoji",
      "screenshots": [],
      "stars": 3,
      "type": "plugin",
      "updated_at": "2025-06-10"
    },
    {
      "added_at": "2025-04-23",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "A plugin that automates pushing end crystals with pistons to attack players in RusherHack.",
      "downloads": 444,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "CrystalPusherModule",
          "description": "Pushes Crystals into Faces",
          "feature_type": "module",
          "name": "Crystal Pusher",
          "settings": [
            {
              "children": [],
              "default": 5,
              "description": null,
              "name": "Target Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "targetRange"
            },
            {
              "children": [],
              "default": 5,
              "description": null,
              "name": "Place Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "placeRange"
            },
            {
              "children": [],
              "default": 5,
              "description": null,
              "name": "Rotate Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "rotateDelay"
            },
            {
              "children": [],
              "default": 5,
              "description": null,
              "name": "Stuck Detection Ticks",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "stuckDetectionTicks"
            },
            {
              "children": [],
              "default": 5,
              "description": null,
              "name": "Exploding Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "explodingDelay"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(255, 68, 68)",
                  "name": "Crystal Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "crystalColor"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(0, 255, 0)",
                  "name": "Piston Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "pistonColor"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(255, 0, 0)",
                  "name": "Torch Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "torchColor"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(88, 149, 255)",
                  "name": "Target Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "targetColor"
                }
              ],
              "default": null,
              "description": null,
              "name": "Colors",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "colors"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/piston-pusher/releases/download/1.21.4/crystal-pusher-1.0.0.jar",
      "latest_release_tag": "1.21.4",
      "mc_versions": "1.21.4",
      "name": "RusherHack Piston Pusher",
      "repo": "KybesRusherhackPlugins/piston-pusher",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-04-23"
    },
    {
      "added_at": "2025-04-26",
      "creator": {
        "avatar": "https://github.com/0tterware.png?size=20",
        "name": "0tterware",
        "url": "https://github.com/0tterware"
      },
      "description": "RusherUtils automates Wither and TNT tasks with HUD counters for RusherHack.",
      "downloads": 469,
      "feature_counts": {
        "hud_elements": 2,
        "modules": 4,
        "total": 6
      },
      "features": [
        {
          "class_name": "TNTCount",
          "description": null,
          "feature_type": "hud",
          "name": "TNTCount",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Text Only",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "textOnly"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Count Inv",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "countInv"
            },
            {
              "children": [],
              "default": null,
              "description": "Color.WHITE",
              "name": "TextColor",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "textColor"
            }
          ]
        },
        {
          "class_name": "WitherCount",
          "description": null,
          "feature_type": "hud",
          "name": "WitherCount",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Text Only",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "textOnly"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Count Inv",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "countInv"
            },
            {
              "children": [],
              "default": null,
              "description": "Color.WHITE",
              "name": "TextColor",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "textColor"
            }
          ]
        },
        {
          "class_name": "AutoIgnite",
          "description": "Automatically ignites nearby TNT blocks.",
          "feature_type": "module",
          "name": "AutoIgnite",
          "settings": [
            {
              "children": [],
              "default": 4.0,
              "description": null,
              "name": "Ignite Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "igniteRange"
            },
            {
              "children": [],
              "default": 1,
              "description": null,
              "name": "Ignite Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "igniteDelay"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Rotate",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "igniteRotate"
            },
            {
              "children": [],
              "default": "SwapMode.SILENT",
              "description": null,
              "name": "Swap Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "swapMode"
            },
            {
              "children": [],
              "default": "SortMode.CLOSEST",
              "description": null,
              "name": "Sort Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "sortMode"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Auto Disable",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDisable"
            }
          ]
        },
        {
          "class_name": "AutoTNT",
          "description": "Places TNT around you.",
          "feature_type": "module",
          "name": "AutoTNT",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": 4.0,
                  "description": null,
                  "name": "Range",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "placeRange"
                },
                {
                  "children": [],
                  "default": 1,
                  "description": null,
                  "name": "Place Delay",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "placeDelay"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Rotate",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "placeRotate"
                },
                {
                  "children": [],
                  "default": "SwapMode.SILENT",
                  "description": null,
                  "name": "Swap Mode",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "swapMode"
                }
              ],
              "default": null,
              "description": null,
              "name": "Place",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "generalGroup"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 1,
                  "description": null,
                  "name": "Horizontal Spread",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "horizontalSpread"
                },
                {
                  "children": [],
                  "default": 1,
                  "description": null,
                  "name": "Vertical Spread",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "verticalSpread"
                },
                {
                  "children": [],
                  "default": "SortMode.FURTHEST",
                  "description": null,
                  "name": "Sort Mode",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "sortMode"
                }
              ],
              "default": null,
              "description": null,
              "name": "Position",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "positionGroup"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Render Current",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "renderCurrent"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(200, 200, 200, 100)",
                  "name": "Current Fill",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "currentFill"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(200, 200, 200, 200)",
                  "name": "Current Outline",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "currentOutline"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Render Potential",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "renderPotential"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(255, 0, 0, 100)",
                  "name": "Potential Fill",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "potentialFill"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(255, 0, 0, 200)",
                  "name": "Potential Outline",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "potentialOutline"
                }
              ],
              "default": null,
              "description": null,
              "name": "Render",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "renderGroup"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Auto Disable",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "autoDisable"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "Debug",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "debug"
                }
              ],
              "default": null,
              "description": null,
              "name": "Misc",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "miscGroup"
            }
          ]
        },
        {
          "class_name": "AutoTorch",
          "description": "Automatically places torches in low light areas.",
          "feature_type": "module",
          "name": "AutoTorch",
          "settings": [
            {
              "children": [],
              "default": 4.0,
              "description": null,
              "name": "Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": 7,
              "description": null,
              "name": "Light Level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "lightLevel"
            },
            {
              "children": [],
              "default": 2,
              "description": null,
              "name": "Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Rotate",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rotate"
            },
            {
              "children": [],
              "default": "SwapMode.SILENT",
              "description": null,
              "name": "Swap Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "swapMode"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Auto Disable",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDisable"
            }
          ]
        },
        {
          "class_name": "AutoWither",
          "description": "Automatically summons a Wither.",
          "feature_type": "module",
          "name": "AutoWither",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": 4.5,
                  "description": null,
                  "name": "Place Range",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "placeRange"
                },
                {
                  "children": [],
                  "default": 2.0,
                  "description": null,
                  "name": "Cancel Extra",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "cancelRange"
                },
                {
                  "children": [],
                  "default": 1.0,
                  "description": null,
                  "name": "Min Away",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "minAway"
                },
                {
                  "children": [],
                  "default": 1,
                  "description": null,
                  "name": "Place Delay",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "placeDelay"
                },
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Rotate",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "placeRotate"
                },
                {
                  "children": [],
                  "default": "SwapMode.SILENT",
                  "description": null,
                  "name": "Swap Mode",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "swapMode"
                }
              ],
              "default": null,
              "description": null,
              "name": "Place",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "placeGroup"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Render PlacePos",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "renderPlacePos"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(0, 255, 255, 80)",
                  "name": "PlacePos Fill",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "placeFill"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(0, 255, 255, 200)",
                  "name": "PlacePos Outline",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "placeOutline"
                }
              ],
              "default": null,
              "description": null,
              "name": "Render",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "renderGroup"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Debug",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "debug"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/0tterware/RusherUtils/releases/download/v0.1/rusher-utils-0.1-1.21.4.jar",
      "latest_release_tag": "v0.1",
      "mc_versions": "1.20.1, 1.20.2, 1.20.4, 1.20.6, 1.21, 1.21.1, 1.21.4",
      "name": "RusherUtils",
      "repo": "0tterware/RusherUtils",
      "screenshots": [
        {
          "alt": "RusherUtils Demo",
          "url": "https://img.youtube.com/vi/yv-WR1HddAw/0.jpg"
        }
      ],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-04-26"
    },
    {
      "added_at": "2025-05-26",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "ESP plugin for RusherHack that highlights grown crops and useful farm blocks.",
      "downloads": 439,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "GrowESPModule",
          "description": "Shows grown crops",
          "feature_type": "module",
          "name": "GrowESP",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": "Color.GREEN.getRGB()",
                  "description": "The color of the highlight box",
                  "name": "Color Crops",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "color"
                },
                {
                  "children": [],
                  "default": 0.5,
                  "description": "The alpha of the highlight box",
                  "name": "Alpha Crops",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "alpha"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Whether to fill the highlight box",
                  "name": "Fill Crops",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "fill"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Whether to draw an outline around the highlight box",
                  "name": "Outline Crops",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "outline"
                }
              ],
              "default": null,
              "description": null,
              "name": "Crops",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "cropsNull"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": "Color.BLUE.getRGB()",
                  "description": "The color of the highlight box",
                  "name": "Color Place",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "colorPlace"
                },
                {
                  "children": [],
                  "default": 0.5,
                  "description": "The alpha of the highlight box",
                  "name": "Alpha Place",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "alphaPlace"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Whether to fill the highlight box",
                  "name": "Fill Place",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "fillPlace"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Whether to draw an outline around the highlight box",
                  "name": "Outline Place",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "outlinePlace"
                }
              ],
              "default": null,
              "description": null,
              "name": "Place",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "placeNull"
            },
            {
              "children": [],
              "default": 5,
              "description": "The range to search for grown crops",
              "name": "Highlight Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "highlightRange"
            },
            {
              "children": [],
              "default": 5,
              "description": "The range to search for grown crops",
              "name": "Aura Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "auraRange"
            },
            {
              "children": [],
              "default": 5,
              "description": "The range to search for farmland to place crops",
              "name": "Place Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "placeRange"
            },
            {
              "children": [],
              "default": false,
              "description": "Whether to break grown crops",
              "name": "Aura",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "aura"
            },
            {
              "children": [],
              "default": true,
              "description": "Whether to place crops on farmland",
              "name": "Place",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "place"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/crop-esp-nuker/releases/download/1.21.4/rusher-grow-esp-1.0.0.jar",
      "latest_release_tag": "1.21.4",
      "mc_versions": "1.21.4",
      "name": "Rusher Grown ESP",
      "repo": "KybesRusherhackPlugins/crop-esp-nuker",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-05-26"
    },
    {
      "added_at": "2025-06-06",
      "creator": {
        "avatar": "https://github.com/ToxicAven.png?size=20",
        "name": "ToxicAven",
        "url": "https://github.com/ToxicAven"
      },
      "description": "A plugin for Rusherhack to filter out unwanted/inappropriate sign messages.",
      "downloads": 415,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "SignFilterModule",
          "description": "Modify signs based on a filter list",
          "feature_type": "module",
          "name": "SignFilter",
          "settings": [
            {
              "children": [],
              "default": "MODE.NORENDER",
              "description": null,
              "name": "mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "modeSetting"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/ToxicAven/Rusherhack-SignFilter/releases/download/v1.0.0/SignFilter-1.0.0.jar",
      "latest_release_tag": "v1.0.0",
      "mc_versions": "1.21.4",
      "name": "Rusherhack-SignFilter",
      "repo": "ToxicAven/Rusherhack-SignFilter",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-06-06"
    },
    {
      "added_at": "2025-06-07",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Marks vaults for you and can play a sound when you render a vault.",
      "downloads": 444,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "VaultHelperModule",
          "description": "Helps looting vaults",
          "feature_type": "module",
          "name": "Vault Helper",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": "Color.ORANGE.getRGB()",
                  "description": "Color of active vaults",
                  "name": "normal",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "normal"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "fillNormal",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "fillNormal"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "outlineNormal",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "outlineNormal"
                }
              ],
              "default": true,
              "description": "Show active vaults",
              "name": "showNormal",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showNormal"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": "Color.YELLOW.getRGB()",
                  "description": "Color of ominous vaults",
                  "name": "ominous",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "ominous"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "fillLooted",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "fillOminous"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "outlineLooted",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "outlineOminous"
                }
              ],
              "default": true,
              "description": "Show ominous vaults",
              "name": "showOminous",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showOminous"
            },
            {
              "children": [],
              "default": true,
              "description": "Play sound when vault is found",
              "name": "sound",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "sound"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/vault-helper/releases/download/1.21-1.21.4/rusher-vault-helper-1.0.0.jar",
      "latest_release_tag": "1.21-1.21.4",
      "mc_versions": "1.21, 1.21.1, 1.21.2, 1.21.4, 1.21.5",
      "name": "Rusher-Vault-Helper",
      "repo": "KybesRusherhackPlugins/vault-helper",
      "screenshots": [
        {
          "alt": "Vault Marker Screenshot 1",
          "url": "https://github.com/user-attachments/assets/728aebf8-4b0c-4bd7-96cb-150028e3bb8e"
        },
        {
          "alt": "Vault Marker Screenshot 2",
          "url": "https://github.com/user-attachments/assets/12da4881-52f6-44a8-8449-c7501444a679"
        }
      ],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-06-07"
    },
    {
      "added_at": "2025-06-14",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Allows you to drag items in your inventory while holding shift.",
      "downloads": 438,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "InventoryDragModule",
          "description": "Allows you to drag items in your inventory while holding shift.",
          "feature_type": "module",
          "name": "InventoryDrag",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/KybesRusherhackPlugins/inventory-drag/releases/download/1.21.4/rusher-invetory-drag-1.0.0.jar",
      "latest_release_tag": "1.21.4",
      "mc_versions": "1.21.4",
      "name": "Rusher-Inventory-Drag",
      "repo": "KybesRusherhackPlugins/inventory-drag",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-06-14"
    },
    {
      "added_at": "2025-05-18",
      "creator": {
        "avatar": "https://github.com/k4n3d4-sh0t4r0.png?size=20",
        "name": "k4n3d4-sh0t4r0",
        "url": "https://github.com/k4n3d4-sh0t4r0"
      },
      "description": "Rusherhack plugin that logs all player encounters in a log file and displays them in the chat.",
      "downloads": 459,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "PlayerLogModule",
          "description": "Log all player encounters",
          "feature_type": "module",
          "name": "PlayerLog",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Log in chat",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "logInChat"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Log in file",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "logInFile"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Notification",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "logInNotification"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Play a sound",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "playASound"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Ignore friend",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "ignoreFriend"
            },
            {
              "children": [],
              "default": false,
              "description": "WARNING activating this option will disable the plugin on 2b2t and some servers",
              "name": "Filter NPC",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "filerNPC"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/k4n3d4-sh0t4r0/PlayerLogPLugin-RusherHack/releases/download/V1.3.0/PlayerLog-1.3.0.jar",
      "latest_release_tag": "V1.3.0",
      "mc_versions": "1.21.4",
      "name": "PlayerLogPlugin-RusherHack",
      "repo": "k4n3d4-sh0t4r0/PlayerLogPLugin-RusherHack",
      "screenshots": [
        {
          "alt": "Player Log Chat Example",
          "url": "https://github.com/k4n3d4-sh0t4r0/PlayerLogPLugin-RusherHack/blob/main/img/PlayerLogChat.png?raw=true"
        },
        {
          "alt": "Player Log Windows Module",
          "url": "https://github.com/k4n3d4-sh0t4r0/PlayerLogPLugin-RusherHack/blob/main/img/PlayerLogWindows.png?raw=true"
        }
      ],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-07-15"
    },
    {
      "added_at": "2025-06-17",
      "creator": {
        "avatar": "https://github.com/k4n3d4-sh0t4r0.png?size=20",
        "name": "k4n3d4-sh0t4r0",
        "url": "https://github.com/k4n3d4-sh0t4r0"
      },
      "description": "Rusherhack plugin that lets the player see barrier blocks as if holding one.",
      "downloads": 469,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "BarrierESPModule",
          "description": "Displays barrier blocks at all times",
          "feature_type": "module",
          "name": "Barrier ESP",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/k4n3d4-sh0t4r0/BarrierESP-RusherHack/releases/download/v1.2.0/BarrierESP-1.2.0.jar",
      "latest_release_tag": "v1.2.0",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.11",
      "name": "BarrierESP-RusherHack",
      "repo": "k4n3d4-sh0t4r0/BarrierESP-RusherHack",
      "screenshots": [
        {
          "alt": "Barrier ESP On",
          "url": "https://github.com/k4n3d4-sh0t4r0/BarrierESP-RusherHack/blob/main/img/BarrierESP-On.png?raw=true"
        }
      ],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2025-06-25"
    },
    {
      "added_at": "2025-06-21",
      "creator": {
        "avatar": "https://github.com/k4n3d4-sh0t4r0.png?size=20",
        "name": "k4n3d4-sh0t4r0",
        "url": "https://github.com/k4n3d4-sh0t4r0"
      },
      "description": "Limit the FOV multiplier between a max and min value.",
      "downloads": 442,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "FovLimiterModule",
          "description": "Limit the fov multiplier between a max and min value",
          "feature_type": "module",
          "name": "FOV Limiter",
          "settings": [
            {
              "children": [],
              "default": 0.85,
              "description": null,
              "name": "MinFov",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minFov"
            },
            {
              "children": [],
              "default": 1.15,
              "description": null,
              "name": "MaxFov",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxFov"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/k4n3d4-sh0t4r0/FovLimiter-Rusherhack/releases/download/v1.2.0/FovLimiter-1.2.0.jar",
      "latest_release_tag": "v1.2.0",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.11",
      "name": "FovLimiter-Rusherhack",
      "repo": "k4n3d4-sh0t4r0/FovLimiter-Rusherhack",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-06-25"
    },
    {
      "added_at": "2025-06-21",
      "creator": {
        "avatar": "https://github.com/k4n3d4-sh0t4r0.png?size=20",
        "name": "k4n3d4-sh0t4r0",
        "url": "https://github.com/k4n3d4-sh0t4r0"
      },
      "description": "Set the delay between jumps when holding the space key.",
      "downloads": 467,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "NoJumpDelayModule",
          "description": "Set a custom delay between jumps when holding space key",
          "feature_type": "module",
          "name": "NoJumpDelay",
          "settings": [
            {
              "children": [],
              "default": 0,
              "description": "Delay in ticks between touching ground and jumping",
              "name": "Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/k4n3d4-sh0t4r0/NoJumpDelay-Rusherhack/releases/download/v1.2.0/NoJumpDelay-1.2.0.jar",
      "latest_release_tag": "v1.2.0",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.11",
      "name": "NoJumpDelay-Rusherhack",
      "repo": "k4n3d4-sh0t4r0/NoJumpDelay-Rusherhack",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-06-25"
    },
    {
      "added_at": "2025-06-24",
      "creator": {
        "avatar": "https://github.com/k4n3d4-sh0t4r0.png?size=20",
        "name": "k4n3d4-sh0t4r0",
        "url": "https://github.com/k4n3d4-sh0t4r0"
      },
      "description": "Rusherhack plugin that hides the night vision effect on the HUD.",
      "downloads": 421,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "HideNightVisionModule",
          "description": "Hide NightVision effect on the HUD",
          "feature_type": "module",
          "name": "HideNightVision",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/k4n3d4-sh0t4r0/HideNightVision-RusherHack/releases/download/V1.2.0/HideNightVision-1.2.0.jar",
      "latest_release_tag": "V1.2.0",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.11",
      "name": "HideNightVision-RusherHack",
      "repo": "k4n3d4-sh0t4r0/HideNightVision-RusherHack",
      "screenshots": [
        {
          "alt": "Night Vision On",
          "url": "https://github.com/k4n3d4-sh0t4r0/HideNightVision-RusherHack/blob/main/img/HNVoff.png?raw=true"
        },
        {
          "alt": "Night Vision Hidden",
          "url": "https://github.com/k4n3d4-sh0t4r0/HideNightVision-RusherHack/blob/main/img/HNVon.png?raw=true"
        }
      ],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-06-25"
    },
    {
      "added_at": "2025-07-27",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "encrypted chat (CryptoChat) with key management and chunking, auto-mock/quote/reply with regex filters, death-message reactions, random sentence/whisper, and a new in-game User Info window (column view).",
      "downloads": 511,
      "feature_counts": {
        "hud_elements": 2,
        "modules": 22,
        "total": 24
      },
      "features": [
        {
          "class_name": "PlayerNameV2HUD",
          "description": null,
          "feature_type": "hud",
          "name": "PlayerNameV2",
          "settings": []
        },
        {
          "class_name": "SignHoverHUD",
          "description": null,
          "feature_type": "hud",
          "name": "SignHover",
          "settings": []
        },
        {
          "class_name": "AmbientLightModule",
          "description": "Allows you to switch between the nether and overworld light modes",
          "feature_type": "module",
          "name": "AmbientLight",
          "settings": [
            {
              "children": [],
              "default": "Mode.NETHER",
              "description": "The mode of the ambient light effect",
              "name": "Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "mode"
            }
          ]
        },
        {
          "class_name": "AntiIllegalDisconnectProxyModule",
          "description": "Automatically cancels IllegalDisconnect when on a proxy",
          "feature_type": "module",
          "name": "AntiIllegalDisconnectProxy",
          "settings": []
        },
        {
          "class_name": "AutoElytraFallModule",
          "description": "Automatically deploys your Elytra when falling from a height.",
          "feature_type": "module",
          "name": "AutoElytraFall",
          "settings": [
            {
              "children": [],
              "default": 5.0,
              "description": null,
              "name": "FallDistance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "fallDistance"
            }
          ]
        },
        {
          "class_name": "BabyElytraModule",
          "description": "Allows you to enable the baby elytra variant for you or others",
          "feature_type": "module",
          "name": "BabyElytra",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "AllPlayers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "allPlayers"
            },
            {
              "children": [],
              "default": "2kybe3",
              "description": null,
              "name": "Players",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "players"
            }
          ]
        },
        {
          "class_name": "BannerClonerModule",
          "description": "Automatically dupes banners",
          "feature_type": "module",
          "name": "BannerCloner",
          "settings": [
            {
              "children": [],
              "default": 10,
              "description": "(ticks)",
              "name": "Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            }
          ]
        },
        {
          "class_name": "BellSpammerModule",
          "description": "Spams bells in your area",
          "feature_type": "module",
          "name": "BellSpammer",
          "settings": [
            {
              "children": [],
              "default": 20,
              "description": null,
              "name": "MaxPerTick",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxPerTick"
            },
            {
              "children": [],
              "default": 1,
              "description": null,
              "name": "Multi",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "multi"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Swing",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "swing"
            }
          ]
        },
        {
          "class_name": "ChatAppendV2",
          "description": "Allows you to customize sending messages",
          "feature_type": "module",
          "name": "ChatAppendV2",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": "kybe",
                  "description": null,
                  "name": "PrefixString",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "prefixString"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "PrefixRandom",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "prefixRandom"
                },
                {
                  "children": [
                    {
                      "children": [],
                      "default": true,
                      "description": null,
                      "name": "IncludeAlpha",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "prefixRandomIncludeAlpha"
                    },
                    {
                      "children": [],
                      "default": true,
                      "description": null,
                      "name": "IncludeNumeric",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "prefixRandomIncludeNumeric"
                    },
                    {
                      "children": [],
                      "default": false,
                      "description": null,
                      "name": "IncludeSpecial",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "prefixRandomIncludeSpecial"
                    },
                    {
                      "children": [],
                      "default": 5,
                      "description": null,
                      "name": "Length",
                      "setting_class": "NumberSetting",
                      "type": "number",
                      "var_name": "prefixRandomLength"
                    }
                  ],
                  "default": null,
                  "description": null,
                  "name": "RandomSettings",
                  "setting_class": "NullSetting",
                  "type": "null",
                  "var_name": "prefixRandomSettings"
                }
              ],
              "default": false,
              "description": null,
              "name": "Prefix",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "prefix"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": "kybe",
                  "description": null,
                  "name": "BetweenString",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "betweenString"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "BetweenRandom",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "betweenRandom"
                },
                {
                  "children": [
                    {
                      "children": [],
                      "default": true,
                      "description": null,
                      "name": "IncludeAlpha",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "betweenRandomIncludeAlpha"
                    },
                    {
                      "children": [],
                      "default": true,
                      "description": null,
                      "name": "IncludeNumeric",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "betweenRandomIncludeNumeric"
                    },
                    {
                      "children": [],
                      "default": false,
                      "description": null,
                      "name": "IncludeSpecial",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "betweenRandomIncludeSpecial"
                    },
                    {
                      "children": [],
                      "default": 5,
                      "description": null,
                      "name": "Length",
                      "setting_class": "NumberSetting",
                      "type": "number",
                      "var_name": "betweenRandomLength"
                    }
                  ],
                  "default": null,
                  "description": null,
                  "name": "RandomSettings",
                  "setting_class": "NullSetting",
                  "type": "null",
                  "var_name": "betweenRandomSettings"
                }
              ],
              "default": false,
              "description": null,
              "name": "Between",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "between"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": "kybe",
                  "description": null,
                  "name": "PostfixString",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "postfixString"
                },
                {
                  "children": [],
                  "default": false,
                  "description": null,
                  "name": "PostfixRandom",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "postfixRandom"
                },
                {
                  "children": [
                    {
                      "children": [],
                      "default": true,
                      "description": null,
                      "name": "IncludeAlpha",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "postfixRandomIncludeAlpha"
                    },
                    {
                      "children": [],
                      "default": true,
                      "description": null,
                      "name": "IncludeNumeric",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "postfixRandomIncludeNumeric"
                    },
                    {
                      "children": [],
                      "default": false,
                      "description": null,
                      "name": "IncludeSpecial",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "postfixRandomIncludeSpecial"
                    },
                    {
                      "children": [],
                      "default": 5,
                      "description": null,
                      "name": "Length",
                      "setting_class": "NumberSetting",
                      "type": "number",
                      "var_name": "postfixRandomLength"
                    }
                  ],
                  "default": null,
                  "description": null,
                  "name": "RandomSettings",
                  "setting_class": "NullSetting",
                  "type": "null",
                  "var_name": "postfixRandomSettings"
                }
              ],
              "default": true,
              "description": null,
              "name": "Postfix",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "postfix"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": "|",
                  "description": null,
                  "name": "SeperatorString",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "seperatorString"
                }
              ],
              "default": true,
              "description": null,
              "name": "Separator",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "seperator"
            }
          ]
        },
        {
          "class_name": "ChatCopyModule",
          "description": "Allows to right click a message to copy it",
          "feature_type": "module",
          "name": "ChatCopy",
          "settings": []
        },
        {
          "class_name": "ClickableChatLinksModule",
          "description": "Makes chat links clickable",
          "feature_type": "module",
          "name": "ClickableChatLinks",
          "settings": []
        },
        {
          "class_name": "CodeOverShillerModule",
          "description": "Automatically shills your code if smbd else shills theres",
          "feature_type": "module",
          "name": "CodeOverShiller",
          "settings": [
            {
              "children": [],
              "default": "Format ({name} = name, {rand} = random string, ; separates entries)",
              "description": null,
              "name": "MessageFormat",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "format"
            },
            {
              "children": [],
              "default": 15,
              "description": "Length of random string",
              "name": "RandomLength",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "randomMessagePartLength"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "BeforeAntiSpam",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "beforeAntispam"
            },
            {
              "children": [],
              "default": "(1 group = name)",
              "description": null,
              "name": "CodeRegex",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "codeRegex"
            },
            {
              "children": [],
              "default": "(, seperated)",
              "description": null,
              "name": "IgnoreList",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "ignoreList"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "debug",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "debug"
            }
          ]
        },
        {
          "class_name": "CryptoChatModule",
          "description": "Allows you to talk using encrypted chat",
          "feature_type": "module",
          "name": "CryptoChat",
          "settings": [
            {
              "children": [],
              "default": "rusherhack",
              "description": null,
              "name": "EncryptKey",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "encryptKey"
            },
            {
              "children": [],
              "default": "(comma separated)",
              "description": null,
              "name": "DecryptKeys",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "decryptKeys"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": "(Group 1 = name, 2 = msg)",
                  "description": null,
                  "name": "ChatRegex",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "chatRegex"
                },
                {
                  "children": [],
                  "default": "(Group 1 = name, 2 = msg)",
                  "description": null,
                  "name": "MessageRegex",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "msgRegex"
                },
                {
                  "children": [],
                  "default": "(Group 1 = target, 2 = msg)",
                  "description": null,
                  "name": "OutboundDirectMsgRegex",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "outboundDirectMsgRegex"
                }
              ],
              "default": null,
              "description": null,
              "name": "Regular Expressions",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "regexes"
            },
            {
              "children": [],
              "default": 50,
              "description": null,
              "name": "MaxChatLength",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxChatLength"
            },
            {
              "children": [],
              "default": 5,
              "description": "in seconds",
              "name": "SendDelay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "sendDelaySeconds"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "IgnoreSelf",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "ignoreSelf"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "UseChatPrefix",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "useChatPrefix"
            },
            {
              "children": [],
              "default": "+",
              "description": null,
              "name": "ChatPrefix",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "chatPrefix"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "AllChatMessages",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "allChatMessages"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Debug",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "debug"
            }
          ]
        },
        {
          "class_name": "Deadmau5Module",
          "description": "Allows you or others to have the Deadmau5 ears",
          "feature_type": "module",
          "name": "Deadmau5",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "AllPlayers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "allPlayers"
            },
            {
              "children": [],
              "default": "2kybe3",
              "description": null,
              "name": "Players",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "players"
            }
          ]
        },
        {
          "class_name": "DeathMockerModule",
          "description": "Allows you mock others if they die",
          "feature_type": "module",
          "name": "DeathMocker",
          "settings": [
            {
              "children": [],
              "default": "Format ({name} = name, {rand} = random string, ; separates entries)",
              "description": null,
              "name": "MessageFormat",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "format"
            },
            {
              "children": [],
              "default": 15,
              "description": "Length of random string",
              "name": "RandomLength",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "randomMessagePartLength"
            },
            {
              "children": [],
              "default": "Mode.Direct",
              "description": null,
              "name": "Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "mode"
            },
            {
              "children": [],
              "default": "(, seperated)",
              "description": null,
              "name": "IgnoreList",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "ignoreList"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "BeforeAntiSpam",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "beforeAntispam"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "debug",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "debug"
            }
          ]
        },
        {
          "class_name": "DontLimitMyFuckingFpsModule",
          "description": "Disables the vanilla AFK fps limit",
          "feature_type": "module",
          "name": "DontLimitMyFuckingFps",
          "settings": []
        },
        {
          "class_name": "FogParametersModule",
          "description": "Allows you to modify fog settings",
          "feature_type": "module",
          "name": "FogParameters",
          "settings": [
            {
              "children": [],
              "default": 1000,
              "description": null,
              "name": "Start",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "start"
            },
            {
              "children": [],
              "default": 0,
              "description": null,
              "name": "End",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "end"
            },
            {
              "children": [],
              "default": "FogShape.SPHERE",
              "description": null,
              "name": "FogShape",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "fogShape"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(0, 0, 0, 0)",
              "name": "Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "color"
            }
          ]
        },
        {
          "class_name": "FriendOnlyChatModule",
          "description": "Makes it so you only see friends in chat",
          "feature_type": "module",
          "name": "FriendOnlyChat",
          "settings": [
            {
              "children": [],
              "default": "(Group 1 = name, 2 = msg)",
              "description": null,
              "name": "ChatRegex",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "chatRegex"
            }
          ]
        },
        {
          "class_name": "IRLTimeModule",
          "description": "Sets your ingame time to irl time",
          "feature_type": "module",
          "name": "IRL Time",
          "settings": []
        },
        {
          "class_name": "MockerModule",
          "description": "Mocks Players like \\",
          "feature_type": "module",
          "name": "Mocker",
          "settings": [
            {
              "children": [],
              "default": 100.0,
              "description": "0 = never, 100 = always",
              "name": "TriggerChance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "triggerChance"
            },
            {
              "children": [],
              "default": 15,
              "description": null,
              "name": "MaxTriggerMessageLength",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxTriggerLength"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "BeforeAntiSpam",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "beforeAntispam"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": "Players to ignore (, separated)",
                  "description": null,
                  "name": "IgnoreList",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "ignoreList"
                },
                {
                  "children": [],
                  "default": "Players who are always cloned (, separated)",
                  "description": null,
                  "name": "ForceList",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "forceList"
                },
                {
                  "children": [],
                  "default": "Words to filter out messages (, separated, : means AND)",
                  "description": null,
                  "name": "IgnoredWords",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "ignoreWords"
                }
              ],
              "default": null,
              "description": null,
              "name": "Comma-SeparatedLists",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "lists"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": "Should global messages trigger?",
                  "name": "GlobalMessageTrigger",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "globalMessageSupport"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Should private messages trigger?",
                  "name": "DirectMessageTrigger",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "directMessageSupport"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Reply to global message privately?",
                  "name": "Global -> DirectReply",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "globalMessageDirectMessageReply"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Reply to DM privately?",
                  "name": "Direct -> DirectReply",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "directMessageDirectMessageReply"
                }
              ],
              "default": null,
              "description": null,
              "name": "MessageType",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "msgType"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": "Format ({msg} = message, {rand} = random string)",
                  "description": null,
                  "name": "MessageFormat",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "format"
                },
                {
                  "children": [],
                  "default": 15,
                  "description": "Length of random string",
                  "name": "Random Length",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "randomMessagePartLength"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Random case letters",
                  "name": "DerpCaps",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "derpCaps"
                },
                {
                  "children": [],
                  "default": "(Group 1 = name, 2 = msg)",
                  "description": null,
                  "name": "ChatRegex",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "chatRegex"
                },
                {
                  "children": [],
                  "default": "(Group 1 = name, 2 = msg)",
                  "description": null,
                  "name": "MessageRegex",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "msgRegex"
                }
              ],
              "default": null,
              "description": null,
              "name": "Formats",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "formats"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "debug",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "debug"
            }
          ]
        },
        {
          "class_name": "NoFallElyModule",
          "description": "Stops fall damage by deploying elytra and rocketing",
          "feature_type": "module",
          "name": "NoFallEly",
          "settings": []
        },
        {
          "class_name": "RandomSentenceModule",
          "description": "Gets random sentences and says them ingame",
          "feature_type": "module",
          "name": "RandomSentence",
          "settings": [
            {
              "children": [],
              "default": 10,
              "description": "(s)",
              "name": "MinDelay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minDelaySeconds"
            },
            {
              "children": [],
              "default": 20,
              "description": "(s)",
              "name": "MaxDelay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxDelaySeconds"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "WhisperRandomly",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "randomWhisper"
            }
          ]
        },
        {
          "class_name": "Rocket3Module",
          "description": "Auto-crafts flight duration 3 rockets",
          "feature_type": "module",
          "name": "Rocket3",
          "settings": [
            {
              "children": [],
              "default": 10,
              "description": "(ticks)",
              "name": "Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            }
          ]
        },
        {
          "class_name": "UnnaturalRotationModule",
          "description": "Lets you know if blocks are rotated unusual",
          "feature_type": "module",
          "name": "UnnaturalRotation",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "Color.CYAN",
              "name": "Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "color"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/KybesRusherhackPlugins/kybes-utils/releases/download/v1.0.0-194c38d40bbc4f6d6aaa514401a70c1b2ba72300/kybes-utils.jar",
      "latest_release_tag": "v1.0.0-194c38d40bbc4f6d6aaa514401a70c1b2ba72300",
      "mc_versions": "1.21.4",
      "name": "rusherhack-kybes-utils",
      "repo": "KybesRusherhackPlugins/kybes-utils",
      "screenshots": [
        {
          "alt": "Example chat messages from kybe's utils",
          "url": "./Assets/rusherhack-kybes-utils/chat-example.png",
          "width": 550
        }
      ],
      "stars": 4,
      "type": "plugin",
      "updated_at": "2025-09-19"
    },
    {
      "added_at": "2025-06-14",
      "creator": {
        "avatar": "https://github.com/musheck.png?size=20",
        "name": "musheck",
        "url": "https://github.com/musheck"
      },
      "description": "A fork of the AutoAnvilRename plugin that automates item renaming in anvils. Includes features like predefined rename text, ID filtering, shulker-only mode, and configurable click delay.",
      "downloads": 440,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoAnvilRenameModule",
          "description": "Renames items in an anvil automatically",
          "feature_type": "module",
          "name": "AutoAnvilRename",
          "settings": [
            {
              "children": [],
              "default": "Sponsored by RusherHack Plugins",
              "description": null,
              "name": "RenameText",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "renameText"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Selective",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "selectiveMode"
            },
            {
              "children": [],
              "default": "end_crystal",
              "description": null,
              "name": "ItemId",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "selectiveId"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "OnlyShulkers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyShulkers"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "OnlyRenamed",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyRenamed"
            },
            {
              "children": [],
              "default": 1,
              "description": null,
              "name": "Click Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "clickDelay"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "AutoXP",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoXP"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/musheck/AutoAnvilRename/releases/download/1.1.0/AutoAnvilRename-1.1.0.jar",
      "latest_release_tag": "1.1.0",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.21.1, 1.21.4",
      "name": "AutoAnvilRename",
      "repo": "musheck/AutoAnvilRename",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-06-16"
    },
    {
      "added_at": "2025-08-01",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Automatically builds kits inside shulkers.",
      "downloads": 494,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoKitModule",
          "description": null,
          "feature_type": "module",
          "name": "AutoKitMaker",
          "settings": [
            {
              "children": [],
              "default": "",
              "description": null,
              "name": "Kit",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "currentKit"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Add Chests",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "addChests"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Auto Close",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoClose"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Active",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "active"
            },
            {
              "children": [],
              "default": 5,
              "description": null,
              "name": "Inventory Action Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "inventoryMoveDelay"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Grim Fix",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "grimFix"
            },
            {
              "children": [],
              "default": 5,
              "description": null,
              "name": "After Open Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "afterOpenDelay"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "EnchantSensitive",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "enchantSensitive"
            },
            {
              "children": [],
              "default": true,
              "description": "Makes it so it only checks if the given enchant matches",
              "name": "Only Specific Enchants Matter Toggled",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlySpecificEnchantsMatterToggled"
            },
            {
              "children": [],
              "default": "minecraft:fortune,minecraft:silk_touch",
              "description": null,
              "name": "Only Specific Enchants that matter",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "onlySpecificEnchantsMatter"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": null,
                  "description": "Color.BLACK",
                  "name": "Storage",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "storageColor"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "Color.RED",
                  "name": "Place Pos",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "placeColor"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "Color.GREEN",
                  "name": "Shulker Chest",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "shulkerColor"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "Color.YELLOW",
                  "name": "Result Chest",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "resultColor"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "Color.ORANGE",
                  "name": "Placed Shulker",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "placedColor"
                }
              ],
              "default": null,
              "description": null,
              "name": "Colors",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "colors"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "debug",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "debug"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/auto-kit-maker/releases/download/1.21.4-11/rusher-auto-kit-1.0.0.jar",
      "latest_release_tag": "1.21.4-11",
      "mc_versions": "1.21.4",
      "name": "rusher-auto-kit-maker",
      "repo": "KybesRusherhackPlugins/auto-kit-maker",
      "screenshots": [
        {
          "alt": "Auto Kit Maker demonstration video",
          "url": "https://img.youtube.com/vi/rvEVD-3yPHk/hqdefault.jpg",
          "width": 600
        }
      ],
      "stars": 3,
      "type": "plugin",
      "updated_at": "2025-08-05"
    },
    {
      "added_at": "2025-08-02",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Provides Linux shell integration for RusherHack, including an in-game terminal, command HUD, and support for triggering commands from external scripts.",
      "downloads": 434,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 1,
        "total": 2
      },
      "features": [
        {
          "class_name": "ShellOutputElement",
          "description": null,
          "feature_type": "hud",
          "name": "Shell Output",
          "settings": [
            {
              "children": [],
              "default": 0.1,
              "description": null,
              "name": "Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            },
            {
              "children": [],
              "default": "pwd",
              "description": null,
              "name": "Command",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "userCommand"
            }
          ]
        },
        {
          "class_name": "RusherCLI",
          "description": "Run rusher commands from external scripts",
          "feature_type": "module",
          "name": "RusherCLI",
          "settings": [
            {
              "children": [],
              "default": "/tmp/signal",
              "description": null,
              "name": "String",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "filePath"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/rusherhack-shell-integration/releases/download/release/shell-plugin-1.0.0.jar",
      "latest_release_tag": "release",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "rusherhack-shell-integration",
      "repo": "tillay/rusherhack-shell-integration",
      "screenshots": [],
      "stars": 6,
      "type": "plugin",
      "updated_at": "2025-08-04"
    },
    {
      "added_at": "2025-08-04",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Automatically adjusts the player's pitch during Elytra bouncing to smoothly jump over 1-block obstacles and return to optimal pitch afterward.",
      "downloads": 463,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "SmartBounceModule",
          "description": "Fix ebounce getting stuck on one block high obstacles",
          "feature_type": "module",
          "name": "SmartBounce",
          "settings": [
            {
              "children": [],
              "default": 60,
              "description": null,
              "name": "JumpPitch",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "jumpPitch"
            },
            {
              "children": [],
              "default": 75,
              "description": null,
              "name": "FastPitch",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "fastPitch"
            },
            {
              "children": [],
              "default": 4,
              "description": null,
              "name": "Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/rusherhack-SmartBounce/releases/download/release/ebounce-plugin-1.0.0.jar",
      "latest_release_tag": "release",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "rusherhack-SmartBounce",
      "repo": "tillay/rusherhack-SmartBounce",
      "screenshots": [],
      "stars": 3,
      "type": "plugin",
      "updated_at": "2025-08-23"
    },
    {
      "added_at": "2025-08-05",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Automatically equips a saved kit from a chest, matching items and enchantments with configurable sensitivity. Includes commands for saving, renaming, listing, and removing kits.",
      "downloads": 436,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoRegearModule",
          "description": "Auto Regear",
          "feature_type": "module",
          "name": "AutoRegear",
          "settings": [
            {
              "children": [],
              "default": "Kit Name",
              "description": null,
              "name": "Kit",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "kit"
            },
            {
              "children": [],
              "default": 5,
              "description": null,
              "name": "InventoryMoveDelay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "inventoryMoveDelay"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "EnchantSensitive",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "enchantSensitive"
            },
            {
              "children": [],
              "default": true,
              "description": "Makes it so it only checks if the given enchant matches",
              "name": "OnlySpecificEnchantsMatterToggled",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlySpecificEnchantsMatterToggled"
            },
            {
              "children": [],
              "default": "minecraft:fortune,minecraft:silk_touch",
              "description": null,
              "name": "OnlySpecificEnchantsMatter",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "onlySpecificEnchantsMatter"
            },
            {
              "children": [],
              "default": 5,
              "description": null,
              "name": "AfterOpenDelay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "afterOpenDelay"
            },
            {
              "children": [],
              "default": true,
              "description": "Blocks Syncs after the first one",
              "name": "GrimFix",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "grimFix"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/auto-regear/releases/download/1.21.4/rusher-auto-regear-1.0.0.jar",
      "latest_release_tag": "1.21.4",
      "mc_versions": "1.21.4",
      "name": "AutoRegear",
      "repo": "KybesRusherhackPlugins/auto-regear",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-08-05"
    },
    {
      "added_at": "2025-08-05",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Plugin package manager for RusherHack that helps install and manage plugins from a single place.",
      "downloads": 551,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/rusherhack-rusherman/releases/download/3894v4793v93v487cd9/rusherman-plugin-1.0.0.jar",
      "latest_release_tag": "3894v4793v93v487cd9",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "rusherhack-rusherman",
      "repo": "tillay/rusherhack-rusherman",
      "screenshots": [
        {
          "alt": "Rusherman Window",
          "url": "./Assets/rusherhack-rusherman/rusherman-window.png",
          "width": 550
        },
        {
          "alt": "Rusherman demonstration video",
          "url": "https://img.youtube.com/vi/v2tEf_eQnjQ/hqdefault.jpg",
          "width": 550
        }
      ],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2025-08-13"
    },
    {
      "added_at": "2025-08-12",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Automatically interacts with a targeted trapdoor as soon as a specified player logs in, enabling instant pearl loading.",
      "downloads": 421,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "InstantLoadModule",
          "description": "Instantly close a trapdoor to load pearl stasis chamber and avoid danger",
          "feature_type": "module",
          "name": "InstantLoad",
          "settings": [
            {
              "children": [],
              "default": "mc.getUser().getName().toLowerCase()",
              "description": null,
              "name": "Username",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "username"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "OnConnect",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onConnect"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": "load",
                  "description": null,
                  "name": "text",
                  "setting_class": "StringSetting",
                  "type": "string",
                  "var_name": "chatText"
                }
              ],
              "default": false,
              "description": null,
              "name": "Chat Messages",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "chatMsgs"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/rusherhack-InstantLoader/releases/download/v1.0.0-b21d90/loader-plugin-1.0.0.jar",
      "latest_release_tag": "v1.0.0-b21d90",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "rusherhack-instantloader",
      "repo": "tillay/rusherhack-InstantLoader",
      "screenshots": [
        {
          "alt": "InstantLoader demo video",
          "url": "https://img.youtube.com/vi/YCIigjl4oRk/hqdefault.jpg",
          "width": 550
        }
      ],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-08-12"
    },
    {
      "added_at": "2025-08-13",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Allows adding any custom image to the RusherHack HUD.",
      "downloads": 507,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 0,
        "total": 1
      },
      "features": [
        {
          "class_name": "WaifuHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "CustomImage",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Choose file...",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "chooseButton"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Cancel...",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "cancelButton"
            },
            {
              "children": [],
              "default": "unset",
              "description": null,
              "name": "path",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "waifuPath"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Reset Position",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "resetButton"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/rusher-waifu-integration/releases/download/v2.1.0-f4f157/waifu-plugin-2.1.0.jar",
      "latest_release_tag": "v2.1.0-f4f157",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "rusher-waifu-integration",
      "repo": "tillay/rusher-waifu-integration",
      "screenshots": [
        {
          "alt": "Rusherman Window",
          "url": "./Assets/rusher-waifu-integration/rusher-waifu-integration1.png",
          "width": 550
        },
        {
          "alt": "Rusherman Window",
          "url": "./Assets/rusher-waifu-integration/rusher-waifu-integration2.png",
          "width": 550
        }
      ],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2025-08-13"
    },
    {
      "added_at": "2025-08-26",
      "creator": {
        "avatar": "https://github.com/IceTank.png?size=20",
        "name": "IceTank",
        "url": "https://github.com/IceTank"
      },
      "description": "Automatically runs the `/ignorehard <playername>` command on any player that sends a Discord invite in chat.",
      "downloads": 410,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoIgnorehard",
          "description": "Auto /ignorehard players that spam chat with discord invites",
          "feature_type": "module",
          "name": "AutoIgnorehard",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Logs ignored players and messages to chat",
              "name": "Chat",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "logToChat"
            },
            {
              "children": [],
              "default": true,
              "description": "Logs ignored players and messages to file",
              "name": "File",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "logToFile"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": null,
                  "name": "Only bep",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "ignoreShortOnlyBep"
                }
              ],
              "default": false,
              "description": "Ignores short chat messages",
              "name": "IgnoreShortMessages",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "ignoreShortMessages"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/IceTank/RusherHack-AutoIgnorehard/releases/download/v0.0.3/AutoIgnorehard-0.0.3.jar",
      "latest_release_tag": "v0.0.3",
      "mc_versions": "1.21.4",
      "name": "AutoIgnorehard",
      "repo": "IceTank/RusherHack-AutoIgnorehard",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-10-20"
    },
    {
      "added_at": "2025-08-27",
      "creator": {
        "avatar": "https://crafatar.com/avatars/1eb084b8588e43e6bdd3e05e53682987?size=100",
        "name": "TehPicix",
        "url": "https://github.com/TehPicix"
      },
      "description": "Adds a cockpit HUD to display flight distance and time when using an elytra. Great for players who frequently travel the nether highways while AFK.",
      "downloads": 463,
      "feature_counts": {
        "hud_elements": 2,
        "modules": 0,
        "total": 2
      },
      "features": [
        {
          "class_name": "FlightDistanceHUD",
          "description": null,
          "feature_type": "hud",
          "name": "FlightDistance",
          "settings": []
        },
        {
          "class_name": "FlightTimeHUD",
          "description": null,
          "feature_type": "hud",
          "name": "FlightTime",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/TehPicix/rusherhack-Cockpit/releases/download/v1.3.0/Cockpit-1.3.0.jar",
      "latest_release_tag": "v1.3.0",
      "mc_versions": "1.21.1, 1.21.4",
      "name": "Cockpit",
      "repo": "TehPicix/rusherhack-Cockpit",
      "screenshots": [
        {
          "alt": "Cockpit HUD",
          "url": "https://github.com/TehPicix/rusherhack-Cockpit/raw/master/.github/static/Screenshot-2025-08-27-131236.png",
          "width": 386
        }
      ],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-10-17"
    },
    {
      "added_at": "2025-08-07",
      "creator": {
        "avatar": "https://crafatar.com/avatars/1eb084b8588e43e6bdd3e05e53682987?size=100",
        "name": "TehPicix",
        "url": "https://github.com/TehPicix"
      },
      "description": "Allows you to filter chat messages in Minecraft using customizable regular expressions. It reads expressions from a file and applies them to incoming chat messages, blocking those that match.",
      "downloads": 403,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "Module",
          "description": "Filter your game chat with a customizable regular expression",
          "feature_type": "module",
          "name": "ChatFilter",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "CaseInsensitive",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "caseInsensitive"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "LogBlockedMessages",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "logBlockedMessages"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/TehPicix/rusherhack-ChatFilter/releases/download/v1.1.2/rusherhack-chatfilter-1.1.2.jar",
      "latest_release_tag": "v1.1.2",
      "mc_versions": "1.21.4",
      "name": "ChatFilter",
      "repo": "TehPicix/rusherhack-ChatFilter",
      "screenshots": [
        {
          "alt": "Chat Before",
          "url": "https://raw.githubusercontent.com/TehPicix/rusherhack-ChatFilter/refs/heads/master/.github/assets/before.png",
          "width": 996
        },
        {
          "alt": "Chat After",
          "url": "https://raw.githubusercontent.com/TehPicix/rusherhack-ChatFilter/refs/heads/master/.github/assets/after.png",
          "width": 536
        }
      ],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-08-29"
    },
    {
      "added_at": "2025-09-03",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Adds AI integration to RusherHack with configurable API, token, and model options. Supports DeepSeek and other APIs with streaming-enabled chat completions.",
      "downloads": 394,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/rusherhack-ai-integration/releases/download/release/ai-plugin-1.0.0.jar",
      "latest_release_tag": "release",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "rusherhack-ai-integration",
      "repo": "tillay/rusherhack-ai-integration",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2025-09-03"
    },
    {
      "added_at": "2025-09-20",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Renders predicted flight paths for Elytra.",
      "downloads": 401,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ElytraPathTracerModule",
          "description": "Render a trajectory to predict where player will be going with elytra",
          "feature_type": "module",
          "name": "ElytraTrajectories",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": 11,
                  "description": null,
                  "name": "OffsetTicks",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "offsetTicks"
                }
              ],
              "default": true,
              "description": null,
              "name": "PredictRockets",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "predictRockets"
            },
            {
              "children": [
                {
                  "children": [
                    {
                      "children": [],
                      "default": 2.5,
                      "description": null,
                      "name": "LineWidth",
                      "setting_class": "NumberSetting",
                      "type": "number",
                      "var_name": "trajectoryLineWidth"
                    },
                    {
                      "children": [],
                      "default": false,
                      "description": null,
                      "name": "DepthTest",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "trajectoryDepthTest"
                    },
                    {
                      "children": [
                        {
                          "children": [],
                          "default": "ColorMode.STATIC",
                          "description": null,
                          "name": "Mode",
                          "setting_class": "EnumSetting",
                          "type": "enum",
                          "var_name": "trajectoryColorMode"
                        },
                        {
                          "children": [],
                          "default": null,
                          "description": "new Color(0x915ff0)",
                          "name": "Value",
                          "setting_class": "ColorSetting",
                          "type": "color",
                          "var_name": "trajectoryStaticColor"
                        },
                        {
                          "children": [
                            {
                              "children": [],
                              "default": null,
                              "description": "new Color(0x004fff)",
                              "name": "Start",
                              "setting_class": "ColorSetting",
                              "type": "color",
                              "var_name": "trajectoryGradientStart"
                            },
                            {
                              "children": [],
                              "default": null,
                              "description": "new Color(0x00ffff)",
                              "name": "End",
                              "setting_class": "ColorSetting",
                              "type": "color",
                              "var_name": "trajectoryGradientEnd"
                            }
                          ],
                          "default": false,
                          "description": null,
                          "name": "CustomColors",
                          "setting_class": "BooleanSetting",
                          "type": "boolean",
                          "var_name": "trajectoryGradientCustomColors"
                        }
                      ],
                      "default": null,
                      "description": null,
                      "name": "ColorSettings",
                      "setting_class": "NullSetting",
                      "type": "null",
                      "var_name": "trajectoryColor"
                    }
                  ],
                  "default": true,
                  "description": null,
                  "name": "Trajectory",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "renderTrajectory"
                },
                {
                  "children": [
                    {
                      "children": [
                        {
                          "children": [],
                          "default": 150,
                          "description": null,
                          "name": "Opacity",
                          "setting_class": "NumberSetting",
                          "type": "number",
                          "var_name": "destinationAlpha"
                        }
                      ],
                      "default": true,
                      "description": null,
                      "name": "Fill",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "destinationFill"
                    },
                    {
                      "children": [],
                      "default": true,
                      "description": null,
                      "name": "Outline",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "destinationOutline"
                    },
                    {
                      "children": [
                        {
                          "children": [],
                          "default": 2.5,
                          "description": null,
                          "name": "BeforeImpact",
                          "setting_class": "NumberSetting",
                          "type": "number",
                          "var_name": "tillImpactSeconds"
                        }
                      ],
                      "default": false,
                      "description": null,
                      "name": "DynamicColor",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "destinationDynamicColor"
                    },
                    {
                      "children": [],
                      "default": null,
                      "description": "new Color(0x3a915ff0, false)",
                      "name": "Color",
                      "setting_class": "ColorSetting",
                      "type": "color",
                      "var_name": "destinationColor"
                    }
                  ],
                  "default": true,
                  "description": null,
                  "name": "Destination",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "renderDestination"
                }
              ],
              "default": null,
              "description": null,
              "name": "Rendering",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "renderingSettings"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/elytra-trajectories/releases/download/nonplusworks/elytrapath-plugin-1.0.0.jar",
      "latest_release_tag": "nonplusworks",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "Elytra Trajectories",
      "repo": "tillay-rh-plugins/elytra-trajectories",
      "screenshots": [
        {
          "alt": "screenshot",
          "url": "./Assets/ElytraTrajectories/image1.png",
          "width": 750
        },
        {
          "alt": "screenshot",
          "url": "./Assets/ElytraTrajectories/image2.png",
          "width": 750
        }
      ],
      "stars": 3,
      "type": "plugin",
      "updated_at": "2025-11-02"
    },
    {
      "added_at": "2025-09-28",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Automatically reloads RusherHack whenever changes are detected in the plugins directory.",
      "downloads": 351,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoReloadModule",
          "description": "Automatically reload rusherhack whenever it detects a change in the plugins directory",
          "feature_type": "module",
          "name": "AutoReload",
          "settings": [
            {
              "children": [],
              "default": 0.2,
              "description": null,
              "name": "CheckDelay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "ReopenWindows",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "reopenWindows"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "OnlyModification",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyModification"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "MoreInfo",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "moreInfo"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/autoreload/releases/download/whyDoTagsExist/autoreload-1.0.0.jar",
      "latest_release_tag": "whyDoTagsExist",
      "mc_versions": "1.21.1, 1.21.2, 1.21.3, 1.21.4",
      "name": "AutoReload",
      "repo": "tillay-rh-plugins/autoreload",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-09-29"
    },
    {
      "added_at": "2025-10-05",
      "creator": {
        "avatar": "https://github.com/kybe236.png?size=20",
        "name": "kybe236",
        "url": "https://github.com/kybe236"
      },
      "description": "Enhances ElytraFly automation by intelligently managing wall-hugging movement. Automatically adjusts flight direction, detects obstacles, and maintains elevation using Baritone-assisted pathing and visual block rendering.",
      "downloads": 343,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "WallHugAutomationModule",
          "description": null,
          "feature_type": "module",
          "name": "WallHugAutomation",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": "Direction.NORTH",
                  "description": "Direction your traveling",
                  "name": "Direction",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "direction"
                },
                {
                  "children": [],
                  "default": 2,
                  "description": "The Wall Offset (direction x 4 wide offset right wall would be 2)",
                  "name": "Wall Offset",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "wallOffset"
                },
                {
                  "children": [],
                  "default": 120,
                  "description": null,
                  "name": "Y Level",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "YLevel"
                },
                {
                  "children": [],
                  "default": "Railing.BOTH",
                  "description": "Which side to hug",
                  "name": "Railing",
                  "setting_class": "EnumSetting",
                  "type": "enum",
                  "var_name": "railing"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Set \\\"Direction\\\", \\\"Y Level\\\" and \\\"Wall Offset\\\" when enabling",
                  "name": "Set On Enable",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "setOnEnable"
                }
              ],
              "default": null,
              "description": "Settings for position",
              "name": "Position Settings",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "positionSettings"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": true,
                  "description": "Render positions",
                  "name": "Render",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "render"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Render holes",
                  "name": "Render Holes",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "renderHole"
                },
                {
                  "children": [],
                  "default": "ColorUtils.transparency(Color.RED.getRGB(), 100)",
                  "description": "Color of holes",
                  "name": "Hole Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "holeColor"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Render blockages",
                  "name": "Render Blockages",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "renderBlockage"
                },
                {
                  "children": [],
                  "default": "ColorUtils.transparency(Color.YELLOW.getRGB(), 100)",
                  "description": "Color of blockages",
                  "name": "Blockage Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "blockageColor"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Render valid positions",
                  "name": "Render Valids",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "renderValid"
                },
                {
                  "children": [],
                  "default": "ColorUtils.transparency(Color.GREEN.getRGB(), 100)",
                  "description": "Color of valid positions",
                  "name": "Valid Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "validColor"
                }
              ],
              "default": null,
              "description": "Settings for colors",
              "name": "Color Settings",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "colorSettings"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically manages the efly module for automated wall hugging",
              "name": "Manage Efly",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "manageEfly"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/hw-efly-tweaks/releases/download/1.21.4/hw-efly-tweaks-1.0.0.jar",
      "latest_release_tag": "1.21.4",
      "mc_versions": "1.21.4",
      "name": "hw-efly-tweaks",
      "repo": "KybesRusherhackPlugins/hw-efly-tweaks",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-10-05"
    },
    {
      "added_at": "2025-10-07",
      "creator": {
        "avatar": "https://github.com/icaema.png?size=20",
        "name": "icaema",
        "url": "https://github.com/icaema"
      },
      "description": "Adds keybinds for quick equipment and inventory management. • Toggle between Elytra and chestplate, with auto-deploy when falling • Swap hotbar slots with the row above in the inventory",
      "downloads": 324,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 4,
        "total": 4
      },
      "features": [
        {
          "class_name": "IcaemasTweaksBeaconGrid",
          "description": "Shows where you need to place beacons for proper coverage",
          "feature_type": "module",
          "name": "BeaconGrid",
          "settings": [
            {
              "children": [],
              "default": 4,
              "description": null,
              "name": "BeaconLevel",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "beaconLevel"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(255, 166, 0, 100)",
              "name": "GridColor",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "perfectRenderColor"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(0, 255, 0, 100)",
              "name": "ExistingColor",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "existingRenderColor"
            }
          ]
        },
        {
          "class_name": "IcaemasTweaksElytraToggle",
          "description": "Keybind to switch between elytra and chestplate",
          "feature_type": "module",
          "name": "ElytraToggle",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "NullKey.INSTANCE /* unbound */",
              "name": "Swap Bind",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "swapBind"
            },
            {
              "children": [],
              "default": 0,
              "description": null,
              "name": "Elytra Inventory Slot",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "elytraSwapInventorySlot"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 10,
                  "description": null,
                  "name": "DelayTicks",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "delayTicks"
                }
              ],
              "default": true,
              "description": "Start flying if already in air when elytra is swapped to",
              "name": "AutoDeploy",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoStartFlying"
            }
          ]
        },
        {
          "class_name": "IcaemasTweaksHotbarSwap",
          "description": "Keybind to switch slots between the hotbar and first row of inventory slots",
          "feature_type": "module",
          "name": "HotbarSwap",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "NullKey.INSTANCE",
              "name": "Swap Bind",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "swapBind"
            },
            {
              "children": [],
              "default": "3,5,6,7,8",
              "description": null,
              "name": "Slots",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "swapSlots"
            }
          ]
        },
        {
          "class_name": "IcaemasTweaksRocketTakeoff",
          "description": "Auto takeoff when rightclicking with a rocket",
          "feature_type": "module",
          "name": "RocketTakeoff",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/icaema/icaemas-tweaks/releases/download/v0.3.0/icaemas-tweaks-0.3.0.jar",
      "latest_release_tag": "v0.3.0",
      "mc_versions": "1.21.4",
      "name": "icaemas-tweaks",
      "repo": "icaema/icaemas-tweaks",
      "screenshots": [],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2025-11-05"
    },
    {
      "added_at": "2025-10-13",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Automatically uses fireworks to redeploy Elytra flight when speed drops below a specified value.",
      "downloads": 325,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoFireworkModule",
          "description": "Automatically redeploy fireworks when player drops below a certain speed or height",
          "feature_type": "module",
          "name": "AutoFirework",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": 20,
                  "description": "Value to deploy rocket at",
                  "name": "MinSpeed",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "minSpeed"
                }
              ],
              "default": true,
              "description": "Deploy rockets when player speed drops below a value",
              "name": "UnderSpeed",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "underSpeed"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 120,
                  "description": "Y coordinate to deploy rocket when player drops below",
                  "name": "MinSpeed",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "minHeight"
                }
              ],
              "default": false,
              "description": "Deploy rockets when player height (y coord) drops below a value",
              "name": "UnderHeight",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "underHeight"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/AutoFirework/releases/download/v1.0.0-7f73e20608d2a1ab0970566cf65679d19824b69d/autofirework-1.0.0.jar",
      "latest_release_tag": "v1.0.0-7f73e20608d2a1ab0970566cf65679d19824b69d",
      "mc_versions": "1.21.4",
      "name": "AutoFirework",
      "repo": "tillay-rh-plugins/AutoFirework",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-10-13"
    },
    {
      "added_at": "2025-11-06",
      "creator": {
        "avatar": "https://github.com/icaema.png?size=20",
        "name": "icaema",
        "url": "https://github.com/icaema"
      },
      "description": "Automatically cycles damaged Mending items to repair with XP - swaps items into offhand or equips elytra in chest, can limit to elytras only, temporarily disables AutoTotem/AutoArmor while mending and restores them, and auto-disables when finished.",
      "downloads": 280,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoMendModule",
          "description": "Mend Everything",
          "feature_type": "module",
          "name": "AutoMend",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Disable the AutoTotem module while mending",
              "name": "DisableAutoTotem",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "s_disableAutoTotem"
            },
            {
              "children": [],
              "default": true,
              "description": "Disable the AutoArmor module while mending",
              "name": "DisableAutoArmor",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "s_disableAutoArmor"
            },
            {
              "children": [],
              "default": false,
              "description": "Only mend elytras",
              "name": "OnlyElytras",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "s_onlyElytras"
            },
            {
              "children": [],
              "default": true,
              "description": "Wear elytras on your back instead of mending in the off hand",
              "name": "WearElytras",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "s_wearElytras"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/icaema/auto-mend/releases/download/v1.0.0/auto-mend-1.0.0.jar",
      "latest_release_tag": "v1.0.0",
      "mc_versions": "1.21.4",
      "name": "AutoMend",
      "repo": "icaema/auto-mend",
      "screenshots": [
        {
          "alt": "AutoMend module preview",
          "url": "https://github.com/icaema/auto-mend/blob/master/img.png",
          "width": 550
        }
      ],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2025-11-06"
    },
    {
      "added_at": "2025-11-08",
      "creator": {
        "avatar": "https://github.com/icaema.png?size=20",
        "name": "icaema",
        "url": "https://github.com/icaema"
      },
      "description": "Stopwatch HUD with lap support and a control module; can auto-start on join and optionally hide when zero.",
      "downloads": 275,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 1,
        "total": 2
      },
      "features": [
        {
          "class_name": "StopwatchHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "Stopwatch",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": "Show the HUD element when stopwatch is at zero.",
              "name": "ShowAtZero",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "s_showAtZero"
            }
          ]
        },
        {
          "class_name": "StopwatchModule",
          "description": null,
          "feature_type": "module",
          "name": "Stopwatch",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Reset the stopwatch",
              "name": "Reset",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "s_reset"
            },
            {
              "children": [],
              "default": true,
              "description": "Record lap time",
              "name": "Lap",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "s_lap"
            },
            {
              "children": [],
              "default": null,
              "description": "NullKey.INSTANCE",
              "name": "Reset Bind",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "s_resetBind"
            },
            {
              "children": [],
              "default": null,
              "description": "NullKey.INSTANCE",
              "name": "Lap Bind",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "s_lapBind"
            },
            {
              "children": [],
              "default": true,
              "description": "Reset and start the timer when connecting to a server",
              "name": "StartOnJoin",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "s_startOnJoin"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/icaema/rusherhacks-stopwatch/releases/download/v1.0.0/stopwatch-1.0.0.jar",
      "latest_release_tag": "v1.0.0",
      "mc_versions": "1.21.4",
      "name": "Stopwatch",
      "repo": "icaema/rusherhacks-stopwatch",
      "screenshots": [
        {
          "alt": "Stopwatch HUD",
          "url": "https://github.com/icaema/rusherhacks-stopwatch/blob/master/docs/stopwatchalone.png",
          "width": 550
        },
        {
          "alt": "Laps view",
          "url": "https://github.com/icaema/rusherhacks-stopwatch/blob/master/docs/laps.png",
          "width": 550
        },
        {
          "alt": "Control module",
          "url": "https://github.com/icaema/rusherhacks-stopwatch/blob/master/docs/module.png",
          "width": 550
        },
        {
          "alt": "HUD settings",
          "url": "https://github.com/icaema/rusherhacks-stopwatch/blob/master/docs/hudsettings.png",
          "width": 550
        }
      ],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-11-09"
    },
    {
      "added_at": "2025-11-10",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Adds customizable speed HUD elements including a speed readout with unit conversions (e.g., miles/hour, bananas/second, lightyears/year) and a Mach meter displaying speed relative to the speed of sound.",
      "downloads": 292,
      "feature_counts": {
        "hud_elements": 2,
        "modules": 0,
        "total": 2
      },
      "features": [
        {
          "class_name": "FunnySpeedHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "FunnySpeed",
          "settings": [
            {
              "children": [],
              "default": "DistanceUnits.MILES",
              "description": null,
              "name": "Dist",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "distanceUnit"
            },
            {
              "children": [],
              "default": "TimeUnits.HOUR",
              "description": null,
              "name": "Time",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "timeUnit"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Shorthand",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "shorthandNumbers"
            }
          ]
        },
        {
          "class_name": "MachHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "Mach",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/rusherhack-speedometer/releases/download/v1.0.0-5872158a4f44c1c69362b63bdc617515a45ca15c/speedometer-1.0.0.jar",
      "latest_release_tag": "v1.0.0-5872158a4f44c1c69362b63bdc617515a45ca15c",
      "mc_versions": "1.21.4",
      "name": "RusherHack Speedometer",
      "repo": "tillay-rh-plugins/rusherhack-speedometer",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-11-10"
    },
    {
      "added_at": "2025-11-17",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Example chat automation module that listens to public chat and whispers.",
      "downloads": 261,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ChatbotModule",
          "description": "Example chatbot",
          "feature_type": "module",
          "name": "Chatbot",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/example-chatbot/releases/download/v1.0.0-0e23fd/example-chatbot-1.0.0.jar",
      "latest_release_tag": "v1.0.0-0e23fd",
      "mc_versions": "1.21.4",
      "name": "Example Chatbot",
      "repo": "tillay-rh-plugins/example-chatbot",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2025-11-17"
    },
    {
      "added_at": "2025-11-18",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Overworld AFK Elytra flight that flies in a smooth polar spiral pattern for basehunting.",
      "downloads": 393,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "PolarSpiralEflyModule",
          "description": "Fly around in a nice circular spiral",
          "feature_type": "module",
          "name": "PolarSpiralEfly",
          "settings": [
            {
              "children": [],
              "default": 1,
              "description": "Radius between layers in spiral (chunks)",
              "name": "Radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "radius"
            },
            {
              "children": [],
              "default": 64,
              "description": "How many small turns to make per full orbit",
              "name": "Steps",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "steps"
            },
            {
              "children": [],
              "default": "directions.CLOCKWISE",
              "description": "Direction of the spiral",
              "name": "Direction",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "spiralDirection"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 0,
                  "description": "Center X position",
                  "name": "CenterX",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "centerX"
                },
                {
                  "children": [],
                  "default": 0,
                  "description": "Center Z position",
                  "name": "CenterZ",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "centerZ"
                }
              ],
              "default": true,
              "description": "Click while module is active to set center to current coords",
              "name": "Reset Center",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "reset"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/polar-spiral-efly/releases/download/v1.1.0-505c7c/polar-efly-plugin-1.1.0.jar",
      "latest_release_tag": "v1.1.0-505c7c",
      "mc_versions": "1.21.4",
      "name": "Polar Spiral EFly",
      "repo": "tillay-rh-plugins/polar-spiral-efly",
      "screenshots": [
        {
          "alt": "Polar Spiral EFly demonstration",
          "url": "./Assets/polar-spiral-efly/spiral.png",
          "width": 550
        }
      ],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2025-11-17"
    },
    {
      "added_at": "2025-11-23",
      "creator": {
        "avatar": "https://github.com/musheck.png?size=20",
        "name": "musheck",
        "url": "https://github.com/musheck"
      },
      "description": "Automated highway builder with full placement, breaking, and rendering controls. Supports adjustable width/height, rails, rotation/airplace modes, placement delay, max breaks per tick, and visual block previews. Runs continuously until disabled.",
      "downloads": 438,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "HighwayManager",
          "description": "HighwayManager setting options",
          "feature_type": "module",
          "name": "HighwayManager",
          "settings": [
            {
              "children": [],
              "default": "CurrentSetting.General",
              "description": null,
              "name": "Setting",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "currentSetting"
            },
            {
              "children": [],
              "default": "Type.Cardinal",
              "description": null,
              "name": "Type",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "type"
            },
            {
              "children": [],
              "default": 4,
              "description": "How wide you want the highway to be.",
              "name": "Width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "width"
            },
            {
              "children": [],
              "default": 3,
              "description": "How high the highway (tunnel) should be",
              "name": "Height",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "height"
            },
            {
              "children": [],
              "default": true,
              "description": "Place railings on each end of pavement.",
              "name": "Rails",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rails"
            },
            {
              "children": [],
              "default": true,
              "description": "Consider the left railing",
              "name": "Left Rail",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "leftRail"
            },
            {
              "children": [],
              "default": true,
              "description": "Consider the right railing",
              "name": "Right Rail",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rightRail"
            },
            {
              "children": [],
              "default": null,
              "description": "Color.MAGENTA",
              "name": "Placement Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "placementColor"
            },
            {
              "children": [],
              "default": null,
              "description": "Color.RED",
              "name": "Breaking Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "breakingColor"
            },
            {
              "children": [],
              "default": 1,
              "description": null,
              "name": "Line Width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "lineWidth"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/musheck/mushack/releases/download/1.0.0/mushack-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.21.4",
      "name": "HighwayBuilder",
      "repo": "musheck/mushack",
      "screenshots": [],
      "stars": 10,
      "type": "plugin",
      "updated_at": "2025-11-22"
    },
    {
      "added_at": "2026-01-03",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "add favorite modules panel to the clickgui",
      "downloads": 235,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/favorite-modules/releases/download/v1.1.0-dca971/favorite-modules-1.1.0.jar",
      "latest_release_tag": "v1.1.0-dca971",
      "mc_versions": "1.21.4",
      "name": "Favorite Modules",
      "repo": "tillay-rh-plugins/favorite-modules",
      "screenshots": [
        {
          "alt": "Favorite Modules",
          "url": "./Assets/FavoriteModules/module.png",
          "width": 250
        }
      ],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2026-01-03"
    },
    {
      "added_at": "2026-01-10",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "see how much ram minecraft is actually using.",
      "downloads": 200,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 0,
        "total": 1
      },
      "features": [
        {
          "class_name": "RamHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "Ram Usage",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/ram-usage-hud/releases/download/v1.1.0-6d4e96/real-ram-usage-1.1.0.jar",
      "latest_release_tag": "v1.1.0-6d4e96",
      "mc_versions": "1.21.4",
      "name": "Ram Usage HUD",
      "repo": "tillay-rh-plugins/ram-usage-hud",
      "screenshots": [
        {
          "alt": "Hud Setting",
          "url": "./Assets/RamUsageHUD/HUD.png",
          "width": 250
        }
      ],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2026-01-10"
    },
    {
      "added_at": "2026-01-24",
      "creator": {
        "avatar": "https://github.com/GarlicRot.png?size=20",
        "name": "GarlicRot",
        "url": "https://github.com/GarlicRot"
      },
      "description": "Cross-version chat for RusherHack",
      "downloads": 252,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "RusherChatModule",
          "description": "Shared chat for users running the plugin",
          "feature_type": "module",
          "name": "RusherChat",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/GarlicRot/RusherChat/releases/download/v1.0.9/RusherChat-1.0.9.jar",
      "latest_release_tag": "v1.0.9",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.11",
      "name": "RusherChat",
      "repo": "GarlicRot/RusherChat",
      "screenshots": [],
      "stars": 3,
      "type": "plugin",
      "updated_at": "2026-07-01"
    },
    {
      "added_at": "2026-01-29",
      "creator": {
        "avatar": "https://github.com/GarlicRot.png?size=20",
        "name": "GarlicRot",
        "url": "https://github.com/GarlicRot"
      },
      "description": "Automatically harvest amethyst shards without breaking Budding Amethyst",
      "downloads": 180,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoAmethystModule",
          "description": "Automatically breaks amethyst buds/clusters without breaking Budding Amethyst.",
          "feature_type": "module",
          "name": "AutoAmethyst",
          "settings": [
            {
              "children": [],
              "default": "BreakStage.ALL",
              "description": "Which growth stage(s) to break.",
              "name": "Break",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "breakSetting"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(170, 60, 255, 60)",
                  "name": "Budding Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "buddingColor"
                },
                {
                  "children": [],
                  "default": null,
                  "description": "new Color(60, 255, 120, 80)",
                  "name": "Target Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "targetColor"
                },
                {
                  "children": [],
                  "default": 1.0,
                  "description": "Outline width.",
                  "name": "Line Width",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "lineWidth"
                }
              ],
              "default": true,
              "description": "Render budding + targets.",
              "name": "Render",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "renderSettings"
            },
            {
              "children": [],
              "default": 4,
              "description": "Ticks before retrying the same target.",
              "name": "Retry Cooldown",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "retryCooldownTicks"
            },
            {
              "children": [],
              "default": true,
              "description": "Swing hand when breaking (visual).",
              "name": "Swing",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "swing"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/GarlicRot/AutoAmethyst/releases/download/v1.0.1/AutoAmethyst-1.0.1.jar",
      "latest_release_tag": "v1.0.1",
      "mc_versions": "1.20.6, 1.21.1, 1.21.3, 1.21.4",
      "name": "AutoAmethyst",
      "repo": "GarlicRot/AutoAmethyst",
      "screenshots": [
        {
          "alt": "Module Setting",
          "url": "./Assets/AutoAmethyst/Module.png",
          "width": 250
        }
      ],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2026-01-29"
    },
    {
      "added_at": "2026-02-11",
      "creator": {
        "avatar": "https://github.com/maggyabby.png?size=20",
        "name": "maggyabby",
        "url": "https://github.com/maggyabby"
      },
      "description": "player tracker plugin that locks your view onto the nearest player to your crosshair and continuously tracks them",
      "downloads": 178,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "PlayerTrackerModule",
          "description": "Lock eyes on players that are moving around and make your gaze follow them",
          "feature_type": "module",
          "name": "PlayerTracker",
          "settings": []
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/maggyabby/playertracker-plugin/releases/download/4b9d2aa/playertracker-1.0.1.jar",
      "latest_release_tag": "4b9d2aa",
      "mc_versions": "1.21.4",
      "name": "PlayerTracker",
      "repo": "maggyabby/playertracker-plugin",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2026-02-11"
    },
    {
      "added_at": "2026-03-08",
      "creator": {
        "avatar": "https://github.com/FelekDevYT.png?size=20",
        "name": "FelekDevYT",
        "url": "https://github.com/FelekDevYT"
      },
      "description": "Adds more customizable HUD elements to RusherHacks.",
      "downloads": 184,
      "feature_counts": {
        "hud_elements": 9,
        "modules": 0,
        "total": 9
      },
      "features": [
        {
          "class_name": "CPULoad",
          "description": null,
          "feature_type": "hud",
          "name": "CPULoad",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "ElytraCounter",
          "description": null,
          "feature_type": "hud",
          "name": "ElytraCounter",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "GPULoad",
          "description": null,
          "feature_type": "hud",
          "name": "GPULoad",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "GameMode",
          "description": null,
          "feature_type": "hud",
          "name": "GameMode",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "GappleCounter",
          "description": null,
          "feature_type": "hud",
          "name": "GappleCounter",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "TargetHud",
          "description": null,
          "feature_type": "hud",
          "name": "TargetHud",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(255, 255, 255)",
              "name": "Name Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "nameColor"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(255, 255, 255)",
              "name": "HP Text Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "hpTextColor"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "Bar Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "barColor"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(50, 50, 50, 150)",
              "name": "Bar Empty Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "barEmptyColor"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(0, 0, 0, 120)",
              "name": "Background Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "backgroundColor"
            }
          ]
        },
        {
          "class_name": "TotemCounter",
          "description": null,
          "feature_type": "hud",
          "name": "TotemCounter",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "VisualRange",
          "description": null,
          "feature_type": "hud",
          "name": "VisualRange",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "WorldTime",
          "description": null,
          "feature_type": "hud",
          "name": "WorldTime",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/FelekDevYT/MoreHuds-rusherhack/releases/download/1.0/more-huds-1.0.jar",
      "latest_release_tag": "1.0",
      "mc_versions": "1.21.4",
      "name": "More Huds",
      "repo": "FelekDevYT/MoreHuds-rusherhack",
      "screenshots": [
        {
          "alt": "Some hud elements added by the plugin",
          "url": "./Assets/MoreHuds/example.png",
          "width": 429
        },
        {
          "alt": "TargetHUD's settings",
          "url": "./Assets/MoreHuds/settings.png",
          "width": 171
        }
      ],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2026-03-08"
    },
    {
      "added_at": "2026-03-10",
      "creator": {
        "avatar": "https://github.com/FelekDevYT.png?size=20",
        "name": "FelekDevYT",
        "url": "https://github.com/FelekDevYT"
      },
      "description": "A high-performance, tick-perfect AutoClicker plugin for RusherHack",
      "downloads": 152,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "AutoClicker",
          "description": "Automatically clicks for you",
          "feature_type": "module",
          "name": "AutoClicker",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Click while a screen is open.",
              "name": "While In Screens",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "inScreens"
            },
            {
              "children": [],
              "default": "Mode.Press",
              "description": "Method for left clicks.",
              "name": "Left Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "leftClickMode"
            },
            {
              "children": [],
              "default": 2,
              "description": "Delay in ticks.",
              "name": "Left Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "leftClickDelay"
            },
            {
              "children": [],
              "default": "Mode.Press",
              "description": "Method for right clicks.",
              "name": "Right Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "rightClickMode"
            },
            {
              "children": [],
              "default": 2,
              "description": "Delay in ticks.",
              "name": "Right Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "rightClickDelay"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/FelekDevYT/RusherClicker/releases/download/1.0/rusherclicker-1.0.jar",
      "latest_release_tag": "1.0",
      "mc_versions": "1.21.4",
      "name": "RusherClicker",
      "repo": "FelekDevYT/RusherClicker",
      "screenshots": [
        {
          "alt": "RusherClicker Settings",
          "url": "./Assets/RusherClicker/settings.png",
          "width": 173
        }
      ],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2026-03-10"
    },
    {
      "added_at": "2026-03-10",
      "creator": {
        "avatar": "https://github.com/KybesRusherhackPlugins.png?size=20",
        "name": "KybesRusherhackPlugins",
        "url": "https://github.com/KybesRusherhackPlugins"
      },
      "description": "HUD element that displays incoming and outgoing packet counts",
      "downloads": 135,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 0,
        "total": 1
      },
      "features": [
        {
          "class_name": "PacketsInOutHud",
          "description": null,
          "feature_type": "hud",
          "name": "PacketsInOut",
          "settings": [
            {
              "children": [],
              "default": "PacketsInOut",
              "description": null,
              "name": "text",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "text"
            },
            {
              "children": [],
              "default": "0xFFFFFFFF",
              "description": "Color",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "color"
            },
            {
              "children": [],
              "default": true,
              "description": "Shadow",
              "name": "shadow",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "shadow"
            },
            {
              "children": [],
              "default": 20,
              "description": "Reset After Ticks",
              "name": "resetAfterTicks",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "resetAfterTicks"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/packets_in_out/releases/download/init/packets-in-out-1.0.0.jar",
      "latest_release_tag": "init",
      "mc_versions": "1.21.4",
      "name": "packets_in_out",
      "repo": "KybesRusherhackPlugins/packets_in_out",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2026-03-10"
    },
    {
      "added_at": "2026-03-10",
      "creator": {
        "avatar": "https://github.com/KybesRusherhackPlugins.png?size=20",
        "name": "KybesRusherhackPlugins",
        "url": "https://github.com/KybesRusherhackPlugins"
      },
      "description": "Randomizes your selected hotbar slot after placing, with options to exclude and ignore specific slots",
      "downloads": 130,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "HotbarRandomizerModule",
          "description": "Hotbar randomizer",
          "feature_type": "module",
          "name": "Hotbar randomizer",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": "1",
                  "name": "1",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "exludeSlotOne"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "2",
                  "name": "2",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "exludeSlotTwo"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "3",
                  "name": "3",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "exludeSlotThree"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "4",
                  "name": "4",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "exludeSlotFour"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "5",
                  "name": "5",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "exludeSlotFive"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "6",
                  "name": "6",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "exludeSlotSix"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "7",
                  "name": "7",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "exludeSlotSeven"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "8",
                  "name": "8",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "exludeSlotEight"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "9",
                  "name": "9",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "exludeSlotNine"
                }
              ],
              "default": null,
              "description": "excluded slots from being randomized too",
              "name": "excluded slots",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "exludedSlots"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": "1",
                  "name": "1",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "ignoreSlotOne"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "2",
                  "name": "2",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "ignoreSlotTwo"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "3",
                  "name": "3",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "ignoreSlotThree"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "4",
                  "name": "4",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "ignoreSlotFour"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "5",
                  "name": "5",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "ignoreSlotFive"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "6",
                  "name": "6",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "ignoreSlotSix"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "7",
                  "name": "7",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "ignoreSlotSeven"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "8",
                  "name": "8",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "ignoreSlotEight"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "9",
                  "name": "9",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "ignoreSlotNine"
                }
              ],
              "default": null,
              "description": "ignore slot used to place",
              "name": "ignore slot",
              "setting_class": "NullSetting",
              "type": "null",
              "var_name": "ignoreSlot"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/KybesRusherhackPlugins/hotbar_randomizer/releases/download/init/hotbar-randomizer-1.0.0.jar",
      "latest_release_tag": "init",
      "mc_versions": "1.21.4",
      "name": "hotbar_randomizer",
      "repo": "KybesRusherhackPlugins/hotbar_randomizer",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2026-03-10"
    },
    {
      "added_at": "2026-03-10",
      "creator": {
        "avatar": "https://github.com/hx-4.png?size=20",
        "name": "hx-4",
        "url": "https://github.com/hx-4"
      },
      "description": "Adds group toggles to the Search module for quickly enabling or disabling categories.",
      "downloads": 124,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": false,
      "jar_url": "https://github.com/hx-4/RusherSearchTweaks/releases/download/1.0/search-tweaks-1.0.0.jar",
      "latest_release_tag": "1.0",
      "mc_versions": "1.21.4",
      "name": "RusherSearchTweaks",
      "repo": "hx-4/RusherSearchTweaks",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2026-03-10"
    },
    {
      "added_at": "2026-03-10",
      "creator": {
        "avatar": "https://github.com/hx-4.png?size=20",
        "name": "hx-4",
        "url": "https://github.com/hx-4"
      },
      "description": "Automatically switches to low durability armor and tools for AFK XP mending.",
      "downloads": 122,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 2,
        "total": 2
      },
      "features": [
        {
          "class_name": "AutoElytraReplace",
          "description": "Replaces your elytra mid-flight when durability hits a threshold",
          "feature_type": "module",
          "name": "AutoElytraReplace",
          "settings": [
            {
              "children": [],
              "default": 20,
              "description": "Replace elytra when remaining durability drops to or below this value",
              "name": "Threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "threshold"
            },
            {
              "children": [],
              "default": 10,
              "description": "Milliseconds between inventory clicks",
              "name": "ClickDelay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "clickDelay"
            }
          ]
        },
        {
          "class_name": "AutoMend",
          "description": "Wear the most-damaged mending piece so XP repairs it",
          "feature_type": "module",
          "name": "AutoMender",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": "Puts the second-most damaged mending piece in offhand (Temporarily disables AutoTotem & AutoArmor)",
              "name": "UseOffhand",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "offhandToo"
            },
            {
              "children": [],
              "default": false,
              "description": "When UseOffhand is on, prefer the most-damaged tool over the second-most damaged armor piece",
              "name": "PrioritizeTools",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "prioritizeTools"
            },
            {
              "children": [],
              "default": false,
              "description": "Continue mending swaps while your inventory is open",
              "name": "InInventory",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "inInventory"
            },
            {
              "children": [],
              "default": true,
              "description": "Show an action bar message when a mending piece finishes repairing",
              "name": "Announce",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "announce"
            },
            {
              "children": [],
              "default": 10,
              "description": "Milliseconds between inventory clicks",
              "name": "ClickDelay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "clickDelay"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/hx-4/RusherAutoMend/releases/download/1.1.0/auto-mend-1.1.0.jar",
      "latest_release_tag": "1.1.0",
      "mc_versions": "1.21.4",
      "name": "RusherAutoMend",
      "repo": "hx-4/RusherAutoMend",
      "screenshots": [],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2026-03-10"
    },
    {
      "added_at": "2026-03-24",
      "creator": {
        "avatar": "https://github.com/FelekDevYT.png?size=20",
        "name": "FelekDevYT",
        "url": "https://github.com/FelekDevYT"
      },
      "description": "A high-performance, all-in-one utility plugin for RusherHack.",
      "downloads": 242,
      "feature_counts": {
        "hud_elements": 8,
        "modules": 14,
        "total": 22
      },
      "features": [
        {
          "class_name": "CPULoadHud",
          "description": null,
          "feature_type": "hud",
          "name": "CPULoad",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "CrystalsPerSecondHud",
          "description": null,
          "feature_type": "hud",
          "name": "CrystalsPerSecond",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "CustomLabel",
          "description": null,
          "feature_type": "hud",
          "name": "CustomLabel",
          "settings": [
            {
              "children": [],
              "default": "Custom text to display.",
              "description": null,
              "name": "Text",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "labelText"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(255, 255, 255)",
              "name": "Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "textColor"
            }
          ]
        },
        {
          "class_name": "GPULoadHud",
          "description": null,
          "feature_type": "hud",
          "name": "GPULoad",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "GameModeHud",
          "description": null,
          "feature_type": "hud",
          "name": "GameMode",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "TargetHud",
          "description": null,
          "feature_type": "hud",
          "name": "TargetHud",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(255, 255, 255)",
              "name": "Name Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "nameColor"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(255, 255, 255)",
              "name": "HP Text Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "hpTextColor"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "Bar Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "barColor"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(50, 50, 50, 150)",
              "name": "Bar Empty Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "barEmptyColor"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(0, 0, 0, 120)",
              "name": "Background Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "backgroundColor"
            }
          ]
        },
        {
          "class_name": "VisualRangeHud",
          "description": null,
          "feature_type": "hud",
          "name": "VisualRange",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "WorldTimeHud",
          "description": null,
          "feature_type": "hud",
          "name": "WorldTime",
          "settings": [
            {
              "children": [],
              "default": null,
              "description": "new Color(RusherHackAPI.colors().primaryColor().getValueRGB())",
              "name": "color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorSetting"
            }
          ]
        },
        {
          "class_name": "AutoCleanMemoryModule",
          "description": "Automatically clears memory on low FPS.",
          "feature_type": "module",
          "name": "AutoCleanMemory",
          "settings": [
            {
              "children": [],
              "default": 30,
              "description": "Run GC if FPS drops below this.",
              "name": "FPS Threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "fpsThreshold"
            },
            {
              "children": [],
              "default": 30,
              "description": "Seconds to wait between cleans.",
              "name": "Cooldown",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "cooldown"
            },
            {
              "children": [],
              "default": true,
              "description": "Send a message to chat when cleaning.",
              "name": "Notify",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "notify"
            }
          ]
        },
        {
          "class_name": "AutoClickerModule",
          "description": "Automatically clicks for you",
          "feature_type": "module",
          "name": "AutoClicker",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Click while a screen is open.",
              "name": "While In Screens",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "inScreens"
            },
            {
              "children": [],
              "default": "Mode.Press",
              "description": "Method for left clicks.",
              "name": "Left Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "leftClickMode"
            },
            {
              "children": [],
              "default": 2,
              "description": "Delay in ticks.",
              "name": "Left Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "leftClickDelay"
            },
            {
              "children": [],
              "default": "Mode.Press",
              "description": "Method for right clicks.",
              "name": "Right Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "rightClickMode"
            },
            {
              "children": [],
              "default": 2,
              "description": "Delay in ticks.",
              "name": "Right Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "rightClickDelay"
            }
          ]
        },
        {
          "class_name": "AutoJumpModule",
          "description": "Automatically jumps for you",
          "feature_type": "module",
          "name": "AutoJump",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "onlyOnGround",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyOnGround"
            }
          ]
        },
        {
          "class_name": "AutoSneakModule",
          "description": "Automatically sneaks for you",
          "feature_type": "module",
          "name": "AutoSneak",
          "settings": []
        },
        {
          "class_name": "BuildHeightModule",
          "description": "Allows you to interact with objects at the build limit.",
          "feature_type": "module",
          "name": "BuildHeight",
          "settings": []
        },
        {
          "class_name": "ElytraBoostModule",
          "description": "Boosts your elytra as if you used a firework.",
          "feature_type": "module",
          "name": "ElytraBoost",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Prevents fireworks from being consumed when using Elytra Boost.",
              "name": "Anti Consume",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "antiConsume"
            },
            {
              "children": [],
              "default": 3,
              "description": "The flight duration of the firework.",
              "name": "Duration",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "duration"
            },
            {
              "children": [],
              "default": true,
              "description": "Plays the firework sound when a boost is triggered.",
              "name": "Play Sound",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "playSound"
            }
          ]
        },
        {
          "class_name": "FakeLagModule",
          "description": "Withholds packets to create artificial lag.",
          "feature_type": "module",
          "name": "FakeLag",
          "settings": [
            {
              "children": [],
              "default": 20,
              "description": "The amount of packets to buffer before sending them.",
              "name": "Packets",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "packets"
            },
            {
              "children": [],
              "default": true,
              "description": "Send packets in bursts when the buffer is full.",
              "name": "Pulse",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "pulse"
            }
          ]
        },
        {
          "class_name": "FastClimbModule",
          "description": "Allows you to climb ladders and vines faster.",
          "feature_type": "module",
          "name": "FastClimb",
          "settings": [
            {
              "children": [],
              "default": 0.2872,
              "description": "Your vertical climb speed.",
              "name": "Speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "speed"
            }
          ]
        },
        {
          "class_name": "HitBoxDesyncModule",
          "description": "Some tech.",
          "feature_type": "module",
          "name": "HitBoxDesync",
          "settings": []
        },
        {
          "class_name": "JetpackModule",
          "description": "Flies as if using a jetpack.",
          "feature_type": "module",
          "name": "Jetpack",
          "settings": [
            {
              "children": [],
              "default": 0.42,
              "description": "How fast while ascending.",
              "name": "Height",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "height"
            }
          ]
        },
        {
          "class_name": "KillLightningModule",
          "description": "Strikes a lightning bolt on the player you kill.",
          "feature_type": "module",
          "name": "KillLightning",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Play thunder sound.",
              "name": "Sound",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "sound"
            }
          ]
        },
        {
          "class_name": "NoSoundLagModule",
          "description": "Prevents lagging caused by a large amount of sounds being played.",
          "feature_type": "module",
          "name": "NoSoundLag",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Prevents lagging caused by armor sounds.",
              "name": "Armor",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "armor"
            },
            {
              "children": [],
              "default": true,
              "description": "Prevents lagging caused by wither sounds.",
              "name": "Withers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "withers"
            },
            {
              "children": [],
              "default": true,
              "description": "Prevents lagging caused by ghast sounds.",
              "name": "Ghasts",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "ghasts"
            }
          ]
        },
        {
          "class_name": "PacketFlyModule",
          "description": "Fly using packets.",
          "feature_type": "module",
          "name": "PacketFly",
          "settings": [
            {
              "children": [],
              "default": 5.2,
              "description": "Horizontal speed in blocks per second.",
              "name": "Horizontal Speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "horizontalSpeed"
            },
            {
              "children": [],
              "default": 1.24,
              "description": "Vertical speed in blocks per second.",
              "name": "Vertical Speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "verticalSpeed"
            },
            {
              "children": [],
              "default": true,
              "description": "Sends teleport packets.",
              "name": "Teleport",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "sendTeleport"
            },
            {
              "children": [],
              "default": true,
              "description": "Sets yaw client side.",
              "name": "Set Yaw",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "setYaw"
            },
            {
              "children": [],
              "default": false,
              "description": "Sets movement client side.",
              "name": "Set Move",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "setMove"
            },
            {
              "children": [],
              "default": false,
              "description": "Sets position client side.",
              "name": "Set Pos",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "setPos"
            },
            {
              "children": [],
              "default": false,
              "description": "Updates teleport id when a position packet is received.",
              "name": "Set ID",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "setID"
            },
            {
              "children": [],
              "default": true,
              "description": "Moves down occasionally to prevent kicks.",
              "name": "Anti Kick",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "antiKick"
            },
            {
              "children": [],
              "default": 4,
              "description": "How often you move down when not flying upwards.",
              "name": "Down Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "downDelay"
            },
            {
              "children": [],
              "default": 10,
              "description": "How often you move down when flying upwards.",
              "name": "Flying Down Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "downDelayFlying"
            },
            {
              "children": [],
              "default": false,
              "description": "Sends invalid movement packets.",
              "name": "Invalid Packet",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "invalidPacket"
            }
          ]
        },
        {
          "class_name": "ShiftSpamModule",
          "description": "Spams the sneak key",
          "feature_type": "module",
          "name": "ShiftSpam",
          "settings": [
            {
              "children": [],
              "default": 0.1,
              "description": "Delay in seconds while sneaking.",
              "name": "Active delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "activeDelay"
            },
            {
              "children": [],
              "default": 0.1,
              "description": "Delay in seconds while standing.",
              "name": "Delay deActive",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "deActiveDelay"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/FelekDevYT/Phoenix/releases/download/1.3.0/phoenix-1.3.0.jar",
      "latest_release_tag": "1.3.0",
      "mc_versions": "1.21.11",
      "name": "Phoenix",
      "repo": "FelekDevYT/phoenix",
      "screenshots": [
        {
          "alt": "Settings",
          "url": "./Assets/Phoenix/settings.png",
          "width": 174
        },
        {
          "alt": "Memory cleaner settings",
          "url": "./Assets/Phoenix/settings2.png",
          "width": 170
        },
        {
          "alt": "Elytra boost settings",
          "url": "./Assets/Phoenix/settings3.png",
          "width": 162
        }
      ],
      "stars": 4,
      "type": "plugin",
      "updated_at": "2026-06-06"
    },
    {
      "added_at": "2026-03-10",
      "creator": {
        "avatar": "https://github.com/hx-4.png?size=20",
        "name": "hx-4",
        "url": "https://github.com/hx-4"
      },
      "description": "Displays an estimated travel time to Xaero waypoints in-game.",
      "downloads": 155,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "WaypointETAModule",
          "description": "Shows ETA to the looked-at Xaero temporary waypoint",
          "feature_type": "module",
          "name": "XaeroETA",
          "settings": [
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": "Only show ETAs for temporary waypoints, not all of them.",
                  "name": "TempOnly",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "onlyTemporary"
                },
                {
                  "children": [],
                  "default": 10,
                  "description": "How wide the horizontal look cone is (0=exact crosshair, 100=very loose)",
                  "name": "LookAngle",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "focusAngle"
                },
                {
                  "children": [],
                  "default": 0,
                  "description": "Hide label beyond this distance (0 = off)",
                  "name": "MaxRange",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "maxDistance"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Interpret MaxRange as kilometres instead of metres",
                  "name": "InKm",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "maxDistanceKm"
                }
              ],
              "default": true,
              "description": "Waypoint selection rules",
              "name": "Filters",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "filtersGroup"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": "Hide the \\\"ETA: \\\" text before the time.",
                  "name": "HidePrefix",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "hideLabel"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Show the waypoint name in the label",
                  "name": "Name",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "showName"
                },
                {
                  "children": [],
                  "default": 10,
                  "description": "Begin fading the label at this distance (blocks). 0 = off.",
                  "name": "FadeRange",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "fadeDistance"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Show distance to waypoint in the label",
                  "name": "Distance",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "showDistance"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Show km when distance is large, metres otherwise",
                  "name": "AutoKm",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "distanceKm"
                },
                {
                  "children": [
                    {
                      "children": [],
                      "default": "Text shown when ETA can't be calculated",
                      "description": null,
                      "name": "UnknownText",
                      "setting_class": "StringSetting",
                      "type": "string",
                      "var_name": "unknownText"
                    },
                    {
                      "children": [],
                      "default": "new Color(49, 165, 161, 255)",
                      "description": "Color of the unknown ETA text",
                      "name": "Color",
                      "setting_class": "ColorSetting",
                      "type": "color",
                      "var_name": "unknownColor"
                    },
                    {
                      "children": [],
                      "default": false,
                      "description": "Apply rainbow gradient to the unknown text",
                      "name": "Rainbow",
                      "setting_class": "BooleanSetting",
                      "type": "boolean",
                      "var_name": "rainbowGradientUnknownText"
                    }
                  ],
                  "default": false,
                  "description": "Show the label even when speed can't be measured yet",
                  "name": "UnknownETA",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "showWhenUnknown"
                }
              ],
              "default": true,
              "description": "What information to show in the label",
              "name": "Display",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "displayGroup"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": "Use a fixed speed instead of measuring it",
                  "name": "ManualSpeed",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "setSpeed"
                },
                {
                  "children": [],
                  "default": 40.79,
                  "description": "Fixed travel speed in blocks/second",
                  "name": "Speed",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "customSpeed"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Auto-use 40.79 bps when flying elytra in Nether at Y 115-125",
                  "name": "NetherHwyDetect",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "elytHwy"
                },
                {
                  "children": [],
                  "default": 60,
                  "description": "Frames averaged for speed (more = smoother, less = reactive)",
                  "name": "Samples",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "speedSamples"
                },
                {
                  "children": [],
                  "default": 3.0,
                  "description": "Minimum speed (b/s) before ETA shows as unknown",
                  "name": "Threshold",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "minSpeed"
                },
                {
                  "children": [],
                  "default": 20,
                  "description": "Frames to average ETA over (0 = off)",
                  "name": "AverageETA",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "averageEstimate"
                }
              ],
              "default": true,
              "description": "Speed averaging settings",
              "name": "Speed",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "speedGroup"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": false,
                  "description": "Use RusherHack font renderer instead of Minecraft font",
                  "name": "RHFont",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "customFont"
                },
                {
                  "children": [],
                  "default": true,
                  "description": "Draw a drop shadow behind the ETA text",
                  "name": "Shadow",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "textShadow"
                },
                {
                  "children": [],
                  "default": "new Color(255, 255, 255, 255)",
                  "description": "ETA label text color",
                  "name": "Color",
                  "setting_class": "ColorSetting",
                  "type": "color",
                  "var_name": "textColor"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Apply rainbow gradient to the ETA text",
                  "name": "Rainbow",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "rainbowGradientText"
                },
                {
                  "children": [],
                  "default": 20,
                  "description": "Opacity of the background rect (0-100)",
                  "name": "BgOpacity",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "bgOpacity"
                }
              ],
              "default": true,
              "description": "Visual appearance of the label",
              "name": "Formatting",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "formattingGroup"
            },
            {
              "children": [
                {
                  "children": [],
                  "default": 0,
                  "description": null,
                  "name": "X",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "offsetX"
                },
                {
                  "children": [],
                  "default": 0,
                  "description": null,
                  "name": "Y",
                  "setting_class": "NumberSetting",
                  "type": "number",
                  "var_name": "offsetY"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Pin label to screen center instead of following the waypoint",
                  "name": "Anchored",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "offsetFixed"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "When Anchored, Y still follows camera pitch",
                  "name": "PitchFollow",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "offsetRelative"
                },
                {
                  "children": [],
                  "default": false,
                  "description": "Reset X and Y offset to 0",
                  "name": "Reset",
                  "setting_class": "BooleanSetting",
                  "type": "boolean",
                  "var_name": "resetOffset"
                }
              ],
              "default": false,
              "description": "Enable custom label positioning",
              "name": "Position",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "labelOffset"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/hx-4/Xaero-Waypoints-ETA/releases/download/1.2.0/waypoint-eta-1.2.0.jar",
      "latest_release_tag": "1.2.0",
      "mc_versions": "1.21.4",
      "name": "Xaero-Waypoints-ETA",
      "repo": "hx-4/Xaero-Waypoints-ETA",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2026-03-10"
    },
    {
      "added_at": "2026-06-04",
      "creator": {
        "avatar": "https://github.com/emirplus.png?size=20",
        "name": "emirplus",
        "url": "https://github.com/emirplus"
      },
      "description": "A small utility plugin for Rusherhack containing a HighJump (Shulker) module.",
      "downloads": 63,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "HighJump",
          "description": "Jumps higher under specific conditions.",
          "feature_type": "module",
          "name": "HighJump",
          "settings": [
            {
              "children": [],
              "default": "Shulker",
              "description": null,
              "name": "Mode",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "mode"
            },
            {
              "children": [],
              "default": 6.0,
              "description": null,
              "name": "Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": 2.0,
              "description": null,
              "name": "Power",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "power"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/emirplus/rusher-utils/releases/download/1.0.0/rusher-utils-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.21.11",
      "name": "Rusher Utils",
      "repo": "emirplus/Rusher-Utils",
      "screenshots": [],
      "stars": 1,
      "type": "plugin"
    },
    {
      "added_at": "2026-04-05",
      "creator": {
        "avatar": "https://github.com/FelekDevYT.png?size=20",
        "name": "FelekDevYT",
        "url": "https://github.com/FelekDevYT"
      },
      "description": "A high-performance, client-side cosmetic extension for RusherHack that allows using any custom cape textures with automatic elytra synchronization.",
      "downloads": 140,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "CustomCapeModule",
          "description": "Allows you to use a custom cape",
          "feature_type": "module",
          "name": "CustomCape",
          "settings": [
            {
              "children": [],
              "default": "None",
              "description": null,
              "name": "Cape",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "cape"
            },
            {
              "children": [],
              "default": true,
              "description": "Show the cape only for yourself",
              "name": "Only For Me",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyForMe"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": true,
      "jar_url": "https://github.com/FelekDevYT/CustomCapes/releases/download/latest/customcapes-1.0.0.jar",
      "latest_release_tag": "latest",
      "mc_versions": "1.21.4",
      "name": "CustomCapes",
      "repo": "FelekDevYT/CustomCapes",
      "screenshots": [
        {
          "alt": "Settings",
          "url": "./Assets/CustomCapes/settings.png",
          "width": 174
        }
      ],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2026-04-05"
    },
    {
      "added_at": "2026-05-06",
      "creator": {
        "avatar": "https://github.com/FelekDevYT.png?size=20",
        "name": "FelekDevYT",
        "url": "https://github.com/FelekDevYT"
      },
      "description": "Stricty is a plugin that makes your game less visible to anti-cheats.",
      "downloads": 99,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 6,
        "total": 6
      },
      "features": [
        {
          "class_name": "AutoBridge",
          "description": "Automatically builds a bridge",
          "feature_type": "module",
          "name": "AutoBridge",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "AutoSneak",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoSneak"
            },
            {
              "children": [],
              "default": 50,
              "description": null,
              "name": "Sneak Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "sneakDelay"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "AutoPlace",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoPlace"
            },
            {
              "children": [],
              "default": 2,
              "description": null,
              "name": "Place Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "placeDelay"
            }
          ]
        },
        {
          "class_name": "AutoHop",
          "description": "Automatically hops when on ground",
          "feature_type": "module",
          "name": "AutoHop",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "NoSlabs",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "noSlabs"
            }
          ]
        },
        {
          "class_name": "KillAuraStrict",
          "description": "Attacks nearby enemies",
          "feature_type": "module",
          "name": "Killaura",
          "settings": [
            {
              "children": [],
              "default": 3.0,
              "description": null,
              "name": "Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "tange"
            },
            {
              "children": [],
              "default": 15.0,
              "description": null,
              "name": "Rotation Speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "rotationStep"
            },
            {
              "children": [],
              "default": 150,
              "description": null,
              "name": "Reaction Time (ms)",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "reactionTime"
            },
            {
              "children": [],
              "default": "PriorityMode.DISTANCE",
              "description": null,
              "name": "Priority",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "priority"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Players",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "players"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Animals",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "animals"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Monsters",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "monsters"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Neutrals",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "neutals"
            }
          ]
        },
        {
          "class_name": "ShieldTrigger",
          "description": "Swaps to axe when hitting a shielded player",
          "feature_type": "module",
          "name": "ShieldTrigger",
          "settings": [
            {
              "children": [],
              "default": 4,
              "description": null,
              "name": "Swap Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "swapDelay"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Swap Back",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "swapBack"
            }
          ]
        },
        {
          "class_name": "ThrowPots",
          "description": "Automatically throws health potions",
          "feature_type": "module",
          "name": "ThrowPots",
          "settings": [
            {
              "children": [],
              "default": 10,
              "description": null,
              "name": "Health Threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "healthThreshold"
            },
            {
              "children": [],
              "default": 5,
              "description": null,
              "name": "Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            }
          ]
        },
        {
          "class_name": "TriggerPlus",
          "description": "TriggerBot for strict servers",
          "feature_type": "module",
          "name": "TriggerPlus",
          "settings": [
            {
              "children": [],
              "default": "PvpMode.NEW",
              "description": null,
              "name": "Mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "pvpMode"
            },
            {
              "children": [],
              "default": 0.0,
              "description": null,
              "name": "Jitter",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "jitter"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "OnlyWeapon",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyWeapon"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "OnlyWhenHolding",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyWhenHolding"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "NoShield",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "noShield"
            },
            {
              "children": [],
              "default": 10,
              "description": null,
              "name": "CPS",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "cps"
            },
            {
              "children": [],
              "default": 0,
              "description": null,
              "name": "MissChance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "missChance"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Players",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "players"
            },
            {
              "children": [],
              "default": true,
              "description": null,
              "name": "Monsters",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "monsters"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Neutrals",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "neutals"
            },
            {
              "children": [],
              "default": false,
              "description": null,
              "name": "Animals",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "animals"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/FelekDevYT/Stricty/releases/download/1.0.0/stricty-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.21.4",
      "name": "Stricty",
      "repo": "FelekDevYT/Stricty",
      "screenshots": [
        {
          "alt": "Stricty's settings",
          "url": "./Assets/Stricty/settings.png",
          "width": 168
        }
      ],
      "stars": 2,
      "type": "plugin",
      "updated_at": "2026-05-06"
    },
    {
      "added_at": "2026-04-12",
      "creator": {
        "avatar": "https://github.com/FelekDevYT.png?size=20",
        "name": "FelekDevYT",
        "url": "https://github.com/FelekDevYT"
      },
      "description": "In-game plugin manager for RusherHack that allows you to browse, download, and manage other community plugins directly from the official GitHub repository",
      "downloads": 163,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 0,
        "total": 0
      },
      "features": [],
      "has_features": false,
      "is_core": false,
      "jar_url": "https://github.com/FelekDevYT/Plugger/releases/download/1.0.0/plugger-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.21.4",
      "name": "Plugger",
      "repo": "FelekDevYT/Plugger",
      "screenshots": [
        {
          "alt": "Plugger logo",
          "url": "./Assets/Plugger/plugger.png",
          "width": 429
        }
      ],
      "stars": 0,
      "type": "plugin",
      "updated_at": "2026-04-12"
    },
    {
      "added_at": "2026-03-28",
      "creator": {
        "avatar": "https://github.com/FelekDevYT.png?size=20",
        "name": "FelekDevYT",
        "url": "https://github.com/FelekDevYT"
      },
      "description": "A powerful, automated container scanner and item counter for RusherHack.",
      "downloads": 164,
      "feature_counts": {
        "hud_elements": 0,
        "modules": 1,
        "total": 1
      },
      "features": [
        {
          "class_name": "ChestIndexer",
          "description": "Scans items in containers (chests, barrels, shulkers) to count them.",
          "feature_type": "module",
          "name": "ChestIndex",
          "settings": [
            {
              "children": [],
              "default": 4,
              "description": "Search radius for containers.",
              "name": "Range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "searchRange"
            },
            {
              "children": [],
              "default": 5,
              "description": "Delay in ticks between container interactions.",
              "name": "Delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "delay"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight containers already scanned.",
              "name": "Highlight Searched",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "highlightSearched"
            },
            {
              "children": [],
              "default": true,
              "description": "Render box fill for highlight.",
              "name": "Render Fill",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "renderFill"
            },
            {
              "children": [],
              "default": true,
              "description": "Render box outline for highlight.",
              "name": "Render Outline",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "renderOutline"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(16, 106, 144, 100)",
              "name": "Fill Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "fillColor"
            },
            {
              "children": [],
              "default": null,
              "description": "new Color(16, 106, 144, 255)",
              "name": "Line Color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "lineColor"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/FelekDevYT/ChestIndexer/releases/download/1.0.0/chest-indexer-1.0.0.jar",
      "latest_release_tag": "1.0.0",
      "mc_versions": "1.21.4",
      "name": "ChestIndexer",
      "repo": "FelekDevYT/ChestIndexer",
      "screenshots": [
        {
          "alt": "Logo",
          "url": "./Assets/ChestIndexer/logo.png",
          "width": 811
        }
      ],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2026-03-28"
    },
    {
      "added_at": "2026-06-09",
      "creator": {
        "avatar": "https://github.com/tillay.png?size=20",
        "name": "tillay",
        "url": "https://github.com/tillay"
      },
      "description": "Google Maps for 2b2t highways with route planning, navigation, and ETA guidance.",
      "downloads": 63,
      "feature_counts": {
        "hud_elements": 1,
        "modules": 0,
        "total": 1
      },
      "features": [
        {
          "class_name": "PathfinderHudElement",
          "description": null,
          "feature_type": "hud",
          "name": "Pathfinder",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Render a tracer on the highway outlining the route",
              "name": "RenderTracer",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "renderTracer"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/tillay-rh-plugins/rusherhack-pathfinder/releases/download/v1.2.0-7eb361/rusherhack-pathfinder-1.2.0.jar",
      "latest_release_tag": "v1.2.0-7eb361",
      "mc_versions": "1.21.4",
      "name": "RusherHack Pathfinder",
      "repo": "tillay-rh-plugins/rusherhack-pathfinder",
      "screenshots": [
        {
          "alt": "Pathfinder navigation overlay with ETA and turn-by-turn directions",
          "url": "./Assets/rusherhack-pathfinder/ss1.png",
          "width": 550
        },
        {
          "alt": "Highway route displayed on the map",
          "url": "./Assets/rusherhack-pathfinder/ss2.png",
          "width": 550
        },
        {
          "alt": "Pathfinder route planning interface",
          "url": "./Assets/rusherhack-pathfinder/ss3.png",
          "width": 550
        },
        {
          "alt": "Turn-by-turn highway navigation display",
          "url": "./Assets/rusherhack-pathfinder/ss4.png",
          "width": 550
        }
      ],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2026-06-09"
    },
    {
      "added_at": "2026-08-31",
      "creator": {
        "avatar": "https://github.com/Anxious112.png?size=20",
        "name": "Anxious112",
        "url": "https://github.com/Anxious112"
      },
      "description": "RusherHack port of the Tim Meteor addon - trail and stash hunting utilities including the Baromine Baritone auto-miner, dungeon/city/manor/chambers assistants, portal and gateway trackers, and 20+ HUDs.",
      "downloads": 18,
      "feature_counts": {
        "hud_elements": 21,
        "modules": 32,
        "total": 53
      },
      "features": [
        {
          "class_name": "BaromineHud",
          "description": "Displays Baromine status, progress, tool durability and session runtime.",
          "feature_type": "hud",
          "name": "BaromineHUD",
          "settings": []
        },
        {
          "class_name": "ChambersAssistantHud",
          "description": "Displays Trial Chamber element counts.",
          "feature_type": "hud",
          "name": "ChambersAssistantHUD",
          "settings": []
        },
        {
          "class_name": "CityAssistantHud",
          "description": "Displays Ancient City element counts and Warden timers.",
          "feature_type": "hud",
          "name": "CityAssistantHUD",
          "settings": []
        },
        {
          "class_name": "DungeonAssistantHud",
          "description": "Displays dungeon element counts.",
          "feature_type": "hud",
          "name": "DungeonAssistantHUD",
          "settings": []
        },
        {
          "class_name": "DuraPanelHUD",
          "description": "Shows main-hand and off-hand item durability.",
          "feature_type": "hud",
          "name": "DuraPanelHUD",
          "settings": []
        },
        {
          "class_name": "EightToOneHUD",
          "description": "Tracks Nether portal and Respawn Anchor counts.",
          "feature_type": "hud",
          "name": "EightToOneHUD",
          "settings": []
        },
        {
          "class_name": "EndAssistantHud",
          "description": "Displays End Assistant stats: elytras, chests and shulkers.",
          "feature_type": "hud",
          "name": "EndAssistantHUD",
          "settings": []
        },
        {
          "class_name": "GatekeeperHUD",
          "description": "Displays tracked End portal and End gateway counts.",
          "feature_type": "hud",
          "name": "GatekeeperHUD",
          "settings": []
        },
        {
          "class_name": "InfoAssistantHud",
          "description": "Lists the currently enabled Tim modules.",
          "feature_type": "hud",
          "name": "InfoAssistantHUD",
          "settings": []
        },
        {
          "class_name": "LastSeenPlayerHud",
          "description": "Shows the most recently seen nearby player.",
          "feature_type": "hud",
          "name": "LastSeenPlayerHUD",
          "settings": []
        },
        {
          "class_name": "LootLensHud",
          "description": "Displays tracked container counts from Loot Lens.",
          "feature_type": "hud",
          "name": "LootLensHUD",
          "settings": []
        },
        {
          "class_name": "MotanceHud",
          "description": "Shows movement state: sneaking, jumping, and sprinting.",
          "feature_type": "hud",
          "name": "MotanceHUD",
          "settings": []
        },
        {
          "class_name": "NeighbourhoodWatchHUD",
          "description": "Lists nearby players with their tracked status.",
          "feature_type": "hud",
          "name": "NeighbourhoodWatchHUD",
          "settings": []
        },
        {
          "class_name": "PortalMakerHud",
          "description": "Displays the progress of the Portal Maker module.",
          "feature_type": "hud",
          "name": "PortalMakerHUD",
          "settings": []
        },
        {
          "class_name": "PortalStockHud",
          "description": "Displays obsidian / ender chest stock and portal frame progress.",
          "feature_type": "hud",
          "name": "PortalStockHUD",
          "settings": []
        },
        {
          "class_name": "PositionHud",
          "description": "Shows coordinates, dimension and Nether/Overworld equivalents.",
          "feature_type": "hud",
          "name": "PositionHUD",
          "settings": []
        },
        {
          "class_name": "RocketPilotHud",
          "description": "Displays RocketPilot status, elytra durability and rocket count.",
          "feature_type": "hud",
          "name": "RocketPilotHUD",
          "settings": []
        },
        {
          "class_name": "SecondLifeHUD",
          "description": "Shows how many Totems of Undying you are carrying.",
          "feature_type": "hud",
          "name": "SecondLifeHUD",
          "settings": []
        },
        {
          "class_name": "ServerReportHUD",
          "description": "Shows biome, weather and active status effects.",
          "feature_type": "hud",
          "name": "ServerReportHUD",
          "settings": []
        },
        {
          "class_name": "StatisticsInformation",
          "description": "Shows FPS, ping, TPS, loaded chunks, position and facing.",
          "feature_type": "hud",
          "name": "StatisticsInformation",
          "settings": []
        },
        {
          "class_name": "TimeThrottleHUD",
          "description": "Displays the system speed impact of the Timethrottle module.",
          "feature_type": "hud",
          "name": "TimeThrottleHUD",
          "settings": []
        },
        {
          "class_name": "Baromine",
          "description": "Automated Baritone miner for targeted ores or blocks with heavy safety protocols.",
          "feature_type": "module",
          "name": "baromine",
          "settings": [
            {
              "children": [],
              "default": "TargetMode.Ores",
              "description": "What type of block to mine.",
              "name": "target-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "targetMode"
            },
            {
              "children": [],
              "default": "Blocks.DIAMOND_ORE",
              "description": "Ores to mine. Full block picker -- add as many as you like.",
              "name": "target-ores",
              "setting_class": "BlockListSetting",
              "type": "blocklist",
              "var_name": "targetOres"
            },
            {
              "children": [],
              "default": "Blocks.STONE",
              "description": "Blocks to mine. Full block picker -- add as many as you like.",
              "name": "target-blocks",
              "setting_class": "BlockListSetting",
              "type": "blocklist",
              "var_name": "targetBlocks"
            },
            {
              "children": [],
              "default": true,
              "description": "Also mine the deepslate variant of each selected ore.",
              "name": "include-deepslate",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "includeDeepslate"
            },
            {
              "children": [],
              "default": 1,
              "description": "Total stacks to mine before stopping the module entirely.",
              "name": "target-stacks",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "targetStacks"
            },
            {
              "children": [],
              "default": "CraftMode.Disabled",
              "description": "Automatically crafts items using a crafting table.",
              "name": "auto-craft",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "autoCraft"
            },
            {
              "children": [],
              "default": null,
              "description": "Ore blocks to craft from raw materials (e.g. Iron Block, Diamond Block).",
              "name": "craft-ore-list",
              "setting_class": "BlockListSetting",
              "type": "blocklist",
              "var_name": "craftOreList"
            },
            {
              "children": [],
              "default": null,
              "description": "Blocks to craft from mined materials (e.g. Stone Bricks, slabs, stairs).",
              "name": "craft-block-list",
              "setting_class": "BlockListSetting",
              "type": "blocklist",
              "var_name": "craftBlockList"
            },
            {
              "children": [],
              "default": 12.0,
              "description": "Health level to trigger a warning.",
              "name": "warning-health",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "warningHealth"
            },
            {
              "children": [],
              "default": 6.0,
              "description": "Health level to trigger an instant disconnect.",
              "name": "critical-health",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "criticalHealth"
            },
            {
              "children": [],
              "default": false,
              "description": "Instantly disconnects if another player enters render distance.",
              "name": "disconnect-on-player",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectOnPlayer"
            },
            {
              "children": [],
              "default": true,
              "description": "Pauses if a hostile mob is within ~6 blocks.",
              "name": "pause-in-combat",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "pauseInCombat"
            },
            {
              "children": [],
              "default": false,
              "description": "Stops mining if you are not wearing a Golden Helmet.",
              "name": "golden-helmet",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "goldenHelmet"
            },
            {
              "children": [],
              "default": true,
              "description": "Activates safety protocols if lava is directly touching you.",
              "name": "lava-avoidance",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "lavaAvoidance"
            },
            {
              "children": [],
              "default": false,
              "description": "Activates safety protocols if water is directly touching you.",
              "name": "water-avoidance",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "waterAvoidance"
            },
            {
              "children": [],
              "default": "ExcessDropMode.Disabled",
              "description": "Automatically drops excess blocks, keeping only a single stack.",
              "name": "drop-excess",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "dropExcessMode"
            },
            {
              "children": [],
              "default": true,
              "description": "Tactical retreat if you enter the Deep Dark biome.",
              "name": "avoid-deep-dark",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "avoidDeepDark"
            },
            {
              "children": [],
              "default": true,
              "description": "Hides inside a wall before turning off when the target is reached.",
              "name": "safe-logout",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "safeLogout"
            },
            {
              "children": [],
              "default": -64,
              "description": "Stops mining if the player goes below this Y-level.",
              "name": "min-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minYLevel"
            },
            {
              "children": [],
              "default": 320,
              "description": "Stops mining if the player goes above this Y-level.",
              "name": "max-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxYLevel"
            },
            {
              "children": [],
              "default": false,
              "description": "Stops mining if the player wanders too far from the start.",
              "name": "radius-limit",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "radiusLimit"
            },
            {
              "children": [],
              "default": 500,
              "description": "The maximum block radius from the starting position.",
              "name": "radius-blocks",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "radiusBlocks"
            },
            {
              "children": [],
              "default": "DepositMode.EnderChest",
              "description": "Where to stash items.",
              "name": "deposit-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "depositMode"
            },
            {
              "children": [],
              "default": 1,
              "description": "How many stacks in your inventory trigger the deposit process.",
              "name": "deposit-stacks",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "depositStacks"
            },
            {
              "children": [],
              "default": 1,
              "description": "The hotbar slot used to swap Shulkers / Ender Chests into.",
              "name": "swap-slot",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "swapSlot"
            },
            {
              "children": [],
              "default": "ToolEnchant.SilkTouch",
              "description": "Which enchantment to require when breaking blocks / replacing tools.",
              "name": "tool-enchant",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "toolEnchant"
            },
            {
              "children": [],
              "default": "Items.ENCHANTED_GOLDEN_APPLE",
              "description": "Food items to pull from the Ender Chest when low. Full item picker.",
              "name": "food-items",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "foodItems"
            },
            {
              "children": [],
              "default": 10,
              "description": "Minimum total of the selected foods to keep.",
              "name": "min-food-count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minFoodCount"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Look at a Shulker Box or Chest and press to set it as the crafting material source.",
              "name": "highlight-craft-container",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "highlightContainerKey"
            },
            {
              "children": [],
              "default": false,
              "description": "Mines XP ores to repair tools, then resumes.",
              "name": "auto-mend",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoMend"
            },
            {
              "children": [],
              "default": "Blocks.NETHER_QUARTZ_ORE",
              "description": "Ore blocks to mine for XP when auto-mending. Full block picker.",
              "name": "mend-ores",
              "setting_class": "BlockListSetting",
              "type": "blocklist",
              "var_name": "mendOres"
            },
            {
              "children": [],
              "default": 70.0,
              "description": "Durability % to reach before stopping Auto-Mend.",
              "name": "max-mend-durability",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxMendDurability"
            },
            {
              "children": [],
              "default": 10.0,
              "description": "Durability % to trigger replacing tools / activating Auto-Mend.",
              "name": "min-tool-durability",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minToolDurability"
            },
            {
              "children": [],
              "default": true,
              "description": "Periodically jumps and swings to prevent AFK kicks when stuck.",
              "name": "anti-afk",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "antiAfk"
            },
            {
              "children": [],
              "default": false,
              "description": "Enables a maximum time limit before auto-off.",
              "name": "enable-max-runtime",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "enableMaxRuntime"
            },
            {
              "children": [],
              "default": 8.0,
              "description": "Maximum hours to run before turning off.",
              "name": "max-runtime-hours",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxRuntimeHours"
            },
            {
              "children": [],
              "default": false,
              "description": "Reconnects after X hours if disconnected by safety or timeout.",
              "name": "auto-reconnect",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoReconnect"
            },
            {
              "children": [],
              "default": 2,
              "description": "How many hours to wait before attempting to reconnect.",
              "name": "delay-hours",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "reconnectHours"
            },
            {
              "children": [],
              "default": "PingMode.Both",
              "description": "How you want to be notified of module events.",
              "name": "ping-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "pingMode"
            },
            {
              "children": [],
              "default": "WarningSound.Pling",
              "description": "Which sound to play for notifications.",
              "name": "warning-sound",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "warningSound"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "The volume of the warning sound.",
              "name": "volume",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "soundVolume"
            }
          ]
        },
        {
          "class_name": "ChambersAssistant",
          "description": "Highlights Trial Chambers elements: spawners, vaults, pots, and breezes.",
          "feature_type": "module",
          "name": "chambers-assistant",
          "settings": [
            {
              "children": [],
              "default": 16,
              "description": "Detection range in chunks.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": 40,
              "description": "Maximum Y level to scan. Trial Chambers can generate up to around Y = 40.",
              "name": "chamber-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "chamberYLevel"
            },
            {
              "children": [],
              "default": "RenderMode.GLOW",
              "description": "GLOW = layered bloom boxes. SPECTRAL = outline shader. PULSE = fading highlight.",
              "name": "render-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "renderMode"
            },
            {
              "children": [],
              "default": 15,
              "description": "Width of the beams for entities and anomalies.",
              "name": "beam-width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "beamWidth"
            },
            {
              "children": [],
              "default": 4,
              "description": "Number of bloom layers rendered around each target.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.04,
              "description": "How far each bloom layer expands outward (in blocks).",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 60,
              "description": "Alpha of the innermost glow layer (0-255).",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 30,
              "description": "Fill alpha for block targets in SPECTRAL mode (0 = invisible, 30 = subtle).",
              "name": "spectral-block-fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralBlockFillAlpha"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight Trial Spawners (normal and ominous).",
              "name": "track-spawners",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackSpawners"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 255, 255)",
              "description": "Color for idle Trial Spawners.",
              "name": "spawner-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "spawnerColor"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 0, 255)",
              "description": "Color for Trial Spawners that are currently active.",
              "name": "active-spawner-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "activeSpawnerColor"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 0, 255)",
              "description": "Color for Trial Spawners that are ejecting rewards.",
              "name": "ejecting-spawner-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "ejectingSpawnerColor"
            },
            {
              "children": [],
              "default": "new Color(0, 180, 255, 255)",
              "description": "Color for idle Ominous Spawners.",
              "name": "ominous-spawner-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "ominousSpawnerColor"
            },
            {
              "children": [],
              "default": "new Color(180, 0, 0, 255)",
              "description": "Color for Ominous Spawners that are currently active.",
              "name": "active-ominous-spawner-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "activeOminousSpawnerColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight Vaults (normal and ominous).",
              "name": "track-vaults",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackVaults"
            },
            {
              "children": [],
              "default": "new Color(255, 215, 0, 255)",
              "description": "Color for active/unlooted vaults.",
              "name": "vault-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "vaultColor"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 0, 255)",
              "description": "Color for vaults that are currently ejecting loot.",
              "name": "ejecting-vault-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "ejectingVaultColor"
            },
            {
              "children": [],
              "default": "new Color(180, 0, 255, 255)",
              "description": "Color for Ominous Vaults.",
              "name": "ominous-vault-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "ominousVaultColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight standard chests, barrels, and dispensers.",
              "name": "track-containers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackContainers"
            },
            {
              "children": [],
              "default": "new Color(0, 0, 255, 255)",
              "description": "Color for standard chests, barrels, and dispensers.",
              "name": "container-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "containerColor"
            },
            {
              "children": [],
              "default": "Items.NETHERITE_BLOCK",
              "description": "Items to alert you about when opening Chests/Barrels/Dispensers.",
              "name": "container-whitelist",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "containerWhitelist"
            },
            {
              "children": [],
              "default": "Items.DIAMOND",
              "description": "Items to search for inside Decorated Pots.",
              "name": "pot-whitelist",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "potWhitelist"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 255, 255)",
              "description": "Color for pots containing whitelisted items.",
              "name": "loot-pot-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "lootPotColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights Breezes and Wind Charge projectiles.",
              "name": "track-breezes",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackBreezes"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 255, 255)",
              "description": "Color for Breezes and Wind Charges.",
              "name": "breeze-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "breezeColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights invisible Ominous Item Frames holding items.",
              "name": "track-item-frames",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackOminousItemFrames"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 255, 255)",
              "description": "Color for invisible Item Frames.",
              "name": "item-frame-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "itemFrameColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights dropped Trial Keys and Ominous Bottles.",
              "name": "track-keys-and-bottles",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackTrialItems"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 0, 255)",
              "description": "Color for dropped Trial Keys and Ominous Bottles.",
              "name": "trial-item-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "trialItemColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically opens Vaults when you have a Trial Key.",
              "name": "auto-open-vaults",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoOpenVaults"
            },
            {
              "children": [],
              "default": false,
              "description": "Automatically drinks an Ominous Bottle when near a Trial Spawner to trigger Ominous state.",
              "name": "auto-drink-ominous",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDrinkOminous"
            },
            {
              "children": [],
              "default": true,
              "description": "Master toggle for audio cues, reward announcements, and omen effect warnings.",
              "name": "alerts",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "enableAlerts"
            },
            {
              "children": [],
              "default": "AlertSound.DRAGON_GROWL",
              "description": "Which sound to play for module alerts.",
              "name": "alert-sound",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "alertSound"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Volume of the alert sound. Goes up to 5.0 for extra loud alerts.",
              "name": "alert-volume",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "alertVolume"
            },
            {
              "children": [],
              "default": true,
              "description": "Plays a sound and warns you when a pot containing whitelisted loot is found.",
              "name": "alert-on-loot-pot",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "alertOnLootPot"
            },
            {
              "children": [],
              "default": false,
              "description": "Instantly disconnects from the server if another player enters render distance.",
              "name": "disconnect-on-player",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectOnPlayer"
            },
            {
              "children": [],
              "default": true,
              "description": "Disables the module if health is critical.",
              "name": "auto-disable-on-low-health",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDisableOnLowHealth"
            }
          ]
        },
        {
          "class_name": "CityAssistant",
          "description": "Highlights Ancient City elements: shriekers, sensors, chests, and pings for Wardens.",
          "feature_type": "module",
          "name": "city-assistant",
          "settings": [
            {
              "children": [],
              "default": 16,
              "description": "Detection range in chunks.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": -20,
              "description": "Maximum Y level to scan. Ancient Cities generate around Y = -52.",
              "name": "city-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "cityYLevel"
            },
            {
              "children": [],
              "default": "RenderMode.GLOW",
              "description": "GLOW = layered bloom boxes. SPECTRAL = outline shader. PULSE = fading highlight.",
              "name": "render-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "renderMode"
            },
            {
              "children": [],
              "default": 4,
              "description": "Number of bloom layers rendered around each target.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.04,
              "description": "How far each bloom layer expands outward (in blocks).",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 60,
              "description": "Alpha of the innermost glow layer (0-255).",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 30,
              "description": "Fill alpha for block targets in SPECTRAL mode (0 = invisible, 30 = subtle).",
              "name": "spectral-block-fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralBlockFillAlpha"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight Sculk Shriekers.",
              "name": "track-shriekers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackShriekers"
            },
            {
              "children": [],
              "default": "new Color(0, 180, 255, 255)",
              "description": "Color for idle Sculk Shriekers.",
              "name": "shrieker-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "shriekerColor"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 0, 255)",
              "description": "Color for currently shrieking blocks.",
              "name": "active-shrieker-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "activeShriekerColor"
            },
            {
              "children": [],
              "default": "new Color(100, 100, 100, 255)",
              "description": "Color for Shriekers that can no longer summon Wardens.",
              "name": "disabled-shrieker-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "disabledShriekerColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight Sculk Sensors.",
              "name": "track-sensors",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackSensors"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 255, 255)",
              "description": "Color for idle Sculk Sensors.",
              "name": "sensor-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "sensorColor"
            },
            {
              "children": [],
              "default": "new Color(255, 100, 0, 255)",
              "description": "Color for actively listening/triggered Sculk Sensors.",
              "name": "active-sensor-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "activeSensorColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight standard chests.",
              "name": "track-containers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackContainers"
            },
            {
              "children": [],
              "default": "new Color(0, 0, 255, 255)",
              "description": "Color for standard chests.",
              "name": "container-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "containerColor"
            },
            {
              "children": [],
              "default": "Items.NETHERITE_BLOCK",
              "description": "Items to alert you about when opening Chests.",
              "name": "container-whitelist",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "containerWhitelist"
            },
            {
              "children": [],
              "default": true,
              "description": "Master toggle for audio cues and loot announcements.",
              "name": "alerts",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "enableAlerts"
            },
            {
              "children": [],
              "default": "AlertSound.WARDEN_ROAR",
              "description": "Which sound to play for module alerts.",
              "name": "alert-sound",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "alertSound"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Volume of the alert sound. Goes up to 5.0 for extra loud alerts.",
              "name": "alert-volume",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "alertVolume"
            },
            {
              "children": [],
              "default": true,
              "description": "Plays a distinct sound and warns you heavily when a Warden spawns or approaches.",
              "name": "warden-ping",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "enableWardenPing"
            },
            {
              "children": [],
              "default": false,
              "description": "Automatically drinks milk to clear the Darkness effect.",
              "name": "auto-milk-darkness",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoMilkDarkness"
            },
            {
              "children": [],
              "default": false,
              "description": "Instantly disconnects from the server if another player enters render distance.",
              "name": "disconnect-on-player",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectOnPlayer"
            },
            {
              "children": [],
              "default": true,
              "description": "Disables the module if health is critical.",
              "name": "auto-disable-on-low-health",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDisableOnLowHealth"
            }
          ]
        },
        {
          "class_name": "Datamine",
          "description": "Queues blocks for fast packet mining with double break.",
          "feature_type": "module",
          "name": "datamine",
          "settings": [
            {
              "children": [],
              "default": "MiningMode.Packet",
              "description": "Packet uses exploit bursts for instant breaking. Normal uses standard vanilla breaking.",
              "name": "mining-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "miningMode"
            },
            {
              "children": [],
              "default": false,
              "description": "Automatically mines the last broken block when it is replaced.",
              "name": "instant-remine",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "instantRemine"
            },
            {
              "children": [],
              "default": 5,
              "description": "Delay in ticks before checking for a replaced block. 0 = instant.",
              "name": "remine-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "remineDelay"
            },
            {
              "children": [],
              "default": 5,
              "description": "Ticks to wait before validating whether a block was broken.",
              "name": "validation-ticks",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "validationTicks"
            },
            {
              "children": [],
              "default": 3,
              "description": "Maximum total mining attempts for each block.",
              "name": "max-attempts",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxAttempts"
            },
            {
              "children": [],
              "default": "SwapMode.Normal",
              "description": "How to switch tools. Silent switches server-side without changing your visible hotbar.",
              "name": "auto-swap",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "swapMode"
            },
            {
              "children": [],
              "default": false,
              "description": "Hides the client-side hand swing animation. (Server still receives the packet).",
              "name": "silent-swing",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "silentSwing"
            },
            {
              "children": [],
              "default": true,
              "description": "Prevents the auto-tool feature from selecting tools that are about to break.",
              "name": "durability-protection",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "durabilityProtection"
            },
            {
              "children": [],
              "default": 5,
              "description": "The minimum durability remaining for a tool to be used.",
              "name": "durability-threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "durabilityThreshold"
            },
            {
              "children": [],
              "default": 0,
              "description": "Bypasses the mining queue for blocks that break within this many ticks. 0 = disabled.",
              "name": "vanilla-bypass",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "vanilla"
            },
            {
              "children": [],
              "default": false,
              "description": "Uses Baritone to pathfind and collect dropped items when the queue is empty.",
              "name": "auto-collect",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoCollect"
            },
            {
              "children": [],
              "default": 16,
              "description": "Maximum distance to search for dropped items.",
              "name": "collect-range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "collectRange"
            },
            {
              "children": [],
              "default": null,
              "description": "Only collects the specified items. Leave empty to collect all items.",
              "name": "collect-whitelist",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "collectWhitelist"
            },
            {
              "children": [],
              "default": 10,
              "description": "Delay in ticks after an item drops before auto-collect activates.",
              "name": "collect-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "collectDelay"
            },
            {
              "children": [],
              "default": 5,
              "description": "Seconds after a whitelisted item drops to actively search for it.",
              "name": "collect-grace-period",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "gracePeriod"
            },
            {
              "children": [],
              "default": true,
              "description": "Renders packet-mining progress and queued blocks.",
              "name": "render",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "render"
            },
            {
              "children": [],
              "default": "HighlightStyle.GLOW",
              "description": "The style to highlight blocks with.",
              "name": "highlight-style",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "highlightStyle"
            },
            {
              "children": [],
              "default": "ShapeMode.Both",
              "description": "How mining progress and queued blocks are rendered.",
              "name": "shape-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "shapeMode"
            },
            {
              "children": [],
              "default": 4,
              "description": "Bloom layer count.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "Bloom spread.",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 50,
              "description": "Bloom alpha.",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": 255,
              "description": "Outline alpha.",
              "name": "spectral-line-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralLineAlpha"
            },
            {
              "children": [],
              "default": 15,
              "description": "Fill alpha.",
              "name": "spectral-fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralFillAlpha"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "Box expansion.",
              "name": "spectral-expand",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralExpand"
            },
            {
              "children": [],
              "default": "new Color(0, 200, 255, 200)",
              "description": "The color for queued blocks.",
              "name": "queue-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "queueColor"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 100, 255)",
              "description": "The color for the primary target.",
              "name": "primary-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "primaryColor"
            },
            {
              "children": [],
              "default": "new Color(180, 0, 255, 200)",
              "description": "The color for the secondary target.",
              "name": "secondary-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "secondaryColor"
            }
          ]
        },
        {
          "class_name": "DungeonAssistant",
          "description": "Highlights dungeon elements: spawners, chests, and dungeon blocks.",
          "feature_type": "module",
          "name": "dungeon-assistant",
          "settings": [
            {
              "children": [],
              "default": 16,
              "description": "Detection range in chunks.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": 100,
              "description": "Maximum Y level to scan.",
              "name": "dungeon-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "dungeonYLevel"
            },
            {
              "children": [],
              "default": "RenderMode.GLOW",
              "description": "GLOW = layered bloom boxes. SPECTRAL = outline shader. PULSE = fading highlight.",
              "name": "render-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "renderMode"
            },
            {
              "children": [],
              "default": 4,
              "description": "Number of bloom layers rendered around each target.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.04,
              "description": "How far each bloom layer expands outward.",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 60,
              "description": "Alpha of the innermost glow layer.",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 30,
              "description": "Fill alpha for block targets in SPECTRAL mode.",
              "name": "spectral-block-fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralBlockFillAlpha"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse.",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Show steal and dump buttons on container screens.",
              "name": "steal-dump-buttons",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "stealDumpButtons"
            },
            {
              "children": [],
              "default": "BeamStyle.GUARDIAN",
              "description": "BOX = box beam. GUARDIAN = wide glow beam.",
              "name": "beam-style",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "beamStyle"
            },
            {
              "children": [],
              "default": 15,
              "description": "Box beam width (hundredths of a block).",
              "name": "beam-width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "beamWidth"
            },
            {
              "children": [],
              "default": true,
              "description": "Merge beams for nearby targets.",
              "name": "merge-beams",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "mergeBeams"
            },
            {
              "children": [],
              "default": 2.0,
              "description": "Distance within which beams are merged.",
              "name": "merge-distance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "mergeDistance"
            },
            {
              "children": [],
              "default": 0.08,
              "description": "Guardian beam radius (blocks).",
              "name": "guardian-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianBeamRadius"
            },
            {
              "children": [],
              "default": 4,
              "description": "Guardian glow layer count.",
              "name": "guardian-strands",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianStrands"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Unused (visual pacing).",
              "name": "guardian-spin-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianSpinSpeed"
            },
            {
              "children": [],
              "default": 90,
              "description": "Alpha of the beam centre core.",
              "name": "guardian-core-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianCoreAlpha"
            },
            {
              "children": [],
              "default": 160,
              "description": "Alpha of the outer glow layers.",
              "name": "guardian-strand-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianStrandAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Add a soft bloom halo around the guardian beam.",
              "name": "guardian-glow",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "guardianGlow"
            },
            {
              "children": [],
              "default": 0.18,
              "description": "Radius of the bloom halo.",
              "name": "guardian-glow-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianGlowRadius"
            },
            {
              "children": [],
              "default": "ChestBeamMode.NONE",
              "description": "Connecting beams from chests to the sky.",
              "name": "chest-beam-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "chestBeamMode"
            },
            {
              "children": [],
              "default": -64,
              "description": "Only render beams on chests at or above this Y level.",
              "name": "chest-beam-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "chestBeamMinY"
            },
            {
              "children": [],
              "default": "new Color(255, 215, 0, 180)",
              "description": "Color of the beams drawn on chests.",
              "name": "chest-beam-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "chestBeamColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight monster spawners.",
              "name": "track-spawners",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackSpawners"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 0, 255)",
              "description": "Monster spawner highlight color.",
              "name": "spawner-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "spawnerColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights torches within 5 blocks of a spawner.",
              "name": "highlight-spawner-torches",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "highlightSpawnerTorches"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 0, 255)",
              "description": "Color for torches near spawners.",
              "name": "spawner-torch-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "spawnerTorchColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight chests and count broken ones.",
              "name": "track-chests",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackChests"
            },
            {
              "children": [],
              "default": "new Color(255, 215, 0, 255)",
              "description": "Chest highlight color.",
              "name": "chest-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "chestColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight selected blocks in the surrounding area.",
              "name": "scan-blocks",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanCustomBlocks"
            },
            {
              "children": [],
              "default": "Blocks.COBBLESTONE",
              "description": "Blocks to search for and highlight in the world.",
              "name": "blocks",
              "setting_class": "BlockListSetting",
              "type": "blocklist",
              "var_name": "filterBlocks"
            },
            {
              "children": [],
              "default": "new Color(128, 200, 128, 255)",
              "description": "Highlight color for the selected blocks.",
              "name": "block-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "customBlockColor"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Key to toggle custom block scanning on/off.",
              "name": "toggle-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "toggleBlocksKey"
            },
            {
              "children": [],
              "default": false,
              "description": "Highlights Deepslate blocks facing the wrong direction.",
              "name": "misrotated-deepslate",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackMisrotatedDeepslate"
            },
            {
              "children": [],
              "default": "new Color(0, 180, 255, 255)",
              "description": "Highlight color for misrotated Deepslate.",
              "name": "misrotated-deepslate-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "misrotatedDeepslateColor"
            },
            {
              "children": [],
              "default": false,
              "description": "Highlights Stone and Dirt below a specified Y level.",
              "name": "low-y-stone-dirt",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackLowYStoneDirt"
            },
            {
              "children": [],
              "default": -5,
              "description": "The Y level below which Stone and Dirt will be highlighted.",
              "name": "low-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "lowYLevel"
            },
            {
              "children": [],
              "default": "new Color(128, 128, 128, 255)",
              "description": "Highlight color for Stone and Dirt below the Y level.",
              "name": "low-y-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "lowYStoneDirtColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight chest minecarts.",
              "name": "track-chest-minecarts",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackChestMinecarts"
            },
            {
              "children": [],
              "default": "new Color(255, 180, 0, 255)",
              "description": "Chest minecart highlight color.",
              "name": "chest-minecart-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "chestMinecartColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights displaced or misrotated chest minecarts.",
              "name": "minecart-anomalies",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackAnomalousMinecarts"
            },
            {
              "children": [],
              "default": "new Color(180, 0, 255, 255)",
              "description": "Color for misrotated chest minecarts.",
              "name": "misrotated-minecart-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "misrotatedMinecartColor"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 255, 255)",
              "description": "Color for physically displaced chest minecarts.",
              "name": "displaced-minecart-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "displacedMinecartColor"
            },
            {
              "children": [],
              "default": false,
              "description": "Highlights Endermites in the Overworld.",
              "name": "track-endermites",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackEndermites"
            },
            {
              "children": [],
              "default": "new Color(138, 43, 226, 255)",
              "description": "The highlight color for Endermites.",
              "name": "endermite-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "endermiteColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights Experience Orbs in the world.",
              "name": "track-xp-orbs",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackXpOrbs"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 0, 255)",
              "description": "The highlight color for Experience Orbs.",
              "name": "xp-orb-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "xpOrbColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically open, check, and break empty containers.",
              "name": "auto-open-break",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoOpenBreak"
            },
            {
              "children": [],
              "default": true,
              "description": "Open containers invisibly and switch tools silently.",
              "name": "silent-mode",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "silentMode"
            },
            {
              "children": [],
              "default": 5,
              "description": "Ticks to wait before breaking an empty container.",
              "name": "break-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "breakDelay"
            },
            {
              "children": [],
              "default": "Items.ENCHANTED_GOLDEN_APPLE",
              "description": "Items to look for — if found the container is left open and a sound plays.",
              "name": "whitelisted-items",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "whitelistedItems"
            },
            {
              "children": [],
              "default": false,
              "description": "Automatically break spawners in range.",
              "name": "auto-break-spawners",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoBreakSpawners"
            },
            {
              "children": [],
              "default": 5,
              "description": "Range in blocks to break spawners.",
              "name": "spawner-break-range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spawnerBreakRange"
            },
            {
              "children": [],
              "default": 5,
              "description": "Ticks to wait before breaking a spawner.",
              "name": "spawner-break-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spawnerBreakDelay"
            },
            {
              "children": [],
              "default": true,
              "description": "Break spawners before opening chests.",
              "name": "prioritize-spawners",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "prioritizeSpawners"
            },
            {
              "children": [],
              "default": true,
              "description": "Auto-disable if health is critically low with a totem equipped.",
              "name": "auto-disable-on-low-health",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDisableOnLowHealth"
            },
            {
              "children": [],
              "default": 3,
              "description": "Health level (in hearts) to trigger auto-disable.",
              "name": "low-health-threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "lowHealthThreshold"
            }
          ]
        },
        {
          "class_name": "EightToOne",
          "description": "Tracks Nether portals and Respawn Anchors with 8:1 conversion awareness.",
          "feature_type": "module",
          "name": "eight-to-one",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Scan Respawn Anchors.",
              "name": "scan-anchors",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanAnchors"
            },
            {
              "children": [],
              "default": 32,
              "description": "Portal detection range in chunks.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": true,
              "description": "Show a chat message each time a new portal you created is discovered.",
              "name": "show-created-count",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showCreatedCount"
            },
            {
              "children": [],
              "default": "CoordVisibility.Visible",
              "description": "Controls how coordinates are displayed in chat.",
              "name": "coord-visibility",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "coordVisibility"
            },
            {
              "children": [],
              "default": true,
              "description": "Scans Nether portals and gives exit portals and custom/built portals different colors.",
              "name": "different-sizes",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "differentiatePortalSizes"
            },
            {
              "children": [],
              "default": 10,
              "description": "Auto-mark Nether portals within this many blocks of the player as created by you.",
              "name": "auto-mark-range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "autoMarkRange"
            },
            {
              "children": [],
              "default": "new Color(180, 60, 255, 255)",
              "description": "Exit portal color.",
              "name": "color-exit-portal",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "netherColorFull"
            },
            {
              "children": [],
              "default": "new Color(255, 140, 0, 255)",
              "description": "Custom/built portal color.",
              "name": "color-custom-built",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "netherColorCustom"
            },
            {
              "children": [],
              "default": "new Color(255, 200, 0, 255)",
              "description": "Charged anchor color.",
              "name": "color-charged",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "anchorChargedColor"
            },
            {
              "children": [],
              "default": "new Color(100, 100, 120, 255)",
              "description": "Uncharged anchor color.",
              "name": "color-uncharged",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "anchorUnchargedColor"
            },
            {
              "children": [],
              "default": false,
              "description": "Only highlight anchors that have at least 1 charge.",
              "name": "only-charged",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyShowChargedAnchors"
            },
            {
              "children": [],
              "default": "BoxMode.Both",
              "description": "Box render mode.",
              "name": "shape-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "shapeMode"
            },
            {
              "children": [],
              "default": "HighlightStyle.GLOW",
              "description": "Highlight style.",
              "name": "highlight-style",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "highlightStyle"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights the obsidian frame of Nether portals.",
              "name": "highlight-frame",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "highlightFrame"
            },
            {
              "children": [],
              "default": false,
              "description": "Cycle colors over time.",
              "name": "dynamic-colors",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "dynamicColors"
            },
            {
              "children": [],
              "default": 4,
              "description": "Bloom layer count.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "Bloom spread.",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 50,
              "description": "Bloom alpha.",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 255,
              "description": "Outline alpha.",
              "name": "line-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralLineAlpha"
            },
            {
              "children": [],
              "default": 15,
              "description": "Fill alpha.",
              "name": "fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralFillAlpha"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "Box expansion.",
              "name": "expand",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralExpand"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Render a vertical beam at each structure.",
              "name": "show-beam",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showBeam"
            },
            {
              "children": [],
              "default": 16,
              "description": "Maximum horizontal distance (in chunks) to render the vertical beam.",
              "name": "beam-range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "beamRange"
            },
            {
              "children": [],
              "default": false,
              "description": "Only render the beam for the portal closest to the player.",
              "name": "only-nearest-beam",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyNearestBeam"
            },
            {
              "children": [],
              "default": "BeamStyle.GUARDIAN",
              "description": "Beam style.",
              "name": "beam-style",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "beamStyle"
            },
            {
              "children": [],
              "default": 15,
              "description": "Beam width.",
              "name": "beam-width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "beamWidth"
            },
            {
              "children": [],
              "default": 0.08,
              "description": "Guardian strand radius.",
              "name": "guardian-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianRadius"
            },
            {
              "children": [],
              "default": 4,
              "description": "Guardian strand count.",
              "name": "guardian-strands",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianStrands"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Guardian spin speed.",
              "name": "guardian-spin-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianSpinSpeed"
            },
            {
              "children": [],
              "default": 90,
              "description": "Guardian core alpha.",
              "name": "guardian-core-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianCoreAlpha"
            },
            {
              "children": [],
              "default": 160,
              "description": "Guardian strand alpha.",
              "name": "guardian-strand-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianStrandAlpha"
            },
            {
              "children": [],
              "default": false,
              "description": "Toggles the replenish keybind.",
              "name": "replenish-mode",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "replenishMode"
            },
            {
              "children": [],
              "default": "ReplenishItem.Obsidian",
              "description": "The item to replenish.",
              "name": "replenish-item",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "replenishItem"
            },
            {
              "children": [],
              "default": false,
              "description": "Replenishes the currently selected hotbar slot instead of a specific one.",
              "name": "use-selected-slot",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "useSelectedSlot"
            },
            {
              "children": [],
              "default": 1,
              "description": "The specific hotbar slot to replenish (1-9).",
              "name": "target-slot",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "targetSlot"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Replenishes the target hotbar slot's item to its max stack size from the main inventory.",
              "name": "replenish-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "replenishKey"
            }
          ]
        },
        {
          "class_name": "ElytraAssistant",
          "description": "Smart elytra and rocket management.",
          "feature_type": "module",
          "name": "elytra-assistant",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Automatically replace elytra when durability is low.",
              "name": "auto-replace",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoReplace"
            },
            {
              "children": [],
              "default": 10,
              "description": "Minimum durability before replacing.",
              "name": "durability-threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "durabilityThreshold"
            },
            {
              "children": [],
              "default": "WarningSound.Anvil",
              "description": "Sound played when no replacement elytra is available.",
              "name": "warning-sound",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "warningSoundType"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Volume of the warning sound.",
              "name": "warning-volume",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "warningSoundVolume"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Key to toggle auto replace.",
              "name": "toggle-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "toggleKey"
            },
            {
              "children": [],
              "default": "MiddleClickAction.None",
              "description": "Item to use when middle clicking.",
              "name": "action",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "middleClickAction"
            },
            {
              "children": [],
              "default": true,
              "description": "Prevents hand swing animation when using rockets.",
              "name": "silent-rocket",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "silentRocket"
            },
            {
              "children": [],
              "default": true,
              "description": "Enables the rocket replenish keybind.",
              "name": "rocket-replenish",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "rocketReplenishEnabled"
            },
            {
              "children": [],
              "default": false,
              "description": "Replenishes the currently selected hotbar slot instead of a specific one.",
              "name": "use-selected-slot",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "useSelectedSlot"
            },
            {
              "children": [],
              "default": 8,
              "description": "The specific hotbar slot to replenish (1-9).",
              "name": "target-slot",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "targetSlot"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Replenishes the target hotbar slot's item to its max stack size from the main inventory.",
              "name": "replenish-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "rocketReplenishKey"
            },
            {
              "children": [],
              "default": false,
              "description": "Prevents AFK kick by swinging hand periodically.",
              "name": "anti-afk",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "antiAfk"
            }
          ]
        },
        {
          "class_name": "Gatekeeper",
          "description": "Advanced End gateway and End portal tracking with integrated End Assistant.",
          "feature_type": "module",
          "name": "gatekeeper",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Scan End portal blocks.",
              "name": "end-portals",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanEndPortals"
            },
            {
              "children": [],
              "default": true,
              "description": "Scan End gateways.",
              "name": "end-gateways",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanEndGateways"
            },
            {
              "children": [],
              "default": 16,
              "description": "Detection range in chunks for all features.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": true,
              "description": "Master toggle for all End Assistant features.",
              "name": "end-assistant",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "enableEndAssistant"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 128, 255)",
              "description": "End portal color.",
              "name": "end-portal-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "endPortalColor"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 255, 255)",
              "description": "End gateway color.",
              "name": "end-gateway-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "endGatewayColor"
            },
            {
              "children": [],
              "default": "BoxMode.Both",
              "description": "Box render mode.",
              "name": "shape-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "shapeMode"
            },
            {
              "children": [],
              "default": "RenderMode.GLOW",
              "description": "GLOW = layered bloom boxes. SPECTRAL = outline shader. PULSE = fading highlight.",
              "name": "render-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "renderMode"
            },
            {
              "children": [],
              "default": false,
              "description": "Cycle colors over time.",
              "name": "dynamic-colors",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "dynamicColors"
            },
            {
              "children": [],
              "default": 4,
              "description": "Number of bloom layers rendered around each target.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.04,
              "description": "How far each bloom layer expands outward (in blocks).",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 60,
              "description": "Alpha of the innermost glow layer (0-255).",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 30,
              "description": "Fill alpha for block targets in SPECTRAL mode.",
              "name": "spectral-fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralFillAlpha"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Render a vertical beam at each structure.",
              "name": "show-beam",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showBeam"
            },
            {
              "children": [],
              "default": 16,
              "description": "Maximum horizontal distance (in chunks) to render the vertical beam.",
              "name": "beam-range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "beamRange"
            },
            {
              "children": [],
              "default": false,
              "description": "Only render the beam for the portal closest to the player.",
              "name": "nearest-beam",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyNearestBeam"
            },
            {
              "children": [],
              "default": "BeamStyle.GUARDIAN",
              "description": "Beam style.",
              "name": "beam-style",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "beamStyle"
            },
            {
              "children": [],
              "default": 15,
              "description": "Width of the box-style beam.",
              "name": "beam-width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "beamWidth"
            },
            {
              "children": [],
              "default": 0.08,
              "description": "Radius of guardian-style beam strands.",
              "name": "guardian-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianRadius"
            },
            {
              "children": [],
              "default": 4,
              "description": "Number of rotating strands.",
              "name": "guardian-strands",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianStrands"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Rotation speed of strands.",
              "name": "guardian-spin-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianSpinSpeed"
            },
            {
              "children": [],
              "default": 90,
              "description": "Alpha of the beam center.",
              "name": "guardian-core-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianCoreAlpha"
            },
            {
              "children": [],
              "default": 160,
              "description": "Alpha of the rotating strands.",
              "name": "guardian-strand-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianStrandAlpha"
            },
            {
              "children": [],
              "default": 0,
              "description": "Minimum Y level to scan. End Cities generate above Y = 0.",
              "name": "city-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "cityYLevel"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight standard chests.",
              "name": "track-chests",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackContainers"
            },
            {
              "children": [],
              "default": "new Color(255, 215, 0, 255)",
              "description": "Color for standard chests.",
              "name": "chest-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "containerColor"
            },
            {
              "children": [],
              "default": "Items.NETHERITE_BLOCK",
              "description": "Items to alert you about when opening Chests.",
              "name": "chest-whitelist",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "containerWhitelist"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights Item Frames holding an Elytra.",
              "name": "elytra-frames",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackElytras"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 0, 255)",
              "description": "Color for Elytra Item Frames.",
              "name": "elytra-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "elytraColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights Shulkers and Shulker Bullets.",
              "name": "shulkers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackShulkers"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 255, 255)",
              "description": "Color for Shulkers and Shulker Bullets.",
              "name": "shulker-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "shulkerColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Master toggle for audio cues and loot announcements.",
              "name": "alerts",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "enableAlerts"
            },
            {
              "children": [],
              "default": "AlertSound.ENDER_DRAGON_GROWL",
              "description": "Which sound to play for module alerts.",
              "name": "alert-sound",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "alertSound"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Volume of the alert sound.",
              "name": "alert-volume",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "alertVolume"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically opens nearby chests.",
              "name": "auto-open-chests",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoOpenChests"
            },
            {
              "children": [],
              "default": false,
              "description": "Automatically drinks milk to clear the Levitation effect.",
              "name": "auto-milk-levitation",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoMilkLevitation"
            },
            {
              "children": [],
              "default": false,
              "description": "Instantly disconnects from the server if another player enters render distance.",
              "name": "disconnect-on-player",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectOnPlayer"
            },
            {
              "children": [],
              "default": true,
              "description": "Disables the module if health is critical.",
              "name": "auto-disable-on-low-health",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDisableOnLowHealth"
            }
          ]
        },
        {
          "class_name": "Graveyard",
          "description": "Highlights valuable items and XP on the ground.",
          "feature_type": "module",
          "name": "graveyard",
          "settings": [
            {
              "children": [],
              "default": 32,
              "description": "Detection range in blocks.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": true,
              "description": "Show beam above found items.",
              "name": "show-beam",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showBeam"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 255, 200)",
              "description": "Color of the beam.",
              "name": "beam-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "beamColor"
            },
            {
              "children": [],
              "default": 0.15,
              "description": "Beam thickness (blocks).",
              "name": "beam-width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "beamWidth"
            },
            {
              "children": [],
              "default": false,
              "description": "Only highlight and notify about the closest item.",
              "name": "only-nearest",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "onlyNearest"
            },
            {
              "children": [],
              "default": true,
              "description": "Send chat messages and play sound when new whitelisted items or XP orbs are found.",
              "name": "notification",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "notification"
            },
            {
              "children": [],
              "default": false,
              "description": "If enabled, prioritizes closest items.",
              "name": "sort-by-distance",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "sortByDistance"
            },
            {
              "children": [],
              "default": "Items.ELYTRA",
              "description": "Items to look for on the ground, like diamond swords and valuable gear.",
              "name": "whitelisted-items",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "whitelistedItems"
            },
            {
              "children": [],
              "default": true,
              "description": "Detects Experience Orbs on the ground and creates a beam and notifier.",
              "name": "detect-xp-orbs",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "detectXpOrbs"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 0, 200)",
              "description": "Color of the beam for Experience Orbs.",
              "name": "xp-beam-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "xpBeamColor"
            },
            {
              "children": [],
              "default": false,
              "description": "Only highlight whitelisted items if they are enchanted. Items that cannot be enchanted (shulker boxes, totems, etc.) are always shown regardless.",
              "name": "enchanted-only",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "enchantedOnly"
            },
            {
              "children": [],
              "default": "new Color(180, 80, 255, 220)",
              "description": "Beam color override for enchanted items when enchanted-only is off, so both plain and enchanted items can be told apart visually.",
              "name": "enchanted-beam-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "enchantedBeamColor"
            },
            {
              "children": [],
              "default": false,
              "description": "Use the enchanted beam color above to visually distinguish enchanted items from plain ones.",
              "name": "separate-enchanted-color",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "separateEnchantedColor"
            }
          ]
        },
        {
          "class_name": "Handhold",
          "description": "Follow a player or lead with mutual safety disconnects.",
          "feature_type": "module",
          "name": "handhold",
          "settings": [
            {
              "children": [],
              "default": "Leader's name if you are Follower, Follower's name if you are Leader.",
              "description": null,
              "name": "target",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "targetName"
            },
            {
              "children": [],
              "default": "Role.Follower",
              "description": "Are you leading the flight, or following?",
              "name": "role",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "role"
            },
            {
              "children": [],
              "default": true,
              "description": "Disable Handhold and Rocket Pilot when the target stops flying",
              "name": "disable-when-target-lands",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disableWhenTargetLands"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically slow down if you pull too far ahead of the follower.",
              "name": "pace-control",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "enablePaceControl"
            },
            {
              "children": [],
              "default": 50.0,
              "description": "Horizontal distance before starting to slow down.",
              "name": "max-lead-distance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxLeadDistance"
            },
            {
              "children": [],
              "default": 30.0,
              "description": "Horizontal distance to the follower before resuming normal speed.",
              "name": "resume-distance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "resumeDistance"
            },
            {
              "children": [],
              "default": -35.0,
              "description": "How aggressively to pitch up to bleed speed (negative = up).",
              "name": "slowdown-pitch",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "slowdownPitch"
            },
            {
              "children": [],
              "default": 5.0,
              "description": "If closer than this, orbit instead of aiming directly at them.",
              "name": "min-follow-distance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minFollowDistance"
            },
            {
              "children": [],
              "default": 25.0,
              "description": "How many degrees to shift your yaw when orbiting too close.",
              "name": "orbit-offset",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "orbitOffset"
            },
            {
              "children": [],
              "default": "OrbitSide.Left",
              "description": "Which side to orbit on when you get too close.",
              "name": "orbit-side",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "orbitSide"
            },
            {
              "children": [],
              "default": true,
              "description": "Always keep your camera aimed at the target.",
              "name": "look-at-target",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "lookAtTarget"
            },
            {
              "children": [],
              "default": 0.1,
              "description": "How smoothly to turn towards the target (lower = smoother).",
              "name": "rotation-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "rotationSpeed"
            },
            {
              "children": [],
              "default": true,
              "description": "Caps rotation speed per tick to reduce anti-cheat flags.",
              "name": "limit-rotation-speed",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "limitRotationSpeed"
            },
            {
              "children": [],
              "default": 20.0,
              "description": "Maximum degrees to rotate per tick.",
              "name": "max-rotation-per-tick",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxRotationPerTick"
            },
            {
              "children": [],
              "default": true,
              "description": "Triggers a panic rocket towards their last location, then DCs if they aren't found.",
              "name": "safety-disconnect",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "safetyDisconnect"
            },
            {
              "children": [],
              "default": 4.0,
              "description": "Seconds to fly towards last location before giving up and disconnecting.",
              "name": "disconnect-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "disconnectDelay"
            },
            {
              "children": [],
              "default": true,
              "description": "Stops looking at target if a wall is in the way.",
              "name": "pause-on-obstacle",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "pauseOnObstacle"
            },
            {
              "children": [],
              "default": 15,
              "description": "How many ticks to pause tracking when an obstacle is hit.",
              "name": "obstacle-pause-ticks",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "obstaclePauseTicks"
            }
          ]
        },
        {
          "class_name": "Handmold",
          "description": "Adjusts the position, scale, and rotation of each hand independently.",
          "feature_type": "module",
          "name": "handmold",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": "Disables hand bobbing while walking.",
              "name": "no-hand-bob",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "noHandBob"
            },
            {
              "children": [],
              "default": false,
              "description": "Hides the main hand when not holding any item.",
              "name": "hide-empty-mainhand",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "hideEmptyMainhand"
            },
            {
              "children": [],
              "default": false,
              "description": "Hides the offhand completely regardless of what it holds.",
              "name": "hide-offhand-completely",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "hideOffhandCompletely"
            },
            {
              "children": [],
              "default": "EatPosition.Custom",
              "description": "Where the hand moves to while eating or drinking. Custom defaults to 0 (center) unless changed.",
              "name": "eat-position",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "eatPosition"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "The X position the hand slides to while eating. 0 = center, negative = left, positive = right.",
              "name": "eat-target-x",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "eatTargetX"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Horizontal offset.",
              "name": "x",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "mainX"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Vertical offset.",
              "name": "y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "mainY"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Depth offset.",
              "name": "z",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "mainZ"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Scale multiplier.",
              "name": "scale",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "mainScale"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Rotation around X axis (degrees).",
              "name": "rot-x",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "mainRotX"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Rotation around Y axis (degrees).",
              "name": "rot-y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "mainRotY"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Rotation around Z axis (degrees).",
              "name": "rot-z",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "mainRotZ"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Horizontal offset.",
              "name": "x",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "offX"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Vertical offset.",
              "name": "y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "offY"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Depth offset.",
              "name": "z",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "offZ"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Scale multiplier.",
              "name": "scale",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "offScale"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Rotation around X axis (degrees).",
              "name": "rot-x",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "offRotX"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Rotation around Y axis (degrees).",
              "name": "rot-y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "offRotY"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Rotation around Z axis (degrees).",
              "name": "rot-z",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "offRotZ"
            }
          ]
        },
        {
          "class_name": "Illushine",
          "description": "Highlights mobs with a wireframe or spectral outline by hostility type.",
          "feature_type": "module",
          "name": "illushine",
          "settings": [
            {
              "children": [],
              "default": "HighlightMode.Wireframe",
              "description": "How mobs are outlined. Wireframe draws a bounding-box outline; Spectral uses the vanilla glow pipeline.",
              "name": "highlight-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "highlightMode"
            },
            {
              "children": [],
              "default": 64,
              "description": "Range to highlight mobs.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": null,
              "description": "Entities to ignore.",
              "name": "ignored-entities",
              "setting_class": "EntityTypeListSetting",
              "type": "entitytypelist",
              "var_name": "ignoredEntities"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Scale of the wireframe outline (Wireframe mode only).",
              "name": "outline-scale",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "outlineScale"
            },
            {
              "children": [],
              "default": "CrosshairMode.Normal",
              "description": "The crosshair style to display while Illushine is active.",
              "name": "crosshair-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "crosshairMode"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 255, 255)",
              "description": "Color of the Normal crosshair lines.",
              "name": "crosshair-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "crosshairColor"
            },
            {
              "children": [],
              "default": 5,
              "description": "Half-length of each crosshair arm in pixels.",
              "name": "crosshair-size",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "crosshairSize"
            },
            {
              "children": [],
              "default": 2,
              "description": "Gap (in pixels) between center and each arm.",
              "name": "crosshair-gap",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "crosshairGap"
            },
            {
              "children": [],
              "default": 1,
              "description": "Thickness of the crosshair lines in pixels.",
              "name": "crosshair-thickness",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "crosshairThickness"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight passive mobs.",
              "name": "highlight-passive",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "highlightPassive"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 100, 255)",
              "description": "Outline color for passive mobs.",
              "name": "passive-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "passiveColor"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Visual scale for passive mobs.",
              "name": "passive-scale",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "passiveScale"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight neutral mobs.",
              "name": "highlight-neutral",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "highlightNeutral"
            },
            {
              "children": [],
              "default": "new Color(255, 200, 0, 255)",
              "description": "Outline color for neutral mobs.",
              "name": "neutral-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "neutralColor"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Visual scale for neutral mobs.",
              "name": "neutral-scale",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "neutralScale"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight hostile mobs.",
              "name": "highlight-hostile",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "highlightHostile"
            },
            {
              "children": [],
              "default": "new Color(255, 50, 50, 255)",
              "description": "Outline color for hostile mobs.",
              "name": "hostile-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "hostileColor"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Visual scale for hostile mobs.",
              "name": "hostile-scale",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "hostileScale"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Visually scales your own player model and camera height.",
              "name": "player-scale",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "playerScale"
            },
            {
              "children": [],
              "default": false,
              "description": "Apply a visual scale to other players.",
              "name": "scale-other-players",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scaleOtherPlayers"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Visual scale applied to other players.",
              "name": "other-player-scale",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "otherPlayerScale"
            }
          ]
        },
        {
          "class_name": "InspectorGadget",
          "description": "Walks a custom path of tiles to scan nearby storage blocks using Baritone.",
          "feature_type": "module",
          "name": "inspector-gadget",
          "settings": [
            {
              "children": [],
              "default": "StorageTarget.Chests_And_Barrels",
              "description": "Which storage blocks to scan and open.",
              "name": "target-storage",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "targetStorage"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Key to add a tile while looking at a block.",
              "name": "add-tile-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "addTileKey"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Key to start the automated pathing sequence.",
              "name": "start-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "startKey"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Key to clear all created tiles.",
              "name": "clear-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "clearKey"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Pauses the pathing so you can chat or move. Press again to resume.",
              "name": "pause-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "pauseKey"
            },
            {
              "children": [],
              "default": 5,
              "description": "Radius to scan for storage blocks around each tile.",
              "name": "tile-scan-range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "tileScanRange"
            },
            {
              "children": [],
              "default": 15,
              "description": "How long to wait between opening and closing containers to prevent anti-cheat kicks.",
              "name": "open-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "openDelay"
            },
            {
              "children": [],
              "default": "CompletionSound.LevelUp",
              "description": "Sound played when all tiles have been scanned.",
              "name": "completion-sound",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "completionSound"
            },
            {
              "children": [],
              "default": "HighlightMode.GLOW",
              "description": "GLOW = layered bloom boxes. SPECTRAL = subtle fill and outline. PULSE = fading in/out bloom.",
              "name": "highlight-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "highlightMode"
            },
            {
              "children": [],
              "default": 4,
              "description": "Bloom layer count.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "Bloom spread.",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 60,
              "description": "Bloom alpha.",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 255,
              "description": "Outline alpha.",
              "name": "spectral-line-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralLineAlpha"
            },
            {
              "children": [],
              "default": 30,
              "description": "Fill alpha.",
              "name": "spectral-fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralFillAlpha"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": "new Color(255, 215, 0, 200)",
              "description": "Color of the storage blocks found during scan.",
              "name": "storage-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "highlightColor"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 100, 200)",
              "description": "Color of the pathing tiles and sequence pillars.",
              "name": "tile-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "pathColor"
            }
          ]
        },
        {
          "class_name": "Inventory101",
          "description": "Manages inventory layouts with shulker boxes.",
          "feature_type": "module",
          "name": "inventory-101",
          "settings": [
            {
              "children": [],
              "default": "Custom name for Preset 1.",
              "description": null,
              "name": "preset-1-name",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "preset1Name"
            },
            {
              "children": [],
              "default": "Custom name for Preset 2.",
              "description": null,
              "name": "preset-2-name",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "preset2Name"
            },
            {
              "children": [],
              "default": "Saved data for inventory preset 1.",
              "description": null,
              "name": "preset-1-data",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "preset1Data"
            },
            {
              "children": [],
              "default": "Saved data for inventory preset 2.",
              "description": null,
              "name": "preset-2-data",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "preset2Data"
            },
            {
              "children": [],
              "default": true,
              "description": "Shows the G (Gear) button in shulker boxes.",
              "name": "regear-show-button",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showRegearButton"
            },
            {
              "children": [],
              "default": 2,
              "description": "Delay in ticks between armor movement actions.",
              "name": "regear-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "regearDelay"
            },
            {
              "children": [],
              "default": true,
              "description": "Shows the R (Replenish) button in shulker boxes.",
              "name": "replenish-show-button",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showReplenishButton"
            },
            {
              "children": [],
              "default": true,
              "description": "Replenish Ender Chests from shulker boxes.",
              "name": "ender-chest",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "replenishEnderChest"
            },
            {
              "children": [],
              "default": "ReplenishMode.Fill",
              "description": "How many Ender Chests to keep in inventory.",
              "name": "ender-chest-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "enderChestMode"
            },
            {
              "children": [],
              "default": 1,
              "description": "Exact number of Ender Chests to maintain.",
              "name": "ender-chest-count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "enderChestCount"
            },
            {
              "children": [],
              "default": true,
              "description": "Replenish Obsidian from shulker boxes.",
              "name": "obsidian",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "replenishObsidian"
            },
            {
              "children": [],
              "default": "ReplenishMode.Fill",
              "description": "How many Obsidian to keep in inventory.",
              "name": "obsidian-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "obsidianMode"
            },
            {
              "children": [],
              "default": 64,
              "description": "Exact number of Obsidian to maintain.",
              "name": "obsidian-count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "obsidianCount"
            },
            {
              "children": [],
              "default": true,
              "description": "Replenish Firework Rockets from shulker boxes.",
              "name": "firework-rocket",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "replenishFireworkRocket"
            },
            {
              "children": [],
              "default": "ReplenishMode.Fill",
              "description": "How many Firework Rockets to keep in inventory.",
              "name": "firework-rocket-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "fireworkRocketMode"
            },
            {
              "children": [],
              "default": 64,
              "description": "Exact number of Firework Rockets to maintain.",
              "name": "firework-rocket-count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "fireworkRocketCount"
            },
            {
              "children": [],
              "default": true,
              "description": "Replenish Enchanted Golden Apples from shulker boxes.",
              "name": "enchanted-golden-apple",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "replenishEnchantedGoldenApple"
            },
            {
              "children": [],
              "default": "ReplenishMode.Single",
              "description": "How many Enchanted Golden Apples to keep in inventory.",
              "name": "enchanted-golden-apple-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "enchantedGoldenAppleMode"
            },
            {
              "children": [],
              "default": 1,
              "description": "Exact number of Enchanted Golden Apples to maintain.",
              "name": "enchanted-golden-apple-count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "enchantedGoldenAppleCount"
            },
            {
              "children": [],
              "default": true,
              "description": "Replenish Totems of Undying from shulker boxes.",
              "name": "totem-of-undying",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "replenishTotem"
            },
            {
              "children": [],
              "default": "ReplenishMode.Single",
              "description": "How many Totems of Undying to keep in inventory.",
              "name": "totem-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "totemMode"
            },
            {
              "children": [],
              "default": 1,
              "description": "Exact number of Totems to maintain.",
              "name": "totem-count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "totemCount"
            },
            {
              "children": [],
              "default": true,
              "description": "Replenish Elytras from shulker boxes (durability-aware swapping).",
              "name": "elytra",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "replenishElytra"
            },
            {
              "children": [],
              "default": "ReplenishMode.Single",
              "description": "How many Elytras to keep in inventory (not counting armor slot).",
              "name": "elytra-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "elytraMode"
            },
            {
              "children": [],
              "default": 1,
              "description": "Exact number of Elytras to maintain (inventory only).",
              "name": "elytra-count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "elytraCount"
            },
            {
              "children": [],
              "default": 15,
              "description": "Durability threshold to consider an elytra as needing replacement.",
              "name": "elytra-threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "elytraThreshold"
            },
            {
              "children": [],
              "default": true,
              "description": "Replenish End Crystals from shulker boxes.",
              "name": "end-crystal",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "replenishEndCrystal"
            },
            {
              "children": [],
              "default": "ReplenishMode.Fill",
              "description": "How many End Crystals to keep in inventory.",
              "name": "end-crystal-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "endCrystalMode"
            },
            {
              "children": [],
              "default": 16,
              "description": "Exact number of End Crystals to maintain.",
              "name": "end-crystal-count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "endCrystalCount"
            },
            {
              "children": [],
              "default": false,
              "description": "Enable replenishing custom items from shulker boxes.",
              "name": "custom-items-enabled",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "replenishCustom"
            },
            {
              "children": [],
              "default": null,
              "description": "Additional items to replenish (priority = list order).",
              "name": "custom-items",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "customReplenishItems"
            },
            {
              "children": [],
              "default": "ReplenishMode.Fill",
              "description": "Replenish mode for all custom items.",
              "name": "custom-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "customMode"
            },
            {
              "children": [],
              "default": 64,
              "description": "Exact number to maintain for each custom item.",
              "name": "custom-count",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "customCount"
            },
            {
              "children": [],
              "default": 2,
              "description": "Delay in ticks between movement actions.",
              "name": "replenish-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "replenishDelay"
            },
            {
              "children": [],
              "default": true,
              "description": "Show a sort button in chests.",
              "name": "show-sort-button",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "showSortButton"
            },
            {
              "children": [],
              "default": 2,
              "description": "Delay in ticks between sort actions.",
              "name": "sort-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "sortDelay"
            },
            {
              "children": [],
              "default": true,
              "description": "When shift-clicking an item, moves all items of the same type from that inventory.",
              "name": "shift-click-all",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "shiftClickAll"
            },
            {
              "children": [],
              "default": false,
              "description": "Automatically discards whitelisted items.",
              "name": "auto-trash",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoTrash"
            },
            {
              "children": [],
              "default": null,
              "description": "Items to automatically discard.",
              "name": "trash-items",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "trashItems"
            },
            {
              "children": [],
              "default": 2,
              "description": "Delay in ticks between discard actions.",
              "name": "trash-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "trashDelay"
            },
            {
              "children": [],
              "default": false,
              "description": "Automatically swaps to the best tool when breaking blocks.",
              "name": "auto-tool",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoTool"
            },
            {
              "children": [],
              "default": true,
              "description": "Swaps to the tool silently.",
              "name": "silent-swap",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "silentAutoTool"
            }
          ]
        },
        {
          "class_name": "LavaMarker",
          "description": "Highlights fully-flowed lava falls in the Nether.",
          "feature_type": "module",
          "name": "lava-marker",
          "settings": [
            {
              "children": [],
              "default": 4,
              "description": "Horizontal scan radius in chunks.",
              "name": "chunk-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "chunkRadius"
            },
            {
              "children": [],
              "default": 64,
              "description": "Vertical scan radius in blocks.",
              "name": "vertical-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "verticalRadius"
            },
            {
              "children": [],
              "default": "new Color(255, 100, 0, 200)",
              "description": "Color for fully-flowed lava falls. (Alpha is used for GLOW and SPECTRAL outlines).",
              "name": "flowing-lava",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "color"
            },
            {
              "children": [],
              "default": 5,
              "description": "Lava falls shorter than this will be ignored.",
              "name": "min-fall-height",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minFallHeight"
            },
            {
              "children": [],
              "default": 5000,
              "description": "Maximum number of blocks to render per frame to prevent crashes.",
              "name": "max-render-blocks",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxRenderBlocks"
            },
            {
              "children": [],
              "default": "RenderMode.GLOW",
              "description": "GLOW = layered bloom boxes. SPECTRAL = subtle fill box. PULSE = fading in/out highlight.",
              "name": "render-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "renderMode"
            },
            {
              "children": [],
              "default": 3,
              "description": "Number of bloom layers rendered around each lava block.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.04,
              "description": "How far each bloom layer expands outward (in blocks).",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 40,
              "description": "Opacity of the outer glow layers in GLOW mode (0-255).",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 40,
              "description": "Opacity of the fill box in SPECTRAL mode (0 = invisible, 80 = subtle).",
              "name": "spectral-fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralFillAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Draw a solid outline around lava blocks in SPECTRAL mode.",
              "name": "spectral-outline",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "spectralOutline"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest opacity reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak opacity reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            }
          ]
        },
        {
          "class_name": "LootLens",
          "description": "Highlights storage containers confirmed to hold shulkers or custom items.",
          "feature_type": "module",
          "name": "loot-lens",
          "settings": [
            {
              "children": [],
              "default": 128,
              "description": "Container detection range in blocks.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": true,
              "description": "Send chat messages and play sound when shulkers are found.",
              "name": "notification",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "notification"
            },
            {
              "children": [],
              "default": "Items.ENCHANTED_GOLDEN_APPLE",
              "description": "Additional items to highlight in containers.",
              "name": "custom-items",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "customItems"
            },
            {
              "children": [],
              "default": true,
              "description": "Show steal and dump buttons on container screens.",
              "name": "steal-dump-buttons",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "stealDumpButtons"
            },
            {
              "children": [],
              "default": "RenderMode.GLOW",
              "description": "GLOW = layered bloom boxes. SPECTRAL = subtle fill. PULSE = fading highlight.",
              "name": "render-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "renderMode"
            },
            {
              "children": [],
              "default": 4,
              "description": "Number of bloom layers rendered around each container.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.04,
              "description": "How far each bloom layer expands outward (in blocks).",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 60,
              "description": "Alpha of the innermost glow layer (0-255).",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 40,
              "description": "Fill alpha for block containers in SPECTRAL mode.",
              "name": "spectral-fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralFillAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Draw a crisp outline around block containers in SPECTRAL mode.",
              "name": "spectral-outline",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "spectralOutline"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Also pulse the beam opacity in sync with the highlights.",
              "name": "pulse-beams",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "pulseBeams"
            },
            {
              "children": [],
              "default": "BeamStyle.GUARDIAN",
              "description": "BOX = simple box beam. GUARDIAN = wider glow beam.",
              "name": "beam-style",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "beamStyle"
            },
            {
              "children": [],
              "default": 15,
              "description": "Box beam width (in hundredths of a block).",
              "name": "beam-width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "beamWidth"
            },
            {
              "children": [],
              "default": true,
              "description": "Merge beams for nearby shulker containers to reduce clutter.",
              "name": "merge-beams",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "mergeBeams"
            },
            {
              "children": [],
              "default": 2.0,
              "description": "Distance within which beams are merged.",
              "name": "merge-distance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "mergeDistance"
            },
            {
              "children": [],
              "default": 0.08,
              "description": "Radius of the guardian beam (blocks).",
              "name": "guardian-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianBeamRadius"
            },
            {
              "children": [],
              "default": 4,
              "description": "Guardian glow layer count.",
              "name": "guardian-strands",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianStrands"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Unused (visual pacing).",
              "name": "guardian-spin-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianSpinSpeed"
            },
            {
              "children": [],
              "default": 90,
              "description": "Alpha of the solid centre core of the guardian beam.",
              "name": "guardian-core-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianCoreAlpha"
            },
            {
              "children": [],
              "default": 160,
              "description": "Alpha of the outer glow layers.",
              "name": "guardian-strand-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianStrandAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Add a soft bloom halo around the guardian beam.",
              "name": "guardian-glow",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "guardianGlow"
            },
            {
              "children": [],
              "default": 0.18,
              "description": "Radius of the bloom halo around the guardian beam.",
              "name": "guardian-glow-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianGlowRadius"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect chests and trapped chests.",
              "name": "chests",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanChests"
            },
            {
              "children": [],
              "default": "new Color(255, 215, 0, 200)",
              "description": "Chest color.",
              "name": "chest-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "chestColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect barrels.",
              "name": "barrels",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanBarrels"
            },
            {
              "children": [],
              "default": "new Color(139, 69, 19, 200)",
              "description": "Barrel color.",
              "name": "barrel-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "barrelColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect shulker boxes placed in the world.",
              "name": "shulker-boxes",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanShulkerBoxes"
            },
            {
              "children": [],
              "default": "new Color(160, 32, 240, 200)",
              "description": "Shulker box color.",
              "name": "shulker-box-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "shulkerBoxColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect ender chests.",
              "name": "ender-chests",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanEnderChests"
            },
            {
              "children": [],
              "default": "new Color(75, 0, 130, 200)",
              "description": "Ender chest color.",
              "name": "ender-chest-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "enderChestColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect chest minecarts.",
              "name": "chest-minecarts",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanChestMinecarts"
            },
            {
              "children": [],
              "default": "new Color(255, 180, 0, 200)",
              "description": "Chest minecart color.",
              "name": "chest-minecart-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "chestMinecartColor"
            },
            {
              "children": [],
              "default": 2,
              "description": "Minecarts at one block position that count as 'stacked'.",
              "name": "stacked-threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "stackedMinecartThreshold"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 255, 255)",
              "description": "Highlight/beam color for stacked chest minecarts.",
              "name": "stacked-minecart-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "stackedMinecartColor"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 80, 255)",
              "description": "Bright color for containers confirmed to hold shulkers/custom items.",
              "name": "shulker-found-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "shulkerFoundColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect furnaces, hoppers, dispensers, droppers.",
              "name": "utility-blocks",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanUtility"
            },
            {
              "children": [],
              "default": "new Color(150, 150, 150, 200)",
              "description": "Utility container color.",
              "name": "utility-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "utilityColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect brewing stands, crafters, chiseled bookshelves, decorated pots.",
              "name": "decorative-blocks",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanDecorative"
            },
            {
              "children": [],
              "default": "new Color(180, 100, 220, 200)",
              "description": "Decorative container color.",
              "name": "decorative-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "decorativeColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect item frames holding shulker boxes or custom items.",
              "name": "item-frames",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanItemFramesSetting"
            },
            {
              "children": [],
              "default": "new Color(255, 100, 255, 200)",
              "description": "Item frame highlight color.",
              "name": "item-frame-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "itemFrameColor"
            },
            {
              "children": [],
              "default": false,
              "description": "Highlight all coloured beds using their matching dye colour.",
              "name": "beds",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanBeds"
            },
            {
              "children": [],
              "default": 50,
              "description": "Fill transparency for bed highlights.",
              "name": "bed-fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "bedFillAlpha"
            }
          ]
        },
        {
          "class_name": "ManorAssistant",
          "description": "Highlights Woodland Manor elements: secret chests, evokers, vindicators, and dropped totems.",
          "feature_type": "module",
          "name": "manor-assistant",
          "settings": [
            {
              "children": [],
              "default": 16,
              "description": "Detection range in chunks.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": 60,
              "description": "Minimum Y level to scan. Mansions generate above Y = 60.",
              "name": "manor-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "manorYLevel"
            },
            {
              "children": [],
              "default": "RenderMode.GLOW",
              "description": "GLOW = layered bloom boxes. SPECTRAL = outline shader. PULSE = fading highlight.",
              "name": "render-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "renderMode"
            },
            {
              "children": [],
              "default": 15,
              "description": "Width of the beams for dropped Totems.",
              "name": "beam-width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "beamWidth"
            },
            {
              "children": [],
              "default": 4,
              "description": "Number of bloom layers rendered around each target.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.04,
              "description": "How far each bloom layer expands outward (in blocks).",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 60,
              "description": "Alpha of the innermost glow layer (0-255).",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 30,
              "description": "Fill alpha for block targets in SPECTRAL mode.",
              "name": "spectral-block-fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralBlockFillAlpha"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight standard chests.",
              "name": "track-chests",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackContainers"
            },
            {
              "children": [],
              "default": "new Color(0, 0, 255, 255)",
              "description": "Color for standard chests.",
              "name": "chest-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "containerColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight chests hidden inside walls (secret rooms).",
              "name": "track-secret-chests",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackSecretContainers"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 255, 255)",
              "description": "Color for hidden chests.",
              "name": "secret-chest-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "secretContainerColor"
            },
            {
              "children": [],
              "default": "Items.NETHERITE_BLOCK",
              "description": "Items to alert you about when opening Chests.",
              "name": "chest-whitelist",
              "setting_class": "ItemListSetting",
              "type": "itemlist",
              "var_name": "containerWhitelist"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights Evokers (Totem droppers).",
              "name": "track-evokers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackEvokers"
            },
            {
              "children": [],
              "default": "new Color(150, 0, 255, 255)",
              "description": "Color for Evokers.",
              "name": "evoker-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "evokerColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights Vindicators (Axe mob).",
              "name": "track-vindicators",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackVindicators"
            },
            {
              "children": [],
              "default": "new Color(255, 100, 0, 255)",
              "description": "Color for Vindicators.",
              "name": "vindicator-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "vindicatorColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlights dropped Totems of Undying with a massive beam.",
              "name": "track-dropped-totems",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackDroppedTotems"
            },
            {
              "children": [],
              "default": "new Color(255, 215, 0, 255)",
              "description": "Color for dropped Totems.",
              "name": "totem-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "totemColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Master toggle for audio cues and loot announcements.",
              "name": "enable-alerts",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "enableAlerts"
            },
            {
              "children": [],
              "default": "AlertSound.EVOKER_CAST",
              "description": "Which sound to play for module alerts.",
              "name": "alert-sound",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "alertSound"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Volume of the alert sound.",
              "name": "alert-volume",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "alertVolume"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically opens nearby chests.",
              "name": "auto-open-chests",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoOpenChests"
            },
            {
              "children": [],
              "default": false,
              "description": "Instantly disconnects from the server if another player enters render distance.",
              "name": "disconnect-on-player",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectOnPlayer"
            },
            {
              "children": [],
              "default": true,
              "description": "Disables the module if health is critical.",
              "name": "auto-disable-on-low-health",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDisableOnLowHealth"
            }
          ]
        },
        {
          "class_name": "Mendbot",
          "description": "Automatically mends items using XP bottles or Mining.",
          "feature_type": "module",
          "name": "mendbot",
          "settings": [
            {
              "children": [],
              "default": "MendSource.Bottles",
              "description": "How to get XP (Bottles, Mining, or Leveling).",
              "name": "mend-source",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "mendSource"
            },
            {
              "children": [],
              "default": "MendTarget.Elytra",
              "description": "What to repair.",
              "name": "mend-target",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "mendTarget"
            },
            {
              "children": [],
              "default": 30,
              "description": "The XP level to reach.",
              "name": "target-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "targetLevel"
            },
            {
              "children": [],
              "default": 0,
              "description": "Minimum hotbar slots with XP bottles before resuming. 0 = only pause when completely out.",
              "name": "min-bottle-slots",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minBottleSlots"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically selects ores based on dimension (Nether/Overworld).",
              "name": "use-smart-mining",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "useSmartMining"
            },
            {
              "children": [],
              "default": "MiningPreset.All_Materials",
              "description": "Select the mining target.",
              "name": "mining-preset",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "miningPreset"
            },
            {
              "children": [],
              "default": "Manual command to run (Only used if Smart Mining is off).",
              "description": null,
              "name": "baritone-start",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "baritoneStartCommand"
            },
            {
              "children": [],
              "default": "Command to pause Baritone before swapping items.",
              "description": null,
              "name": "baritone-pause",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "baritonePauseCommand"
            },
            {
              "children": [],
              "default": "Command to resume Baritone after swapping items.",
              "description": null,
              "name": "baritone-resume",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "baritoneResumeCommand"
            },
            {
              "children": [],
              "default": "Command to run when stopping Mining Mode.",
              "description": null,
              "name": "baritone-stop",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "baritoneStopCommand"
            },
            {
              "children": [],
              "default": 10,
              "description": "Ticks to wait after pausing before swapping items.",
              "name": "swap-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "swapDelay"
            },
            {
              "children": [],
              "default": 5,
              "description": "Ticks to wait after resuming and swapping (Fixes kicking).",
              "name": "action-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "actionDelay"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically disable the module if your health drops.",
              "name": "low-health-disable",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "lowHealthDisable"
            },
            {
              "children": [],
              "default": 6,
              "description": "The health value to disable at.",
              "name": "health-threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "healthThreshold"
            },
            {
              "children": [],
              "default": false,
              "description": "Equips a golden helmet for safety (e.g. piglin bartering).",
              "name": "golden-helmet",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "goldenHelmet"
            },
            {
              "children": [],
              "default": 3,
              "description": "How many XP bottles to throw per burst.",
              "name": "packets-per-burst",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "packetsPerBurst"
            },
            {
              "children": [],
              "default": 4,
              "description": "Ticks to wait between bursts.",
              "name": "burst-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "burstDelay"
            },
            {
              "children": [],
              "default": true,
              "description": "Disable module when finished or out of XP.",
              "name": "auto-disable",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDisable"
            }
          ]
        },
        {
          "class_name": "Mobanom",
          "description": "Detects and highlights mobs in the wrong dimension or with unnatural items.",
          "feature_type": "module",
          "name": "mobanom",
          "settings": [
            {
              "children": [],
              "default": "HighlightMode.Wireframe",
              "description": "How anomalous mobs are outlined. Wireframe draws a box outline; Spectral uses the vanilla glow pipeline; Pulse uses a fading bloom effect.",
              "name": "highlight-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "highlightMode"
            },
            {
              "children": [],
              "default": true,
              "description": "Notify in chat when an anomaly is detected.",
              "name": "chat-notification",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "chatNotification"
            },
            {
              "children": [],
              "default": null,
              "description": "Entities to ignore.",
              "name": "ignored-entities",
              "setting_class": "EntityTypeListSetting",
              "type": "entitytypelist",
              "var_name": "ignoredEntities"
            },
            {
              "children": [],
              "default": 128,
              "description": "The range to detect anomalies.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": 4,
              "description": "Number of bloom layers rendered around each mob.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "How far each bloom layer expands outward (in blocks).",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 60,
              "description": "Alpha of the innermost glow layer (0-255).",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 0, 255)",
              "description": "Glow color for Overworld mobs found in other dimensions.",
              "name": "overworld-line-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "overworldLineColor"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 0, 255)",
              "description": "Glow color for Nether mobs found in other dimensions.",
              "name": "nether-line-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "netherLineColor"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 255, 255)",
              "description": "Glow color for End mobs found in other dimensions.",
              "name": "end-line-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "endLineColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Detects mobs holding or wearing player-like items.",
              "name": "detect-unnatural-items",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "detectUnnaturalItems"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 255, 255)",
              "description": "The glow color for mobs with unnatural items.",
              "name": "item-anomaly-line-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "itemAnomalyLineColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Detects mobs wearing carved pumpkins or jack-o'-lanterns.",
              "name": "detect-pumpkins",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "detectPumpkins"
            },
            {
              "children": [],
              "default": true,
              "description": "Detects animals (donkeys, llamas, etc.) carrying a chest.",
              "name": "detect-chested-animals",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "detectChestedAnimals"
            }
          ]
        },
        {
          "class_name": "NeighbourhoodWatch",
          "description": "Manages player tracking, safety, server monitoring, and keyword alerts.",
          "feature_type": "module",
          "name": "neighbourhood-watch",
          "settings": [
            {
              "children": [],
              "default": false,
              "description": "Disconnects when another player is detected nearby.",
              "name": "disconnect-on-player",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectOnPlayer"
            },
            {
              "children": [],
              "default": 32,
              "description": "Distance within which a player triggers a disconnect.",
              "name": "player-detection-range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "playerDetectionRange"
            },
            {
              "children": [],
              "default": true,
              "description": "Does not disconnect if the nearby player is a friend.",
              "name": "ignore-friends-on-disconnect",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "ignoreFriendsOnDisconnect"
            },
            {
              "children": [],
              "default": true,
              "description": "Does not disconnect if the nearby player is a proxy.",
              "name": "ignore-proxies-on-disconnect",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "ignoreProxiesOnDisconnect"
            },
            {
              "children": [],
              "default": "FilterMode.Censor",
              "description": "Censor: replaces matched keywords with XXXX. AutoIgnore: runs /ignorehard on the sender.",
              "name": "mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "filterMode"
            },
            {
              "children": [],
              "default": "Comma-separated words to act on. Censor mode redacts them; AutoIgnore mode silences the sender. Case-insensitive.",
              "description": null,
              "name": "keywords",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "ignoreKeywords"
            },
            {
              "children": [],
              "default": false,
              "description": "Highlights and notifies when players enter visual range.",
              "name": "track-players",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "trackPlayers"
            },
            {
              "children": [],
              "default": 128,
              "description": "Distance within which players are tracked.",
              "name": "track-range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "trackRange"
            },
            {
              "children": [],
              "default": "TabFilter.Enemies",
              "description": "Which player category to highlight and notify for.",
              "name": "track-filter",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "trackFilter"
            },
            {
              "children": [],
              "default": true,
              "description": "Send a chat message when a player enters range.",
              "name": "notify-chat",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "notifyChat"
            },
            {
              "children": [],
              "default": "Notification message. Use {player} for name and {status} for relation.",
              "description": null,
              "name": "custom-message",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "customMessage"
            },
            {
              "children": [],
              "default": "DangerSound.Off",
              "description": "Sound played when a matching player enters visual range. Off = silent.",
              "name": "danger-sound",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "dangerSound"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Volume of the danger sound.",
              "name": "sound-volume",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "soundVolume"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pitch of the danger sound. 1.0 = normal.",
              "name": "sound-pitch",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "soundPitch"
            },
            {
              "children": [],
              "default": "HighlightMode.Wireframe",
              "description": "Wireframe draws a bounding box outline. Spectral uses the vanilla glow pipeline.",
              "name": "highlight-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "highlightMode"
            },
            {
              "children": [],
              "default": 1.02,
              "description": "Scale of the wireframe outline (Wireframe mode only). 1.0 = exact model size.",
              "name": "outline-scale",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "outlineScale"
            },
            {
              "children": [],
              "default": "Comma-separated players treated as friends. Case-insensitive.",
              "description": null,
              "name": "friends",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "friends"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 0, 255)",
              "description": "Highlight color for friends.",
              "name": "friend-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "friendColor"
            },
            {
              "children": [],
              "default": "Comma-separated players treated as enemies. Case-insensitive.",
              "description": null,
              "name": "enemies",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "enemies"
            },
            {
              "children": [],
              "default": "new Color(255, 0, 0, 255)",
              "description": "Highlight color for enemies.",
              "name": "enemy-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "enemyColor"
            },
            {
              "children": [],
              "default": "Comma-separated players treated as proxies. Case-insensitive.",
              "description": null,
              "name": "proxies",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "proxies"
            },
            {
              "children": [],
              "default": "new Color(255, 140, 0, 255)",
              "description": "Highlight color for proxies.",
              "name": "proxy-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "proxyColor"
            },
            {
              "children": [],
              "default": "new Color(139, 0, 0, 255)",
              "description": "Highlight color for unknown players.",
              "name": "other-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "otherColor"
            },
            {
              "children": [],
              "default": "TabEvent.Both",
              "description": "Which tab-list event to notify on.",
              "name": "event",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "tabEvent"
            },
            {
              "children": [],
              "default": "TabFilter.All",
              "description": "Which player category triggers a notification.",
              "name": "notify-for",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "tabFilter"
            }
          ]
        },
        {
          "class_name": "Penpal",
          "description": "Quickly message custom users or bots via /msg using custom modifier keys and binds.",
          "feature_type": "module",
          "name": "penpal",
          "settings": [
            {
              "children": [],
              "default": "Comma-separated list of commands to randomly pick from for RANDOM.",
              "description": null,
              "name": "random-pool",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "randomPool"
            },
            {
              "children": [],
              "default": true,
              "description": "Adds a randomized 50-150ms delay before sending to bypass anti-spam packet timing.",
              "name": "human-like-delay",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "humanDelay"
            },
            {
              "children": [],
              "default": 500,
              "description": "Prevents triggering any slot again for this many milliseconds after a message is sent.",
              "name": "global-cooldown-ms",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "globalCooldown"
            },
            {
              "children": [],
              "default": true,
              "description": "Shows a message when a message is sent.",
              "name": "chat-feedback",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "chatFeedback"
            },
            {
              "children": [],
              "default": "The username to send the message to.",
              "description": null,
              "name": "target-user-1",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "target1"
            },
            {
              "children": [],
              "default": "MessageType.RANDOM",
              "description": "RANDOM randomly picks from the pool. CUSTOM uses your specific text.",
              "name": "message-type-1",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "type1"
            },
            {
              "children": [],
              "default": "The message to send. Only used if Message Type is set to CUSTOM.",
              "description": null,
              "name": "custom-message-1",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "message1"
            },
            {
              "children": [],
              "default": "Modifier.NONE",
              "description": "The modifier key to hold.",
              "name": "modifier-1",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "modifier1"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "The key to press to send the message.",
              "name": "trigger-key-1",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "key1"
            },
            {
              "children": [],
              "default": "The username to send the message to.",
              "description": null,
              "name": "target-user-2",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "target2"
            },
            {
              "children": [],
              "default": "MessageType.RANDOM",
              "description": "RANDOM randomly picks from the pool. CUSTOM uses your specific text.",
              "name": "message-type-2",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "type2"
            },
            {
              "children": [],
              "default": "The message to send. Only used if Message Type is set to CUSTOM.",
              "description": null,
              "name": "custom-message-2",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "message2"
            },
            {
              "children": [],
              "default": "Modifier.NONE",
              "description": "The modifier key to hold.",
              "name": "modifier-2",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "modifier2"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "The key to press to send the message.",
              "name": "trigger-key-2",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "key2"
            },
            {
              "children": [],
              "default": "The username to send the message to.",
              "description": null,
              "name": "target-user-3",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "target3"
            },
            {
              "children": [],
              "default": "MessageType.RANDOM",
              "description": "RANDOM randomly picks from the pool. CUSTOM uses your specific text.",
              "name": "message-type-3",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "type3"
            },
            {
              "children": [],
              "default": "The message to send. Only used if Message Type is set to CUSTOM.",
              "description": null,
              "name": "custom-message-3",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "message3"
            },
            {
              "children": [],
              "default": "Modifier.NONE",
              "description": "The modifier key to hold.",
              "name": "modifier-3",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "modifier3"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "The key to press to send the message.",
              "name": "trigger-key-3",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "key3"
            },
            {
              "children": [],
              "default": "The username to send the message to.",
              "description": null,
              "name": "target-user-4",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "target4"
            },
            {
              "children": [],
              "default": "MessageType.RANDOM",
              "description": "RANDOM randomly picks from the pool. CUSTOM uses your specific text.",
              "name": "message-type-4",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "type4"
            },
            {
              "children": [],
              "default": "The message to send. Only used if Message Type is set to CUSTOM.",
              "description": null,
              "name": "custom-message-4",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "message4"
            },
            {
              "children": [],
              "default": "Modifier.NONE",
              "description": "The modifier key to hold.",
              "name": "modifier-4",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "modifier4"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "The key to press to send the message.",
              "name": "trigger-key-4",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "key4"
            }
          ]
        },
        {
          "class_name": "PortalMaker",
          "description": "Builds and lights a minimal Nether portal (10 obsidian).",
          "feature_type": "module",
          "name": "portal-maker",
          "settings": [
            {
              "children": [],
              "default": 2,
              "description": "Ticks to wait between placement actions.",
              "name": "place-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "placeDelay"
            },
            {
              "children": [],
              "default": 20,
              "description": "Ticks to wait after lighting the portal before turning off.",
              "name": "finish-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "finishDelay"
            },
            {
              "children": [],
              "default": true,
              "description": "Lets you place obsidian in mid-air without needing a solid block to click against.",
              "name": "air-place",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "airPlace"
            },
            {
              "children": [],
              "default": true,
              "description": "Uses Baritone to automatically path into the portal.",
              "name": "use-baritone",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "useBaritone"
            },
            {
              "children": [],
              "default": "EntryMode.Walk",
              "description": "How to enter the portal after it is created.",
              "name": "entry-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "entryMode"
            },
            {
              "children": [],
              "default": false,
              "description": "After changing dimension, automatically step out, wait, and go back in.",
              "name": "auto-recycle",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoRecycle"
            },
            {
              "children": [],
              "default": true,
              "description": "Cancels the recycle process if you manually press a movement key.",
              "name": "cancel-on-movement",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "cancelOnMovement"
            },
            {
              "children": [],
              "default": 5,
              "description": "How many seconds to wait before going back into the portal.",
              "name": "recycle-wait-time",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "recycleDelaySeconds"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Manual keybind to trigger the recycle cycle (step out -> wait -> in).",
              "name": "recycle-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "recycleKey"
            },
            {
              "children": [],
              "default": 40,
              "description": "Ticks to wait after a dimension change before resuming operations (e.g., recycling).",
              "name": "dimension-switch-cooldown",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "dimensionSwitchCooldownTicks"
            },
            {
              "children": [],
              "default": true,
              "description": "Show remaining portal frame positions.",
              "name": "render",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "render"
            },
            {
              "children": [],
              "default": "FrameShape.Both",
              "description": "How the preview boxes are rendered.",
              "name": "shape-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "shapeMode"
            },
            {
              "children": [],
              "default": "new Color(80, 160, 255, 35)",
              "description": "Fill color for preview blocks.",
              "name": "side-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "sideColor"
            },
            {
              "children": [],
              "default": "new Color(100, 180, 255, 255)",
              "description": "Outline color for preview blocks.",
              "name": "line-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "lineColor"
            },
            {
              "children": [],
              "default": "RenderMode.GLOW",
              "description": "GLOW = layered bloom boxes. SPECTRAL = subtle fill. PULSE = fading in/out highlight.",
              "name": "render-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "renderMode"
            },
            {
              "children": [],
              "default": 4,
              "description": "Number of bloom layers rendered around each preview block.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "How far each bloom layer expands outward (in blocks).",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 60,
              "description": "Alpha of the innermost glow layer (0-255).",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 40,
              "description": "Fill alpha for preview blocks in SPECTRAL mode.",
              "name": "spectral-fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralFillAlpha"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            }
          ]
        },
        {
          "class_name": "Raidar",
          "description": "Finds and highlights stashes with advanced scanning, custom Y limits, and beam thresholds.",
          "feature_type": "module",
          "name": "raidar",
          "settings": [
            {
              "children": [],
              "default": 128,
              "description": "Scan range in blocks.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": "YFilterMode.NONE",
              "description": "Filter which Y levels are scanned.",
              "name": "y-filter-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "yFilterMode"
            },
            {
              "children": [],
              "default": -64,
              "description": "Minimum Y level to scan.",
              "name": "min-y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minY"
            },
            {
              "children": [],
              "default": 320,
              "description": "Maximum Y level to scan.",
              "name": "max-y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxY"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Toggles rendering of beams on and off.",
              "name": "clear-beams",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "clearBeamsKey"
            },
            {
              "children": [],
              "default": true,
              "description": "Scan for standard and trapped chests.",
              "name": "chests",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanChests"
            },
            {
              "children": [],
              "default": "new Color(255, 215, 0, 255)",
              "description": "Chest color.",
              "name": "chest-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "chestColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Scan for barrels.",
              "name": "barrels",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanBarrels"
            },
            {
              "children": [],
              "default": "new Color(139, 69, 19, 255)",
              "description": "Barrel color.",
              "name": "barrel-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "barrelColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Scan for shulker boxes.",
              "name": "shulkers",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanShulkers"
            },
            {
              "children": [],
              "default": "new Color(160, 32, 240, 255)",
              "description": "Shulker color.",
              "name": "shulker-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "shulkerColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Scan for ender chests.",
              "name": "ender-chests",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanEnderChests"
            },
            {
              "children": [],
              "default": "new Color(75, 0, 130, 255)",
              "description": "Ender chest color.",
              "name": "ender-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "enderColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Detects unnatural obsidian clusters in the Nether only.",
              "name": "nether-obsidian",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanObsidian"
            },
            {
              "children": [],
              "default": "new Color(30, 30, 30, 255)",
              "description": "Obsidian color.",
              "name": "obsidian-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "obsidianColor"
            },
            {
              "children": [],
              "default": 15,
              "description": "Max obsidian in a cluster before ignoring it. 0 to disable.",
              "name": "max-cluster-size",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxObsidianCluster"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect furnaces, hoppers, dispensers, etc.",
              "name": "utility-blocks",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanUtility"
            },
            {
              "children": [],
              "default": "new Color(150, 150, 150, 255)",
              "description": "Utility color.",
              "name": "utility-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "utilityColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect brewing stands, crafters, pots, etc.",
              "name": "decorative-blocks",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scanDecorative"
            },
            {
              "children": [],
              "default": "new Color(180, 100, 220, 255)",
              "description": "Decorative color.",
              "name": "decorative-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "decorativeColor"
            },
            {
              "children": [],
              "default": "BoxMode.Both",
              "description": "Box render mode.",
              "name": "shape-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "shapeMode"
            },
            {
              "children": [],
              "default": "HighlightStyle.GLOW",
              "description": "Highlight style.",
              "name": "highlight-style",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "highlightStyle"
            },
            {
              "children": [],
              "default": 4,
              "description": "Bloom layer count.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "Bloom spread.",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 50,
              "description": "Bloom alpha.",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 255,
              "description": "Outline alpha.",
              "name": "line-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralLineAlpha"
            },
            {
              "children": [],
              "default": 15,
              "description": "Fill alpha.",
              "name": "fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralFillAlpha"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "Box expansion.",
              "name": "expand",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralExpand"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse.",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": 4,
              "description": "Minimum chests in a cluster to trigger a beam.",
              "name": "min-chests-for-beam",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minChestsForBeam"
            },
            {
              "children": [],
              "default": 4,
              "description": "Minimum barrels in a cluster to trigger a beam.",
              "name": "min-barrels-for-beam",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minBarrelsForBeam"
            },
            {
              "children": [],
              "default": 1,
              "description": "Minimum shulkers in a cluster to trigger a beam.",
              "name": "min-shulkers-for-beam",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minShulkersForBeam"
            },
            {
              "children": [],
              "default": 2,
              "description": "Minimum ender chests in a cluster to trigger a beam.",
              "name": "min-ender-chests-for-beam",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minEnderChestsForBeam"
            },
            {
              "children": [],
              "default": 1,
              "description": "Minimum obsidian blocks in a cluster to trigger a beam.",
              "name": "min-obsidian-for-beam",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minObsidianForBeam"
            },
            {
              "children": [],
              "default": true,
              "description": "Merge beams for nearby clusters.",
              "name": "merge-beams",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "mergeBeams"
            },
            {
              "children": [],
              "default": 3.0,
              "description": "Distance within which beams are merged.",
              "name": "merge-distance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "mergeDistance"
            },
            {
              "children": [],
              "default": "BeamStyle.GUARDIAN",
              "description": "Beam style.",
              "name": "beam-style",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "beamStyle"
            },
            {
              "children": [],
              "default": 15,
              "description": "Box beam width.",
              "name": "beam-width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "beamWidth"
            },
            {
              "children": [],
              "default": 0.08,
              "description": "Guardian beam radius.",
              "name": "guardian-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianRadius"
            },
            {
              "children": [],
              "default": 4,
              "description": "Guardian glow layer count.",
              "name": "guardian-strands",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianStrands"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Unused (visual pacing).",
              "name": "guardian-spin-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "guardianSpinSpeed"
            }
          ]
        },
        {
          "class_name": "RocketPilot",
          "description": "Automatic elytra + rocket flight with height maintenance, auto-takeoff, and pattern flight.",
          "feature_type": "module",
          "name": "rocket-pilot",
          "settings": [
            {
              "children": [],
              "default": true,
              "description": "Whether to maintain a specific Y level.",
              "name": "use-target-y",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "useTargetY"
            },
            {
              "children": [],
              "default": 120.0,
              "description": "The Y level to maintain.",
              "name": "target-y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "targetY"
            },
            {
              "children": [],
              "default": 2.0,
              "description": "Allowable drop below target Y before climbing.",
              "name": "flight-tolerance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "flightTolerance"
            },
            {
              "children": [],
              "default": false,
              "description": "Render the camera at a specific Y level while flying.",
              "name": "use-freelook-y",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "useFreeLookY"
            },
            {
              "children": [],
              "default": 120.0,
              "description": "The Y level to render the camera at.",
              "name": "freelook-y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "freeLookY"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Key to toggle the freelook Y feature.",
              "name": "toggle-freelook-y",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "toggleFreeLookY"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically jump and fire a rocket to start elytra flight.",
              "name": "auto-takeoff",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoTakeoff"
            },
            {
              "children": [],
              "default": false,
              "description": "Automatically disable the module when you land.",
              "name": "disable-on-land",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disableOnLand"
            },
            {
              "children": [],
              "default": 2000,
              "description": "Delay in milliseconds between rockets.",
              "name": "rocket-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "rocketDelay"
            },
            {
              "children": [],
              "default": true,
              "description": "Suppresses the hand swing animation when firing rockets.",
              "name": "silent-rockets",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "silentRockets"
            },
            {
              "children": [],
              "default": "FlightMode.Normal",
              "description": "The primary flight mode for pitch control.",
              "name": "flight-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "flightMode"
            },
            {
              "children": [],
              "default": 0.15,
              "description": "How smoothly pitch changes in Normal and Pattern modes (lower = smoother).",
              "name": "pitch-smoothing",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pitchSmoothing"
            },
            {
              "children": [],
              "default": 120.0,
              "description": "Upper Y-level ceiling; stop climbing above this.",
              "name": "upper-y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pitch40UpperY"
            },
            {
              "children": [],
              "default": 110.0,
              "description": "Lower Y-level floor; start climbing below this.",
              "name": "lower-y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pitch40LowerY"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "How smoothly to adjust pitch in Pitch40 mode.",
              "name": "smoothing",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pitch40Smoothing"
            },
            {
              "children": [],
              "default": 8000,
              "description": "Time in ms to remain below lower-y before firing rockets.",
              "name": "below-min-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pitch40BelowMinDelay"
            },
            {
              "children": [],
              "default": "FlightPattern.Manual",
              "description": "The flight pattern to follow. Manual allows free mouse look.",
              "name": "flight-pattern",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "flightPattern"
            },
            {
              "children": [],
              "default": 10,
              "description": "Total side-to-side distance in chunks.",
              "name": "sweep-width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "sweepWidth"
            },
            {
              "children": [],
              "default": 2,
              "description": "Forward distance moved per sweep in chunks.",
              "name": "sweep-advance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "sweepAdvance"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Percentage increase in sweep width/advance per full cycle (e.g., 0.1 for 10% increase).",
              "name": "sweep-expansion-rate",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "sweepExpansionRate"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Maximum multiplier for sweep width/advance (e.g., 2.0 for double the initial size).",
              "name": "sweep-max-factor",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "sweepMaxFactor"
            },
            {
              "children": [],
              "default": true,
              "description": "Relocates the sweep pattern origin to your position if you manually fly too far from the current target.",
              "name": "auto-update-origin",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "sweepAutoUpdate"
            },
            {
              "children": [],
              "default": -35.0,
              "description": "Pitch angle while climbing aggressively (negative = nose up).",
              "name": "climb-pitch",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "bounceClimbPitch"
            },
            {
              "children": [],
              "default": 20.0,
              "description": "Pitch angle during the glide descent phase (positive = nose down).",
              "name": "glide-pitch",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "bounceGlidePitch"
            },
            {
              "children": [],
              "default": 130.0,
              "description": "Y level to reach before cutting rockets and beginning the glide.",
              "name": "peak-y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "bouncePeakY"
            },
            {
              "children": [],
              "default": 100.0,
              "description": "Y level at which the glide ends and the climb begins again.",
              "name": "floor-y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "bounceFloorY"
            },
            {
              "children": [],
              "default": 0.08,
              "description": "How smoothly to transition between climb and glide pitches.",
              "name": "bounce-pitch-smoothing",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "bouncePitchSmoothing"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Pauses/resumes the current flight pattern or drunk spiral.",
              "name": "pause-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "pauseKey"
            },
            {
              "children": [],
              "default": 0.1,
              "description": "How quickly to yaw toward pattern waypoints.",
              "name": "turn-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "patternTurnSpeed"
            },
            {
              "children": [],
              "default": 30,
              "description": "Horizontal distance (blocks) to a waypoint before advancing.",
              "name": "waypoint-reach-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "waypointReachRadius"
            },
            {
              "children": [],
              "default": 8,
              "description": "Distance between grid lines in chunks.",
              "name": "grid-spacing",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "gridSpacing"
            },
            {
              "children": [],
              "default": 32,
              "description": "Number of waypoints per full spiral rotation.",
              "name": "circle-segments",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "circleSegments"
            },
            {
              "children": [],
              "default": 4,
              "description": "How many chunks the radius increases per rotation.",
              "name": "circle-expansion",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "circleExpansion"
            },
            {
              "children": [],
              "default": 4,
              "description": "Side length of the hexagon in chunks.",
              "name": "hexagon-side-length",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "hexagonSideLength"
            },
            {
              "children": [],
              "default": 2,
              "description": "Chunks the hexagon side length grows per full rotation.",
              "name": "hexagon-expansion",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "hexagonExpansion"
            },
            {
              "children": [],
              "default": 6,
              "description": "Side length of the triangle in chunks.",
              "name": "triangle-side-length",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "triangleSideLength"
            },
            {
              "children": [],
              "default": 3,
              "description": "Chunks the triangle side length grows per full rotation.",
              "name": "triangle-expansion",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "triangleExpansion"
            },
            {
              "children": [],
              "default": 5,
              "description": "Length of each zigzag leg in chunks.",
              "name": "zigzag-leg-length",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "zigzagLegLength"
            },
            {
              "children": [],
              "default": 45.0,
              "description": "Turn angle at each ZigZag corner (degrees from forward).",
              "name": "zigzag-angle",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "zigzagAngle"
            },
            {
              "children": [],
              "default": 5,
              "description": "Radius of the loops in chunks.",
              "name": "figure-eight-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "figureEightRadius"
            },
            {
              "children": [],
              "default": "DrunkSpiralMode.None",
              "description": "Constrains drunk wandering to follow an expanding grid or circular spiral outward.",
              "name": "spiral-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "drunkSpiralMode"
            },
            {
              "children": [],
              "default": 5,
              "description": "Ticks between direction changes.",
              "name": "change-interval",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkInterval"
            },
            {
              "children": [],
              "default": 120.0,
              "description": "Maximum yaw change per update (degrees). Applied when coordinate-bias is None.",
              "name": "intensity",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkIntensity"
            },
            {
              "children": [],
              "default": "DrunkBias.None",
              "description": "Constrains drunk-pilot heading. None = fully random.",
              "name": "coordinate-bias",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "drunkBias"
            },
            {
              "children": [],
              "default": true,
              "description": "Attempts to steer the Drunk Pilot away from chunks it has already flown over.",
              "name": "avoid-visited",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "drunkAvoidVisited"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "How smoothly to rotate to the new heading (lower = smoother).",
              "name": "drunk-smoothing",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkSmoothing"
            },
            {
              "children": [],
              "default": 4,
              "description": "Distance (chunks) between grid legs when spiral-mode is Grid.",
              "name": "drunk-grid-spacing",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkGridSpacing"
            },
            {
              "children": [],
              "default": 24,
              "description": "Waypoints per full rotation when spiral-mode is Circle.",
              "name": "drunk-circle-segments",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkCircleSegments"
            },
            {
              "children": [],
              "default": 2,
              "description": "Chunks the circle radius grows per full rotation.",
              "name": "drunk-circle-expansion",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkCircleExpansion"
            },
            {
              "children": [],
              "default": 4,
              "description": "Side length (chunks) of each hexagon edge when spiral-mode is Hexagon.",
              "name": "drunk-hexagon-side-length",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkHexagonSideLength"
            },
            {
              "children": [],
              "default": 2,
              "description": "Chunks the hexagon side length grows per full rotation.",
              "name": "drunk-hexagon-expansion",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkHexagonExpansion"
            },
            {
              "children": [],
              "default": 6,
              "description": "Side length (chunks) of each triangle edge when spiral-mode is Triangle.",
              "name": "drunk-triangle-side-length",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkTriangleSideLength"
            },
            {
              "children": [],
              "default": 3,
              "description": "Chunks the triangle side length grows per full rotation.",
              "name": "drunk-triangle-expansion",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkTriangleExpansion"
            },
            {
              "children": [],
              "default": 30.0,
              "description": "Random yaw offset (degrees) added to the spiral heading for the drunk feel.",
              "name": "spiral-noise",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkSpiralNoise"
            },
            {
              "children": [],
              "default": 20,
              "description": "Horizontal distance (blocks) to a spiral waypoint before advancing.",
              "name": "spiral-waypoint-reach",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "drunkSpiralReach"
            },
            {
              "children": [],
              "default": true,
              "description": "Attempts to avoid flying straight into walls.",
              "name": "collision-avoidance",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "collisionAvoidance"
            },
            {
              "children": [],
              "default": 10,
              "description": "How far ahead to look for obstacles (blocks).",
              "name": "avoidance-distance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "avoidanceDistance"
            },
            {
              "children": [],
              "default": true,
              "description": "Caps rotation speed per tick to reduce anti-cheat flags.",
              "name": "limit-rotation-speed",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "limitRotationSpeed"
            },
            {
              "children": [],
              "default": 20.0,
              "description": "Maximum degrees to rotate per tick.",
              "name": "max-rotation-per-tick",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxRotationPerTick"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Immediately disconnects from the server and disables the module.",
              "name": "panic-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "panicKey"
            },
            {
              "children": [],
              "default": true,
              "description": "Disables the module if health is critically low while a totem is equipped.",
              "name": "auto-disable-on-low-health",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDisableOnLowHealth"
            },
            {
              "children": [],
              "default": 3,
              "description": "Health level (hearts) to trigger auto-disable.",
              "name": "low-health-threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "lowHealthThreshold"
            },
            {
              "children": [],
              "default": false,
              "description": "Disconnect from the server if a totem of undying is consumed.",
              "name": "disconnect-on-totem-pop",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectOnTotemPop"
            },
            {
              "children": [],
              "default": false,
              "description": "Disconnect from the server when your firework rocket count drops below the minimum.",
              "name": "disconnect-on-low-rockets",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectOnLowRockets"
            },
            {
              "children": [],
              "default": 5,
              "description": "Minimum number of firework rockets to keep before disconnecting.",
              "name": "min-rockets",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minRockets"
            }
          ]
        },
        {
          "class_name": "SafetyNet",
          "description": "Protects you from the void by warning, disconnecting, or chorus teleporting at low Y levels.",
          "feature_type": "module",
          "name": "safety-net",
          "settings": [
            {
              "children": [],
              "default": "DimensionMode.End",
              "description": "Which dimension(s) to protect you in.",
              "name": "dimension",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "dimension"
            },
            {
              "children": [],
              "default": false,
              "description": "Use separate warn and disconnect Y levels for the Overworld and End instead of shared values.",
              "name": "per-dimension-thresholds",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "perDimensionThresholds"
            },
            {
              "children": [],
              "default": true,
              "description": "Play a sound and show a title warning when below the warning Y level.",
              "name": "warn-enabled",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "warnEnabled"
            },
            {
              "children": [],
              "default": 0,
              "description": "Y level at which the warning ping triggers. Used when sharing thresholds for both dimensions.",
              "name": "warn-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "warnY"
            },
            {
              "children": [],
              "default": 40,
              "description": "How often the warning repeats while below the Y level, in ticks (20 = 1 second). Set to 0 to warn only once.",
              "name": "warn-interval",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "warnInterval"
            },
            {
              "children": [],
              "default": "WarnSound.Pling",
              "description": "The sound played when the warning triggers.",
              "name": "warn-sound",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "warnSound"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Volume of the warning ping sound (0.0 = silent, 1.0 = full volume).",
              "name": "warn-volume",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "warnVolume"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically disconnect when below the disconnect Y level.",
              "name": "disconnect-enabled",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectEnabled"
            },
            {
              "children": [],
              "default": -10,
              "description": "Y level at which auto-disconnect triggers. Used when sharing thresholds for both dimensions.",
              "name": "disconnect-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "disconnectY"
            },
            {
              "children": [],
              "default": -60,
              "description": "Overworld Y level at which the warning triggers.",
              "name": "overworld-warn-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "overworldWarnY"
            },
            {
              "children": [],
              "default": -70,
              "description": "Overworld Y level at which auto-disconnect triggers.",
              "name": "overworld-disconnect-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "overworldDisconnectY"
            },
            {
              "children": [],
              "default": 0,
              "description": "End Y level at which the warning triggers.",
              "name": "end-warn-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "endWarnY"
            },
            {
              "children": [],
              "default": -10,
              "description": "End Y level at which auto-disconnect triggers.",
              "name": "end-disconnect-y-level",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "endDisconnectY"
            },
            {
              "children": [],
              "default": false,
              "description": "Wait a set number of ticks below the threshold before firing warnings or disconnect. Prevents false triggers from lag spikes or brief knockback.",
              "name": "grace-enabled",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "graceEnabled"
            },
            {
              "children": [],
              "default": 10,
              "description": "How many consecutive ticks the player must be below the threshold before actions fire (20 = 1 second).",
              "name": "grace-ticks",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "graceTicks"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Eats a chorus fruit to escape the void. Ignores warnings/disconnects while active and disables module on landing.",
              "name": "chorus-escape-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "chorusEscapeKey"
            }
          ]
        },
        {
          "class_name": "ServerHealthcareSystem",
          "description": "SHS — Manages health, safety, tracking, and server monitoring.",
          "feature_type": "module",
          "name": "server-healthcare-system",
          "settings": [
            {
              "children": [],
              "default": "OperationMode.Default",
              "description": "Changes the behavior of the module between Default and Quick Respawn modes.",
              "name": "mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "mode"
            },
            {
              "children": [],
              "default": false,
              "description": "Automatically respawns after death.",
              "name": "auto-respawn",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoRespawn"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically equips a totem of undying in your offhand.",
              "name": "auto-totem",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoTotem"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically equips the best armor in your inventory.",
              "name": "auto-armor",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoArmor"
            },
            {
              "children": [],
              "default": "IgnoredArmorSlot.None",
              "description": "Ignores the selected armor slot when Auto Armor is enabled.",
              "name": "ignored-armor-slot",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "ignoredArmorSlot"
            },
            {
              "children": [],
              "default": "ChestplateMode.Chestplate",
              "description": "How to manage the chest slot. Smart auto-swaps based on movement.",
              "name": "chestplate-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "chestplateMode"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Cycles chestplate mode: Chestplate -> Elytra -> Smart.",
              "name": "switch-preference-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "switchModeKey"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Quickly toggle smart chestplate on/off.",
              "name": "smart-toggle-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "smartToggleKey"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Manually swap between chestplate and elytra.",
              "name": "manual-swap-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "manualSwapKey"
            },
            {
              "children": [],
              "default": 400,
              "description": "Milliseconds to wait between swaps to prevent spam.",
              "name": "swap-cooldown-ms",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "swapCooldownMs"
            },
            {
              "children": [],
              "default": 200,
              "description": "Milliseconds after jumping before swapping to elytra. If you land before this expires, the swap is cancelled.",
              "name": "jump-delay-ms",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "jumpDelayMs"
            },
            {
              "children": [],
              "default": 3.5,
              "description": "Fall distance that forces an elytra swap (even without jumping).",
              "name": "fall-distance-trigger",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "fallDistanceTrigger"
            },
            {
              "children": [],
              "default": true,
              "description": "Swap back to chestplate when you touch the ground.",
              "name": "swap-back-on-land",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "swapBackOnLand"
            },
            {
              "children": [],
              "default": "Comma-separated enchantment ids (e.g. minecraft:binding_curse). Armor with these is ignored by Auto Armor.",
              "description": null,
              "name": "ignored-enchantments",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "ignoredEnchantments"
            },
            {
              "children": [],
              "default": true,
              "description": "Automatically eats food when conditions are met.",
              "name": "auto-eat",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoEat"
            },
            {
              "children": [],
              "default": false,
              "description": "Prefer enchanted golden apples over regular ones when emergency eating.",
              "name": "prefer-enchanted",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "preferEnchanted"
            },
            {
              "children": [],
              "default": 10,
              "description": "Health at which auto-eat triggers (out of 20). Set to 0 to disable health-based eating.",
              "name": "health-threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "healthThreshold"
            },
            {
              "children": [],
              "default": 2,
              "description": "How many TOTAL hunger points must be lost to trigger eating.",
              "name": "hunger-loss",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "hungerLoss"
            },
            {
              "children": [],
              "default": true,
              "description": "Eat gapples when on fire and taking damage to gain fire resistance.",
              "name": "eat-on-fire",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "eatOnFire"
            },
            {
              "children": [],
              "default": 20,
              "description": "Ticks to wait after eating before eating again.",
              "name": "eat-cooldown",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "eatCooldown"
            },
            {
              "children": [],
              "default": true,
              "description": "Swap back to original slot after eating.",
              "name": "swap-back",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "swapBack"
            },
            {
              "children": [],
              "default": false,
              "description": "Don't eat normal food while taking damage (gapples still work).",
              "name": "pause-in-combat",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "pauseInCombat"
            },
            {
              "children": [],
              "default": false,
              "description": "Doesn't eat golden apples for hunger if you already have regeneration.",
              "name": "skip-if-regen",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "skipIfRegen"
            },
            {
              "children": [],
              "default": true,
              "description": "Pauses Baritone while auto-eating to prevent it from interrupting or skipping meals.",
              "name": "pause-baritone",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "pauseBaritone"
            },
            {
              "children": [],
              "default": false,
              "description": "Disconnects when a totem of undying is consumed.",
              "name": "disconnect-on-totem-pop",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectOnTotemPop"
            },
            {
              "children": [],
              "default": false,
              "description": "Disconnects if totem count reaches zero.",
              "name": "disconnect-on-no-totems",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectOnNoTotems"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Hotkey to automatically break the nearest bed when in Quick Respawn mode.",
              "name": "break-bed-hotkey",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "breakBedHotkey"
            }
          ]
        },
        {
          "class_name": "SignScanner",
          "description": "Scans and displays sign text.",
          "feature_type": "module",
          "name": "sign-scanner",
          "settings": [
            {
              "children": [],
              "default": 16,
              "description": "Radius in chunks to scan for signs.",
              "name": "chunks",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "chunks"
            },
            {
              "children": [],
              "default": true,
              "description": "Notify in chat when a sign is found.",
              "name": "chat-messages",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "chatMessages"
            },
            {
              "children": [],
              "default": true,
              "description": "Cache sign text to improve performance.",
              "name": "cache-sign-text",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "cacheSignText"
            },
            {
              "children": [],
              "default": 20,
              "description": "How often to scan for signs (in ticks).",
              "name": "update-interval",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "updateInterval"
            },
            {
              "children": [],
              "default": true,
              "description": "Censors bad words on signs.",
              "name": "censorship",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "censorship"
            },
            {
              "children": [],
              "default": "Comma-separated words to censor.",
              "description": null,
              "name": "banned-words",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "badWords"
            },
            {
              "children": [],
              "default": false,
              "description": "Writes configured text on signs automatically when the edit screen opens.",
              "name": "auto-sign",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoSign"
            },
            {
              "children": [],
              "default": "MessageProfile.MESSAGE_1",
              "description": "Which message profile to use for Auto Sign.",
              "name": "active-profile",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "activeProfile"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Press this key to swap between Message 1 and Message 2.",
              "name": "switch-profile-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "switchProfileKey"
            },
            {
              "children": [],
              "default": "Comma-separated lines for Message 1 (up to 4).",
              "description": null,
              "name": "message-1-lines",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "message1Lines"
            },
            {
              "children": [],
              "default": "Comma-separated lines for Message 2 (up to 4).",
              "description": null,
              "name": "message-2-lines",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "message2Lines"
            },
            {
              "children": [],
              "default": 8,
              "description": "Ticks to wait before submitting the sign.",
              "name": "editor-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "editorDelay"
            },
            {
              "children": [],
              "default": false,
              "description": "Automatically applies a glow ink sac and selected dye to the sign after editing.",
              "name": "auto-glow-dye",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoGlowDye"
            },
            {
              "children": [],
              "default": "DyeColor.WHITE",
              "description": "Which color dye to apply to the sign.",
              "name": "dye-color",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "dyeColor"
            },
            {
              "children": [],
              "default": false,
              "description": "Automatically stamps the current date onto the sign.",
              "name": "auto-date",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "autoDate"
            },
            {
              "children": [],
              "default": "DateFormat.Readable",
              "description": "How the date is formatted.",
              "name": "date-format",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "dateFormat"
            },
            {
              "children": [],
              "default": "DateLine.Line_4",
              "description": "Which line to place the date on.",
              "name": "date-line",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "dateLine"
            },
            {
              "children": [],
              "default": 1.5,
              "description": "Scale of the rendered text.",
              "name": "scale",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "scale"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 255, 255)",
              "description": "Text color.",
              "name": "text-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "textColor"
            },
            {
              "children": [],
              "default": false,
              "description": "Use the sign's dye color for text.",
              "name": "use-sign-color",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "useSignColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Render a background behind the text.",
              "name": "background",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "background"
            },
            {
              "children": [],
              "default": "new Color(30, 30, 30, 160)",
              "description": "Background color.",
              "name": "background-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "backgroundColor"
            },
            {
              "children": [],
              "default": "HighlightStyle.GLOW",
              "description": "Panel highlight style.",
              "name": "highlight-style",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "highlightStyle"
            },
            {
              "children": [],
              "default": true,
              "description": "Merge signs that are close together.",
              "name": "merge",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "merge"
            },
            {
              "children": [],
              "default": 20.0,
              "description": "Distance in pixels to merge signs.",
              "name": "merge-distance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "mergeDistance"
            },
            {
              "children": [],
              "default": 4,
              "description": "Bloom layer count.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 3.0,
              "description": "How far each bloom layer expands outward (pixels).",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 60,
              "description": "Alpha of the innermost glow layer.",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": "new Color(100, 180, 255, 255)",
              "description": "Color of the bloom glow.",
              "name": "glow-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "glowColor"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse.",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 255, 255)",
              "description": "Color of the spectral outline border.",
              "name": "spectral-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "spectralColor"
            },
            {
              "children": [],
              "default": 1.5,
              "description": "Thickness of the spectral border lines (pixels).",
              "name": "thickness",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralThickness"
            },
            {
              "children": [],
              "default": 2.0,
              "description": "How far the border sits beyond the panel edge (pixels).",
              "name": "expand",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralExpand"
            },
            {
              "children": [],
              "default": true,
              "description": "Pulsate the spectral border alpha over time.",
              "name": "spectral-pulse",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "spectralPulse"
            },
            {
              "children": [],
              "default": 20,
              "description": "Alpha of a faint tinted fill drawn inside the border.",
              "name": "fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralFillAlpha"
            }
          ]
        },
        {
          "class_name": "ThirdSight",
          "description": "Third-person camera with configurable distance, no block clipping, and free look.",
          "feature_type": "module",
          "name": "third-sight",
          "settings": [
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Toggles a mode that disables camera distance modifications, allowing vanilla third person unless zooming.",
              "name": "no-distance-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "noDistanceKey"
            },
            {
              "children": [],
              "default": 4.0,
              "description": "Camera distance from the player.",
              "name": "distance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "distance"
            },
            {
              "children": [],
              "default": 0.15,
              "description": "How smoothly the camera transitions between distances and FOV. 1.0 = instant.",
              "name": "transition-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "transitionSpeed"
            },
            {
              "children": [],
              "default": false,
              "description": "Overrides your FOV while in First Person, allowing you to push past the vanilla limit of 115.",
              "name": "custom-first-person-fov",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "customFov"
            },
            {
              "children": [],
              "default": 110.0,
              "description": "The FOV to use while in First Person. Can be pushed past vanilla limits.",
              "name": "target-fov",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "targetFov"
            },
            {
              "children": [],
              "default": true,
              "description": "Orbit the camera around the player without affecting movement direction.",
              "name": "free-look",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "freeLook"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Free-look mouse sensitivity.",
              "name": "sensitivity",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "sensitivity"
            },
            {
              "children": [],
              "default": 0.12,
              "description": "How quickly the camera yaw catches up to the direction you're looking when free-look is off. 1.0 = instant.",
              "name": "follow-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "followSpeed"
            },
            {
              "children": [],
              "default": false,
              "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.",
              "name": "scroll-wheel-adjust",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "scrollWheelAdjust"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Keybind to toggle the scroll wheel camera distance adjustment on or off.",
              "name": "scroll-wheel-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "scrollWheelKey"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Distance added/removed per scroll click. Positive scroll = zoom in, negative = zoom out.",
              "name": "scroll-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "scrollSpeed"
            },
            {
              "children": [],
              "default": 2.0,
              "description": "Camera distance when zoomed in.",
              "name": "zoom-distance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "zoomDistance"
            },
            {
              "children": [],
              "default": 30.0,
              "description": "Field of View when zooming in First Person.",
              "name": "zoom-fov",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "zoomFov"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Key to activate zoom.",
              "name": "zoom-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "zoomKey"
            },
            {
              "children": [],
              "default": false,
              "description": "If true, press to toggle zoom. If false, hold to zoom.",
              "name": "toggle-mode",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "zoomToggle"
            }
          ]
        },
        {
          "class_name": "Timethrottle",
          "description": "Automatically adjusts game speed based on server TPS, chunk loading, and ping.",
          "feature_type": "module",
          "name": "time-throttle",
          "settings": [
            {
              "children": [],
              "default": 0.1,
              "description": "How quickly speed drops when throttling. 0 = instant, higher = more gradual.",
              "name": "slow-down-smoothing",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "slowDownSmoothing"
            },
            {
              "children": [],
              "default": 0.4,
              "description": "How quickly speed recovers after throttling. 0 = instant, higher = more gradual. Higher values give chunks more time to catch up.",
              "name": "speed-up-smoothing",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "speedUpSmoothing"
            },
            {
              "children": [],
              "default": 0.15,
              "description": "The hard floor for game speed.",
              "name": "absolute-min-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "absoluteMinSpeed"
            },
            {
              "children": [],
              "default": 19.0,
              "description": "TPS above which no throttling is applied.",
              "name": "target-tps",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "targetTps"
            },
            {
              "children": [],
              "default": 10.0,
              "description": "TPS at which the slowest speed is applied.",
              "name": "min-tps",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minTps"
            },
            {
              "children": [],
              "default": 0.5,
              "description": "Speed multiplier applied when TPS is at or below min-tps.",
              "name": "min-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "tpsMinSpeed"
            },
            {
              "children": [],
              "default": true,
              "description": "Slow down when chunks are missing to force them to load.",
              "name": "chunk-throttle",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "chunkThrottle"
            },
            {
              "children": [],
              "default": 0.7,
              "description": "Speed to lock to when max-throttle is reached. (0.7 = 70%)",
              "name": "chunk-min-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "chunkLoadSlowdown"
            },
            {
              "children": [],
              "default": true,
              "description": "Give up early if chunks aren't actually loading (stalled).",
              "name": "stall-detection",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "stallDetection"
            },
            {
              "children": [],
              "default": 8,
              "description": "Seconds without chunk-loading progress before giving up.",
              "name": "stall-timeout",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "stallTimeout"
            },
            {
              "children": [],
              "default": 15,
              "description": "Max seconds of continuous chunk-throttling before giving up and running at normal speed. 0 = disabled.",
              "name": "max-throttle-time",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxThrottleTime"
            },
            {
              "children": [],
              "default": 3,
              "description": "Seconds at normal speed after giving up before re-evaluating chunks.",
              "name": "give-up-cooldown",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "giveUpCooldown"
            },
            {
              "children": [],
              "default": 0.5,
              "description": "Smooths the unloaded-chunk count to prevent jittery speed changes. 0 = no smoothing, higher = more smoothing.",
              "name": "chunk-smoothing",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "chunkEmaFactor"
            },
            {
              "children": [],
              "default": true,
              "description": "Use different chunk thresholds for Overworld, Nether, and End.",
              "name": "dimension-override",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "dimensionOverride"
            },
            {
              "children": [],
              "default": 10,
              "description": "Missing chunks to start slowing down in the Overworld.",
              "name": "overworld-start",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "owStart"
            },
            {
              "children": [],
              "default": 80,
              "description": "Missing chunks for max slowdown in the Overworld.",
              "name": "overworld-max",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "owMax"
            },
            {
              "children": [],
              "default": 50,
              "description": "Missing chunks to start slowing down in the Nether.",
              "name": "nether-start",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "netherStart"
            },
            {
              "children": [],
              "default": 200,
              "description": "Missing chunks for max slowdown in the Nether.",
              "name": "nether-max",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "netherMax"
            },
            {
              "children": [],
              "default": 5,
              "description": "Missing chunks to start slowing down in the End.",
              "name": "end-start",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "endStart"
            },
            {
              "children": [],
              "default": 50,
              "description": "Missing chunks for max slowdown in the End.",
              "name": "end-max",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "endMax"
            },
            {
              "children": [],
              "default": 10,
              "description": "Missing chunks to start slowing down.",
              "name": "start-throttle",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "chunkLoadThreshold"
            },
            {
              "children": [],
              "default": 80,
              "description": "Missing chunks to hit the maximum slowdown.",
              "name": "max-throttle",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxChunkThreshold"
            },
            {
              "children": [],
              "default": true,
              "description": "Slow down when server ping is high.",
              "name": "ping-throttle",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "pingThrottle"
            },
            {
              "children": [],
              "default": 150,
              "description": "Ping (ms) above which throttling begins.",
              "name": "ping-threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pingThreshold"
            },
            {
              "children": [],
              "default": 400,
              "description": "Ping (ms) at which the slowest speed is applied.",
              "name": "max-ping",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxPing"
            },
            {
              "children": [],
              "default": 0.6,
              "description": "Speed multiplier applied when ping is at or above max-ping.",
              "name": "ping-min-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pingMinSpeed"
            },
            {
              "children": [],
              "default": true,
              "description": "Disables throttling when in combat or near enemies.",
              "name": "combat-safety",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "combatSafety"
            },
            {
              "children": [],
              "default": true,
              "description": "Resume normal speed when you swing your weapon.",
              "name": "detect-attacking",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "detectSwing"
            },
            {
              "children": [],
              "default": 15,
              "description": "Radius to check for hostile entities or players.",
              "name": "safety-range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "safetyRange"
            },
            {
              "children": [],
              "default": 60,
              "description": "Ticks to keep throttling disabled after a safety trigger.",
              "name": "safety-duration",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "safetyDuration"
            }
          ]
        },
        {
          "class_name": "TotalDisposal",
          "description": "Drop items and /kill via dedicated key combinations.",
          "feature_type": "module",
          "name": "total-disposal",
          "settings": [
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Key to drop the entire inventory.",
              "name": "drop-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "dropKey"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Key to send the /kill command.",
              "name": "kill-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "killKey"
            },
            {
              "children": [],
              "default": "ModifierKey.Control",
              "description": "The required modifier key that must be held.",
              "name": "modifier",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "modifier"
            }
          ]
        },
        {
          "class_name": "Tunnelers",
          "description": "Highlights player-made tunnels and shafts.",
          "feature_type": "module",
          "name": "tunnelers",
          "settings": [
            {
              "children": [],
              "default": 8,
              "description": "Scan range in chunks.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": 40,
              "description": "Ticks between out-of-range pruning passes.",
              "name": "scan-delay",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "scanDelay"
            },
            {
              "children": [],
              "default": "BoxMode.Both",
              "description": "Box render mode.",
              "name": "shape-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "shapeMode"
            },
            {
              "children": [],
              "default": "HighlightStyle.GLOW",
              "description": "GLOW renders layered bloom. SPECTRAL renders a crisp outline. PULSE renders a fading bloom effect.",
              "name": "highlight-style",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "highlightStyle"
            },
            {
              "children": [],
              "default": true,
              "description": "Reduces opacity of highlights that are further away.",
              "name": "fade-with-distance",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "fadeWithDistance"
            },
            {
              "children": [],
              "default": 2000,
              "description": "Maximum merged boxes rendered per frame.",
              "name": "max-render-boxes",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "maxRenderBoxes"
            },
            {
              "children": [],
              "default": 4,
              "description": "Number of bloom layers rendered around each box.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "How far each bloom layer expands outward (in blocks).",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 60,
              "description": "Alpha of the innermost glow layer (0-255).",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Pulse cycle speed. 1.0 = one full fade in/out per second.",
              "name": "pulse-speed",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseSpeed"
            },
            {
              "children": [],
              "default": 15,
              "description": "Lowest alpha reached during the pulse (0 = invisible).",
              "name": "pulse-min-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMinAlpha"
            },
            {
              "children": [],
              "default": 220,
              "description": "Peak alpha reached during the pulse.",
              "name": "pulse-max-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pulseMaxAlpha"
            },
            {
              "children": [],
              "default": 0.05,
              "description": "How much to expand the outline box beyond each tunnel box surface (in blocks).",
              "name": "expand",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralExpand"
            },
            {
              "children": [],
              "default": 255,
              "description": "Opacity of the spectral outline (0-255).",
              "name": "line-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralLineAlpha"
            },
            {
              "children": [],
              "default": 15,
              "description": "Alpha of a faint tinted fill drawn inside the outline (0 = lines only).",
              "name": "fill-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "spectralFillAlpha"
            },
            {
              "children": [],
              "default": true,
              "description": "Pulsate the spectral outline alpha over time.",
              "name": "pulse",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "spectralPulse"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect 1x1 tunnels.",
              "name": "1x1",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "find1x1"
            },
            {
              "children": [],
              "default": 8,
              "description": "Minimum length of a 1x1 tunnel to be rendered.",
              "name": "min-1x1-length",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "min1x1Length"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 0, 75)",
              "description": "Color for 1x1 tunnels.",
              "name": "color-1x1",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "color1x1"
            },
            {
              "children": [],
              "default": true,
              "description": "Detect 1x2, 2x2, 3x3, 4x4, and 5x5 tunnels.",
              "name": "other-tunnels",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "findOtherTunnels"
            },
            {
              "children": [],
              "default": 2,
              "description": "Minimum length for other tunnels to be rendered.",
              "name": "min-other-length",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minOtherLength"
            },
            {
              "children": [],
              "default": "new Color(255, 200, 0, 75)",
              "description": "Color for 1x2, 2x2, 3x3, 4x4, and 5x5 tunnels.",
              "name": "color-other",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorOtherTunnels"
            },
            {
              "children": [],
              "default": "ShaftMode.Both",
              "description": "Which vertical shaft types to detect: Holes, LadderShafts, or Both.",
              "name": "shaft-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "shaftMode"
            },
            {
              "children": [],
              "default": 4,
              "description": "Minimum shaft depth to be detected as a hole.",
              "name": "min-hole-height",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minHoleHeight"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 255, 75)",
              "description": "Color for holes.",
              "name": "color-holes",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorHoles"
            },
            {
              "children": [],
              "default": 4,
              "description": "Minimum consecutive ladder blocks to count as a shaft.",
              "name": "min-ladder-height",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "minLadderHeight"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 0, 75)",
              "description": "Color for ladder shafts.",
              "name": "color-ladder-shafts",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "colorLadderShafts"
            }
          ]
        },
        {
          "class_name": "Waypearl",
          "description": "Detects nearby stasis pearls sitting above bubble columns.",
          "feature_type": "module",
          "name": "waypearl",
          "settings": [
            {
              "children": [],
              "default": 64,
              "description": "Detection radius in blocks.",
              "name": "range",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "range"
            },
            {
              "children": [],
              "default": 40,
              "description": "Ticks between bubble column background scans.",
              "name": "scan-interval",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "scanInterval"
            },
            {
              "children": [],
              "default": "RenderMode.Default",
              "description": "Default = bubble column beams. Pearls Only = entity outlines & soul sand beams.",
              "name": "render-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "renderMode"
            },
            {
              "children": [],
              "default": true,
              "description": "Use a distinct color for your own pearls.",
              "name": "highlight-own-pearl",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "highlightOwnPearl"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 0, 255)",
              "description": "Color for your own pearl's outline in Default mode.",
              "name": "own-pearl-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "ownPearlColor"
            },
            {
              "children": [],
              "default": true,
              "description": "Highlight bubble columns with a beam.",
              "name": "highlight-columns",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "columnsEnabled"
            },
            {
              "children": [],
              "default": "new Color(180, 230, 255, 255)",
              "description": "Beam core color.",
              "name": "core-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "coreColor"
            },
            {
              "children": [],
              "default": "new Color(0, 180, 255, 50)",
              "description": "Beam glow color.",
              "name": "glow-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "glowColor"
            },
            {
              "children": [],
              "default": 0.03,
              "description": "Beam core half-width.",
              "name": "core-width",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "coreWidth"
            },
            {
              "children": [],
              "default": 0.08,
              "description": "Beam glow spread.",
              "name": "glow-spread",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowSpread"
            },
            {
              "children": [],
              "default": 4,
              "description": "Beam glow layer count.",
              "name": "glow-layers",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowLayers"
            },
            {
              "children": [],
              "default": 50,
              "description": "Beam glow alpha.",
              "name": "glow-base-alpha",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "glowBaseAlpha"
            },
            {
              "children": [],
              "default": "CapPosition.BOTTOM",
              "description": "Where to draw a cap box.",
              "name": "cap-position",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "capPosition"
            },
            {
              "children": [],
              "default": "new Color(0, 200, 255, 160)",
              "description": "Cap box color.",
              "name": "cap-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "capColor"
            },
            {
              "children": [],
              "default": 0.4,
              "description": "Cap box half-size.",
              "name": "cap-size",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "capSize"
            },
            {
              "children": [],
              "default": 0.04,
              "description": "Cap box thickness.",
              "name": "cap-thickness",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "capThickness"
            },
            {
              "children": [],
              "default": "BoxMode.Both",
              "description": "Cap box render mode.",
              "name": "cap-shape-mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "capShapeMode"
            },
            {
              "children": [],
              "default": true,
              "description": "Render cap box glow.",
              "name": "cap-glow",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "capGlow"
            },
            {
              "children": [],
              "default": true,
              "description": "Play a sound when a new pearl is detected.",
              "name": "sound-ping",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "soundEnabled"
            },
            {
              "children": [],
              "default": "PingSound.BeaconActivate",
              "description": "Ping sound.",
              "name": "sound",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "pingSound"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "Ping volume.",
              "name": "volume",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "soundVolume"
            },
            {
              "children": [],
              "default": 1.8,
              "description": "Ping pitch.",
              "name": "pitch",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "soundPitch"
            },
            {
              "children": [],
              "default": "ModuleMode.Requester",
              "description": "Assistant pulls pearls for others; Requester asks a bot.",
              "name": "mode",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "moduleMode"
            },
            {
              "children": [],
              "default": "The assistant bot's username.",
              "description": null,
              "name": "bot-username",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "botUsername"
            },
            {
              "children": [],
              "default": "Comma-separated trigger keywords.",
              "description": null,
              "name": "trigger-phrase",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "triggerPhrase"
            },
            {
              "children": [],
              "default": "Comma-separated players allowed to trigger a pull (Assistant mode).",
              "description": null,
              "name": "whitelist",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "whitelist"
            },
            {
              "children": [],
              "default": "NullKey.INSTANCE",
              "description": "Key to request a pull from the bot (Requester mode).",
              "name": "self-trigger-key",
              "setting_class": "BindSetting",
              "type": "keybind",
              "var_name": "selfTriggerKey"
            },
            {
              "children": [],
              "default": 5,
              "description": "Seconds between pulls.",
              "name": "cooldown",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "pullCooldown"
            },
            {
              "children": [],
              "default": "PullOrder.DISCOVERY",
              "description": "Order to pick pearls when multiple match.",
              "name": "pull-order",
              "setting_class": "EnumSetting",
              "type": "enum",
              "var_name": "pullOrder"
            },
            {
              "children": [],
              "default": true,
              "description": "Whisper the requester when pulling.",
              "name": "notify-requester",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "notifyEnabled"
            },
            {
              "children": [],
              "default": "Message whispered to the requester. {player} = name.",
              "description": null,
              "name": "notify-message",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "notifyMessage"
            },
            {
              "children": [],
              "default": true,
              "description": "Walk to out-of-reach trapdoors.",
              "name": "walker-enabled",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "walkerEnabled"
            },
            {
              "children": [],
              "default": 3.5,
              "description": "Reach to interact with a trapdoor.",
              "name": "interact-reach",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "interactReach"
            },
            {
              "children": [],
              "default": 6.0,
              "description": "Distance to stop sprinting near the target.",
              "name": "slow-zone-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "slowZoneRadius"
            },
            {
              "children": [],
              "default": 6.0,
              "description": "Distance between path waypoints.",
              "name": "waypoint-spacing",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "waypointSpacing"
            },
            {
              "children": [],
              "default": 200,
              "description": "Ticks before a walk aborts.",
              "name": "walk-timeout",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "walkTimeoutTicks"
            },
            {
              "children": [],
              "default": 200,
              "description": "Ticks before a return aborts.",
              "name": "return-timeout",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "returnTimeoutTicks"
            },
            {
              "children": [],
              "default": 1.0,
              "description": "How close to idle counts as returned.",
              "name": "return-tolerance",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "returnTolerance"
            },
            {
              "children": [],
              "default": 30,
              "description": "Ticks of no movement before aborting.",
              "name": "stuck-threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "stuckThresholdTicks"
            },
            {
              "children": [],
              "default": 0.02,
              "description": "Minimum XZ movement per tick to not be stuck.",
              "name": "stuck-min-movement",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "stuckMovementMin"
            },
            {
              "children": [],
              "default": 0.0,
              "description": "Abort if Y drops below this.",
              "name": "void-abort-y",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "voidAbortY"
            },
            {
              "children": [],
              "default": true,
              "description": "Walk back to the idle position after pulling.",
              "name": "return-after-pull",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "returnAfterPull"
            },
            {
              "children": [],
              "default": true,
              "description": "Sprint while walking.",
              "name": "sprint",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "walkerSprint"
            },
            {
              "children": [],
              "default": true,
              "description": "Jump when stuck.",
              "name": "auto-jump",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "walkerJump"
            },
            {
              "children": [],
              "default": 8,
              "description": "Stuck ticks before jumping.",
              "name": "jump-attempt-ticks",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "jumpAttemptTicks"
            },
            {
              "children": [],
              "default": 12,
              "description": "Ticks between jumps.",
              "name": "jump-cooldown",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "jumpCooldownTicks"
            },
            {
              "children": [],
              "default": true,
              "description": "Sneak while interacting with the trapdoor.",
              "name": "sneak-on-interact",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "sneakOnInteract"
            },
            {
              "children": [],
              "default": true,
              "description": "Abort the walk if health is low.",
              "name": "abort-on-low-health",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "abortOnLowHealth"
            },
            {
              "children": [],
              "default": 4,
              "description": "Hearts at which to abort.",
              "name": "low-health-threshold",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "lowHealthThreshold"
            },
            {
              "children": [],
              "default": false,
              "description": "Abort the walk if on fire.",
              "name": "abort-on-fire",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "abortOnFire"
            },
            {
              "children": [],
              "default": true,
              "description": "Renders an outline around the pearl entity.",
              "name": "outline",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "poOutlineEnabled"
            },
            {
              "children": [],
              "default": "new Color(0, 200, 255, 255)",
              "description": "Outline color.",
              "name": "outline-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "poOutlineColor"
            },
            {
              "children": [],
              "default": 3,
              "description": "Brightens the outline color channels (1-8).",
              "name": "glow-strength",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "poGlowStrength"
            },
            {
              "children": [],
              "default": true,
              "description": "Renders an outline around your own pearl.",
              "name": "own-outline",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "poOwnOutlineEnabled"
            },
            {
              "children": [],
              "default": "new Color(255, 255, 0, 255)",
              "description": "Own outline color.",
              "name": "own-outline-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "poOwnOutlineColor"
            },
            {
              "children": [],
              "default": 3,
              "description": "Own outline brightness.",
              "name": "own-glow-strength",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "poOwnGlowStrength"
            },
            {
              "children": [],
              "default": true,
              "description": "Renders a beam down to the soul sand.",
              "name": "beam",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "poBeamEnabled"
            },
            {
              "children": [],
              "default": "new Color(255, 140, 0, 200)",
              "description": "Beam color.",
              "name": "beam-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "poBeamColor"
            },
            {
              "children": [],
              "default": 0.1,
              "description": "Beam core radius.",
              "name": "beam-inner-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "poBeamInnerRadius"
            },
            {
              "children": [],
              "default": 0.175,
              "description": "Beam glow radius.",
              "name": "beam-glow-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "poBeamOuterRadius"
            },
            {
              "children": [],
              "default": 64,
              "description": "How high up the beam shoots.",
              "name": "beam-height",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "poBeamHeight"
            },
            {
              "children": [],
              "default": true,
              "description": "Renders a beam for your own pearl.",
              "name": "own-beam",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "poOwnBeamEnabled"
            },
            {
              "children": [],
              "default": "new Color(0, 255, 0, 200)",
              "description": "Own beam color.",
              "name": "own-beam-color",
              "setting_class": "ColorSetting",
              "type": "color",
              "var_name": "poOwnBeamColor"
            },
            {
              "children": [],
              "default": 0.1,
              "description": "Own beam core radius.",
              "name": "own-beam-inner-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "poOwnBeamInnerRadius"
            },
            {
              "children": [],
              "default": 0.175,
              "description": "Own beam glow radius.",
              "name": "own-beam-glow-radius",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "poOwnBeamOuterRadius"
            },
            {
              "children": [],
              "default": 64,
              "description": "Own beam height.",
              "name": "own-beam-height",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "poOwnBeamHeight"
            },
            {
              "children": [],
              "default": false,
              "description": "Disconnects when another player enters render distance.",
              "name": "disconnect-enabled",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "disconnectEnabled"
            },
            {
              "children": [],
              "default": true,
              "description": "Doesn't disconnect if the entering player is a NeighbourhoodWatch friend.",
              "name": "ignore-friends",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "ignoreFriendsOnDisconnect"
            },
            {
              "children": [],
              "default": true,
              "description": "Doesn't trigger if the entering player is the configured bot username.",
              "name": "ignore-bot-user",
              "setting_class": "BooleanSetting",
              "type": "boolean",
              "var_name": "ignoreBotUser"
            },
            {
              "children": [],
              "default": "Username to notify before disconnecting (Assistant mode).",
              "description": null,
              "name": "disconnect-notify-user",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "disconnectUser"
            },
            {
              "children": [],
              "default": "Message sent to the notify user. {player} = triggering player.",
              "description": null,
              "name": "disconnect-message",
              "setting_class": "StringSetting",
              "type": "string",
              "var_name": "disconnectMessage"
            },
            {
              "children": [],
              "default": 5,
              "description": "Minimum seconds between outgoing disconnect notifications.",
              "name": "anti-spam-interval",
              "setting_class": "NumberSetting",
              "type": "number",
              "var_name": "disconnectAntiSpam"
            }
          ]
        }
      ],
      "has_features": true,
      "is_core": false,
      "jar_url": "https://github.com/Anxious112/TIM-RUSHER-PLUGIN-1.21.4/releases/download/tim/tim-1.0.0.jar",
      "latest_release_tag": "tim",
      "mc_versions": "1.21.4",
      "name": "Tim",
      "repo": "Anxious112/TIM-RUSHER-PLUGIN-1.21.4",
      "screenshots": [],
      "stars": 1,
      "type": "plugin",
      "updated_at": "2026-08-31"
    }
  ],
  "themes": [
    {
      "added_at": "2024-08-09",
      "creator": {
        "avatar": "https://github.com/h1tm4nqq.png?size=20",
        "name": "h1tm4nqq",
        "url": "https://github.com/h1tm4nqq"
      },
      "description": "A theme like Nhack 2015 for RH.",
      "downloads": 756,
      "jar_url": "https://github.com/h1tm4nqq/Nhack-theme/releases/download/1.21.4/nhack-theme-1.0.0.jar",
      "latest_release_tag": "1.21.4",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.4",
      "name": "Nhack Theme",
      "repo": "h1tm4nqq/Nhack-theme",
      "screenshots": [],
      "stars": 19,
      "type": "theme",
      "updated_at": "2025-07-03"
    },
    {
      "added_at": "2024-04-13",
      "creator": {
        "avatar": "https://github.com/xyzbtw.png?size=20",
        "name": "xyzbtw",
        "url": "https://github.com/xyzbtw"
      },
      "description": "An example plugin showcasing how to create custom themes with RusherHack.",
      "downloads": 745,
      "jar_url": "https://github.com/xyzbtw/rusherGUI/releases/download/rusherhack/rushergui-1.0.0.jar",
      "latest_release_tag": "rusherhack",
      "mc_versions": "1.20.1, 1.20.2, 1.20.3, 1.20.4",
      "name": "RusherGUI",
      "repo": "xyzbtw/rusherGUI",
      "screenshots": [],
      "stars": 17,
      "type": "theme",
      "updated_at": "2024-05-29"
    }
  ]
}
