<table
	main_menu="BeardLibMainMenu"
	localization_dir="$ModPath$Localization"
	maps_dir="Maps"
	hooks_dir="$ModPath$Hooks/"
	modules_dir="$ModPath$Modules/"
	classes_dir="$ModPath$Classes/"
	assets_dir="$ModPath$Assets/"
	image="guis/textures/beardlib_logo"
	color="Color(0.8,0.8,0.8)"
	auto_image_color="true"
	mod_override_dir="assets/mod_overrides/"
	version="4.88">
	<load_modules>
		<AddFiles directory="Assets">
			<unit path="core/units/cubemap_gizmo/cubemap_gizmo" force_if_not_loaded="true"/>
			<object path="core/units/cubemap_gizmo/cubemap_gizmo" force_if_not_loaded="true"/>
			<model path="core/units/cubemap_gizmo/cubemap_gizmo" force_if_not_loaded="true"/>
			<cooked_physics path="core/units/cubemap_gizmo/cubemap_gizmo" force_if_not_loaded="true"/>
			<texture path="guis/textures/menu_ui_icons"/>
			<texture path="guis/textures/beardlib_logo"/>
			<texture path="guis/textures/achievement_trophy_white"/>
			<texture path="guis/textures/achievement_package_default"/>
			<texture path="guis/textures/checkmark"/>
			<!-- These units are used by many maps, they don't fully load unless used -->
			<add from_db="true" unload="true">
				<physic_effect path="physic_effects/push_sphere"/>

				<unit path="core/units/run_sequence_dummy/run_sequence_dummy"/>
				<object path="core/units/run_sequence_dummy/run_sequence_dummy"/>
				<sequence_manager path="core/units/run_sequence_dummy/run_sequence_dummy"/>

				<object path="units/dev_tools/mission_elements/point_interaction/interaction_dummy"/>
				<sequence_manager path="units/dev_tools/mission_elements/point_interaction/interaction_dummy"/>
				<unit path="units/dev_tools/mission_elements/point_interaction/interaction_dummy"/>

				<unit path="units/payday2/props/gen_prop_lazer_blaster_dome/gen_prop_lazer_blaster_dome"/>
				<object path="units/payday2/props/gen_prop_lazer_blaster_dome/gen_prop_lazer_blaster_dome"/>
				<material_config path="units/payday2/props/gen_prop_lazer_blaster_dome/gen_prop_lazer_blaster_dome"/>

				<!-- NPC acc stuff -->
				<unit path="units/payday2/characters/npc_acc_canvas_bag_1/npc_acc_canvas_bag_1"/>
				<object path="units/payday2/characters/npc_acc_canvas_bag_1/npc_acc_canvas_bag_1"/>
				<material_config path="units/payday2/characters/npc_acc_canvas_bag_1/npc_acc_canvas_bag_1"/>

				<unit path="units/payday2/characters/npc_acc_safe_wpn_1/npc_acc_safe_wpn_1"/>
				<object path="units/payday2/characters/npc_acc_safe_wpn_1/npc_acc_safe_wpn_1"/>
				<material_config path="units/payday2/characters/npc_acc_safe_wpn_1/npc_acc_safe_wpn_1"/>

				<unit path="units/pd2_dlc_jerry/characters/npc_acc_parachute_1/npc_acc_parachute_1"/>
				<object path="units/pd2_dlc_jerry/characters/npc_acc_parachute_1/npc_acc_parachute_1"/>
				<material_config path="units/pd2_dlc_jerry/characters/npc_acc_parachute_1/npc_acc_parachute_1"/>

				<unit path="units/pd2_dlc_peta/characters/npc_acc_goat_bag_1/npc_acc_goat_bag_1"/>
				<object path="units/pd2_dlc_peta/characters/npc_acc_goat_bag_1/npc_acc_goat_bag_1"/>
				<material_config path="units/pd2_dlc_peta/characters/npc_acc_goat_bag_1/npc_acc_goat_bag_1"/>

				<unit path="units/payday2/characters/npc_acc_safe_ovk_1/npc_acc_safe_ovk_1"/>
				<object path="units/payday2/characters/npc_acc_safe_ovk_1/npc_acc_safe_ovk_1"/>
				<material_config path="units/payday2/characters/npc_acc_safe_ovk_1/npc_acc_safe_ovk_1"/>

				<unit path="units/payday2/characters/npc_acc_explosives_bag_1/npc_acc_explosives_bag_1"/>
				<object path="units/payday2/characters/npc_acc_explosives_bag_1/npc_acc_explosives_bag_1"/>
				<material_config path="units/payday2/characters/npc_acc_explosives_bag_1/npc_acc_explosives_bag_1"/>

				<unit path="units/payday2/characters/npc_acc_cage_bag_1/npc_acc_cage_bag_1"/>
				<object path="units/payday2/characters/npc_acc_cage_bag_1/npc_acc_cage_bag_1"/>
				<material_config path="units/payday2/characters/npc_acc_cage_bag_1/npc_acc_cage_bag_1"/>

				<unit path="units/payday2/characters/npc_acc_tools_bag_large_1/npc_acc_tools_bag_large_1"/>
				<object path="units/payday2/characters/npc_acc_tools_bag_large_1/npc_acc_tools_bag_large_1"/>
				<material_config path="units/payday2/characters/npc_acc_tools_bag_large_1/npc_acc_tools_bag_large_1"/>

				<unit path="units/payday2/characters/npc_acc_body_bag_1/npc_acc_body_bag_1"/>
				<object path="units/payday2/characters/npc_acc_body_bag_1/npc_acc_body_bag_1"/>
				<material_config path="units/payday2/characters/npc_acc_body_bag_1/npc_acc_body_bag_1"/>

				<unit path="units/pd2_dlc_help/characters/npc_acc_spooky_bag/npc_acc_spooky_bag"/>
				<object path="units/pd2_dlc_help/characters/npc_acc_spooky_bag/npc_acc_spooky_bag"/>
				<material_config path="units/pd2_dlc_help/characters/npc_acc_spooky_bag/npc_acc_spooky_bag"/>

				<unit path="units/payday2/characters/npc_acc_loot_bag_1/npc_acc_loot_bag_1"/>
				<object path="units/payday2/characters/npc_acc_loot_bag_1/npc_acc_loot_bag_1"/>
				<material_config path="units/payday2/characters/npc_acc_loot_bag_1/npc_acc_loot_bag_1"/>

				<unit path="units/payday2/characters/npc_acc_tools_bag_1/npc_acc_tools_bag_1"/>
				<object path="units/payday2/characters/npc_acc_tools_bag_1/npc_acc_tools_bag_1"/>
				<material_config path="units/payday2/characters/npc_acc_tools_bag_1/npc_acc_tools_bag_1"/>
			</add>
		</AddFiles>
		<Options build_menu="false">
			<options>
				<option name="ShowImages" type="boolean" default_value="true"/>
				<option name="MenuColor" type="color" default_value="Color('007af3')"/>
				<option name="ImportantNotice" type="boolean" default_value="true"/>
				<option name="ShowErrorsDialog" type="boolean" default_value="true"/>
				<option name="DevMode" type="boolean" default_value="false"/>
				<option name="GithubUpdates" type="boolean" default_value="false"/>
				<option name="LogSounds" type="boolean" default_value="false"/>
				<option name="OptimizedMusicLoad" type="boolean" default_value="true"/>
				<option name="CustomMapsOnlyFilter" type="boolean" default_value="false"/>
				<option name="LogInit" type="boolean" default_value="false"/>
				<option name="ModSettings" type="table"/>
				<!-- These are not used anymore. All settings are in ModSettings now. Any data inside these will be moved to there. -->
				<option name="DisabledMods" type="table"/>
				<option name="IgnoredUpdates" type="table"/>
			</options>
		</Options>
		<Hooks directory="Hooks">
			<hook source_file="core/lib/managers/coresoundenvironmentmanager" file="Fixes.lua"/>
			<hook source_file="core/lib/managers/coreworldinstancemanager" file="Fixes.lua"/>
			<hook source_file="core/lib/managers/mission/coreelementinstance" file="Fixes.lua"/>
			<hook source_file="lib/managers/blackmarketmanager" file="Fixes.lua"/>
			<hook source_file="lib/managers/blackmarketmanager" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/managers/criminalsmanager" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/managers/dialogmanager" file="DialogManager.lua"/>
			<hook source_file="lib/managers/dialogmanager" file="Fixes.lua"/>
			<hook source_file="lib/managers/dlcmanager" file="Fixes.lua"/>
			<hook source_file="lib/managers/dlcmanager" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/managers/group_ai_states/groupaistatebase" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/managers/hud/vr/hudbelt" file="Fixes.lua"/>
			<hook source_file="lib/managers/infamymanagernew" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/managers/localizationmanager" file="OtherHooks.lua" />
			<hook source_file="lib/managers/menu/blackmarketgui" file="Fixes.lua"/>
			<hook source_file="lib/managers/menu/blackmarketgui" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/managers/menu/crewmanagementgui" file="Fixes.lua"/>
			<hook source_file="lib/managers/menu/crewmanagementgui" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/managers/menu/menuscenemanager" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/managers/menu/renderers/menunodecustomizeweaponcolorgui" file="Fixes.lua"/>
			<hook source_file="lib/managers/mission/elementfilter" file="Fixes.lua"/>
			<hook source_file="lib/managers/mission/elementinteraction" file="Fixes.lua"/>
			<hook source_file="lib/managers/mission/elementvehiclespawner" file="Fixes.lua"/>
			<hook source_file="lib/managers/missionmanager" file="OtherHooks.lua"/>
			<hook source_file="lib/managers/multiprofilemanager" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/managers/musicmanager" file="MusicManager.lua"/>
			<hook source_file="lib/managers/platformmanager" file="Fixes.lua"/>
			<hook source_file="lib/managers/weaponfactorymanager" file="Fixes.lua"/>
			<hook source_file="lib/network/base/handlers/connectionnetworkhandler" file="Fixes.lua"/>
			<hook source_file="lib/network/base/networkpeer" file="Fixes.lua"/>
			<hook source_file="lib/network/base/networkpeer" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/setups/gamesetup" file="OtherHooks.lua"/>
			<hook source_file="lib/setups/setup" file="OtherHooks.lua"/>
			<hook source_file="lib/states/ingamewaitingforplayers" file="Fixes.lua"/>
			<hook source_file="lib/tweak_data/blackmarket/glovestweakdata" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/tweak_data/blackmarkettweakdata" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/tweak_data/dlctweakdata" file="OtherHooks.lua"/>
			<hook source_file="lib/tweak_data/groupaitweakdata" file="Fixes.lua"/>
			<hook source_file="lib/tweak_data/tweakdata" file="OtherHooks.lua"/>
			<hook source_file="lib/tweak_data/tweakdatapd2" file="OtherHooks.lua"/>
			<hook source_file="lib/units/beings/player/playerdamage" file="Fixes.lua"/>
			<hook source_file="lib/units/beings/player/playerdamage" file="PlayerDamage.lua"/>
			<hook source_file="lib/units/beings/player/playermovement" file="Fixes.lua"/>
			<hook source_file="lib/units/beings/player/states/playerstandard" file="OtherHooks.lua"/>
			<hook source_file="lib/units/beings/player/states/vr/hand/playerhandstatemelee" file="Fixes.lua"/>
			<hook source_file="lib/units/menu/menuarmourbase" file="PlayerStyleGloveHooks.lua"/>
			<hook source_file="lib/units/weapons/newraycastweaponbase" file="OtherHooks.lua"/>
			<hook source_file="lib/units/weapons/raycastweaponbase" file="Fixes.lua"/>

			<hooks directory="Network">
				<hook source_file="lib/managers/crimenetmanager" file="CrimeNetManager.lua"/>
				<hook source_file="lib/managers/group_ai_states/groupaistatebase" file="NetworkHooks.lua"/>
				<hook source_file="lib/network/base/basenetworksession" file="BaseNetworkSession.lua"/>
				<hook source_file="lib/network/base/clientnetworksession" file="ClientNetworkSession.lua"/>
				<hook source_file="lib/network/base/networkpeer" file="NetworkPeer.lua"/>
				<hook source_file="lib/network/handlers/unitnetworkhandler" file="NetworkHooks.lua"/>
				<hook source_file="lib/network/matchmaking/networkmatchmakingsteam" file="NetworkMatchmakingSteam.lua"/>
				<hook source_file="lib/units/beings/player/huskplayermovement" file="NetworkHooks.lua"/>
				<hook source_file="lib/units/beings/player/playerinventory" file="NetworkHooks.lua"/>
				<hook source_file="lib/units/player_team/huskteamaibase" file="NetworkHooks.lua"/>
				<hook source_file="lib/units/player_team/teamaibase" file="NetworkHooks.lua"/>
				<hook source_file="lib/units/weapons/newraycastweaponbase" file="NetworkHooks.lua"/>
			</hooks>

			<hooks directory="World">
				<hook source_file="core/lib/managers/coresequencemanager" file="CoreSequenceManager.lua"/>
				<hook source_file="core/lib/managers/viewport/environment/coreenvironmentmanager" file="EnvironmentManager.lua"/>
				<hook source_file="core/lib/utils/dev/editor/coreworlddefinition" file="CoreWorldDefinition.lua"/>
				<hook source_file="lib/managers/gameplaycentralmanager" file="GamePlayCentralManager.lua"/>
				<hook source_file="lib/managers/killzonemanager" file="KillzoneManager.lua"/>
			</hooks>

			<hooks directory="UI">
				<hook source_file="lib/managers/menu/menucomponentmanager" file="BeardLibModsMenuButton.lua"/>
				<hook source_file="lib/managers/menu/menuinput" file="MenuInput.lua"/>
				<hook source_file="lib/managers/menu/scrollablepanel" file="ScrollablePanel.lua"/>
				<hook source_file="lib/managers/menumanager" file="MenuManager.lua"/>
				<hook source_file="lib/managers/systemmenumanager" file="SystemMenuManager.lua"/>
			</hooks>
		</Hooks>
	</load_modules>
	<classes>
		<!-- Not really a class, but since BeardLib starts with CoreSystem, we want to hook into this a bit earlier, so modules can start using stuff -->
		<class file="Hooks/CoreSystem.lua"/>
		<classes directory="Classes">
			<class file="Constants.lua"/>
			<class file="ModCore.lua"/>
			<class file="MixedSoundSource.lua"/>
			<class file="ModuleBase.lua"/>
			<class file="WeaponSkinExtension.lua"/>
			<class file="Deprecated.lua"/>
	
			<classes directory="Utils">
				<class file="Version.lua"/>
				<class file="TweakDataHelper.lua"/>
				<class file="CRC32.lua"/>
				<class file="Table.lua"/>
				<class file="String.lua"/>
				<class file="Math.lua"/>
				<class file="Input.lua"/>
				<class file="Hooks.lua"/>
				<class file="MenuHelperPlus.lua"/>
				<class file="JSON.lua"/>
				<class file="YAML.lua"/>
				<class file="XML.lua"/>
				<class file="Builders.lua"/>
				<class file="Sync.lua"/>
			</classes>
	
			<classes directory="Managers">
				<class file="AchievementManager.lua"/>
				<class file="MenuUIManager.lua"/>
				<class file="MenuDialogManager.lua"/>
				<class file="PackageManager.lua"/>
				<class file="SoundManager.lua"/>
				<class file="FileManager.lua"/>
			</classes>
	
			<classes directory="Frameworks">
				<class file="FrameworkBase.lua"/>
				<class file="MapFramework.lua"/>
				<class file="AddFramework.lua"/>
			</classes>
	
			<classes directory="UI">
				<class file="AchievementMenu.lua"/>
				<class file="ModsMenu.lua"/>
	
				<classes directory="Dialogs">
					<class file="MenuDialog.lua"/>
					<class file="FileBrowserDialog.lua"/>
					<class file="ColorDialog.lua"/>
					<class file="ListDialog.lua"/>
					<class file="InputDialog.lua"/>
					<class file="SelectListDialog.lua"/>
					<class file="SimpleListDialog.lua"/>
					<class file="DownloadDialog.lua"/>
					<class file="SimpleSelectListDialog.lua"/>
				</classes>
				<classes directory="MenuUI">
					<class file="MenuUI.lua"/>
					<class file="TextBoxBase.lua"/>
					<class file="ContextMenu.lua"/>
					<class file="Item.lua"/>
					<class file="Menu.lua"/>
					<class file="Holder.lua"/>
					<class file="MenuAlignMethods.lua"/>
					<class file="KeyBind.lua"/>
					<class file="Group.lua"/>
					<class file="NoteBook.lua"/>
					<class file="PopupMenu.lua"/>
					<class file="ImageButton.lua"/>
					<class file="Toggle.lua"/>
					<class file="ComboBox.lua"/>
					<class file="Slider.lua"/>
					<class file="TextBox.lua"/>
					<class file="ColorTextBox.lua"/>
				</classes>
			</classes>
		</classes>
	</classes>
	<loading_classes>
		<classes directory="Classes">
			<class file="Constants.lua"/>
			<class file="ModCore.lua"/>
			<class file="ModuleBase.lua"/>
			<class file="Deprecated.lua"/>

			<classes directory="Utils">
				<class file="Table.lua"/>
				<class file="Hooks.lua"/>
				<class file="JSON.lua"/>
			</classes>

			<classes directory="Frameworks">
				<class file="FrameworkBase.lua"/>
				<class file="MapFramework.lua"/>
			</classes>
		</classes>
	</loading_classes>
	<load_enabled_modules>
		<value_node value="HooksModule"/>
		<value_node value="LevelModule"/>
		<value_node value="OptionModule"/>
	</load_enabled_modules>
	<mission_elements>
		<value_node value="MoveUnit"/>
		<value_node value="RotateUnit"/>
		<value_node value="Environment"/>
		<value_node value="PushInstigator"/>
		<value_node value="CustomSound"/>
		<value_node value="ExecuteWithCode"/>
		<value_node value="ExecuteCode"/>
		<value_node value="OverrideInstigator"/>
		<value_node value="XAudio"/>
		<value_node value="BLCustomAchievement"/>
		<value_node value="AIGroupType"/>
		<value_node value="RelativeTeleport"/>
		<value_node value="RelativeTeleportTarget"/>
	</mission_elements>
</table>
