
[permissions]
	#Whether this mod is enabled or not
	enabled = true

	[permissions.sneakBehavior]
		canBeNone = true
		canBeInvertChopping = true
		canBeInvertFelling = true

	[permissions.chopInCreativeMode]
		canBeFalse = true
		canBeTrue = true

	[permissions.choppingEnabled]
		canBeFalse = true
		canBeTrue = true

	[permissions.fellingEnabled]
		canBeFalse = true
		canBeTrue = true

	[permissions.treeMustHaveLeaves]
		canBeFalse = true
		canBeTrue = true

[treeDetection]
	#Whether to destroy leaves when a tree is felled
	breakLeaves = true
	#Whether non-decayable leaves are ignored when detecting leaves
	ignorePersistentLeaves = true
	#The tag that blocks must have to be considered leaves (default: treechop:leaves_like)
	blockTagForDetectingLeaves = "treechop:leaves_like"
	#Maximum number of leaves blocks that can destroyed when a tree is felled
	#Range: 1 ~ 8096
	maxLeavesBlocks = 1024
	#Maximum distance from log blocks to destroy non-standard leaves blocks (e.g. mushroom caps) when felling
	#Range: 0 ~ 16
	maxBreakLeavesDistance = 7
	#Maximum number of log blocks that can be detected to belong to one tree
	#Range: 1 ~ 8096
	maxTreeBlocks = 320
	#The tag that blocks must have to be considered choppable (default: treechop:choppables)
	blockTagForDetectingLogs = "treechop:choppables"

[chopCounting]
	#Whether felling a tree can require more chops than the number of blocks in the tree
	canRequireMoreChopsThanBlocks = false
	#How to round the number of chops needed to fell a tree; this is more meaningful for smaller trees
	#Allowed Values: DOWN, NEAREST, UP
	rounding = "NEAREST"
	#Method to use for computing the number of chops needed to fell a tree
	#Allowed Values: LINEAR, LOGARITHMIC
	algorithm = "LOGARITHMIC"

	#See https://github.com/hammertater/treechop/#linear
	[chopCounting.linear]
		#The base number of chops required to fell a tree regardless of its size
		#Range: -10000.0 ~ 10000.0
		baseNumChops = 0.0
		#The number of chops per block required to fell a tree; if chopsPerBlock = 0.5, it will take 50 chops to fell a 100 block tree
		#Range: 0.0 ~ 7.0
		chopsPerBlock = 1.0

	#See https://github.com/hammertater/treechop/#logarithmic
	[chopCounting.logarithmic]
		#Determines the number of chops required to fell a tree; higher values require more chops for bigger trees
		#Range: 0.0 ~ 10000.0
		a = 10.0

[compatibility]

	[compatibility.general]
		#Whether to prevent chopping during right-click actions; automatically enabled if compatibility.carryOn = true with Carry On versions prior to carryon-1.16.5-1.15.2.9
		preventChoppingOnRightClick = false
		#Whether to prevent infinite loops when chopping; fixes crashes when using modded items that break multiple blocks
		preventChopRecursion = true

		#The chop settings used by non-player entities, such as robots
		[compatibility.general.fakePlayerChopSettings]
			treesMustHaveLeaves = true
			#Use with caution! May cause conflicts with some mods, e.g. https://github.com/hammertater/treechop/issues/71
			choppingEnabled = false
			#Felling only matters if chopping is enabled; probably best to leave this on
			fellingEnabled = true

		[compatibility.general.blacklist]
			#Whether the listed items should be blacklisted or whitelisted
			#Allowed Values: BLACKLIST, WHITELIST
			blacklistOrWhitelist = "BLACKLIST"
			#List of item registry names (mod:item), tags (#mod:tag), and namespaces (@mod) for items that should not chop when used to break a log
			#- Items in this list that have special support for TreeChop will not be blacklisted; see https://github.com/hammertater/treechop/blob/main/docs/compatibility.md#blacklist
			items = ["botania:terra_axe", "mekanism:atomic_disassembler", "@lumberjack", "practicaltools:iron_greataxe", "practicaltools:golden_greataxe", "practicaltools:diamond_greataxe", "practicaltools:netherite_greataxe"]

		[compatibility.general.overrides]
			#List of item registry names (mod:item), tags (#mod:tag), and namespaces (@mod) for items that should not perform their default behavior when chopping
			#- Add "?chops=N" to specify the number of chops to be performed when breaking a log with the item (defaults to 1)
			#- Add "?override=always" to disable default behavior even when chopping is disabled
			#- Add "?override=never" to never disable default behavior
			#- Items in this list that have special support for TreeChop will not be overridden; see https://github.com/hammertater/treechop/blob/main/docs/compatibility.md#overrides
			#- This might not work as expected for some items; see https://github.com/hammertater/treechop/blob/main/docs/compatibility.md#caveats
			items = ["#tconstruct:modifiable/harvest", "silentgear:saw?chops=3,override=always"]

	[compatibility.specific]
		#Whether to prevent conflicts with Carry On when it is configured to allow picking up logs
		#See https://www.curseforge.com/minecraft/mc-mods/carry-on
		carryOn = true
		#Whether to enable compatibility with ProjectMMO; for example, award XP for chopping
		#See https://www.curseforge.com/minecraft/mc-mods/project-mmo
		projectMMO = true
		#Whether to prevent conflicts with DynamicTrees
		#See https://www.curseforge.com/minecraft/mc-mods/dynamictrees
		dynamicTrees = true

