Inactive [EDIT] InstaBreak v2.0 - Break blocks instantly! [1060]

Discussion in 'Inactive/Unsupported Plugins' started by R3ality, Apr 5, 2011.

  1. Offline

    R3ality

    InstaBreak - Break blocks instantly!
    Version: v2.0 (CraftBukkit build #1060)

    This plugin allows players to break blocks with just one strike using an universal InstaBreak tool. It was initially created as a simple, lightweight alternative to the superpickaxe included in the fantastic WorldEdit plugin.

    Current features include support for multi-world permissions (including nether) by the Permissions plugin (usage is optional) and a variety of customizable options and in-game commands (or option to disable any customization if you just want the plain-simple core functionality :)).

    Features:

    • Save inventory slots! - No need to carry multiple tools, the InstaBreak tool works on all* blocks
    • Save time! - Break any* block or placed item with one strike!
    • Break blocks from far away (ranged breaking)!
    • Support for the Permissions plugin (tested with 3.1.5b and 2.7.4, usage is optional)
      • Multi-world permissions support (including nether)!
    • Support for protection plugins (tested with WorldGuard 5.0-dev and EssentialsProtect 2.3.3)
    • Allow breaking of bedrock (also known as Adminium) blocks*
    • In-game commands
      • Change the InstaBreak tool to ANY type of block or item!
      • Toggle InstaBreak mode for ANY player in the server!
      • Toggle block drops upon breaking!
    • Uses a configuration file to persistantly keep settings.
      • Option to turn off commands and permission usage completely (leaving just core functionality).
      • Option to toggle if block breaking is counted in the "Times Mined" of player Statistics.
    * - Except the bottom-most layer of bedrock (breaking that has been intentionally disabled)
    Note: This plugin doesn't affect actions against other entities in any way (players and NPC-s)

    Download: [​IMG] InstaBreak v2.0 (.jar only)

    Installation:

    • Download and place "InstaBreak.jar" file into the "plugin" directory of the server.
    • Start/restart the server to have the plugin loaded (or use a plugin manager)
    • (optional) Make changes in the configuration file
      Read the "Configuration File" section below for details..
    • (if using Permissions) Grant desired permission nodes to users or groups
      Read the "Permissions" section below for details..
    Commands:
    Permissions / Configuration file:
    Show permissions and configuration info (open)
    Permissions:

    Permissions plugin usage is optional. If you are not using it the plugin will default to using the regular "ops.txt" (all commands will be enabled for all ops). If you are using permissions but you do not want it to apply to this plugin there is an option to make the plugin "static" via the configuration file (read below)

    The plugin utilizes the following permission nodes:

    instabreak.toggle - allow player to toggle InstaBreak mode for themselves
    Commands enabled: /ib + /ib info

    instabreak.force - allow player to toggle InstaBreak mode for other players
    Commands enabled: /ib list + /ib enable + /ib disable + (all of the above)

    instabreak.config - allow player to make InstaBreak configuration changes
    Commands enabled: /ib tool + /ib drop + (all of the above)

    Special additional permission:

    instabreak.bedrock - allow player to break bedrock blocks.
    instabreak.ranged - allow player to break blocks at a distance.
    Note: Player still needs to be in InstaBreak mode for these to apply.

    _____________________________________________________

    Configuration file:

    In case the configuration file doesn't exist it is created automatically with default values when the plugin is loaded. This means you probably don't need to worry about it at all!

    Configuration file uses the .yml format (no tabs and be careful with spaces!) and will be at "plugins/InstaBreak/config.yml". The default (with added comments) is as follows:
    Code:
    config:
        dynamic: #These dynamic configuration settings can be changed with in-game commands aswell (read more in the commands section above).
            dropblocks: true #This controls if miniblocks are dropped when using the InstaBreak tool.
            toolid: 50 #This is the TypeId for the InstaBreak tool (Integer value). ID 0 (zero for AIR) = bare hand, ID 9999 = ANY block/tool.
        static:
            staticplugin: false #When set to "true" the plugin completely disables all in-game commands and omits any use of permissions. ALL players of the server will be in InstaBreak mode ALL the time, plain and simple :)
            respectprotection: true #When set to "true" the plugin tries to respect protection rules from other plugins. When set to "false" the InstaBreak tool will break protected blocks/items!
            workatrange: true #When set to "true" the InstaBreak tool will work at a distance.
            breakbedrock: true #When set to "true" the InstaBreak tool can be used to break bedrock blocks
            countstats: true #When set to "true" blocks broken with the InstaBreak tool will get added to the "Times Mined" counter in player Statistics.
    Changelog:
    Show changelog (open)
    InstaBreak v2.0, released on July 22nd

    • Fixed ranged breaking
      Ranged breaking now works thorugh liquids (water and lava).
    • Added possibility to set the InstaBreak tool to ANY block/tool
      When tool ID is set to 9999 players can use anything as the InstaBreak tool
    InstaBreak v1.9.1, released on June 27th

    • Fixed issue with "/ib i" command
      While not having permissions to use ranged breaking it was still indicated as bein ENABLED. Details here..
    InstaBreak v1.9, released on June 17th

    • Support for protection plugins!
      InstaBreak now supports protection plugins (see the feature list for details on which plugins I tested this with). This feature is enabled by default but can be disabled in the configuration file.
    • Breaking blocks from a distance! (ranged breaking)
      InstaBreak tool can now breaks blocks at a distance of 200. This feature is enabled by default but can be disabled in the configuration file. It also adds a new permission node.
      Ranged breaking is slow when keeping the mouse button clicked to repeat the action (due to the arm swinging animation). This can be overcome by rapidly re-clicking the mouse button (*click*click*click*click*).
    • Improved the configuration file layout.
      An example can be found in the configuration file section above. In the new file, "config.static.*" nodes are for static settings (which can only be modified manually by editing the configuration file). "config.dynamic.*" nodes are for dynamic settings which can be changed with in-game commands in addition to the configuration file.
      NB! Delete the old configuration file when updating to this version!
    • Code cleanup and smaller improvements.
      Message coloring is now done a little more elegantly. Bedrock breaking feature can now also be toggled in the configuration file (making it usable in servers which do not use the Permissions plugin aswell)
      NB! Changed the bedrock breaking permission node name to "instabreak.bedrock"!
    InstaBreak v1.8, released on June 14th

    • Multi-world support!
      Support for multi-world permissions! Disables InstaBreak mode if player moves to a world where he/she does not have sufficient permissions. InstaBreak mode forced by the "/ib e" command is immune to these restrictions!
    InstaBreak v1.7, released on June 1th

    • Updated the plugin to the first recommended CraftBukkit build for Minecraft beta 1.6
      Due to this the plugin no longer works with older CraftBukkit builds!
    • Fixed the issue which didn't allow breaking bedrock blocks through water blocks
      Also removed the constraint which did not allow instabreaking bedrock blocks at map height > 127
    InstaBreak v1.6.1, released on May 11th

    • Fixed issue of the console being spammed with a "[SEVERE] Could not pass event PLAYER_ANIMATION to InstaBreak"
      However it is no longer possible to break bedrock blocks when standing at a height of 127 or higher
    InstaBreak v1.6, released on May 11th

    • Breaking blocks using the InstaBreak tool gets counted in your Statistics (Times Mined value)
      This does not apply to bedrock blocks and can be disabled in the plugin configuration file
    • Fixed isse with disabling the plugin using a plugin manager
      Players who are in InstaBreak mode no longer keep it after the plugin is disabled
    • Announcement about changed settings (InstaBreak tool and block drops) is no longer server-wide
      Instead it is only shown to players that currently are in InstaBreak mode or who have sufficient permissions to enable it
    InstaBreak v1.5, released on April 18th

    • Implemented bedrock breaking
      Bedrock can now be broken (except the bottom-most layer of the map). This is enabled through a special permission.
    • Changed display message..
      ..which is shown if "/ib enable" or "/ib disable" is attempted on players that have sufficient permissions to toggle it themselves
    • Enabled "/ib info" command..
      ..for players that have been granted the InstaBreak mode with "/ib enable"
    InstaBreak v1.4

    • Added configuration file usage
      Plugin now uses a configuration file to save the important stuff when server "stop"-s gracefully. Configuration file is generated automatically with default values if it doesn't exist.
    • Added Permissions plugin support!
      Using it is completely optional. If it is not loaded the plugin will default to "ops.txt". See abobe for a list of grantable permissions..
    • Changed the overall command structure and added more commands
    • Added option to change the universal InstaBreak tool.
      Either from the configuration file or with in-game command (if sufficient permissions)
    • Added option to disable miniblock dropping.
      Either from the configuration file or with in-game command (if sufficient permissions)
    • Added option to grant InstaBreak mode to ANY player (and list or remove them)
      Done with in-game commands (if sufficient permissions). The target player does not need ANY permissions or special rights.
    • Added option to load the plugin in "static" mode.
      This can be set in the configuration file. It disables all in-game commands and any permissions functionality. All players of the server will be in InstaBreak mode, plain and simple :)
    • Rewrote core logic and general code cleanup.
      Instead of listening to block damage events (as in prior versions) the plugin now listens for player interaction events. Results in improved speed and functionality
    • Fixed breaking of TNT blocks.
      The explosion is no longer triggered upon breaking..
    • Fixed issue with miniblocks not being dropped.
      All blocks (except bedrock :( but I'm working on that) and placed items should now drop miniblocks.
    • Fixed issue with using InstaBreak tool on large chests (2 connected chests).
      There still *might* be errors if the 2 chests are placed using MCEdit tool (and perhaps other map editors).
    InstaBreak v1.3

    • Fixed issue with breaking bedrock blocks
      It shouldn't be possible to break bedrock blocks using this plugin any more
    • Fixed issue with entering the commands from server console
    InstaBreak v1.2

    • Changed command syntax.
      Using just "/ib" displays current status. Enable/Disable is now done via "/ib on" and "/ib off"
    InstaBreak v1.1

    • InstaBreak mode now only applies if player is using a torch (item id 50)
      This is in case other players in the server do not wish to benefit from the InstaBreak functionality for whichever reason. They can keep using their tools the normal way.
    • When plugin gets enabled/disabled it is globally announced
    InstaBreak v1.0

    • Initial version
    Known issues / Future ideas:
    Show issues and ideas (open)
    Known issues:

    • Items which are not breakable by hand (see table here) currently DO get broken. But they WILL NOT drop a miniblock for you to pick up fixed in v1.4
    • Typing in the commands from server console results in errors fixed in v1.3
    • It is in some cases possible to break bedrock (when clicking on a non-bedrock block and then moving cursor onto a bedrock block) fixed in v1.3
    • Using InstaBreak tool on a large chest (2 connected chests) results in an error and client gets disconnected. fixed in v1.4
    • Trying to break bedrock blocks through water doesn't work fixed in v1.7
    • Breaking blocks with InstaBreak tool is not takin into account in Statistics (maybe even a good thing) fixed in v1.6, is configurable
    • Disabling the plugin with a plugin manager (for example PlugMan) disables commands but does not remove InstaBreak mode from any players currently in it fixed in v1.6
    • Ranged breaking does not work through water (or lava) fixed in v2.0
    Future ideas:

    • Add permission support added in v1.4
    • Add ability to choose/change the universal InstaBreak tool added in v1.4
    • Do something with damaging TNT. Currently instabreaks but still triggers explosion. done in v1.4
    • Do something with damaging monster spawners. Currently instabreaks but leaves flame animation.
    • Enable bedrock breaking via special permission and/or configuration setting done in v1.5
    • If "/ib tool" or "/ib drop" commands are used, the status announcement will be made server-wide. This should probably be made to only the players that can actually use the InstaBreak tool fixed in v1.6
    • InstaBreak mode granted with "/ib enable" command is lost upon player reconnecting. Maybe it should persist until disabled manually or server "stop" cancelled until highly requested
    • Add direct download link for only .jar file added since v1.5
    • Multiworld support.. added in v1.8
    • Breaking blocks from a distance added in v1.9
    • Allow players to use any block/tool as the InstaBreak tool added in v2.0
    • Make instabreak tool instakill entities
    • Add in-game commands to toggle ranged and bedrock breaking
    Like this plugin?
    In that case feel free to show your support by making a donation :)
    [​IMG]
     
  2. Offline

    NemTheking

    Seems to be broken with 1.6.4... Please update for CB #813
     
  3. Offline

    R3ality

    Reported issues noted..
    ... however, I will most certainly not be wasting any time and effort until there is a stable build of both Minecraft and Bukkit!
     
  4. Offline

    Veka

    Simple building server necessity
     
  5. Offline

    anonn

    Your plugin is the only plugin on my server not working with CB#813...
    Sigh.
     
  6. @anonn Same here. I hope this gets updated really soon.
     
  7. Offline

    bigowner

    make it for the 818 thing plz cuz it doesnt work annymore!
     
  8. Offline

    anonn

    Now that CB#818 has been released, hopefully we see an update soon.
    Been trying to find an alternative and have yet to find anything that works.
     
  9. Offline

    IronWill1991

    Try superpower plugin, you can instant break blocks with it.
     
  10. Offline

    RobH779

    I hope we see a b818 compatible version soon. It's the only (and most important) plugin not currently working on our server.
     
  11. Offline

    R3ality

    New version..
    Needless to say this version includes nether support aswell..

    I also removed the .zip download option since the last archived version was accessed like 6 times :p
    EDIT: Scratch that, it was actually 931 times. But I won't re-add a link to an archived version unless someone requests it..
     
  12. Offline

    JanTTuX

    Thank gawd it works!
     
  13. Offline

    RiHeDiPa

    LOVE this plugin sooo much thanks works great ;)
     
  14. Offline

    Dooglz

    now I can put my server back online, can't live without this, thanks for the update
     
  15. Offline

    Icely

    Thx for updatin this to 818, This is our most useful plugin so far :)
     
  16. Offline

    anonn

    Thanks for updating this. This was the only plugin that I was waiting for to be updated. Thanks once again.
     
  17. Offline

    Ian Yang

    A whitelist/blacklist for InstaBreak would be nice; for those who will reply 'Permissions?', permissions don't work for my private server
     
  18. Offline

    R3ality

    @Ian Yang: I don't understand what you meant by "..for those who will reply 'Permissions?'..". And if you'd like me to look into it you would have to provide more information - on my test setup it works fine!
     
  19. Offline

    Ian Yang

    That was just a side note, for me Permissions isn't working and so I was requesting if you could make a configurable whitelist/blacklist for who can use the InstaBreak plugin
     
  20. Offline

    R3ality

    @Ian Yang: I don't see a benefit to adding more complexity implementing a white-/blacklist. The plugin has permissions support - players ability to use the InstaBreak mode should be controlled through that (or the manual "/ib enable" command).
     
  21. Offline

    dfduck

    I really like this plugin, but I would like if there was multiworld support, because I have a normal world and a freebuild world. I'd like to have it so that when someone types /ib in the freebuild world, he gets the instabreak, but when he's going to another world (like the normal world), he doesn't have instabreak anymore.
     
  22. Offline

    R3ality

    Checked against CraftBukkit build #860. Seems to work fine!

    @dfduck: That has been requested before and is something I will be looking into in more detail whenever I get a chance..
     
  23. Too lazy to see is these reported already but here is one "bug":

    - You can destroy with IB item the Protection sign, which protects chests (Essentials plugin)
     
  24. Offline

    anonn

    I doubt they are bugs. I mean, you can even break Adminium with IB.
     
  25. Thats why "bugs" ;) Well somehow it should be blocked that you cannot destroy Protection signs at all because if you wan't players to protect their chests from unauthorized access you cannot use this plugin as well :(

    Quick fix would be to ignore IB to insta break signs...
     
  26. Offline

    R3ality

    @Tumpo: Yeah, the protection plugins subject has been brought up before aswell...
    But since there is no common and agreed way block/item protection is implemented throughout the different plugins providing that functionality, it is too much dirty work trying to make this plugin support them..

    Since you mentioned signs (care to tell me the exact plugin name by the way?) I figured I could create a configurable option for blocks/items which will NOT be breakable using the InstaBreak tool. Sort of like an ignore list. But then again what stops the player from breaking the dirt (or whatever) block under the sign (upon which the sign will break anyway) ?
     
  27. @R3ality Essentials(Protect)

    http://forums.bukkit.org/threads/ge...on-of-useful-commands-and-features-860.15312/

    Thats true that block beneath them can be destroyed and sign will go aswell. I need do some testing...

    Interesting. I found this from config of Essentials:

    Code:
    # Blocks below rails/signs are also protected if the respective rail/sign is protected.
    # This makes it more difficult to circumvent protection, and should be enabled.
    # This only has an effect if "rails" or "signs" is also enabled.
    block-below: true
    Let me test if it's works vs IB or does it work at all.

    Well it looks like protection works without IB, but with IB you can destroy chest/protection sign or block beneath the sign.
     
  28. Offline

    R3ality

    @ Tumpo: Yes, as I already confirmed in my previous post, InstaBreak is NOT subject to any restrictions provided by any protection plugins. However, thanks for testing the below-sign block breaking anyway :)

    Also, this sadly rules out the proposed solution. Even if I implemented an ignore list and if signs were set to be ignored (making them unbreakable by the InstaBreak tool) - nothing would stop the player from using the InstaBreak tool on the block below the sign.
     
  29. Offline

    EssentialsTeam

    What about code like this:
    Code:
    BlockBreakEvent event = new BlockBreakEvent(block, player);
    server.getPluginManager().callEvent(event);
    
    if (event.isCancelled()) // Do nothing
     
  30. Offline

    R3ality

    Interesting!
    I will look into it..

    New version..
    I tried to update the initial post as best I could but if something is left unclear, don't hesitate to ask..

    Basically the multi-world permissions work as one would expect with one quirk to it. The forcing of InstaBreak mode (the "/ib e" command) bypasses any permission checks. Please see below example to illustrate:

    Server set-up:
    The server is using the Permissions plugin (BOTH the new 3.1.5b and the old 2.7.4 versions are supported!)

    Case 1:
    There are two worlds: World A and World B (which may aswell be the nether world tied to World A)
    There is one player: Player A

    Player A has the "instabreak.toggle" permission node for World A but NOT for World B.

    While in World A, Player A enables InstaBreak mode for him/herself via the "/ib" command.
    When Player A goes to World B and tries to hit a block with the InstaBreak tool he/she recieves the following message and InstaBreak mode is disabled:

    [​IMG]

    Case 2:
    There are two worlds: World A and World B (which may aswell be the nether world tied to World A)
    There are two players: Player A and Player B

    Player A has NO special permissions whatsoever on either of the two worlds.
    Player B has the "instabreak.force" permission node.

    While in World A, Player B enables the InstaBreak mode for Player A using the "/ib e" command. When Player A goes to World B he/she is still in InstaBreak mode and the tool works as expected!

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 13, 2016
  31. Offline

    iKogMaw

    I don't think you updated the download link for v.1.8
    And for some reason this wont work with my permissions 3.5.1.
    It says that it was successfully loaded, but it the /ib command doesn't work
     

Share This Page