Lumberjack
Don't you hate those big trees where you cannot reach those high blocks while standing on the ground. Trees should be felled like a boss, so take them down with Lumberjack while your feet are still touching the ground!
Lumberjack released!
What does Lumberjack do?
Lumberjack detects if a player destroys a wood block that is part of a tree. The highest wood block will be destroyed instead of the block that the player destroyed, unless it is the same block of course. Works for oak, birch and redwood trees!
No more annoying trees! Please support this project by leaving a comment with your thoughts on it!
Help it doesn't work!?
If you have downloaded this plugin and it doesn't seem to work for you, ensure the following things:
- download the latest craftbukkit server and Lumberjack
- is Lumberjack enabled? Type the following command to be sure:
- /lumberjack enable
- does the tree you are chopping meet the following requirements?
- is block you are chopping connected to the the complete trunk?
- is the base of the trunk (the lowermost block) placed on a dirt (without grass) block?
- is the trunk of the tree connected to at least 4 naturally grown leaf blocks?
- (versions before 1.0.1v1) If you have NoCheat enabled then make sure to set the following options (found by ace1177)
- blockbreak.reach.check = false
- blockbreak.direction.check = false
- blockbreak.noswing.check = false
Lumberjack commands
As of version 1.8.1v2, Lumberjack has 4 commands. The commands can be viewed by typing /lumberjack . Most of the commands can be combined e.g. /lumberjack enable silent . It is also possible to use the shorter versions of the options, the 'hotnames' e.g. /lumberjack e s . This has the same result as the previous command.
enable
description: enables Lumberjack
hotname: e
disable
description: disables Lumberjack
hotname: d
silent
description: hides most Lumberjack messages
hotname: s
normal
description: shows all Lumberjack messages
hotname: n
Future Features
I decided to create a page that enlists all the plans I have for Lumberjack. If you have suggestions or fresh new ideas, feel free to leave a comment on the plans page!
Supporting the author
If you use and /or like /dislike Lumberjack, then please let me know why and what changes you would like to see! It really motivates me to continue the development :)
If you are a really nice person, you know that it takes time to develop plugins and you are willing to drink a glass of milk instead of a milkshake to save a dollar, then you can donate that dollar here
@AndrewsPanda
Hahah I anticipated that the author of McMMO might change the FakeBlock class some day which would break compatibility with Lumberjack. Thats why there is such a nice error message instead of incomprehensible junk. I'll have to look into the new event thingies Bukkit has made so I can maybe fix this in a less hackery way.
deazurain
I am getting these messages spammed in my server log.
http://pastie.org/3468320
I am running Bukkit 1940.
McMMO 1.3.00-dev-b277
Lumberjack: Lumberjack 1.0.1v1
I also have "mcMMO: true" set in the config
What are the causes of this?
I Keep receiving these exceptions every-so-often:
2012-02-25 07:39:25 [SEVERE] Could not pass event org.bukkit.event.block.BlockBreakEvent to Lumberjack java.lang.IllegalArgumentException: Cannot drop AIR. at org.apache.commons.lang.Validate.isTrue(Validate.java:157) at org.bukkit.craftbukkit.CraftWorld.dropItem(CraftWorld.java:305) at org.bukkit.craftbukkit.CraftWorld.dropItemNaturally(CraftWorld.java:323) at nl.mightydev.lumberjack.OnPlayerHit.fakeBlockBreak(OnPlayerHit.java:128) at nl.mightydev.lumberjack.OnPlayerHit.doActions(OnPlayerHit.java:92) at nl.mightydev.lumberjack.OnPlayerHit.onBlockBreak(OnPlayerHit.java:44) at org.bukkit.plugin.java.JavaPluginLoader$42.execute(JavaPluginLoader.java:558) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:61) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:460) at net.minecraft.server.ItemInWorldManager.breakBlock(ItemInWorldManager.java:216) at net.minecraft.server.ItemInWorldManager.a(ItemInWorldManager.java:171) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:517) at net.minecraft.server.Packet14BlockDig.handle(SourceFile:43) at net.minecraft.server.NetworkManager.b(NetworkManager.java:226) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:100) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:537) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:435) at net.minecraft.server.ThreadServerApplication.run(SourceFile:465)
anyone had a similar issue?
@deazurain
I'll be glad to see the source code, I really like this plugin, although it has some bugs yet.
If you can't or don't want to release source code, at least update it to 1.1-R4 so it won't break in 1.1-R5 because deprecated methods will be deleted.
Please don't give up on this plugin. It is the best tree plugin I have ever used.
Does this plugin need to be/or has it been updated to the new bukkit events system?
@genesis_aix
Thanks :)
Btw, The latest version of Lumberjack has been downloaded 8000+ times LOL!
I will us this plugin until it just stops working then. Its still he best out there! Whatever you decide, best of luck & something something. =)
@genesis_aix
It should.
I think I'm going to release the source code because I have very little time to work on Lumberjack now. I feel that I am letting you guys down because there hasn't been a good update for so long :S
Does the remains for the tree decay when it has no root?
@Noman_1000
I am aware of this -> http://dev.bukkit.org/server-mods/lumberjack/?page=3#c112
Using wool to chop down a tree changes the wool type to a different color. I can't use this plugin with this bug, but I really wanted to since it was the only one that worked well with WorldGuard. :(
@GeneralShep
Well I guess I'll have to add that now :P.
Anyway, I've been busy with making a puzzle map for minecraft and it's become pretty awesome. It is rather hard though. If you are interested then take a look at Bluzzle! :)
@deazurain
Lets hope it dosn't break this :S. Also is there going to be permissions support for the full-tree chop? Cause I think it would be a cool thing to give my builders (We have a class system on my server :P)
Anyway, Great plugin!
@finallove2
O gee, that's really bad. Maybe I have to recompile Lumberjack with a newer java version. Thanks for reporting!
@GeneralShep
Hahah, yep that sounds like a pain in the Goose :P. I can add that.
However I'm pretty occupied with some other project right now. Also there will be a new kind of tree for the jungle biome that is upcoming. I think it is wise to do an update when that tree is out because the patch might also change other trees.
1 suggestion, could you make it so on first login, it says like, "This server runs LumberJack, tree chop from top to bottom"
I keep on putting signs, EVERYWHERE at spawn, and people keep on saying "Oh My Goose! I can't cut this tree :/ I know what to do! /modreq spam!
2012-02-06 03:31:21 [SEVERE] Could not pass event org.bukkit.event.block.BlockBreakEvent to Lumberjack java.lang.StackOverflowError at com.google.common.base.Equivalences$Equals.doHash(Equivalences.java:91) at com.google.common.base.Equivalence.hash(Equivalence.java:105) at com.google.common.collect.CustomConcurrentHashMap.hash(CustomConcurrentHashMap.java:1901) at com.google.common.collect.CustomConcurrentHashMap.get(CustomConcurrentHashMap.java:3478) at org.getspout.spout.block.SpoutCraftChunk.getBlock(SpoutCraftChunk.java:97) at org.bukkit.craftbukkit.CraftWorld.getBlockAt(CraftWorld.java:76) at nl.mightydev.lumberjack.MinecraftTree.getDiagonallyAdjacentBlocks(MinecraftTree.java:193) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:138) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) repeat.... ~~~
I'm find error....
2012-02-06 03:31:19 [SEVERE] Could not pass event org.bukkit.event.block.BlockBreakEvent to Lumberjack java.lang.StackOverflowError at com.google.common.base.Equivalences$Equals.doHash(Equivalences.java:91) at com.google.common.base.Equivalence.hash(Equivalence.java:105) at com.google.common.collect.CustomConcurrentHashMap.hash(CustomConcurrentHashMap.java:1901) at com.google.common.collect.CustomConcurrentHashMap.get(CustomConcurrentHashMap.java:3478) at org.getspout.spout.block.SpoutCraftChunk.getBlock(SpoutCraftChunk.java:97) at org.bukkit.craftbukkit.CraftWorld.getBlockAt(CraftWorld.java:76) at nl.mightydev.lumberjack.MinecraftTree.getDiagonallyAdjacentBlocks(MinecraftTree.java:193) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:138) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139) at nl.mightydev.lumberjack.MinecraftTree.completeOakTree(MinecraftTree.java:139)
@deazurain
Can u add creative mode support?
@Darkfire122333
I think it is important to start supporting permissions now for Lumberjack. I will try to include it in the next update but I can't guarantee anything.
Any way there could be permissions support? I would like to enable this on my server for certain usergroups (and have it auto for their usergroups, no typing in command, it does it auto) and not for others.