FatTnt
FatTnt can control Explosions (not only of TNT) and add some new dynamics.
Maintenance Phase
Due to timing constraints i will most likely not add any new features.
The block lists may be clearly outdated, if anybody has a list for 1.6.1 or so i can link them from here, otherwise this means you have to edit the block lists to how strong blocks are supposed to be by hand!
I will might not add a feature to import resistance values from CraftBukkit internals, could think about importing from Minecraft-Wiki though.
I might keep this updated for a while, be it on BukkitDev or by other means, but do not expect new features to be added, no guarantees for further support.
(license updated)
If anybody wants to contribute to this i am open to suggestions, might help with refactoring / introduction. In fact i still would like to add more simple ways to configure the blocks, and possibly adjust to some api additions.
Reference: Features | Configuration
Overview:
- FatTnt actually replaces the minecraft explosion impacts by applying another algorithm. This aims at making many aspects of the explosions impact customizable, such as how strong blocks resist explosions before breaking, if they allow passing on the explosion without getting destroyed, or if they pass on damage to entities for an extended damage-range.
- You have a variety of settings how to affect other entities and blocks, concerning damage, creating primed TNT from dropped or burning tnt-items, tossing entities and similar. Most settings can be adapted to worlds/entities in an almost arbitrary manner.
- Anti lag features: FatTnt uses scheduling internally to control how much time is spent per tick on explosions, item spawning and such.
- The original request i had in mind had been to allow explosions to go through water and lava, now you can control if the explosions will destroy it or just go through it or get stopped, whatever you choose. Now your redstone circuits are safe behind walls of obsidian, unless someone tweaked the configuration to make obsidian destroyable.
Developers:
- GitHub: Source | Lists file
- Changelog: See bottom of lists-file.
- License: Pending,
something minimal on top of what you can do when writing a plugin for Bukkit/CraftBukkit.
(Will be stated int the lists file.) - Join in? Mabe ... i might need suppot... testers, documentation, presets for configuration, coding.
This started as a fridays random plugin.
-
View User Profile
-
Send Message
Posted Jul 10, 2012A new update (0.2.0-DEV-3) is coming relatively soon:
Left to do for this version:
Version after the next version:
-
View User Profile
-
Send Message
Posted May 22, 2012@ClockworkHatter
In addition it is possible to define passthrough-resistence values for materials - this would allow to let the explosion pass through blocks like crops, fences or wooden doors, while not destroying anything (provided the resistance values for those are high enough).
Then the passthrough value just defines by how much the explosion strength gets less when passing through such material.
Another thing that one might do is to define the blocks that pass on entity damage, i.e. allow entities/ players outside of the explosion core radius to be damaged if the explosion would propagate to the entity along a ray from the center only touching these kind of blocks.
At some point i might try to give more "complete" configuration examples for the explosion strength thingy, but currently i don't have much time...
-
View User Profile
-
Send Message
Posted May 20, 2012@ClockworkHatter
Yes, you can set the default resistance value to very high, while you use one set with a reasonably low resistance value for stone brick.
FatTnt does not yet have "greedy settings" to replace all possible explosions, but if your intention is creepers and tnt then it should work if you have them in the entities list.
-
View User Profile
-
Send Message
Posted May 16, 2012Would I be able to make it so that all blocks resist tnt, except for cracked stone brick with this?
-
View User Profile
-
Send Message
Posted May 2, 2012Great plugin. Thanks
-
View User Profile
-
Send Message
Posted Apr 21, 2012@IceSpike
"after 5 blocks have passed" - What is your intention with it, do you want it to detonate after some time or when the player is away more than 5 blocks?
At least you will need to register for some PlayerInteract event and check what block is clicked and what item the player has in hand, then you will need a way to get the tnt detonate.
For detonation there are two basic ways - you can make a direct explosion with World.createExplosion (kind of fake, no warning to the player), or you need to use CraftBukkit to use TNTPrimed.class as argument to World.spawn (and remove the tnt block) you can then set the fuse ticks of the tnt to control when it will explode.
Further you could also control the TNTPrimed by storing the entity-id of it, and cancel its ExplosionPrimeEvent, if you want to prevent explosion while near to the player that ignited it, then maybe remove it and create a new TNTPrimed, till the player is far enough, or even turn it back into a block or spawn a tnt item instead, but there i am not sure what you are aiming at!
-
View User Profile
-
Send Message
Posted Apr 21, 2012I'm trying to make a plugin that makes TNT to detonate(when they have been clicked with a gunpowder in hand) on impact after 5 blocks have passed. How could I do that? Thanks for the tips.
-
View User Profile
-
Send Message
Posted Apr 16, 2012@Migrosbudget The number of explosions does not (yet) matter because the blocks have a fixed resistance value. In the default configuration you can remove obsidian from the strongest group (resistance 20, TNT can not destroy it by default) to some other in the resistance section. The Strength of TNT is by default somewhere around 8 so you can experiment with the settings how near the tnt must be to destroy it. The id is 49, the default resistance group is "strongest".
Currently only the explosion strength that arrives at a position determines if the block can be destroyed, no cumulative damage, just the resistance value from the configuration. Though that would be an interesting feature...
Here the group in which obsidian(49) is in the default configuration:
You can remove it form the list and put it to some other group, or create a new one.
@Buttercake_
Most blocks like obsidian do not really take damage over time in minecraft (see above), you can change the resistance value for obsidian as described above.
I am sorry about the undocumented appearance of this plugin ... yet it is comparably early stage in development and i am considering changing the configuration around a bit.
Currently you have to ask and experiment a bit with the settings. I will try to keep the block resistence and passthrough settings, such that those wont change when the configuration changes.
I will add documentation with time...
EDIT: Sorry, it must be resistence for this version ,if i am not mistaken.
-
View User Profile
-
Send Message
Posted Apr 16, 2012Really no idea what Im doing wrong, I left all the values on default but I just cant get obsidian to get destroyed, no matter how many tnt I use.
What the hell am I doing wrong.
-
View User Profile
-
Send Message
Posted Apr 16, 2012Hello,
I can't figure out how I can make obsidian so that it destroys after 4 hits of TNT. Could you please tell me how to set that up? I haven't seen any kind of description that explains how the config works.
Could you tell me?
-
View User Profile
-
Send Message
Posted Apr 11, 2012@ultimateowner56
Not affected - what exactly do you need, concerning water/lava?
You can configure to have water and lava pass on entity and block damage, to never get destroyed (though passing on damage and destruction), to always get destroyed.... such is already possible.
I will make major changes to the configuration more or less soon, so if you really start using it there may be some work to adjusting the settings, then.
By default i think that lava and water are configured to pass on all kinds of damage, but not get destroyed.
-
View User Profile
-
Send Message
Posted Apr 11, 2012Great plugin that will help with my pvp server.
In the near future can you make it so tnt is not affected by water/lava?
-
View User Profile
-
Send Message
Posted Apr 10, 2012@ChainSawXL
It will not be a quick addition, because i have to clean up the configuration a lot, to make it easier readable and understandable and flexible enough to bring in specific settings to different contexts (defaults, worlds, entities, confinement, ).
To make that transition more easy you could state what features you (most) need !
Are you mainly interested in restricting the detonation and/or block effects and/or entity damage to a certain part of the world ( minY <= y <= maxY)?
I am not sure if i will too soon add player specific permissions for placing tnt, linking it with redstone, or igniting it directly, because those are slightly off center of my intentions with this plugin (replace, adjust, control explosion effects on blocks, entities), though not impossible to add.
-
View User Profile
-
Send Message
Posted Apr 10, 2012@daeger
I too would like to see this back. No TNT in my server since this plugin was outdated.
-
View User Profile
-
Send Message
Posted Apr 10, 2012@daeger
Will be added at some point ...
-
View User Profile
-
Send Message
Posted Apr 9, 2012BlastControl used to allow you to have explosions do no damage if they're above a certain elevation, so ground-level explosions don't do anything but underground explosions do.
-
View User Profile
-
Send Message
Posted Apr 5, 2012This is just what I need :D
-
View User Profile
-
Send Message
Posted Mar 31, 2012@asofold
Ok i misspelled my search keyword "creaper"...
I am not sure what exactly CreeperHeal does to do damage but not have blocks destroyed for instance, but if it just alteres the blocks of an EntityExplodeEvent for that case, then it will likely be compatible for FatTnt also throws those events as if normal tnt exploded, except that the calculations for blocks and damage have been done by FatTnt, then.
What do you need FatTnt for?
Yet it is in quite early stage, though i find it interesting myself and probably will make it "fully work".
-
View User Profile
-
Send Message
Posted Mar 31, 2012@S3thc0n
What does CreeperHeal do ?
By default FatTnt will only replace tnt explosions, do you intend to use it for creepers too ?
It might be possible, but currently i am focusing on TNT, mainly.
There still are some basic issues that i want to fix, then i will have to extend the configuration. All the settings are more like examples yet, very roughly guessed.
You can already now let it only destroy certain blocks, let explosions go through water and lava (and off water), configure blast resistance of any material, and manipulate quite some aspects of it.
Next thing i want to fix is, that the explosion is slightly offset for tnt, which lets it go off inside an obsidian wall (and thus do nothing), though the tnt is outside - that might be a simple fix. Then i will add that other tnt blocks will trigger if in range, so they explode too.
-
View User Profile
-
Send Message
Posted Mar 31, 2012Looks nice, will this break plugins like CreeperHeal?