DynaHate - Hate the dynamite Version: v1.0.1 Tested with Permissions 2.7.4-3.1.5b and CraftBukkit #935 TNT - It's full of hate. Griefers and non-trusted members may abuse it, but no longer! DynaHate disables dynamite explosions! Trusted members with permission node 'DynaHate.exclude' or OPs are unaffected. This is a rewrite of my DropPlugin and uses almost identical sourcecode. I made this plugin for basic protection while still allowing TNT traps and having a Permissions system for TNT. How it works: Player puncing TNT without permission: Defuse the bomb, drop a TNT block. Player punching TNT with permission: Boom. Spleef: You can also use this plugin for spleef! TNT makes an instant drop and hence a good platform to play spleef on! Just make sure everyone is in your "spleef group" and that they don't have the exclusion node. Features: Prevents TNT explosions (Note: Redstone activation is not prevented!) Permissions support (OP check if not found) Lightweight No config, easy to use! Download (Latest version, wget friendly): DynaHate.jar (Mirror) Source Code Usage: Place the DynaHate.jar in your server's /plugins/ directory, just like any other plugin. Restart your server. If using Permissions, configure your groups excluded from this plugin. The permission node for excluded users/group is 'DynaHate.exclude'. Permission nodes (Move your mouse to reveal the content) Permission nodes (open) Permission nodes (close) DynaHate.exclude - User/Group is excluded from this nerf, punching TNT will make it go boom. To-Do: Logging? Notify moderators? Issues: Redstone can activate TNT and blow it up. Since there is no ownercheck for redstone and I like to make traps for people, I'll leave this in as a "feature". If you're looking for a complete TNT nerf, try some other plugin such as WorldGuard. BigBrother does not log defused TNT. Maybe a feature too? Missing API from BigBrother. Changelog: Version 1.0.1 (Download) Minor code changes, just to be sure that this works in future(?). Version 1.0 (Download) Initial release
Right, I forgot how this has the same issue with BigBrother like DropPlugin. TNT defusal is not logged by BigBrother, but does it matter?
v1.0.1 released with very minor changes. EDIT: Should I add notify messages or console logs when TNT is broken?
A config... permissions(?)... hmm, possible and quite easy! But maybe later, I got bigger projects to do. By the way, there was a mixup with the downloads, the versions didn't quite update. Try redownloading if you tried to download v1.0.1 but got v1.0 instead.
I figured, I don't see a use for the logging right now. If you really want it, go ahead and use GriefAlertR, less work for me. EDIT: GriefAlertR conflicts with this plugin if TNT onBreak is restricted. Just restricted to false and it should work fine.
I was so happy to see this plugin and installed it right away. Then realized the fatal flaw, anyone can light the tnt with redstone and triggers. :/ I know there's no way to fix that so I just have worldguard to stop the explosions so all players can use TNT as building block now since they can pick them up and moving them...but yeah, I don't feel safe leaving tnt on everywhere else when anyone can trigger it.
Like I said, it's a "feature". You must use another plugin such as WorldGuard to prevent explosions with redstone. Boom.
Is there a hook in the current bukkit build that could prevent triggering through redstone or switch interactions?
I think there is, but it doesn't have a permission check. A workaround could be that TNT explodes with no damage with redstone. Player actions (punching) would drop a TNT block unless he or she is excluded. I have no intentions to do this, however. Also, I think that... fire may just set the TNT on fire, ignite and explode it too.
I will no longer support this plugin from Beta 1.7 onwards, as TNT cannot be ignited with a punch anymore.