This plugin was just re-written and may contain some bugs.
Just report them to me so i can fix them fast.
Advanced gathering aims on combining timberering with vein mining. Additionally crop harvesting is also a planned feature. This plugin is very configurable and can be tuned for either best looks or insane performance.
This plugin has only a single dependency:
Remember that the core library depends on ProtocolLib and PlaceholderAPI.
This plugin shines with a vide variety of options to ensure the best fit for your server. Timbering trees is done in 3 iterations. Scan, Safety, Breaking.
Each can be modified. Also implemented is a very powerful condition system that allows automatic integration with all plugins that support placeholers.
! Timbering is disabled on default !
Every player can enable it for himself by using
/ag toggle timber
Example setup:
McMMO Woodcutting level < 10 => Not allowed to timber
McMMO Woodcutting level 20+ => Trees with a size of 50 allowed
McMMO Woodcutting level 50+ => Trees with a size of 100 + 1.5 * lvl allowed
Infinite possibilites.
(The marker are just for debugging and are disabled on default)
Smooth Scan -> Smooth Safety -> Instant Break
DropOption: FylToPlayer
Instant Scan -> Instant Safety -> Instant Break
DropOption: InstantPickup
Instant Scan -> Smooth Safety -> Smooth Break
DropOption: Drop

Supports every Block you want and can
be used as a vein miner

Everything can be edited ingame
Commands
Alias: advancedgathering gathering ag
/ag edit trees
/ag edit ores
/ag edit custom
/ag toggle timber
/ag toggle oreminer
Permissions
advancedgathering.commands.edit.trees
advancedgathering.commands.edit.ores
advancedgathering.commands.edit.custom
advancedgathering.commands.toggle.timber
advancedgathering.commands.toggle.oreminer
Tree specific permissions can be seen/changed ingame
Pretty much everything can be edited ingame. You can also change the data.json file directly which is however not recommended.
Working with expressions.
Remember to download the needed PAPI expansions!
Expressions can be of arithmetic and/or boolean nature.
True corresponds to 1.0 and false to 0.0
So this expression
(%player_level% > 10) * 20
Will yield 20.0 if the players level is bigger than 10 and 0.0 otherwise. If it is evaluated as a boolean then everything that is not exactly 0.0 is defined as true.
How to do a chance expression:
50% chance:
%randomnumber_number_10% > 0.5
Very precise 3.75% chance:
%randomnumber_number_100% > 0.0375
How to check for items like axes:
%checkitem_matcontains:AXE,inhand:main% = "yes"
Words have to be set into quotes " "
Supported symbols:
All supported symbols
() - Create a parenthetical expression which will be evaluated first (3 * (4 + 1))
e - Euler's constant (log(e))
pi - pi (sin(pi))
+ - Add two numbers (1 + 1)
- - Subtract two numbers, or negate one (3-2, -(4+2))
/ - Divide two numbers (3 / 4)
* - Multiply two numbers (2 * 3)
^ - Raise one number to the power of another (3^3)
% - Take the modulus, or division remainder, of one number with another (7 % 4)
abs - Take the absolute value of a number (abs$1, abs-1)
round - Rounds a number to the nearest integer (round1.5, round(2.3))
ceil - Rounds a number up to the nearest integer (ceil1.05)
floor - Rounds a number down to the nearest integer (floor0.95)
rand - Generate a random number between 0 and the specified upper bound (rand4)
log - Get the natural logarithm of a number (log(e))
sqrt - Get the square root of a number (sqrt4)
cbrt - Get the cube root of a number (cbrt(8))
sin - Get the sine of a number (sin$2)
cos - Get the cosine of a number (cos(2*pi))
tan - Get the tangent of a number (tanpi)
asin - Get the arcsine of a number (asin$2)
acos - Get the arccosine of a number (acos0.45)
atan - Get the arctangent of a number (atan1)
sinh - Get the hyperbolic sine of a number (sinh(4))
cosh - Get the hyperbolic cosine of a number (sinh(4))
true - Boolean constant representing 1
false - Boolean constant representing 0
= - Compare if two numbers are equal (1 = 1 will be 1, 1 = 3 will be 0)
!= - Compare if two numbers are not equal (1 != 2 will be 1, 1 != 1 will be 0)
> - Compare if one number is greater than another (1 > 0)
< - Compare if one number is less than another (0 < 1)
>= - Compare if one number is greater than or equal to another (1 >= 1)
<= - Compare if one number is less than or equal to another (0 <= 1)
| - Boolean or (true | false)
& - Boolean and (true & true)
! - Boolean not/inverse (!true)
You can also substitute named expressions from inside the SmileCore folder. The file named-conditions.json lets you write extensive expressions which can later be referred to using two # signs:
#NameOfExpression#
The file looks like this:
Similar projects
Config →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
26.2MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.9MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
4.7MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta