TnT Regen [Jack29] 2.5.2

Regenerate blocks damaged from explosives from both entities & blocks.

  1. Jackalantern29
    Native Minecraft Version:
    1.13
    Tested Minecraft Versions:
    • 1.13
    • 1.14
    • 1.15
    Source Code:
    https://github.com/Jackalantern29/TnT-Regen
    [​IMG]
    Originally started out only supporting explosions from TnTs & Creepers from the official release, the TnTRegen plugin will allow blocks that were destroyed from any explosions to be able to regenerate. Designed for SpigotMC 1.13, supports 1.13, 1.14, 1.15

    Sponsor
    [​IMG]

    Features:

    • Regenerate blocks that were destroyed from explosions.
    • Simple to use, Easy to configure.
    • Configurable settings for each explosion type.
    • Particles & Sounds for post-explosions.
    • Configurable settings for available blocks.
    Commands & Permissions:
    • /rparticle - Opens an inventory menu to configure both particles for an explosion type.
      • Permission: tntregen.command.rparticle
    • /rsound - Opens an inventory menu to configure sound, volume, & pitch for an explosion type.
      • Permission: tntregen.command.rsound
    • /rconfig - Reloads the config.yml & blocks.yml
      • Permission: tntregen.command.rconfig
    • /rregen - Regenerates explosions that are currently in progress or has yet to start regenerating.
      • Sub commands: all, near, recent, first
        • all: Gets all explosions & regenerates them.
        • near: Gets the nearest explosion & regenerates it.
        • recent: Gets the most recent explosion & regenerates it.
        • first: Gets the explosion that would regenerate first & regenerates it.
      • Flags: -f[entityTypes...], -r[radius], -l[worldName,x,y,z] or -l[onlinePlayer], -c[count], -i
        • -f[entityType] or -f[entityType,entityType,...] will only filter explosions from those entities. Without flag default: All available entity types
        • -r[radius] will filter explosions within a radius. Without flag default: infinite
        • -l[worldName,x,y,z] will set the location from the selected world & position x, y, z. Alternatively use -l[onlinePlayer] to set the location from the select online player. Without flag default: Executor's position.
        • -c[count] will execute the used sub command X amount of times, where X is count. Without flag default: 1
        • -i will send information about the filtered explosion(s) (or just the explosion(s)) and will not regenerate them.
    • Ignite TnT using Flint&Steel to permanently damage blocks
      • Permission: tntregen.bypass
    Config:
    The config file will automatically add any missing or new options options available to configure. To make any changes made take into effect, either use /rconfig or reload the plugin.
    Code (YAML):

    [entity|block]
    :
      [type]
    : The type of the entity or block. type default section is used & copied over when a new entity or block has exploded and is not on this file.
        enable
    : Enable or disable explosion for this type. Default: true.
        delay
    : Amount of ticks to wait before explosion for this type starts regenerating. Default: 1200
        period
    : Amount of ticks to pass before regenerating a block. Default: 20
        instantRegen
    : If true, after the delay amount of ticks has passed, will instantly regenerate the explosion type. Default: false
        disableBlockDamage
    : If true, blocks will not take any damage from this explosion. Default: false
        particles
    : Section to configure the particles for this explosion type.. You can also use /rparticles in-game to configure the particles for this explosion type.
          blockRegen
    : The particle section for when a block has regenerated.
            particle
    : The particle to play. Default: heart
            enable
    : If true, particles will play when a block has regenerated. Default: true
          blockToBeRegen
    : The particle section for when a block is waiting to be regenerated.
            particle
    : The particle to play. Default: flame
            enable
    : If true, particles will play when a block is waiting to be regenerated. Default: true
        sound
    : Section to configure the sound when a block regenerates for this explosion type. You can also use /rsound in-game to configure the sounds for this explosion type.
          enable
    : If true, sounds will play when a block has regenerated. Default: true
          sound
    : The sound to play. Default: BLOCK_GRASS_PLACE
          volume
    : The volume of the sound. Default: 1.0
          pitch
    : The pitch of the sound. Default: 2.0
        triggers
    : Explosion type will only regenerate if it meets these triggers.
          [worldName]
    : The world the explosion has to be in to regenerate. You can have multiples of this section for explosion regeneration to work in multiple worlds. Default: (default world loaded on server)
            minY
    : The minimum Y coordinates the explosion can happen. Default: 0.0
            maxY
    : The maximum Y coordinates the explosion can happen. Default: 256.0
    other
    :
      enablePlugin
    : If true, the plugin will enable when the plugin is loading. Default: true
      forceBlockToRegen
    : If true, this will force blocks to regenerate regardless if there is a block in its place. If there is a block, it will get destroyed as if it was natural. Default: false
      griefPreventionPluginAllowExplosionRegen
    : If true, if the GriefPrevention plugin is installed, this will allow explosions to regenerate in claimed areas. Default: false
      gravity
    : This section is used when the regeneration process is dealing with blocks that fell due to gravity to where the explosion happen. This section is what help makes areas that has sand or gravel for example keep its natual look still even after an explosion regeneration has finished.
        shiftGravityUp
    : If true, this will shift blocks that has gravity upwards. Default: true
        maxShiftGravityUp
    : This is the maximum amount of blocks that has gravity that can shift up during an explosion regeneration process. Default: 5
      NoPermMsg
    : This message will be sent to players if they do not have the right permission for the right command.
     

    The blocks file will automatically add missing or new blocks that the server version has to include.
    If available to use, use your "Find text" option to look for the block you desire. To make any changes make take into effect, either use /rconfig or reload the plugin.
    Code (YAML):
    [block]
      doPreventDamage
    : If true, this block will not take any damage. If replace.doReplace is true, it will instantly get replaced with the replace.replaceWith block. Default: false
      regen
    : If true, this block will not drop & will regenerate. If false, the drop chance will be the chance value for this block. Default: true
      saveItems
    : Available for only containers (Not including Shulker Boxes), If set to true, if the block is destroyed from an explosion, items in the container will not drop out, and will still appear in the block when regenerated. Default: true
      maxRegenHeight
    : Available for only Cactus & Sugar Cane. If the block supporting this block is destroyed, this block was not recorded in the explosion, it will be set to be regenerated and will regenerate going up, up until either it reaches its original height or the maxRegenHeight. Default: 3.
      replace
    : Section used to configure replacement of this block.
        doReplace
    : If true, it will replace the block with replaceWith. Default: false
        replaceWith
    : The block to replace with if doReplace is true. Default: [block]
      chance
    : The percentage chance the block can drop if regen is false. Default: 30

    If you have any questions to ask, feedbacks & ideas to share, or issues/errors to report, let me know here or on discord (Username: Jackalantern29 (NA)#2165).

    Images

    1. TnTRegen Header.png

Recent Reviews

  1. Elwakka
    Elwakka
    5/5,
    Version: 2.4.2
    This is a server essential. Gives a more vanilla feel than just disabling creeper explosions.
  2. myketronic
    myketronic
    5/5,
    Version: 2.2.5.1
    Just validated 2.2.5.1 against Paper 235 - works beautifully, and non-scientific creeper tests seem to show more consistent behavior. Thank you, Jackalantern for your continued efforts with this!
  3. PawPawDude
    PawPawDude
    2/5,
    Version: 2.2.5
    This is a review, not a request for support, otherwise would be in Discussions.

    Sorry, couldn't get this plugin to work. Tried multiple worlds, permissions, configs... no go on regeneration. Paper 1.14.4 latest (Dec 2019)

    Also, plugins spams tons of errors in console on startup. Example, this (w/ diff entities/blocks) x 100:
    [code]
    [07:45:42 ERROR]: Block at 0, 1, 0 is Block{minecraft:acacia_slab} but has [email protected] Bukkit will attempt to fix this, but there may be additional damage that we cannot recover.
    [/code]

    And, what's with this statement in config?
    "# TnTs' & Creepers' explosion meeting a trigger circumstance will permanently do block damage (blocks will not regen)"

    How is one to know what that means? One thing it does seem to indicate, not all explosions are regenerated. Sorry, I find that strange for a regen plugin.

    Would love to try this again, but moving on for now.
    1. Jackalantern29
      Author's Response
      Sorry to hear. I just released a small update which fixes the "Block at" error. Note that at the time of this response, this plugin was made with Spigot, not with Paper, so errors may occur when using Paper. The triggers essentially mean if an explosion meets any of those requirements, blocks will regenerate. Blocks won't regenerate for players if they have the permission 'tntregen.bypass' & uses a flint&steel on TnT (it will still regen even if they use redstone on TnT). I do hope you give this plugin another try in the future.
  4. Kai_te
    Kai_te
    5/5,
    Version: 2.2.5
    This is a great plugin, can it support 1.12?
    ===================================
  5. Icesolid
    Icesolid
    5/5,
    Version: 2.2.5
    Excellent plugin. No issue so far, everything works as intended. I recommend setting forceBlockToRegen to true so that snowfall doesn't prevent blocks from regenerating. Insignificant TPS impact.
  6. Elwakka
    Elwakka
    5/5,
    Version: 2.2.5
    Friggin amazing! Most servers have explosion plugins turned off so spawn / etc doesn't look like 2b2t. This helps bring back semi-vanilla explosion mechanics - with tons of options!
  7. rmellis
    rmellis
    5/5,
    Version: 2.2.2
    Been useing this for the past month after moving from CreeperHeal and were Very impressed to say the least, This is a Great plugin that really does an amazing job at automatically rolling back explosions!
    Tons of very useful config options, Its an Essential for us now, Thank You for taking the time to create this awesome plugin and Thank you even more for sharing with us on Spigot!
    Defiantly recommend this!
  8. myketronic
    myketronic
    5/5,
    Version: 2.2.1
    Using Paper 1.14.4 and TnT Regen 2.2.1 - couldn't be happier with the doReplace feature, it lets you transform explosions into marks of character for your world.
  9. Minestick
    Minestick
    5/5,
    Version: 2.1.2
    This is not just a replacement for CreeperHeal, but a completely new plugin with its own feature and stability! It's fully customizable into every single blocks, working efficiently without problems. It hooks onto coreprotect and has the capability of disabling explosion for certain blocks, which makes it suitable for all types of servers, protecting not only the sceneries but also players' possessions.

    I would recommend this for those who're aesthetically concerned, but do not want explosions losing their menace completely. The plugin would repair craters beautifully with particles and effects, and several seconds later no trace of such a horrible explosion would be visible ── unless you want some damage to glass or light sources so that creepers can be more threatening.
  10. myketronic
    myketronic
    5/5,
    Version: 2.1.2
    Have I mentioned how much I like the configuration options for regen? Pitch-shifting and volume change for block placement, as well as particle selection - very nice!