HomeJavaModsDuraBlock
DuraBlock
DuraBlock — screenshot 1DuraBlock — screenshot 2
DuraBlockBanner Github  |  Discord

DuraBlock - Custom Block Durability Plugin

DuraBlock is a Minecraft plugin, inspired by the Metin Stones from Metin2, that allows server owners to create custom blocks with configurable durabilities. Players can race to break these blocks and earn rewards!

🌟 Features

📦 Requirements

🛠️ Installation

  1. Download the latest release of DuraBlock.
  2. Place the .jar file in your server's plugins folder.
  3. Restart the server to generate the default configuration.
  4. Edit the config.yml to customize your blocks.
  5. Reload the plugin /durablock reload to apply changes.

🌍 Language Support

📝 Default Configuration

Click to view config.yml
language: en_us

prefix: "<#874CCC><bold>DuraBlock</bold> <gray>» "

blocks:
  test-block:
    durability: 20
    # Time in seconds before the block gets restored after being broken
    restore-interval: 30
    # Vertical offset for the hologram above the block (in blocks)#
    y-level: 2
    # Permission required to break this block
    permission: durablock.break.test-block
    # Text lines displayed in the hologram when the block is active/enabled
    # Refer to the DecentHolograms wiki for formatting and color options:
    # https://wiki.decentholograms.eu/general/format-and-colors/
    enabled-hologram-lines:
      - "<#6DE1D2>Test Block"
      - "<#FF0000>Durability: {durability}</#00FF00>"
    # Text lines displayed in the hologram when the block is disabled
    disabled-hologram-lines:
      - "Disabled for now."
      - "Will be activated in: <#FFA725>{restore}"
      - "Broken by: <#FFA725>{last_player}"
    # List of commands executed with a certain probability when the block's durability is above 0
    rewards:
      - command: "give {player} diamond 1"
        chance: 0.1 # %10 chance
      - command: "give {player} emerald 2"
        chance: 0.3 # %30 chance
    # Actions to perform when the block is broken
    on-break:
      sound:
        enabled: true
        # https://minecraft.wiki/w/Sounds.json/Java_Edition_values for sound list
        sound-type: "minecraft:entity.player.levelup"
        # Whether the sound should play for everyone or only the player who broke it
        play-to-everyone: true
      broadcast:
        enabled: true
        # Message broadcast to all players when the block is broken
        message: "<red>{player} broke the test-block"
      # Commands executed when the block is broken
      commands:
        - "give {player} diamond 16"

# Warning: Adjusting these values may impact server performance or cause unexpected behavior.
# Only change them if you understand the potential consequences.
# Interval for updating hologram (in seconds)
hologram-update-interval: 1
# Interval for checking if blocks needs to be enabled (in seconds)
block-restore-interval: 1

🚀 Usage

📜 Commands and Permissions

Command Description
/durablock reload Reloads the configuration
/durablock add <block-type> Adds a new custom block of the specified type
/durablock list Lists all configured custom blocks
/durablock remove <block-id> Removes a specific custom block by ID
/durablock restore <block-id> Manually restores a block by ID
/durablock info Displays information about the plugin
Permission Description
durablock.commands.main Allows using /durablock command
durablock.notify.update Allows receiving update notifications

💡 Placeholders

Hologram Placeholders

Command Placeholders

💡 Examples

To create a new block named "diamond-block" with 50 durability and a 20-second restore time, add this to your config.yml:

blocks:
  diamond-block:
    durability: 50
    restore-interval: 20
    permission: durablock.break.diamond-block
    enabled-hologram-lines:
      - "Diamond Block - {durability} hits left"
    disabled-hologram-lines:
      - "Regenerating in: {restore} seconds"
    rewards:
      - command: "give {player} diamond 1"
        chance: 0.1 # %10 chance
    on-break:
      sound:
        enabled: true
        sound-type: "minecraft:entity.player.levelup"
        play-to-everyone: true
      broadcast:
        enabled: true
        message: "<red>{player} broke the diamond block and earned 16 diamonds!"
      commands:
        - "give {player} diamond 16"

💬 Support

If you encounter any issues or have feature suggestions, feel free to open an issue on GitHub or join my Discord Server.

📝 License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Enjoy making your server more dynamic with DuraBlock!

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

Verified by MCModsHub

These come from our own check of the pack file, not from the source page.

Explore more