ChopTree
ChopTree
ChopTree is a simnple plugin, that let Trees act like cacti.
This plugin is originally coded by askmeaboutlo0m. I only updated it for the newest Craftbukkit build and removed some errors.
Tested with CB 1.0.1-R1
Supports: Permissions v. 2.7.4 (Phoenix) and mcMMO v. 1.2.07
Please give me feedback and make suggestions what features you would like.
Features:
- Lets trees act like cacti - remove a block and all blocks above are yieled too.
- Or you can make that log blocks move down one by one instead - no more climbing trees.
- Works with all three tree types (they all yeild their own wood).
- Also works with "big" trees that have multiple branches - makes felling them a lot easier.
- Restrict using this plugin to certain tools only.
- Supports mcMMO and Permissions.
- Only works on trees, houses made of logs are safe!
- Chunk protection to make your tree houses safe.
known issues:
- Mcmmo-support is NOT working yet - working on it
Default ChopTree.properties
# -ChopTree Properties- # You can add or change the command and toggle command aliases here. # Because of technical limitations the console commands will always be "ChopTree" and "ct", but the in-game comments will be taken from here. Command = ChopTree, ct Toggle = ToggleChop, tc # Here you can change the options (can also be done in-game). ActiveByDefault = true UseAnything = true MoreDamageToTools = false InterruptIfToolBreaks = false SupportMcmmoIfAvailable = false TreeFellerNeeded = false LogsMoveDown = false OnlyTrees = true EnableOverride = false # -Material List- # If the "UseAnything" option is false, the plugin will take the items you can use to chop trees with from here. # You can either put in the material's name or its ID. mat = WOOD_AXE mat = STONE_AXE mat = IRON_AXE mat = GOLD_AXE mat = DIAMOND_AXE
This plugin may just be what I need to finally buckle down and learn how to use github and write Java :P
Iso_1, looking around your source code it seems you have started to update this to 1.1
This is one plugin I would LOVE to see revived.
can u make is for singleplayer 1.0.1???????
davenlorena
I get a error my server console all the time weith this plugin any 2012-01-05 11:12:41 [SEVERE] Could not pass event BLOCK_BREAK to ChopTree
java.lang.IllegalAccessError: tried to access field net.minecraft.server.ItemStack.damage from class me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.updateInventory(ChopTreeBlockListener.java:107)
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.Chop(ChopTreeBlockListener.java:87)
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.onBlockBreak(ChopTreeBlockListener.java:58)
at org.bukkit.plugin.java.JavaPluginLoader$40.execute(JavaPluginLoader.java:542)
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339)
at net.minecraft.server.ItemInWorldManager.c(ItemInWorldManager.java:201)
at net.minecraft.server.ItemInWorldManager.a(ItemInWorldManager.java:165)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:501)
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:93)
at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
2012-01-05 11:12:45 [INFO] [31m[ADMIN] [31m2getterau[37m[37m: yeah[0m
2012-01-05 11:12:47 [INFO] [Lockette] (Admin) 2getterau has bypassed a door owned by warhawkcrazy97
2012-01-05 11:12:56 [SEVERE] Could not pass event BLOCK_BREAK to ChopTree
java.lang.IllegalAccessError: tried to access field net.minecraft.server.ItemStack.damage from class me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.updateInventory(ChopTreeBlockListener.java:107)
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.Chop(ChopTreeBlockListener.java:87)
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.onBlockBreak(ChopTreeBlockListener.java:58)
at org.bukkit.plugin.java.JavaPluginLoader$40.execute(JavaPluginLoader.java:542)
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339)
at net.minecraft.server.ItemInWorldManager.c(ItemInWorldManager.java:201)
at net.minecraft.server.ItemInWorldManager.a(ItemInWorldManager.java:165)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:501)
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:93)
at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
2012-01-05 11:13:42 [SEVERE] Could not pass event BLOCK_BREAK to ChopTree
java.lang.IllegalAccessError: tried to access field net.minecraft.server.ItemStack.damage from class me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.updateInventory(ChopTreeBlockListener.java:107)
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.Chop(ChopTreeBlockListener.java:87)
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.onBlockBreak(ChopTreeBlockListener.java:58)
at org.bukkit.plugin.java.JavaPluginLoader$40.execute(JavaPluginLoader.java:542)
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339)
at net.minecraft.server.ItemInWorldManager.c(ItemInWorldManager.java:201)
at net.minecraft.server.ItemInWorldManager.a(ItemInWorldManager.java:165)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:501)
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:93)
at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
2012-01-05 11:14:08 [SEVERE] Could not pass event BLOCK_BREAK to ChopTree
java.lang.IllegalAccessError: tried to access field net.minecraft.server.ItemStack.damage from class me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.updateInventory(ChopTreeBlockListener.java:107)
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.Chop(ChopTreeBlockListener.java:87)
at me.askmeaboutlo0m.ChopTree.ChopTreeBlockListener.onBlockBreak(ChopTreeBlockListener.java:58)
at org.bukkit.plugin.java.JavaPluginLoader$40.execute(JavaPluginLoader.java:542)
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339)
at net.minecraft.server.ItemInWorldManager.c(ItemInWorldManager.java:201)
at net.minecraft.server.ItemInWorldManager.a(ItemInWorldManager.java:165)
at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:501)
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:93)
at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425)
at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
@rebel24
Im getting that same error im guessing it something to do with mcMMO and ChopTree
Just wanted to say thanks for this plugin, very much looking forward to the worldguard compatibility update :)
Finaly the source is on github (https://github.com/Iso1/Bukkit-ChopTree)
The old OreToClientObfuscator caused the plugin not to work for me (apart from the mcmmo mess) So load the new orefuscator and disable mcmmo support and it will work.
@Iso_1 PLEASE fix the mcmmo thing, you are passing the wrong amount of params to the function.
Also chopping down spruce trees yields the wrong type of log.
I dont konw if anyone else is having this problem, but whenever I chop a tree down it yeilds a stack of blocks instead of single blocks. The real problem, is the stack somehow gets pushed into the center of a leaf block and gets stuck there so I have to remove some leaves as well. Anyone else?
I'm getting this error:
23:07:45 [SEVERE] Could not pass event BLOCK_BREAK to ChopTree java.lang.Error: Unresolved compilation problems: The method addXP(SkillType, int, Player) in the type PlayerProfile is not applicable for the arguments (SkillType, int) The method addXP(SkillType, int, Player) in the type PlayerProfile is not applicable for the arguments (SkillType, int) The method addXP(SkillType, int, Player) in the type PlayerProfile is not applicable for the arguments (SkillType, int)
at me.Iso.ChopTree.ChopTreeBlockListener.mcMMOFake(ChopTreeBlockListener.java:531) at me.Iso.ChopTree.ChopTreeBlockListener.popLogs(ChopTreeBlockListener.java:223) at me.Iso.ChopTree.ChopTreeBlockListener.Chop(ChopTreeBlockListener.java:81) at me.Iso.ChopTree.ChopTreeBlockListener.onBlockBreak(ChopTreeBlockListener.java:58) at org.bukkit.plugin.java.JavaPluginLoader$40.execute(JavaPluginLoader.java:539) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339) at net.minecraft.server.ItemInWorldManager.c(ItemInWorldManager.java:201) at net.minecraft.server.ItemInWorldManager.a(ItemInWorldManager.java:165) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:501) 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:93) at net.minecraft.server.NetworkListenThread.a(SourceFile:108) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425) at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
Any idea?
@LRFLEW
Agreed. If it's under GPL, the source should either be included or linked to somewhere, like github. The source for this would be greatly appreciated. Thanks.
Does this support SuperPerms with bukkit?
Also, where's the source for this? Since it's under GPL, I should be able to find it.
i now have this working with mcmmo using this setting this false:
SupportMcmmoIfAvailable = false
BUG: only thing is when ever i chop a tree all the healths for my tools disappear except for the axe that i just used, i have to use a different tool to get the healths to show up again then
Is anyone else having problems with MCMMO? I have tried fiddling with all cinfig settings in order to get it to work, but when MCMMO and ChopTree are both activated ChopTree no longer works. ChopTree on its own gives me no problems, but for whatever reason I can't get it working with MCMMO regardless. Any help would be much appreciated.
My config file settings:
@ Iso_1:
I was wondering if you be willing to send me/link me to the source so I can add WorldGuard support into it for my server? I'd more than willing to provide you a copy of my modifications once complete and working so you may add it to your next update if you'd like. Thanks.
@Drej_X_Army
You can change the tools in the "ChopTree.properties"
Just set "UseAnything" to "false" and change the Material List.
Can you add a permission so only certain tools will work, like I want only golden axes to do this.
@predawnia
There's a big bug with mcmmo, and I don't know how to fix it. You just have to deactivate the mcmmo-option
MC Server: Bukkit RB#1597
mcMMO v. 1.2.07
No Permissions, using permissionsBukkit, so it defaults to Ops
Info: Getting this message spam with [SEVERE] at beginning in the console whenever people chops tree.
18.12 01:29:32 [Server] INFO at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
18.12 01:29:32 [Server] INFO at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425)
18.12 01:29:32 [Server] INFO at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527)
18.12 01:29:32 [Server] INFO at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
18.12 01:29:32 [Server] INFO at lishid.orebfuscator.utils.NetServerHandlerProxy.a(NetServerHandlerProxy.java:44)
18.12 01:29:32 [Server] INFO at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:93)
18.12 01:29:32 [Server] INFO at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
18.12 01:29:32 [Server] INFO at net.minecraft.server.Packet14BlockDig.a(SourceFile:43)
18.12 01:29:32 [Server] INFO at lishid.orebfuscator.utils.NetServerHandlerProxy.a(NetServerHandlerProxy.java:75)
18.12 01:29:32 [Server] INFO at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:501)
18.12 01:29:32 [Server] INFO at net.minecraft.server.ItemInWorldManager.a(ItemInWorldManager.java:165)
18.12 01:29:32 [Server] INFO at net.minecraft.server.ItemInWorldManager.c(ItemInWorldManager.java:201)
18.12 01:29:32 [Server] INFO at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339)
18.12 01:29:32 [Server] INFO at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
18.12 01:29:32 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader$40.execute(JavaPluginLoader.java:539)
18.12 01:29:32 [Server] INFO at me.Iso.ChopTree.ChopTreeBlockListener.onBlockBreak(ChopTreeBlockListener.java:58)
18.12 01:29:32 [Server] INFO at me.Iso.ChopTree.ChopTreeBlockListener.Chop(ChopTreeBlockListener.java:79)
18.12 01:29:32 [Server] INFO at me.Iso.ChopTree.ChopTreeBlockListener.moveDownLogs(ChopTreeBlockListener.java:256)
18.12 01:29:32 [Server] INFO at me.Iso.ChopTree.ChopTreeBlockListener.mcMMOFake(ChopTreeBlockListener.java:531)
18.12 01:29:32 [Server] INFO The method addXP(SkillType, int, Player) in the type PlayerProfile is not applicable for the arguments (SkillType, int)
18.12 01:29:32 [Server] INFO The method addXP(SkillType, int, Player) in the type PlayerProfile is not applicable for the arguments (SkillType, int)
18.12 01:29:32 [Server] INFO The method addXP(SkillType, int, Player) in the type PlayerProfile is not applicable for the arguments (SkillType, int)
18.12 01:29:32 [Server] INFO java.lang.Error Unresolved compilation problems:
18.12 01:29:32 [Server] SEVERE Could not pass event BLOCK_BREAK to ChopTree
Would it be possible for you to add multiworld support, so this can be switched on/off by world?
@drakcore
hmm... But that would be a bit stupid. I'll think about it