#Print debug messages
debug_msg = false

[compat]
	#Enable ae2 support(Maid may pickup things from terminal)
	ae2_support = true
	#Enable rs support(Maid may pickup things from rs)
	rs_support = true
	#Enable Mekanism QIO support(Maid may pickup things from rs)
	mek_support = true
	#Ingredient request for JEI
	jei_ingredient_request = true
	#Ingredient request for EMI
	emi_ingredient_request = true
	#Enable create's stock ticker support for maid
	create_storage = true
	#Enable tacz recipe support
	create_stock_manager = true
	#Allow maid to act as create stock keeper around a stock ticker.
	create_stock_keeper = true
	#How far maid can control the stock ticker. Vertically
	#Range: 1 ~ 256
	create_stock_keeper_range_v = 16
	#How far maid can control the stock ticker. Horizontally
	#Range: 1 ~ 64
	create_stock_keeper_range_h = 7
	#The format of create package address.<UUID>,<UUID4>,<UUID8>,<TYPE>,<TYPE1>
	create_address_pattern = "maid<TYPE1>:<UUID4>"

[speed]
	#Speed when working crafting
	#Range: 0.0 ~ 3.0
	crafting_speed = 0.5
	#Speed when collecting requested list
	#Range: 0.0 ~ 3.0
	collect_speed = 0.5
	#Speed when viewing chests in spare time
	#Range: 0.0 ~ 3.0
	view_speed = 0.3
	#Speed when viewing chests in spare time
	#Range: 0.0 ~ 3.0
	view_change_speed = 0.5
	#Speed when placing items to chests
	#Range: 0.0 ~ 3.0
	place_speed = 0.5
	#Speed when following
	#Range: 0.0 ~ 3.0
	follow_speed = 0.5

[behavior]
	#Maximum times Maid will try to store items
	#Range: 0 ~ 999999
	max_store_tries = 3
	#Maximum tick Maid will try to perform craft action
	#Range: 0 ~ 9999999
	max_craft_tries = 600
	#Maximum logistics extract try will maid take
	#Range: 0 ~ 9999999
	max_logistics_tries = 50
	#Enable maid from visiting all storages.
	use_all_storage = false
	#How many free slots required to pickup items when placing(Value indicates the percentage of empty slots in the total slots
	#Range: 0.0 ~ 1.0
	pickup_require_when_place = 0.5
	#Maid will need to stop and stand by the block to work
	real_work_sim = false
	#Maid will ignore delay when picking up items.
	pickup_ignore_delay = true
	#No showing bubbles for sub tasks
	no_bubble_for_sub_task = false
	#How maid will throw Item.FINALLY_POS will try make the item stop at the position. GO_THROUGH will try to make item go through the target position. FIXED will always use the vector of length 0.6
	#Allowed Values: FINALLY_POS, GO_THROUGH, FIXED
	throw_item_vector = "FINALLY_POS"
	#Try going to work center when fail pathfinding.
	try_go_center_when_fail_pathfinding = false

[render]
	#Virtual Item Frame's render method allow access/no access/filter.
	#Allowed Values: SMALL, LARGE, FRAME, CORNER
	virtual_item_frame_render = "LARGE"
	#Render the maid at the bottom of the screen when pressing ingredient request key.
	maid_render_ingredient_request = true
	#Using a direct light to make itemstack appears brighter.
	using_better_light_on_item = true

[performance]
	#Disable the 'shortest path limitation' to gain faster path finding.
	fast_path_schedule = false

[ai]
	#Enable function calls from this mod
	functions = true

[utility]
	#Generate virtual item frame entity when shift right-click with certain items.
	generate_virtual_item_frame = true

[crafting]
	#Crafting solver to use. [DFS/DFS_QUEUED/DFS_THREADED/TOPOLOGY]. Topology algorithm costs least but dose not support circular recipes.
	solver = ["DFS_THREADED"]
	#Max layer count limit when calculating plan. Increasing this value may cause a large lagging in some cases.
	#Range: > 100
	max_layer_limit = 10000
	#Some experimental optimization. If some crafting calculation cannot done successfully, try turn this off.
	experimental_optimization = true
	#Generate craft guides for vanilla recipes.
	generate = false
	#No need portable calculator for crafting
	no_calculator = false
	#The way to select the correct crafting path.
	#Allowed Values: NONE, STEPS, CRAFT_GUIDES, ITEMS, ITEMS_COSTED
	shortest_path_evaluator = "CRAFT_GUIDES"

	[crafting.loop_solver]
		#Max length to calculate in loop solver.
		#Range: 0 ~ 100
		max_length = 10
		#Prevent item in loop that are fully input outside the loop.
		prevent_indirect = true
		#Prevent new byproduct from loop that's not available in graph.
		prevent_new_byproduct = false

	[crafting.nbt]
		#Match nbt for all items by default. Use #maid_storage_manager:no_nbt and #maid_storage_manager:use_nbt to modify.
		default = false
		#Specific those nbt that are ignored from comparing. Use syntax like 'a.b[c].d'.
		no_matching_path = ["Damage"]

	[crafting.generating]
		#Generate recipes that has not all ingredients available.
		keep_partial = false
		#Only generate recipe with nearest block to maid.
		nearest_only = false
		#Skip the recipe whose id match the pattern.
		skip_recipe_id_pattern = ["[a-z_\\-\\/.\\\\]+:[a-z]+_nugget_from_(blasting|smelting)"]
		#Crafting generator algorithm to use.
		#Allowed Values: RELEVANCE, RELEVANCE_THREADED
		algorithm = "RELEVANCE_THREADED"

[misc]

	[misc.inv_list_damage]
		#Range: 0.0 ~ 1.0
		factor = 0.02500000037252903
		#Range: 0.0 ~ 1.0E7
		max = 20.0
		#Range: 0.0 ~ 1.0E7
		min = 2.0
		#Range: 0.0 ~ 100.0
		speed = 1.2000000476837158

[communicate]
	#Range: > 0
	cd_finish = 600
	#Range: > 0
	cd_fail = 3000
	#Range: > 0
	cd_no_target = 100

