Modding:Custom polymorph

From Baldur's Gate 3 Wiki
Jump to navigation Jump to search

Bgwiii.png CommunityGuidesModding

Modding guides
Modding resources

This tutorial is from a post shared by tyvianpear in the DbtR Discord server.

Template[edit | edit source]

TemplateID in Status_POLYMORPHED.txt.

new entry "DISGUISE_SELF_TIEFLING_MALE"
type "StatusData"
data "StatusType" "POLYMORPHED"
data "DisplayName" "Shared_Status_POLYMORPHED_DISGUISE_SELF_TIEFLING_MALE_DisplayName"
data "Description" "Shared_Status_POLYMORPHED_DISGUISE_SELF_TIEFLING_MALE_Description"
data "Icon" "Spell_Illusion_DisguiseSelf"
data "StackId" "DISGUISE_SELF"
data "Boosts" "UnlockSpell(Shout_DisguiseSelf_Cancel)"
data "TemplateID" "**cc71e73a-53eb-4f49-ab31-e80d5d5f1ef2**"
data "Rules" "c7c3381e-b901-416e-a0c4-bc745e1ff54a"
data "StatusGroups" "SG_Polymorph;SG_Disguise"
data "StatusEffect" "43248db1-c7e1-424d-935e-516d8071cf66"


Is the same as the MapKey in RootTemplates/_merged.lsx.

<node id="GameObjects">
 <attribute id="CharacterVisualResourceID" type="FixedString" value="a178a41d-05c3-3bc8-4879-15d2effe3300" />
 <attribute id="Icon" type="FixedString" value="a178a41d-05c3-3bc8-4879-15d2effe3300-(Icon_Tiefling_Male)" />
 <attribute id="LevelName" type="FixedString" value="" />
 **<attribute id="MapKey" type="FixedString" value="cc71e73a-53eb-4f49-ab31-e80d5d5f1ef2" />**
 <attribute id="Name" type="LSString" value="" />
 <attribute id="ParentTemplateId" type="FixedString" value="6f881126-478f-43a4-ba02-c024cf03a212" />
 <attribute id="SpellSet" type="FixedString" value="CommonPlayerActions" />
 <attribute id="Stats" type="FixedString" value="HeroTieflingMale" />
 <attribute id="Type" type="FixedString" value="character" />
 <attribute id="OriginalFileVersion" type="int64" value="144115198813274112" />
  <children>
   <node id="LocomotionParams" />
   <node id="SpeakerGroupList">
    <children>
     <node id="SpeakerGroup">
     <attribute id="Object" type="guid" value="02cdc15e-1dc3-5eb4-3cf7-5894f9b49f0b" />
     </node>
     <node id="SpeakerGroup">
      <attribute id="Object" type="guid" value="e0d1ff71-04a8-4340-64ae-849646d883eb" />
     </node>
    </children>
   </node>
   <node id="Tags">
    <children>
     <node id="Tag">
      <attribute id="Object" type="guid" value="25bf5042-5bf6-4360-f88d-10abcb7c370d" />
     </node>
    </children>
   </node>
  </children>
 </node>


And then in Name in [PAK]_CharacterVisuals/_merged.lsx you have this, where we change the body mesh, hair, etc.

<node id="Resource">
   <attribute id="BaseVisual" type="FixedString" value="17eb4495-aeb5-a417-83a1-79b39313cba2" />
   <attribute id="BodySetVisual" type="FixedString" value="9d618ae2-7993-5cea-bfea-887a010e2c2b" />
   <attribute id="ID" type="FixedString" value="a178a41d-05c3-3bc8-4879-15d2effe3300" />
   <attribute id="Localized" type="bool" value="False" />
   <attribute id="Name" type="LSString" value="Tieflings_Male_Asmodeus_Player_cc71e73a-53eb-4f49-ab31-e80d5d5f1ef2" />
   <attribute id="ShowEquipmentVisuals" type="bool" value="True" />
   <attribute id="OriginalFileVersion" type="int64" value="144115188075855921" />
    <children>
     ...