Modding:Editing a Character Creation Preset

From Baldur's Gate 3 Wiki
Jump to navigation Jump to search
File path: Shared\Public\Shared\Content\[PAK]_CharacterVisuals\_merged.lsf

Use the Find function to find your preferred preset by following this format: RACE_GENDER_SUBRACE_Player

Example: Elves_Female_High_Player

We find a Resource node similar to this:
<node id="Resource">
	<attribute id="BaseVisual" type="FixedString" value="c05cb1dc-81eb-647b-3e03-e9bf4301fcc4" />
	<attribute id="BodySetVisual" type="FixedString" value="9e43f0e4-d063-d85c-87b4-470d569645db" />
	<attribute id="ID" type="FixedString" value="d67bd924-3c1f-c33a-5298-feca5bbdc284" /> <!--Leave this the same if you want to overwrite vanilla-->
	<attribute id="Name" type="LSString" value="Elves_Female_High_Player_f08563b3-748d-4783-837b-b8620bc60b22" /> <!--Example Player entry-->
	<attribute id="ShowEquipmentVisuals" type="bool" value="True" />
	<attribute id="_OriginalFileVersion_" type="int64" value="144115207403209034" />
		<children>
			<node id="MaterialOverrides">
				<attribute id="MaterialResource" type="FixedString" value="" />
					<children>
						<node id="MaterialPresets">
							<children>
								<node id="Object">
                                    <attribute id="ForcePresetValues" type="bool" value="True" />
                                    <attribute id="GroupName" type="FixedString" value="02Skin Properties" /> <!--Skin color-->
									<attribute id="MapKey" type="FixedString" value="02Skin Properties" />
									<attribute id="MaterialPresetResource" type="FixedString" value="73d00e6d-d66e-8a39-e1ae-5f6e47ab5a2e" />
								</node>
								<node id="Object">
								    <attribute id="ForcePresetValues" type="bool" value="True" />
								    <attribute id="GroupName" type="FixedString" value="06Eyes" /> <!--Eye color-->
								    <attribute id="MapKey" type="FixedString" value="06Eyes" />
								    <attribute id="MaterialPresetResource" type="FixedString" value="5be2f4a9-7f1b-673b-8d90-f10bf748215b" />
								</node>
								<node id="Object">
									<attribute id="ForcePresetValues" type="bool" value="True" />
									<attribute id="GroupName" type="FixedString" value="05Makeup" /> <!--Eye makeup-->
									<attribute id="MapKey" type="FixedString" value="05Makeup" />
									<attribute id="MaterialPresetResource" type="FixedString" value="e22ca76f-ff27-ee34-4fea-266a2a8d8ee3" />
								</node>
								<node id="Object">
									<attribute id="ForcePresetValues" type="bool" value="True" />
									<attribute id="GroupName" type="FixedString" value="03Hair" /> <!--Hair color-->
									<attribute id="MapKey" type="FixedString" value="03Hair" />
									<attribute id="MaterialPresetResource" type="FixedString" value="742499c5-9a8c-ce4c-974f-78f3d652e10e" />
								</node>
								<node id="Object">
									<attribute id="ForcePresetValues" type="bool" value="False" />
									<attribute id="GroupName" type="FixedString" value="02 Colour" /> <!--Hair accessories color(?)-->
									<attribute id="MapKey" type="FixedString" value="02 Colour" />
									<attribute id="MaterialPresetResource" type="FixedString" value="00000000-0000-0000-0000-000000000000" />
								</node>
							</children>
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="DetailNormalStrength" />
									<attribute id="Value" type="float" value="0" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Reflectance" />
									<attribute id="Value" type="float" value="0.6" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Opacity" />
									<attribute id="Value" type="float" value="2" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="UseOcclusion" />
									<attribute id="Value" type="float" value="0.7" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Scalp_Scatter" />
									<attribute id="Value" type="float" value="0.5" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Scalp_RoughnessContrast" />
									<attribute id="Value" type="float" value="0.6" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Scalp_Roughness" />
									<attribute id="Value" type="float" value="0.45" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Scalp_ColorDepthContrast" />
									<attribute id="Value" type="float" value="0.7" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Scalp_DepthColorIntensity" />
									<attribute id="Value" type="float" value="0.1" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Scalp_DepthColorExponent" />
									<attribute id="Value" type="float" value="0.1" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Scalp_ColorTransitionSoftness" />
									<attribute id="Value" type="float" value="0.6" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Scalp_IDContrast" />
									<attribute id="Value" type="float" value="1" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Scalp_HornMaskWeight" />
									<attribute id="Value" type="float" value="0" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Scalp_Graying_Intensity" />
									<attribute id="Value" type="float" value="0" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Scalp_ColorTransitionMidPoint" />
									<attribute id="Value" type="float" value="0.1" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="FrecklesWeight" />
									<attribute id="Value" type="float" value="0" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Highlight_Intensity" /> <!--Hair highlight intensity-->
									<attribute id="Value" type="float" value="0" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="doBodyHide" />
									<attribute id="Value" type="float" value="1" />
								</node>
								<node id="ScalarParameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="doDrawMakeup" />
									<attribute id="Value" type="float" value="0" />
								</node>
								<node id="Vector3Parameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="True" />
									<attribute id="Parameter" type="FixedString" value="NonSkinColor" />
									<attribute id="Value" type="fvec3" value="0.04439873 0.01316299 0.0006657844" />
								</node>
								<node id="Vector3Parameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="AddedColor" />
									<attribute id="Value" type="fvec3" value="0.02570003 0 0" />
								</node>
								<node id="Vector3Parameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="True" />
									<attribute id="Parameter" type="FixedString" value="Color_01" />
									<attribute id="Value" type="fvec3" value="0.2518036 0.4229639 0.1540255" />
								</node>
								<node id="Vector3Parameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Color_02" />
									<attribute id="Value" type="fvec3" value="1 0.5234432 0.3344578" />
								</node>
								<node id="Vector3Parameters">
									<attribute id="Color" type="bool" value="False" />
									<attribute id="Custom" type="bool" value="True" />
									<attribute id="Enabled" type="bool" value="False" />
									<attribute id="Parameter" type="FixedString" value="Color_03" />
									<attribute id="Value" type="fvec3" value="0.1572807 0.09151835 0.3488648" />
								</node>
							</children>
						</node>
						<node id="Materials">
							<attribute id="MapKey" type="FixedString" value="489d7f2c-9839-e1d0-67c5-260294337785" />
							<children>
								<node id="MaterialOverrides">
									<attribute id="MaterialResource" type="FixedString" value="489d7f2c-9839-e1d0-67c5-260294337785" />
									<children>
										<node id="MaterialPresets" />
										<node id="ScalarParameters">
											<attribute id="Color" type="bool" value="False" />
											<attribute id="Custom" type="bool" value="False" />
											<attribute id="Enabled" type="bool" value="False" />
											<attribute id="Parameter" type="FixedString" value="MakeUpIndex" />
											<attribute id="Value" type="float" value="3" />
										</node>
										<node id="ScalarParameters">
											<attribute id="Color" type="bool" value="False" />
											<attribute id="Custom" type="bool" value="False" />
											<attribute id="Enabled" type="bool" value="False" />
											<attribute id="Parameter" type="FixedString" value="MakeupIntensity" />
											<attribute id="Value" type="float" value="0.7" />
										</node>
										<node id="ScalarParameters">
											<attribute id="Color" type="bool" value="False" />
											<attribute id="Custom" type="bool" value="False" />
											<attribute id="Enabled" type="bool" value="False" />
											<attribute id="Parameter" type="FixedString" value="HemoglobinAmount" />
											<attribute id="Value" type="float" value="0.8" />
										</node>
										<node id="ScalarParameters">
											<attribute id="Color" type="bool" value="False" />
											<attribute id="Custom" type="bool" value="False" />
											<attribute id="Enabled" type="bool" value="False" />
											<attribute id="Parameter" type="FixedString" value="VeinAmount" />
											<attribute id="Value" type="float" value="0.5" />
										</node>
										<node id="ScalarParameters">
											<attribute id="Color" type="bool" value="False" />
											<attribute id="Custom" type="bool" value="False" />
											<attribute id="Enabled" type="bool" value="False" />
											<attribute id="Parameter" type="FixedString" value="MelaninAmount" />
											<attribute id="Value" type="float" value="0.3" />
										</node>
										<node id="ScalarParameters">
											<attribute id="Color" type="bool" value="False" />
											<attribute id="Custom" type="bool" value="False" />
											<attribute id="Enabled" type="bool" value="False" />
											<attribute id="Parameter" type="FixedString" value="MelaninRemovalAmount" />
											<attribute id="Value" type="float" value="0" />
										</node>
										<node id="ScalarParameters">
											<attribute id="Color" type="bool" value="False" />
											<attribute id="Custom" type="bool" value="False" />
											<attribute id="Enabled" type="bool" value="False" />
											<attribute id="Parameter" type="FixedString" value="YellowingAmount" />
											<attribute id="Value" type="float" value="0.2" />
										</node>
									</children>
								</node>
							</children>
						</node>
						<node id="RealMaterialOverrides" />
						<node id="Slots">
							<attribute id="Bone" type="FixedString" value="" />
							<attribute id="Slot" type="FixedString" value="Head" /> <!--Head mesh-->
							<attribute id="VisualResource" type="FixedString" value="555b1e26-9a79-c11b-134d-a557b317bd93" />
						</node>
						<node id="Slots">
							<attribute id="Bone" type="FixedString" value="" />
							<attribute id="Slot" type="FixedString" value="Hair" /> <!--Hair mesh-->
							<attribute id="VisualResource" type="FixedString" value="588b3a58-bcf1-b2be-ba70-98bc821c64d3" />
						</node>
						<node id="Slots">
							<attribute id="Bone" type="FixedString" value="" />
							<attribute id="Slot" type="FixedString" value="Private Parts" />
							<attribute id="VisualResource" type="FixedString" value="1f07d7e4-e0a1-3114-93ae-dd2f0bdfc0b0" />
						</node>
						<node id="Slots">
							<attribute id="Bone" type="FixedString" value="" />
							<attribute id="Slot" type="FixedString" value="ModestyLeaf" />
							<attribute id="VisualResource" type="FixedString" value="dec25989-ed08-895e-4ae0-5c9b44352bf0" />
						</node>
						<node id="Slots">
							<attribute id="Bone" type="FixedString" value="" />
							<attribute id="Slot" type="FixedString" value="ModestyLeaf" />
							<attribute id="VisualResource" type="FixedString" value="13bb4168-a5e4-fe82-f3df-57721a1ffed3" />
						</node>
					</children>
</node>
The MaterialPresetResource and VisualResource IDs can be found in a variety of places. Some of them are here on the wiki: Hair Meshes, Head Models, NPC Head Models, and others are external: Eye Makeup Reference.

Finally, with some clever searching you can usually find what you need using the Multitool and searching the game files.

Some other useful parameters for customizing CC presets:

Hair highlight color:
<node id="Vector3Parameters">
	<attribute id="Color" type="bool" value="False" />
	<attribute id="Custom" type="bool" value="True" />
	<attribute id="Enabled" type="bool" value="True" />
	<attribute id="Parameter" type="FixedString" value="Highlight_Color" /> 
	<attribute id="Value" type="fvec3" value="0.6392157 0.2392157 0" /> <!--Hair highlight color (in SRGB form)-->
</node>
Face tattoo: (note: there seems to be an issue where presets will only use the first 16 face tattoos, and no fix is known at this time)
<node id="Object">
	<attribute id="ForcePresetValues" type="bool" value="True" />
	<attribute id="GroupName" type="FixedString" value="04Tattoo" />
	<attribute id="MapKey" type="FixedString" value="04Tattoo" />
	<attribute id="MaterialPresetResource" type="FixedString" value="2c477c0d-15a8-0591-bd94-6acc583666ea" /> <!--Face tattoo ID-->
</node>