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

    ddubois89

    @R3ality latest RB (1000) and latest IB version 2.0 and this is spamming the shit out of my console. also ranged breaking seems to be spotty working sometimes and not others.



    Code:
    
    20:51:16 [SEVERE] Could not pass event PLAYER_INTERACT to InstaBreak
    java.lang.NullPointerException
            at com.r3ality.mail.InstaBreak.InstaBreakPlayerListener.breakBlock(Insta
    BreakPlayerListener.java:88)
            at com.r3ality.mail.InstaBreak.InstaBreakPlayerListener.onPlayerInteract
    (InstaBreakPlayerListener.java:82)
            at org.bukkit.plugin.java.JavaPluginLoader$10.execute(JavaPluginLoader.j
    ava:307)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:58)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:332)
            at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEven
    t(CraftEventFactory.java:168)
            at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:6
    3)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:458)
            at net.minecraft.server.Packet14BlockDig.a(SourceFile:42)
            at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
     
  3. Offline

    ACStache

    @R3ality
    Going with what dduboi89 said about ranged being spotty (dunno, haven't used it too much) I have noticed a "dead zone" of sorts, that's just past the 4 block range of normal breaking but just past like 6-8 blocks? I haven't tested it alot but I've noticed it on several occasions messing around with ranged breaking
     
  4. Offline

    Buckethead

    im new to all this. if i - 'instabreak.*' will that give all instabreak permissions. also does the .* work in allll plugins with permissions
     
  5. Offline

    ACStache

    from what I've read, the .* is spotty when using the build in Bukkit Permissions and SuperPermBridge. Some plugins it works, others it doesn't. (can't say which way this one goes for it)
    if using Group Manager or Permissions 2.7.4/3.1.x then - 'instabreak.*' should give you everything.
    I've only ever used Permissions 3.1.x, and I can say it's working on that
     
  6. Offline

    Buckethead

    if i set tool id to 0 aka air does that mean i can just use my hand?
     
  7. Offline

    R3ality

    @Kryppuk: No problem! Any feedback is good feedback :)

    @Fabis94: As mentioned in the initial feature list and a few posts above as well this plugin does check if something is intercepting breaking events. If so then the breaking event is cancelled. Therefore it *should* work with most/any break protection plugins - but it does not include such functionality itself.

    @ddubois89: So far yours is the only report of any issues and/or console errors. Have you tried a vanilla CraftBukkit or removing other plugins?

    @ACStache: Yes I have noticed the "dead zone" between non-ranged and ranged breaking. However I don't think I can do anything about this. Ranged breaking is triggered when player hits AIR. Non-ranged breaking is obviously triggered when player hits ANY other block than air. So technically the dead zone shouldn't exist..

    @Buckethead: About setting the tool to ID 0; Yes, you exactly right! Another recently added option is to set the tool ID to 9999 which will then allow you to use anything you have (or nothing) in your hand..
     
  8. Offline

    Buckethead

    i have the instabreak.bedrock perm and i still cant break bedrock. do u want my config
     
  9. Offline

    R3ality

    @Buckethead: If you want me to try to create a similar setup to test the issue you are reporting then yes you can provide the config file for this plugin (plugins\InstaBreak\config.yml) and perhaps your permissions configuration file for the world you are using. On my current test setup breaking bedrock blocks (except THE bottom-most layer of the map) seems to work fine..
     
  10. Offline

    David5534

    nice plugin but could you make it so the worldedit item doesn't break stuff when all items are enabled? maybe make it so people can choose items to exclude in the config?
     
  11. Offline

    Buckethead

    ok i will upload my config for ur plugin and my perms. ill also list all my plugins im using...

    im using:

    Adminscanfly
    automessage,
    Backup 1.6
    Essentials
    essentialsprotect
    essentialsspawn
    floodgates
    heroicrebuke
    icegeoip
    illegalname
    instabreak
    lazyroad
    mobarena
    permissions
    rakamak 3.0
    reusableglass
    simplejail
    whitelist 2.7
     

    Attached Files:

  12. Offline

    dbizzzle

    Hey, could you please post the source code? Thank you :)
     
  13. Offline

    unit56

    i am, having an issue with this plugin only for some reason it will, not create the config for itself
     
  14. Offline

    cheese510

    This plugin may be just what i am looking for, but one crucial question. Can this break through protection? IE made with iZone?
     
  15. Offline

    Buckethead

    this is my permissions http://pastie.org/2425351

    my builder pros can s it nor moderators or admins or me the OWNER. it acts like perms arent their because only my ops can use it
     
  16. Offline

    ath8484

    Hello... so this is an AMAZING plugin... and it makes my life a lot easier... but I found a big bug that is pretty obnoxious! For some reason it doesn't break blocks from exactly 5 blocks away... it works for past 5 blocks. Breaking blocks at a distance is enabled. If this was fixed this plugin would become MY FAVORITE EVER!! Thanks!
     
  17. Offline

    sbeex

    Hi could you update it for cb1060 please ?
     
  18. Offline

    Buckethead

    since this guy wont i would recomend super pickaxe which also allows use of mining bedrock so id recomend that toreplace this
     
  19. Offline

    sbeex

    Thank you I'll have a look on it ;)
     
  20. Offline

    R3ality

    @David5534: I'm afraid you need to be more specific on what you mean..

    @Buckethead: Sorry, the list of plugin you were using together with InstaBreak is way too long for me to start going through on any dependency issues. InstaBreak is confirmed to be working on a vanilla CraftBukkit (with support to the plugins mentioned in initial post) - for any other additional plugins I cannot comment..

    @ath8484: I am aware of the "dead zone" in the breaking vs ranged breaking. This seems to be an issue of CraftBukkit and I do not have a solution for the moment..

    @sbeex and Buckethead: There is nothing to update! Plugin works fine with CB #1060
     
  21. Offline

    sbeex

    My community need plugins that are active. (You needed nearly one month to change your plugin title from [1000] to [1060] sorry but I changed to another one.)

    (I'm not here to make any judgement about you I know you have a life with others things to do but with my community I have to be serious)
     
  22. Offline

    ACStache

    Just because a Plugin doesn't update the thread title to say [newest RB] doesn't mean it won't work ;)
    Look at stuff like Permissions 3.1.6, it's inactive/dead but still works on 1060. Same with 2.7.4
     
  23. Offline

    sbeex

    I've switched also switched to bukkit permissions ^^
     
  24. Offline

    ath8484

    okay... Its still an amazing plugin! Thanks for making it in the first place!
     
  25. once i turn this off i cannot pick up anything I destroy, I turn it back off and still cant pick up any other items.
     
  26. Seems broken on 1.0:

    Code:
    09:33:28 [SEVERE] Could not pass event PLAYER_INTERACT to InstaBreak
    java.lang.NoSuchMethodError: net.minecraft.server.Block.dropNaturally(Lnet/minecraft/server/World;IIIIF)V
            at com.r3ality.mail.InstaBreak.InstaBreakPlayerListener.breakBlock(InstaBreakPlayerListener.java:88)
            at com.r3ality.mail.InstaBreak.InstaBreakPlayerListener.onPlayerInteract(InstaBreakPlayerListener.java:82)
            at org.bukkit.plugin.java.JavaPluginLoader$11.execute(JavaPluginLoader.java:330)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339)
            at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:171)
            at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:92)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:497)
            at net.minecraft.server.Packet14BlockDig.a(SourceFile:43)
            at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:92)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
            at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:516)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:414)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
    
     
  27. Offline

    Buckethead


    check out super pickaxe or if u have worldguard or worldedit these are both in it
     
  28. Offline

    bluehasia

    it seems when using this. the tool i have set will not break anything now. the block just reapears. on 1597

    really liked this for the range
     
  29. Offline

    Buckethead

    check out suuper pick axe. much better
     
  30. Offline

    KollegahDerBoss

    Please update this! :(
     
  31. Offline

    Buckethead

Share This Page