[1.15] TreeGravity 4.3.1

Chop entire trees down with just one swing!

  1. Dudenn
    Native Minecraft Version:
    Tested Minecraft Versions:
    • 1.13
    • 1.14
    • 1.15
    Source Code:

    Plugin Info
    Pretty much the same as TreeFeller and Timber, or a simpler version of Choptree and TreeAssist. Below are the main methods available for chopping trees with TreeGravity:
    • Lumberjack Classic - Chop one log and the entire tree falls down! The number of logs on the tree are dropped in an itemstack.
    • Lumberjack Natural - Break one log and the entire tree falls down, but each log breaks naturally.
    • Lumberjack Random - Same as Classic, but the number of logs dropped will be 20% more or less than how many were actually on the tree (so if a tree had 10 logs, 8 to 12 will be dropped).
    • Gravity - Break a log and any logs directly above it fall like sand/gravel. Warning: This method can't distinguish between logs on a tree or player placed logs. See Update 3.0.0 for a temporary solution.
    • Experimental Methods - Three experimental methods exist as well, see update 3.9.1 for more info. Use at your own risk as these play around with metadata, and other methods that can induce a lot of lag.
    Additional Details:
    • Coded in Java 8. Works with spigot versions 1.13.* and 1.14.* For a working 1.12 version, see this post.
    • **Before you ask me about EWG, see my "Notes on EpicWorldGenerator" below.
    • If you encounter ANY bugs or have ANY suggestions, please let me know here in the discussion section or on Github! Thank you!

    Current Features

    • Works on all tree types including mushroom trees!
    • No logs or leaves left floating in the air whatsoever!
    • Player structure/house protections, so that buildings with logs & leaves are safe!
    • Auto sapling-replant, so your forest stays a forest!
    • Works with anti-grief and region-protection plugins, so trespassers can't chop your trees.
    • Logs (or mushroom blocks) are the only blocks ever broken, besides items hanging on logs like vines, cocoa beans, etc.
    • Config settings can be changed in-game, see the config settings below.

    Config Settings

    (see spoiler "Configuration Details and Settings" for details)​
    • tgType - Sets which method is active
    • toolsAllowed - List of tools that will fell trees
    • chopMethod - Whether players need to sneak to fell trees
    • updateChecker - Checks whether the plugin is up to date
    • debugger - Whether debugging messages are sent to the server console when trees are chopped down
    • defaultUserPerm - Whether all players on the server have default TreeGravity permissions (felling trees & /tg command)
    • sound - Choose the sound that plays when a tree is chopped down
    • soundFrequency - Set how frequently sounds are made when chopping trees
    • allowedWorlds - test
    • houseProtection - Increases player structure protection, so your houses and buildings are safe!
    • fairDurability - Makes axe durability decline by the number of logs on the tree
    • durabilityMultiplier - Increase or decrease the degree of damage logs have on your axe when fairDurability is on
    • autoReplant - Automatically replants saplings when the tree is cut down
    • saplingDrop - Drops a stack of saplings with the logs that are dropped at your feet the base of a tree
    • mcmmoHook- Toggles whether TreeGravity hooks into McMMO
    • mcmmoXpMultiplier - Change the percent of McMMO xp is given for trees cut using TreeGravity (not implemented yet)


    • tgType [1, 4, 2.1, 4.1, 4.2] - Sets which TreeGravity method is active. Setting tgType to 1 will implement the Lumberjack method, setting it to 4 will implement the Gravity method. You can also try out experimental methods [2.1, 4.1, 4.2], see Update 3.9.1 for more info on the experimental methods.
    • toolsAllowed [all tools should work, but I'd suggest only using axes] - Set a list of tools that TreeGravity works with. Only add tools to avoid any errors.
    • chopMethod [default, stand, sneak, sneak.notify] - Sets whether players need to sneak in order to fell trees, or if they can fell trees in any position. See Update 3.8.0 for more info.
    • updateChecker [true or false] - Whether you want the plugin to check for updates. If true, the following link is accessed: https://textuploader.com/d7v57/raw
    • debugger [true or false] - When set to true, when you chop down a tree the following will be printed in your server's console: the tree's log type, location, and the number of logs the tree has. Only shows these values with Lumberjack methods enabled.
    • defaultUserPerm [true or false] - Whether all players on the server have default TreeGravity permissions (felling trees & /tg command). Set this to true if your server doesn't have a permissions plugin.
    • sound [none, scream, falling, treefiddy, creepy, LOTR] - Choose the sound that plays when a tree is chopped down. See Update 3.10.0 for more info.
    • soundFrequency [decimals from 0 to 1] - Set how frequently sounds are made when chopping trees. (not implemented yet)
    • allowedWorlds - Sets which worlds the plugin logic will work in. See update 4.1.0 for more info.
    • autoReplant [true or false] - Toggles whether saplings are replanted or not once you chop down a tree. Once you fell a tree there is about a 3 second delay before sapling(s) are replanted. See Update 3.5.0 for more info.
    • houseProtection [0,1, 2, 3, 4, 5] - Determines how strict the plugin is when deciding whether a structure is manmade or a tree. There are six levels, integers 0 to 5. Using 0 turns the settings off, 1 is low and 5 is high. Set to 3 by default. 1 should work fine, but if you're worried about player-built structures made from logs and leaves getting chopped down by accident, keep the setting on 3 or above. See Update 3.7.0 for details about the logic behind this setting.
    • fairDurability [true or false] - Toggles whether your axe durability declines by the amount of logs that are harvested from the tree chopped down. See Update 1.13.v3 for more info.
    • durabilityMultiplier [decimals from 0.1 to 5] - The degree of durability damage each log has on your axe/tool. The default value (1) is same as vanilla MC. Changing the value up or down indirectly affects the tool's life when felling trees. For example, setting to .5 will make your axe degrade twice as slow, but setting to 2 will make your axe degrade twice as fast (when using TreeGravity methods to chop trees). If you change this setting directly in the config.yml file, then you can set any number you want. BUT I wouldn't suggest setting this higher than 5. The following are my recommended settings for this setting: [0.5, 1, 2, 3]
    • saplingDrop [true or false] - Drops a stack of saplings immediately with the tree's logs at the base of a tree. Only applies to Lumberjack Classic and Random. Saplings dropped should include 1 sapling for every ~20 logs the tree has.
    • fallMethod [pop, break, natural] - This This config variable replaced tgType 2 in major update #4, see update 4.1.0 for more info.
    • dropMethod [itemdrop, inventory] - This determines whether the logs itemstack is dropped on the ground (set to 'itemdrop'), or the itemstack is put directly into the player's inventory (set to 'inventory'. See update 4.1.0 for more info.
    • randomLogDrop [true or false] - This This config variable replaced tgType 3 in major update #4, see update 4.1.0 for more info.
    • mcmmoHook [true or false] - Toggles whether TreeGravity hooks into McMMO. See Update 3.11.0 for more info.
    • mcmmoXpMultiplier [decimals from 0 to 1] - Change the percent of McMMO xp is given for trees cut using TreeGravity. (not implemented yet)
    • oreSweeper [true or false] - My take on a quick-mining plugin. When you mine an ore block with a pickaxe, all ores of the same kind around it will break naturally. See update 4.1.0 for more info.
    Code (YAML):

    : #by Dudenn
    : 1
        - STONE_AXE
        - IRON_AXE
        - GOLDEN_AXE
        - DIAMOND_AXE
    : default
    : true
    : false
    : true
    : none
    : 1.0
        - all
    : 5
    : true
    : 1.0
    : true
    : false
    : pop
    : itemdrop
    : false
    : false
    : 4
    : 2
    : 1
    : true
    : 1.0
    : false
        - IRON_PICKAXE

    /tg - Provides this list of TreeGravity commands
    /tg help - Explains what the commands and settings are
    /tg info - Provides general info about the plugin​
    /tg settings - Shows the server's current settings in the TreeGravity config.yml
    /tg toggle - Player by player toggling of TreeGravity on or off

    /tg reload - Reloads the plugin
    /tgconfig - Shows list of sub-commands for /tgconfig
    /tgconfig [enable, disable] - Turns plugin on or off
    /tgconfig set type [lumberjack, gravity] - Changes the current plugin's method
    /tgconfig set durabilitymultiplier [0.5, 1.0, 2.0] - Sets the durability factor (any decimal works, not just the ones listed)
    /tgconfig set houseprotection [0, 1, 2, 3, 4, 5] - Sets the level of house protection (any manmade structures)
    /tgconfig set chopmethod [default, stand, sneak, sneak.notify] - Sets whether players need to sneak to fell trees
    /tgconfig set fallmethod [pop, break, natural] - Sets what fall animation happens when a tree is felled
    /tgconfig set dropmethod [itemdrop, inventory] - Where the tree's logs go: dropped on ground or player's inventory
    /tgconfig tools add/remove [tool] - Adds or Removes a tool on the allowed tools list in the config
    /tgconfig worlds add/remove [world] - Adds or Removes a world on the allowed worlds list in the config
    /tgconfig toggle [fairdurability, updatechecker, autoreplant, sapling drop, defaultpermissions, randomlogdrop, mcmmohook, oresweeper] - Turns the setting ON or OFF
    /tgconfig toggle [debugger]- Turns the debugger in the server console ON or OFF
    /tgd - Gives the player a diamond axe
    /tgd g - Gives the player a golden axe
    /tgd a - Gives the player one of each type of axe

    tg.user - Allows player to fell trees and use /tg commands except /tg reload. Given to every player by default.
    tg.operator - Gives access to /tgconfig commands and /tg reload. Given to every operator by default.​

    Community Suggestions
      • Add a method where if you chop in the middle of the tree, only logs above the chopping point are broken completed on 11/23/19
      • Require that the entire trunk be cut through before tree falls.
      • Support immediate leaf decay completed on 8/17/19
      • Make the OreSweeper work with Fortune and Silk Touch completed on 8/17/19
    • TO DO:
      • Add "mining fatigue" that depends on how many logs are on the tree (similar to "Add a method to allow trees to act like mobs/entities, so you have to chop a log a certain number of times before it fells")
      • Cause falling blocks to damage entities if they are struck.
      • Add whitelist for custom item names, similar to the allowedTools config setting
      • messages.yml where we can configure all possible messages and prefixes with custom colors
      • Config setting to turn on FAWE support
      • Upload source code on the Github
      • Add mythicmobs support
      • Have another method like tgType 4.2, that instead of applying simple gravity to all logs on a tree, drops all logs in a conical pile beneath the tree. added with 4.2.0 on 8/17/19
      • Have a config option which removes leaves or drops them (only leaves in a reasonable cubic area around the tree). added with 4.2.0 on 8/17/19
      • Add an allowed worlds list to the config.yml added with 4.1.0 on 5/26/19
      • Add option to ignore houseProtection so that spruce trees with minimal leaves can be felled. added with 4.1.0 on 5/26/19
      • Config setting where logs go directly from the tree into player inventory added with 4.1.0 on 5/26/19
      • Hook the plugin in with MCMMO added with 3.11.0 on 2/16/19
      • Add an altered lumberjack method to have leaves break along with the logs added to 3.9.1 on 11/21/18
      • Add an altered gravity method to have all logs on the tree fall down when one block is chopped added to 3.9.1 on 11/21/18
      • Add a player by player option to toggle TreeGravity on and off added to 3.9.1 on 11/21/18
      • Add an option to "chopMethod" where when you sneak, trees do not fell when hit with an axe added to 3.9.1 on 11/21/18
      • Create a Github repository/issues forum. Created 11/1/18
      • Add an option to auto plant saplings left on the ground? So no more holes in the forest... added 10/8/18
      • Add a config setting that implements RNG to decide whether the player receives more, less, or the exact number of logs a tree has. Added 10/6/18

    Random Notes

    Notes on EpicWorldGenerator:
    I have been told my plugin is incompatible with EWG. There is nothing in the TreeGravity code that would prevent trees in EWG from felling, besides the "HouseProtection" config setting. If you are attempting to use TG with EWG, set HouseProtection to 0.

    To figure out what the compatibility issues were between plugins, I contacted minelazz, creator of EWG, to get a free developer copy of the EWG jar file to test both plugins on the same server. I contacted minelazz multiple times, and he has never responded to my messages. Unfortunately, until I have an EWG jar file to do testing with, I will not know what is causing the plugins to be incompatible, and so I cannot solve issues for which the cause is unknown. I am not willing to pay the $40 to test why EWG is incompatible with my plugin, as I have never used EWG and don't intend to use it on the servers I play.

    The only suggestion i have is to set HouseProtection=0. If that doesn't work, you can either contact minelazz directly about allowing developers to test their plugins with EWG, or use minelazz's treefeller built for EWG.

    All future comments/questions/issues regarding Treegravity and EWG compatibility should be directed to minelazz.
    Notes from the author:
    7/30/18: I don't have much programming experience so this plugin is pretty basic, I'm not sure if it even works properly on a small private server where two people are chopping wood at the same time. I decided to make my own "tree feller" after not finding anything updated for 1.13 except for one that seemed to be too hefty for such a simple mechanic. I'm planning on using this on one server with my friend, but if anyone wants to use it I figured I'd put it out there.

    9/29/18: has been a while since i wrote this note, as always use at your own risk. Working on this plugin is a hobby for me, and I can only do so much version testing on my own. Let me know of ANY issues you have in the discussion section, no matter how small. It helps a lot!!.

    birch1.png birch2.png birch3.png oak1.png oak2.png

Recent Reviews

  1. sannielollie
    Version: 4.3.1
    Works perfectly, thanks a lot! Using it together with McMMO 1.1.100 on Paper 1.14.4 without issues. Thanks!
  2. HappyChapi
    Version: 4.3.0
    It works great except the plugin does not work for wooden axes. Even when WorldEdit is not installed.
    1. Dudenn
      Author's Response
      Thanks for the review, however you can use wooden axes if you add them to the list of allowed tools. Just simply use this command:

      /tgconfig tools add WOODEN_AXE

      If the command works, I'd love it if you updated your review to 5 stars. I'm glad you enjoy the plugin, cheers!
  3. ExodusXIII
    Version: 4.3.0
    Unfortunately, it appears that this plugin isnt compatible with the current version of mcMMO Classic that I'm using (1.6.1 Official) on a Spigot 1.15.1 server. It throws an error for 'experience.yml' and throws an error for "BlockBreakEvent" that seems to come back as "Null" supposedly and then generates a colossal java trace back that I'm unfortunately unable to paste into here. Looking into this plugin's version history it appears this issue has occured once in the past with mcMMO so I have confidence that it will be resolved. However, as of the moment if you are using the Official Branch of mcMMO Classic V1.6.1 you will be unable to use this plugin.

    To get it working to some extent:

    You will need to disable the mcMMO hook in the config to get it to work, you CANNOT use mode 2, Natural Mode, as it will just destroy the lowest block and then replants a sapling. You need to run it in Default to work it seems.

    I have not tested the other modes, though it also struggles with wide bottomed spruce trees as it fails to destroy the outer ring of leaves.

    Overall, it a great plugin with lots of neat little features made by one guy, but just needs a little polish. It is one of the first 1.15 tree faller plugins.

    Cheers mate!
  4. galacticwarrior
    Version: 4.2.2
    Excellent, straightforward plugin which has a wide variety of configuration options if you wish to tailor it to your server's needs.
  5. ElTodoFull
    Version: 4.2.2
    It seems to be good, but you should be able to allow certain item with certain NBT data.
    For example: Chainsaw (Lore: Cuts the entire tree)
    And only that will be able to cut the tree.
  6. darkhaze94
    Version: 4.2.2
    Very good plugin, however MythicMobs Items do not seem to be supported. Please add this in!
    1. Dudenn
      Author's Response
      Thanks for the review, sorry about the late reply. I will look into adding mythicmobs support, and push out an update if possible. Thanks!
  7. Stormeyes
    Version: 4.2.2
    Players LOVE the plugin and even though dev claims it is just a hobby, he maintains it well and responds to problems efficiently when he has time. 6 stars! ;)
    1. Dudenn
      Author's Response
      Thanks for the review! Glad you like the plugin, if you have any bugs or suggestions let me know in the discussion section!
  8. LoneDev
    Version: 4.2.1
    Good idea, but you can destroy trees in GriefPrevention claims..
    Also hold a torch in left hand and place it after you break a log, you'll get all the logs in a second (4.2 mode)
    1. Dudenn
      Author's Response
      Thanks for the review. GriefPrevention used to work, I'll have to look into why its not anymore. Also, I've been meaning to add a torch fix, will be implementing this next update.
  9. VeraxonHD
    Version: 4.2.1
    Does what it says on the tin.
    Only thing I would say is that the Author says that this should have EWG (EpicWorldGenerator) support, but it does not work for me, unfortunately. Don't know if there is some other config I must enable or not... Could use some help if it is a supported feature.
    1. Dudenn
      Author's Response
      Thanks for the review. There is nothing in my code that would prevent TreeGravity from working with EWG. Thus, I have contacted minelazz, creator of EWG, multiple times in the past to provide me a copy of EWG so that I can test why the plugins are incompatible. He has never responded to my messages. Unfortunately, until I have an EWG jar file to do testing with, I will not know why the plugins are incompatible, and I cannot solve the issues. I will try adding some code to the next update to get it to work. The only advice I have is to set HouseProtection=0, and contact minelazz about allowing developers to test his plugin.
  10. DreamsOfAnarchy
    Version: 4.1.2
    Great plugin, only problem I have is it replants the trees even with autoReplant: false in config
    1. Dudenn
      Author's Response
      Thanks for the rating! That is unfortunate to hear, I'll look into it. If you haven't already, try deleting your config.yml and reloading the server or using the command "/tg reload". If that doesn't work, try the new version 4.2.0 to see if the autoreplant problem persists. If it still autoreplants no matter what, please leave a message in the discussion section and I'll take a closer look. Cheers!