Take me to...

Changing strings for actual display names

This guide will cover the simple steps needed to make the names of the assets you’ve created not appear in bracketed string.

The most common case is dungeon entrances. By default, the name of your custom dungeon will be displayed in brackets when you are near the entrance. But by doing the next steps, we can change how this name is displayed within the game.

A person standing in front of a stone arch

Description automatically generatedA person standing in front of a stone arch

Description automatically generated


1. Open Window>Localization Text Editor.

A screenshot of a computer

Description automatically generated


2. Type the name of the asset you want to be displayed correctly in the ID field for which asset to reference, and below in the Locolization field will be the name which will be displayed in-game.


For example, if this is for a dungeon, the name of the dungeon can be found on the blueprint of the dungeon itself, or in the DungeonsTable data table found in your Data folder inside your mod folder.

A screenshot of a computer

Description automatically generated


3. If this needs to be done on a custom asset (such as an item, resource, NPC, enemy, etc.), these names are usually found in the Registry data table, which can be opened in Window>DB Text Entry>Static.

A screenshot of a computer

Description automatically generated


4. Back in the Localization Text Editor window, simply type the name that you want to change in the ID box, and below in the Locolization field will be the name which will be displayed in-game.

5. Press the Apply Changes button.

 

Playing in editor you should now be able to ensure your asset has been correctly renamed.

A person pointing at a horse

Description automatically generated


It should be noted that these changes are stored in a file named LocDirect.ava.json located where your Creator Kit has been installed.


Editing this file can be done manually, but you’ll still have to apply these changes in the Localization Text Editor for them to take effect.


This change should affect all languages the game can be installed in.


Creating material transparency

This is a short step by step guide to import a PNG file with a transparent background and edit it to show properly. By default, if you import a PNG file it will have a black background.

Instructions

1. Firstly, obtain a PNG file and make sure that it actually has a transparent background.
In this case we will be using a picture of the moon.

2. Drag and drop the PNG file into the Content Browser.

A screenshot of a computer

Description automatically generated


3. Place down a cube actor. (or any other simple actor such as a cone or sphere)

4. Drag the PNG texture on to the cube to quickly create a material.


5. Double click the new material in the content browser to open the Material Editor.

A screenshot of a video game

Description automatically generated


6. In the editor, set the Blend Mode of the material to AlphaComposite.

A screenshot of a computer

Description automatically generated


7. Connect the “A” pin of the texture to the “Opacity” of the material.

A screenshot of a computer

Description automatically generated


8. Apply changes and Save the material.


9. Test your changes to ensure the objects does indeed have transparency and your done!


Some additional orientation tweaking for the object or texture may be required depending on the object chosen


Using Sockets on skeletal mesh

Use this guide If you’re looking to connect an item to a moving character/creature, such as a weapon to a hand, a hat to a head, etc, sockets are a very useful tool! They can be used to attach an item of your choice to any part of an animated rig.


Instructions

In this example, we will be attaching the static mesh of a hut to the skeletal mesh of a chicken, similar to the folk tale character Baba Yaga’s hut:

1. Go to the skeletal mesh you want to edit by double-clicking it either in the content viewer or on the bottom-right in Details:

A computer screen shot of a chicken

Description automatically generated

 

2. Find and select the bone you want to connect an item to:
 In this example, we’re selecting the pelvis bone.

A screenshot of a computer

Description automatically generated


Note: To best visualize the bones you’re looking for, select Character> Bones> Bone Drawing> All Hierarchy, in the Viewport. 
If the Skeleton Tree tab is not currently present, it can be found by going to the top-left of the editor, and select Window > Skeleton Tree.


It’s worth the time to preview some animations with the desired bone selected to visualize the result. You can preview animations in the top left of this screen

 

3. Right Click the desired bone and select “Add Socket”:
This will Generate a new item in the hierarchy called “bonenameSocket”.

A screenshot of a computer

Description automatically generated

 

4. Hit save and return to your content browser/viewport area:

A screenshot of a computer

Description automatically generated


5. Select or create the desired blueprint:
Either make a new blueprint by pressing "Blueprint/Addscript" in details, or find the blueprint that pertains to your entity in the content browser and edit it by double-clicking it.

A screenshot of a computer

Description automatically generated


6. Add desired mesh(es) to the blueprint:
In the Viewport tab of the blueprint, add the desired static mesh(es) into your scene by clicking and dragging them from your content browser into the viewport.

A screenshot of a computer

Description automatically generated

 

7. Parent the edited mesh(es) to the desired skeletal mesh:
Click and drag the mesh you wish to attach onto the skeletal mesh in the "Components" tab in the top left.

A computer screen shot of a bird house

Description automatically generated

 

Note: Be sure you are parenting the mesh(es) you are trying to attach to the Skeletal Mesh you want them to be attached to. 
Attaching your mesh(es) to another component might produce unwanted results. 

 

8. Attach the mesh to the created socket:
With your desired Affected mesh(es) selected, go to Details > Sockets > Parent Socket and click the small magnifying glass next to "None". In that dropdown, find the bonenameSocket that was created in step 3, and click it.

A computer screen shot of a bird house

Description automatically generated


9. Make desired edits to the static mesh(es) and align them where you'd like on the model:

A computer screen shot of a bird

Description automatically generated


Note: The size, location, and rotation of the item can also be changed by editing the socket in the skeletal mesh's editor and using a preview mesh to preview your result (right click socket>preview mesh> select a mesh), however, these transformations will BOTH be applied to the objects in future, so be sure you do one or the other. Editing the Socket itself may be useful if you want to have multiple items appearing on the same character

 

You're done! Now, you can preview animations on the skeletal mesh and see how the socketed item(s) look!


Simply select your skeletal mesh and, in details, go to Animation > Animation Mode > Use Animation Asset.
Then, under "Anim to Play" in that same section, you can select whichever animation is on the skeletal mesh to see how they look! 

We suggest searching for a "loop" of an animation to best get the visual!

A computer screen shot of a chicken

Description automatically generated


Note: If your skeletal mesh enters the blueprint scene in motion, you can press ctrl+R to toggle Realtime and make edits without the animation playing


Character Asset Data Files

Structure Graph



SkeletalMesh (SK_) & Animations

Skeletal Meshes are 3D art assets, also contains textures, skeleton&rigging.

CharacterPiece (DA_)


CharacterPiece is the building block of characters, usually it contains a piece of a whole character.

There are lots of Character Piece Types to choose from, and depending on what you choose, additional assets can be referenced. In the above example, a “head“ piece can reference a Facial Pose Asset, whereas a “beard” piece cannot.


You can totally implement an entire character with a single piece, as DA_DarkWizardCharacter_VictorRookWood_Master


AvatarPresetDefinition (DA_)

This file defines a single Avatar Preset, and refers to CharacterPiece file(s).


As you can see, in DA_HairFemale017, 3 character items are presented. In this way, an avatar preset can be very flexible.

Avatar Presets are what appears in the character customization menu at the beginning of the game. Each tab of the UI will search for certain type of preset.


CustomizableCharacterDefinition (DA_)

This is a more high-level definition of a character, the 2 major sections are “Character Items“(as seen above) and “Outfits“. Below is the example DA_T3StudentGryffindorFemale2


It provides a lot of tools for you to have very fine control of what a character looks like. for example:


As you can see, the Gryffindor robe is just a regular robe with overridden textures and colors.

This is very handy when you have one art asset, and want to create a lot of variants.


How To: Add New Modded Brooms

In this article, BroomName is used in place of your new broom’s name. This guide assumes that you have created a mod already.

Take me to...

Adding Brooms

BP_FlyingBroom Blueprints

This section covers general blueprint classes that will become the backbone for creating your broom.


1. Navigate to \\Content\Pawn\Player\Broom\Blueprints\Brooms. Each broom here has its own subdirectory (i.e., Aeromancer, BrightSpark, DarkWizard) that contains three blueprint classes, one inheriting from BP_FlyingBroom_VendorPreview, one from BP_FlyingBroomCapsule, and one from BP_FlyingBroomProp.
Your broom will follow the same structure.


2. Create a folder for your broom in your mod’s content folder and give it the name of your broom (no spaces). 


You can place this in the root of your mod’s content folder, but if you’re creating multiple brooms it could be helpful to create a directory for broom definitions inside your mod’s content folder, similar to the above. You will create one of each of the three blueprint classes outlined in the preceding step for your broom that will be placed in this folder.


3. Create one of each of the blueprints as outlined in the bellow subsections.


BP_FlyingBroom_VendorPreview

This blueprint class will be the broom displayed in UI, such as in the inventory. 

  1. In your broom’s folder, create a new blueprint class that has BP_FlyingBroom_VendorPreview as its parent class. Name this new class “BP_FlyingBroom_VendorPreview_BroomName”. 
  2. Open the new blueprint class and scroll down until you get to the Cloth category and set the Broom Physic Asset for Rider Cloth to the appropriate Physics Asset. Creation of these assets will not be covered in this guide.

BP_FlyingBroomCapsule

This blueprint class is the first of two classes that will be needed for using and flying your broom. 

  1. In your broom’s folder, create a new blueprint class that has BP_FlyingBroomCapsule as its parent class and name the new class “BP_FlyingBroomCapsule_BroomName”.
  2. Open the new blueprint class and scroll down until you get to the Cloth category and set the Broom Physic Asset for Rider Cloth to the appropriate Physics Asset.
  3. Optional: To add visual effects to the broom, such as a trail, modify of values of STR Accent VFX, which is located in the Defaultcategory. Below are the notable values to set:
    1. AccentVFX
    2. Accent_Parent
    3. Accent_Offset
    4. Accent_Offset_Rot
    5. Broom_Params

BP_FlyingBroomProp

This blueprint class is the second of two classes that will be needed for using and flying your broom. 

  1. In your broom’s folder, create a new blueprint class that has BP_FlyingBroomProp as its parent class and name the new class “BP_FlyingBroomProp_BroomName”. 
  2. Open the new blueprint class and scroll down until you get to the Cloth category and set the Broom Physic Asset for Rider Cloth to the appropriate Physics Asset.

Setting a Broom’s Mesh

By default, the broom will use the default broom mesh (SK_HouseBroom). To set the broom’s mesh, perform the following steps for each of the three Flying Broom classes created in the previous section.


1. Navigate to the Components window in the blueprint. If the Components window is not visible, this is likely because the blueprint is a data only blueprint. In this case, select Open Full Blueprint Editor option.

  1. In the Components window, select the SkeletalMesh component.


2. In the Details window, scroll down to Mesh and set the Skeletal Mesh value to the correct skeletal mesh of the broom.



Setting a Blueprint to Data Asset Only

If the blueprint class is not already, you may want to set the three broom classes to be Data Asset Only.

  1. In the Construction Script tab of the blueprint, break the link between the Construction Script and Parent: Construction Script nodes.


  2. It is possible that you may need to restart the editor to see the class to appear as Data Asset Only.


Creating a Broom as an Inventoriable Item

This section covers how to create your broom as an inventoriable item.


1. Open the Database Text Entry tool by clicking on the “Windows” drop down on the toolbar, scrolling down, and selecting “DB Text Entry”, then “Static”. Use the “Search Tables” field on the top left in the window that opens to find the tables mentioned below and add the necessary database fields.


2. Add a new entry to the Registry database table.

RegistryID

SubtypeID

BroomBroomName

Miscellaneous


3. Add a new entry to the ItemDefinition database table.

ItemID

ItemType

ItemType2

RarityTier

ItemLevel

EconomyValue

SellPrice

Inventoryable

Persistent

Giftable

Sellable

Dropable

SlotLevel

ItemUsagetype

ItemUsageObjectID

Consumable

TriggerAbilityOnConsume

LockID

OnUseLockID

PrerequisiteLockID

PrerequisiteLockID2

UsableFromInventory

UIDisplayMethod

UsableOnDiamond

StorageLocation

BroomBroomName

Broom

NULL

Default

NULL

** Refer to the below notes

0

true

false

false

false

false

small

NULL

NULL

false

false

** Refer to the below notes

NULL

NULL

NULL

false

Minor

true

BroomStorage

  • ItemID is a reference to Registry.RegistryID.
  • EconomyValue is an integer that determines the amount that the broom costs to purchase.
  • SellPrice is that the amount that the item sells for. As a broom is not intended to be sold, this value is set to 0.
  • LockID is set to Vendor_Broom_Acquired for all existing brooms except those used in classes, in which case this attribute will be set to NULL.
  • UIDisplayMethod determines the kind of visual notification that displays on the UI when an instance of this item is acquired. For all brooms, this value is set to Minor.  The options for this attribute and what are displayed when obtaining the item are as followed:
    1. FullScreen: Large text & item’s icon gets displayed in the upper center of screen.
    2. Minor: Text & item’s icon appear in the upper-right of screen.
    3. NoNotification: No UI is displayed when item is obtained.
  • StorageLocation determines where in the inventory the item should be stored in.
  • Add a new entry to the VirtualContainerList database table.

VContainerID

SubtypeID

ITEM_BroomBroomName

SingleItem


4. Add a new entry to the VirtualContainerContents database table.

VContainerID

ItemID

Variation

ItemQuantity

ItemQuantityHigh

ItemRandomWeight

ItemWeightAdjust

UniqueItem

LockID

ContainerID

ShowInCurriculumRewards

ITEM_BroomBroomName

BroomBroomName

NULL

1

1

100

0

false

None

None

true

  • VContainerID is a reference to VirtualContainerList .VContainerID.
  • ItemID is a reference to ItemDefinition.ItemID.

Setting the Broom Preview for the UI

This data table associates the broom’s RegistryID/ItemID with the BP_FlyingBroom_VendorPreview blueprint class. Through this, the preview of your broom in the inventory and when viewing a vendor’s stock, the correct broom will be displayed.

  1. Create a new data table in your mod’s content folder (Right click → Miscellaneous → Data Table) and set its row type to “VendorBroomPreviewActor”. You will only need one of these, even if you are adding multiple brooms. This table will be appended to the game’s UI_DT_VendorBroomPreviewActors table via ModMutator, acting as an extension of that table.
  2. Add a new row to your data table.


  3. Set the Row Name to the broom’s RegistryID (BroomBroomName).

  4. Select your broom’s row.  In the row editor, open the dropdown next to BroomPreview Class and select the BP_FlyingBroom_VendorPreview class associated with your broom. Don’t forget to save afterwards.

  5. Open your mod’s ModMutator.
    If you don’t have one, create one by right clicking in the content browser inside your mod’s content folder and selecting “Blueprint Class”. Then open the “All Classes” dropdown near the bottom and search for ModMutator. Select it from the list and click the “Select” button.
  6. In the Class Defaults panel, look for the “Data Table Extensions” list and add a new element.
  7. Set “Additional Data” for this entry to the data table you just created.
  8. Set “Table to Add to” to the existing UI_DT_VendorBroomPreviewActors table. This will notify the mutator that it should append the contents of your table to the game’s broom preview actors table when the mod is loaded.

Assigning your Broom an Icon

In the previous section, we created an inventoriable broom; however, your broom will not have an icon when viewed in the inventory as seen in the image below. This section will cover how to take an existing icon in the form of a texture file and set it as your broom’s icon.



  1. Create a new data table in your mod’s content folder (Right click → Miscellaneous → Data Table) and set its row type to “IconInfo”. You will only need one of these, even if you are adding multiple brooms. This table will be appended to the game’s UI_DT_Icons table via ModMutator, acting as an extension of that table.
  2. Add a new row to the data table.


  3. Set the Row Name to the broom’s RegistryID (BroomBroomName).

  4. Select your broom’s row.  In the row editor, open the dropdown next to Icon and select the texture file that you would like to use for the broom’s icon.


  5. Open your mod’s ModMutator.
  6. In the Class Defaults panel, look for the “Data Table Extensions” list and add a new element.
  7. Set “Additional Data” for this entry to the data table you just created.
  8. Set “Table to Add to” to the existing UI_DT_Icons table.
    This will notify the mutator that it should append the contents of your table to the game’s icon table when the mod is loaded. You should have at least two entries in this list now, one for your broom preview actor and one for your icon.

Your broom will now use the icon you chose in the UI as seen below.



Making your Broom Mountable

While you can select to use your broom, nothing will currently happen. This section will explain how to enable the player to fly with your new broom.

Creating Tools for Your Broom

Two data assets will define how the player uses your broom.

BroomItemTool

  1. In your mod’s content folder create a new Tool folder for your broom tools and, inside it, create a new blueprint class that has BroomItemTool as its parent class and name the new class BP_BroomBroomNameItem.
  2. Open this new class and set the following category’s variables as outlined below:
    1. Broom Item Tool
      1. Flying Broom Class: BP_FlyingBroomCapsule_BroomName
        This is the path to the BP_FlyingBroomCapsule subclass associated with your new broom.

      2. Flying Broom Prop: BP_FlyingBroomProp_BroomName
        This is the path to the BP_FlyingBroomProp class associated with your new broom.

      3. Rider Animation Set Architect Asset: ADA_Human
        This determines the animation set used by the player model when riding the broom. Note that there are multiple files with the name “ADA_Human”.  It is important that you use the one found in \\Content\Data\AnimationArchitect\BroomRiding\UnrealAssets
    2. Ability
      1. Trigger Ability on Costume: true
      2. Custom Ability Name: WellFed
    3. Animation
      1. Use Item Ability: ABL_EatFood
      2. Left Arm State: Allow Motion Takeover
      3. Right Arm State: Play Hand Only Motion
    4. Targeting
      1. Allow Use when Count is Zero: true
    5. Activate
      1. Activate Effects: [0] ToolEffect_ScaleIn
      2. Deactivate Effects: [0] ToolEffect_ScaleOut
      3. Attach Socket: SKT_LeftHand
    6. Events
      1. Tool Equip Action: LeftArmItemEquipped


InventoryItemToolRecord

  1. Create a new data asset in your new Tool folder alongside the BroomItemTool you just created (under “Miscellaneous” in the “Create Advanced Asset” section) and select InventoryItemToolRecord when prompted to select a class.  Name the new data asset DA_BroomBroomNameItem.
  2. This data asset will associate a broom’s BroomItemTool and VContainerID (attribute of the VirtualContainerListtable). Open the data asset and set the following category’s variables to the specified values:
    1. Inventory Item Tool Record
      1. Inventory Item Tool: BP_BroomBroomNameItem
        This is a path to the BroomItemTool subclass associated with your new broom created in Step 2 of the previous subsection.
    2. Tool Record
      1. Lookup Name: Item_BroomBroomName
        This is that value for broom’s VContainerID. Because SQL is case insensitive, the casing for this value is not strict.

Adding your new ToolRecord to the Player Blueprint Class

  1. With the data asset completed, you’ll need to add the tool record to the player class. Open your mod’s ModMutator again.
  2. In the Class Defaults panel, under where you added the “Data Table Extensions”, find the “Actor Types for Spawn Notification” list and add an element to it.
  3. Set this new element to the game’s existing BP_Biped_Player asset.

  4. Under the “My Blueprint” section on the left, mouse over the “Functions” bar. You will see two options appear on the right of that bar, “Override” and “+ Function”. Click “Override”, and then select “Receive Actor Spawned Notification”.

  5. This will add a new red event node to your graph. This event will be called any time an actor in your mutator’s “Actor Types for Spawn Notification” is spawned. Try to cast the Spawned Actor to a BP_Biped_Player, get its “Inventory Tool Set Component” if it is valid, and then use an “Add Tool to Records” node to add your new InventoryItemToolRecord (DA_BroomBroomNameItem) to the component. This will allow the player to use your broom.

Vendors and Selling Brooms

Below are instructions to have a vendor sell your new broom, allowing for the player to purchase it. 

LootContainerContents Database Table

1. Open the Database Text Entry tool by clicking on the “Windows” drop down on the toolbar, scrolling down, and selecting “DB Text Entry”, then “Static”. Use the “Search Tables” field on the top left in the window that opens to find the tables mentioned below and add the necessary database fields.


2. Add a new entry to the LootContainerContents database table and set the attributes as outlined below:

LootCategoryID

ContainerID

ContainerRandomWeight

ContainerWeightAdjust

ItemRollCount

NPCRangeLow

NPCRangeHigh

RequiredUnlock

Knowledge

KnowledgeLevel

GenerationType

** Refer to the below notes

ITEM_BroomBroomName

0

0

1

1

100

** Refer to the below notes

NULL

NULL

Normal

  • LootCategoryID is the ID of your vendor (defined in the LootCategories table).  For example, if Albie Weekes were to sell the player our new broom, the LootCategoryID would be: VEND_AlbieWeekes.  In LootCategories, vendors will have their TypeID as VendorStock and will have their CategoryID starting with “VEND_”.
  • VContainerID is a reference to VirtualContainerList .VContainerID.
  • RequiredUnlock is typically NULL for most brooms; however, if you want your broom to only be made available to the player after a certain lock is unlocked, then set this value to that lock’s LockID.

When testing unlocking the broom in the vendor’s stock, the vendor’s stock must be refreshed after setting the lock’s value to unlock before the broom appears as a purchasable item. One way to do this is by using a “Refresh Vendor Stock” task action in a mission.



How To: Create a new Avatar Preset

This document will cover setting up the visuals for new avatar presets, as well as creating and customizing new parts for them (hair, heads, hair color, etc).

Take me to...


Accessing Avatar Presets in the Character Creator

You need to open and play the level CustomizableCharacter Content/CharacterCreator. Note that it is in a plugin, so you may need to select "View Options" at the bottom right of your content browser and check the "Show Plugin Content" checkbox before it is visible.


Once you’ve started play in the level, click on the dropdown in the top left corner (the “Editor Mode” dropdown) and select “Avatar Preset.” 

Once this is loaded, you might also want to click on the “Scene” dropdown and select a scene with more neutral visibility, like the “NeutralBasic” scene background. 


It will take a bit to load. You should see the “Preset Editor” window on the right with a preview of your preset to the left of that. Note that you can zoom in on particular body parts by using the “Camera” drop down.


Presets are saved in the DT_AvatarFullbodyPresets data table. Each row is a collection of AvatarPresetDefinition parts that define individual features of the preset. 


These AvatarPresetDefinitions are manipulated in the “Preset Editor” window to modify the appearance of the overall preset. 


For example, in the image above, all the entries in the lower window of the “Preset Editor” correspond individually to specific AvatarPresetDefinition data assets (such as the hair, head, and skin color all having their own asset referenced by the first drop down in their section). Creating a full body preset is essentially assembling a set of these pre-determined parts.

As such, changes to a preset come in (and are saved in) two separate flavors, the individual, internal configuration of each part that makes up the preset and the combination of part assets that comprise the preset.


In the above image, the preset “BodyMale018” has been set to use “EyebrowColorMale006” for its eyebrow color asset.


Clicking the dropdown next to “EyebrowColor” will allow you to pick a new part for that selection. Lets say you select “EyebrowColorMale002” instead. To save this change, you would click the top of those two save buttons. This saves the list of parts that will be used, including that the preset is now using “EyebrowColorMale002.” If, however, you were to want to just change the color of “EyebrowColorMale006”, you could click the gear icon in the same section (next to “Head”) and modify settings on that part individually, such as changing the color of the eyebrows that part represents. After doing this, the lower save button will save that change to the actual part itself. 


Note that doing this will modify the part asset itself! This means that if you do this, anything else that uses that part will ALSO receive those changes, so use this with caution! Almost every part will have one or more gear icons that you can click to modify their internal settings. See the Adding New Parts section below for more info on how you can introduce new parts for unique looks without changing existing presets.


Creating a New Full Body Preset

First choose the Character Type you’d like by clicking the dropdown Type in the top left.


Near the top of the preset editor, to the right of the “FullBody” dropdown and just above the save button, there is a button with a plus inside a circle, highlighted below.


Click this button to open a prompt that will ask for a name for your new preset. Once you’ve entered a name, Click “OK” and it will add a new entry to DT_AvatarFullbodyPresets for your new preset. 

Note that you will likely have to click the “FullBody” dropdown and select your newly created preset, it will not be auto selected. Also, the new preset will be a copy of whatever preset you had open before creating it.


At this point, you can make your selections for individual parts to determine what your preset will look like. If you’d like to modify an existing part, it is probably wise to create a new part (see the Adding New Parts section below) and modify that rather than change an existing one that could have undesired effects on other, existing presets.


Preset Icon

When you’re done, you might want to set an icon for your preset to replace the red triangle on the left of the “Preset Editor” above with an image of your character. 


To do this, first create your icon texture and put it in a sensible place (generally, this should be under Content/UI/Icons/CharacterCreator/ alongside the other character icons, with a name formatted as UI_T_#Name#, replacing #Name# with your preset’s name). Note that these are also used on the character editor screen during character creation in game. There is also a tool you can use to generate icons, though it has some limitations for any situation intended to show skin color in the icon. See the Icon Editor Tool section for more detail on using it.


Once you’ve got the texture ready, open the UI_DT_Icons data table. Add a new row, setting the RowName to the name of your preset (for instance, in the above screenshot it would be BodyMale018) then set the Icon to your texture. The other settings are not relevant here.


Adding New Parts

As with creating new presets, there is a button next to each part type in the “Preset Editor” for creating new parts of that type, highlighted below:


Clicking this will bring up a prompt asking for the name of your new preset. 


Once you’ve typed a name, click “OK” and it will auto create your new preset part. Your new part asset will copy the settings of whatever part you had selected when you created it. You can find the asset in Content/Data/AvatarPresets/#Category#/DA_#PartName#, replacing #Category# with the part type (such as HairStyle) and #PartName# with the part’s name (such as HairMale010). 


For example, the above is located at Content/Data/AvatarPresets/HairStyle/DA_HairMale010 if you need to edit it, but most settings can be more easily modified directly in the “Preset Editor” window, either via dropdowns or through the menu opened via clicking the gear icon.


Part Icons

Part icons also default to error icons. There are two ways to set icons for parts. 


The first is to use an icon texture. This process works exactly like in the Preset Icon section, except that you would set the name of your part (such as HairMale054) for the “Row Name” instead of the name of the preset. For parts that just need a colored square for the icon, open up the UI_DT_Colors data table. Like before, add a new row, setting the “Row Name” to your part’s name (such as HairColorMale031) and the color to whatever color you want the square to be. 

The next time you change your selected part to this part, the icon should now appear as the correspondingly colored square.


Alternatively, the Icon Editor Tool can be used to generate these instead.


Icon Editor Tool

The icon editor tool can be accessed for editing icons for avatar parts and full body presets by clicking the “Enter Icon Edit Mode” on the left of their section, next to the icon:


This tool allows generation of textures for use as icons based on the contents of the scene or to create icons that are just flat color samples. 


Note that it does not display skin color correctly, instead rendering it as transparent, but it can still be useful for capturing images of, for example, hair or hair color. There are two different versions of this tool, one for creating textures and another for flat colors.


Texture Icons


First, you’ll want to make sure the “Preset” dropdown is set to your object. It does not always default to the same part that you opened it for, though the category should be correct. Note that the “Preset Type” field will sometimes be filled and will sometimes be blank. Avoid setting this value for now, assigning it manually tends to cause other things to break (such as changing the face mesh used for a particular part until the editor is restarted). Likewise, avoid changing the gender in the icon editor itself, as it can modify existing parts of your preset unexpectedly.


You can modify the translation and rotation of the camera once you have your preset selected to whatever position and angle you want the shot to occur from, but the numbers must be entered manually. Further, you can set the model to use the idle pose animation instead of its default pose by clicking the checkbox to the left of “Idle Frame” near the bottom. After, the specific frame of the animation to capture can be selected by scrolling the scroll bar widget. When you’re happy with the selection, press “Save” and the image will be saved in the Content/UI/Icons/CharacterCreator/ folder under the name UI_T_#Preset#, replacing #Preset# with your preset name. In the image above, that would be UI_T_BodyMale018. Next, you’ll need to hook your new texture up to the data asset.


Open up the DT_UI_Icons data table and add a new row. In that row, set the “Row Name” to the name of your new part or asset and assign the Icon row to your new icon. Feel free to leave the rest of the settings as default and save your changes. Next time you open it in the character creator, it should have the new icon.


Flat Color Icons


If the part you are editing an icon for uses a flat color icon, such as hair color or skin color, the editor will show the above instead. 


As before, changing the “Gender” or “Preset Type” fields can cause unexpected issues, but you should set the “Preset” option to your part’s name. 

Next, just click on the color icon next to the “Icon” label and select whatever color you’d like to add. This will automatically associate that color with your part. If you want to see where that data is stored, check the UI_DT_Colors data table, which contains all of these mappings. Unlike for texture icons, you don’t have to edit it directly for this.


Adding the Preset to the Game

Follow this guide for the NPC setup.

Follow this guide for the NPC visuals setup.

Follow this guide for Player Avatar visual setup.


How To: Mod NPC Appearances via CharacterCreator Tool

Importing Skeletal Mesh Info

To export a reference asset in Unreal, right click it. Go to Asset Actions Export.


Choose your File name and a destination outside of the project. Leave as FBX. Click Save.


Match your settings to this image.


When importing a Skeletal Mesh, search for and choose Biped_Skeleton for the Skeleton and Biped_PhysicsAsset for the Physics Asset. Turn on Import Morph Targets if you use them.


These are based upon the object you are trying to make. So double check the Skeleton and Physics Asset for your reference skeletal mesh. Hover over it to see the skeleton.

Make sure the skeleton hierarchy starts with the skeleton in your editing software! EX: Head up top with mesh nested in Outliner.


We found it easier to just find your reference Skeletal Mesh asset in engine, duplicating it to your folder, and clicking the >> Custom Control > Reimport Base Mesh With New File.


Under LOD Settings, you will have to Reimport your own lowered LOD mesh from your editing software for each Level. You can do a mesh reduce and clean it up in your editing software. I did a reduction of 15.33 to match the game per LOD.


Introduction

This includes steps for creating character pieces to apply to and create generic CustomizableCharacterDefinitions, as well as how to use a ModMutator to apply those to an NPC in game. This assumes the mesh has already been set up and you have already created a plugin for your mod.


Creating a character piece

  1. Set your active mod as appropriate.

  2. In your mods content folder, create a new DataAsset (Inside Content Browser Right Click -> Misc -> DataAsset) of type CharacterPiece.
  3. Name and open your new CharacterPiece. Set an appropriate classification and PieceType. Classification will determine what types of characters can use this piece, PieceType will determine where the item attaches to the character.
  4. Set the "Default Mesh" to your mesh. A few other fields might be important for specific piece types, but for the most part this should be sufficient.


Adding the new character piece for use in the character creator

  1. Set your active mod to the same mod that has your character piece if it is not already set.
  2. In your mods content folder, create a new DataTable (Right Click -> Misc -> DataTable). When prompted, set the Row Type to DbCharacterPiece.
  3. Name and open your new data table. Add a new row, with the row name set to whatever you want the character creator to display your piece's name as and then set the asset to the piece you want to expose to the system.

  4. Open up your mod mutator (Create one via Right Click -> Blueprint Class -> Select Class Type "ModMutator" if you don't have one yet) and find the "Data Table Extensions" field under its class defaults in the "UGC" section.
  5. Add a new element by clicking the "+" icon. Set "Additional Data" to your new data table. Set "Table to Add To" to the asset "DT_DbAssetMap_CharacterPieceDefinition".
    The character creator references the latter table to determine what pieces it should load. By doing this, when this mutator activates, it will take the rows in your data table and add them on top of the existing rows in that table, allowing the character creator to see them. When finished click Compile and Save.


Creating a new customizable character definition

  1. Set your active mod to the same mod that has your character piece and related data tables/mutator if it is not already set.
  2. Open the "CharacterCreator" level. Note that it is in a plugin, so you may need to select "View Options" at the bottom right of your content browser and check the "Show Plugin Content" checkbox before it is visible.


  3. When it is loaded, press the "Play in Editor" button.
  4. Once play begins, click on the drop down at the top left of the window to set the editor mode to "Character" mode by selecting that option from the drop down.

  5. Choose the Type of character you wish for it to be.

  6. In the "Character" window on the right, near the top, find and press the "New" button.

  7. In the dialog that comes up, fill out the settings with reasonable settings for a character that will use your new character piece and press OK. A new data asset will be created inside your mod in the "Data/CC/CharacterType" folder (with "CharacterType" varying depending on your settings) for this character.
  8. In the drop down to the right of that labeled "Character", you should now see the character definition you just created.
    Set this character up to use whatever visuals you want, including your new piece, and click the "Save" button at the top of the "Character Editor" window. Warning: Making them too tall will prevent them from entering doors! 


Applying a new customizable character definition

  1. Set your active mod to the same mod that has your character definition if it is not already set.
  2. Open up the mod mutator for your mod (Create one via Right Click -> Blueprint Class -> Select Class Type "ModMutator" if you don't have one yet) and look for the "Custom Char Defs to Modify" and "Custom Char Defs to Override" fields under UGC.
  3. "Custom Char Defs to Modify" lists character definitions that you want to partially alter, effectively layering your character piece selections on top of/replacing existing settings for an existing character definition. "Custom Char Defs to Override" is for completely replacing an existing character definition with an entirely new one.

For "Custom Char Defs to Modify"

  1. Click the "+" icon next to "Custom Char Defs to Modify" to add as many entries as you need and list the customizable character definition assets that you want to layer appearance items on top of. This could be one or many assets.

  2. Open the full blueprint editor if you have not already. On the left, under the "My Blueprint" panel, hover your mouse over the "Functions" label. Two new buttons should appear towards the right of that label. Click the one that says "Override" to open the overrideable function list.


  3. From that list, select the "Receive Custom Char Def Modification Notification" option. This will add a new event to your event graph.
  4. The "CCD" pin on the new event is the incoming character definition that you want to modify.
    It will always be of one of the types you specified under "Custom Char Defs to Modify". If you want to do different things to different character definitions, you can compare here to determine the correct course of action.
  5. Dragging off the execution pin of your event, select the "Layer CCD Over Target" node.
    This node takes a "New CCD" and applies any settings in it on top of the "Target CCD". Set "Target CCD" to the pin for the "CCD" coming from your event and set "New CCD" to the asset you created earlier from the character creator. It will be of the format "DA_YourCharactersName". Generally, you should leave the "Include Head" checkbox unchecked.
    All character definitions require heads in order to load in the character creator, since the skeleton is determined by the head. If you want to copy the head's appearance over the incoming CCD, just check the check box instead. Otherwise, the head piece will be ignored when copying the settings in "New CCD" over those in "Target CCD".

  6. Spawn the target character via whatever means. Its appearance should change to reflect the additions you made in your character definition. I recommend the SUB_CM_Combat level in Game/Experimental/Levels/CoreMechanics. It’s a NPC spawn gym.

For "Custom Char Devs to Override"

  1. Click the "+" icon next to "Custom Char Defs to Override" to add as many entries as you need and list the customizable character definition assets that you want to completely replace. This could be one or many assets.

  2. Open the full blueprint editor if you have not already. On the left, under the "My Blueprint" panel, hover your mouse over the "Functions" label. Two new buttons should appear towards the right of that label. Click the one that says "Override" to open the overrideable function list.


  3. From that list, select the "Receive Custom Char Def Override Notification" option.
    This will bring you to a new event graph where you can define how you want to replace incoming character definitions. Note that this is a separate graph, rather than a standalone event, because this function returns important data to the native code.


  4. Your function node will have an "Original Path" pin of type "Soft Object Path", and your return node will also have a "Soft Object Path" type pin labeled "New Path". Whenever the game tries to load a character definition that matches one of the ones you specified in step 1, it will call this function first. You can then return either a path to whatever customizable character definition you want to replace that asset with.
  5. There are a few ways to do this, but just as an example, create a "Local Variable" of type "Customizable Character Definition" -> "Object Reference" and set it to the new character definition you created in the character creator prior to this. You will have to click Compile to change the Default Value of the new variable.

  6. Ctrl+Click and drag the new variable into the function's graph to create a "Getter" node for it. Off that pin, create a "Create Asset Data" node, checking the "Allow Blueprint Class" checkbox. Off that node's return value, create a "To Soft Object Path" node, then connect its "Return Value" pin to your return node's "New Path" pin.

  7. As an extremely important note, since this is just returning an asset path, if you return a path to an asset that is not a Customizable Character Definition, your mod will not work. Ensure you are passing a valid object path for a valid CustomizableCharacterDefinition asset to the return node.
  8. Spawn the original character in game via whatever means. Its appearance should change to the asset whose path you returned from the above function. I recommend the SUB_CM_Combat level in Game/Experimental/Levels/CoreMechanics. It’s a NPC spawn gym.


How To: Mod Player Avatar

This document will cover how to mod the main player avatar. For the examples we will be showing how to set up a head mod and a hair mod.

Importing Skeletal Mesh Info

To export a reference asset in Unreal, right click it. Go to Asset Actions Export.



Choose your File name and a destination outside of the project. Leave as FBX. Click Save.



Match your settings to this image.



When importing a Skeletal Mesh, search for and choose Biped_Skeleton for the Skeleton and Biped_PhysicsAsset for the Physics Asset. Turn on Import Morph Targets if you use them.



These are based upon the object you are trying to make. So double check the Skeleton and Physics Asset for your reference skeletal mesh. Hover over it to see the skeleton.

Make sure the skeleton hierarchy starts with the skeleton in your editing software! EX: Head up top with mesh nested in Outliner.



We found it easier to just find your reference Skeletal Mesh asset in engine, duplicating it to your folder, and clicking the >> Custom Control > Reimport Base Mesh With New File.



Under LOD Settings, you will have to Reimport your own lowered LOD mesh from your editing software for each Level. You can do a mesh reduce and clean it up in your editing software. I did a reduction of 15.33 to match the game per LOD.



Create and Set Mod

Click Create Mod and then Set your created Mod.



The files created in the Character Creator will be stored there.



How To Open the Character Creator

You need to open and play the level CustomizableCharacter Content/CharacterCreator. It is in a plugin, so you may need to select "View Options" at the bottom right of your content browser and check the "Show Plugin Content" checkbox before it is visible.



How To Create the New Part Placeholders

Set the Editor Mode to Avatar Preset. The Type to Student. You can set the Scene to NeutralBasic for faster loading.



For this tutorial we will be creating a HairStyle and a HeadStyle. Click the + button by HairStyle and HeadStyle.


Name it anything you’d like but no spaces or special characters! Then press OK.


You will see that it’s now the selected HairStyle and HairStyle in the Preset Editor Panel. It also created the BP_ModMutator for your mod and the needed Data Files.


The BP_ModMutator will automatically have your Data Table you want to add to and from filled out.


Inside your Data Folder it made, you will see a folder created for AvatarPresets and a Data Table called DT_AddAvatarPresetPieceDefinitions. 

DT_AddAvatarPresetPieceDefinitions will be filled out automatically. This is the information it will use to add to the existing Data Table of the game. You can change the Gender and Sort Order here. The Avatar Preset Definition is automatically made as well. This file is stored nested. See below.


Inside the AvatarPresets folder you will find the new Data Assets. This is where you will put your custom files.


The Data Assets store the Character Items that you will be using. Right now it is one of the default ones in the game. We will be adding our custom one next.


How To Set Up Our Mod Data Asset

First put your materials, textures, and meshes in the folder for the AvatarPreset type. In our example we're doing the Headstyle, so we put all of the files here. Make sure to save all files you modify or make.


Next we need to create the Data Asset for the DA Data Asset file the Character Creator made. Right Click go to Miscellaneous → Data Asset.


Search for CharacterPiece and click Select. Name it something DA_. I named mine DA_CreepyHead.


Open it and set the Character Classification to Human. The Character Piece Type to Head. Gender to Any. Then set the Default Mesh to your mesh you brought for your mod. For Facial Pose Asset, we just chose a pre existing one.


After that’s made, you will want to put this newly made Data Asset file as the Character Piece in the Data Asset the Character Creator Made.


Do the same steps for this section for any remaining Avatar Presets you created with the Character Creator. Here’s our HAIRSTYLYE all set up the same way as the HEADSTYLE. Notice you change the Character Piece Type to Hair instead for the created Data Asset.


How To Create The Icons

Open the Character Creator again and Play it. Make sure you have the Editor Mode to Avatar Preset. Then Type to Student. Then Change your HairStyle and HeadStyle to the ones you made earlier to see if they work.


Now that you’ve seen that they work. Have only 1 selected at a time as we will be taking a picture of it. Click the Enter Icon edit Mode button here:


Change the Translate, Rotate, and Idle Frame(checkbox to use it) to your liking then click Save. Click Exit when you are done.


You will have to switch to a different Style and then back to see the icon refresh.


Do these steps again for any remaining icons you wish to create.


How To Set Up The Icons

You will see that this made the Icon Files and put them inside of your mod in Content/UI/Icons/Character Creator.


If you notice weird Alpha issues, double check that the Min Alpha is set to 1 in your UI_T Files.


We must make a Data Table to hold these Icons that we will add to the BP_ModMutator. Open the Content Folder with UI in it. Right Click and go to Miscellaneous → Data Table.


Search IconInfo and then click OK.


Name it DT_AddAvatarPresetIconDefinitions or something similar starting with DT_. Open it and click Add for however many Icons you have. Click each row and drag and drop the Icon to it. Change the Row Name to the literal same without the UI_T_. So ours is ExampleHair and ExampleHead. Then save as usual.


Next open the BP_ModMutator at the root of your mod.


Under UGC Data Table Extensions click the + to add a new array element. 

This will hold your Data Table you made for the icons and tell the Table to Add it To. Expand the new row (in  case 1). Drag or add your Data Table you made (remember in the Content Folder it made) for the icons to the Additional Data. Then for the Table To Add To search with the spy glass and choose UI_DT_Icons. Compile and Save. That’s it for your Icons!


Finishing Up

Make sure all of your files are saved in your mod folder that say pending save. Then click Upload Mod. Then you’re ready to share, download, and enjoy your mod!


Errors to Avoid

When creating an avatar mod, it is important that it is created in a way that will only apply to the current modded saves. A common error is to override the Avatar which will cause the avatar appearance change to persist outside of the modded save.

Overriding the avatar is commonly done by using the “Set Character Look Override“ node in the Event Graph. This node will reference a character already built in the game and once it’s saved it will apply that appearance to all of the player characters throughout all the save files until the node is called again.


How to Create New Gear Appearance Assets

Take me to...

Importing Skeletal Mesh Info

To export a reference asset in Unreal, right click it. Go to Asset Actions Export.


Choose your File name and a destination outside of the project. Leave as FBX. Click Save.


Match your settings to this image.


When importing a Skeletal Mesh, search for and choose Biped_Skeleton for the Skeleton and Biped_PhysicsAsset for the Physics Asset. Turn on Import Morph Targets if you use them.


These are based upon the object you are trying to make. So double check the Skeleton and Physics Asset for your reference skeletal mesh. Hover over it to see the skeleton.

Make sure the skeleton hierarchy starts with the skeleton in your editing software! EX: Head up top with mesh nested in Outliner and rename all of the layers exactly the same.


We found it easier to just find your reference Skeletal Mesh asset in engine, duplicating it to your folder, and clicking the >> Custom Control > Reimport Base Mesh With New File.


Under LOD Settings, you will have to Reimport your own lowered LOD mesh from your editing software for each Level. You can do a mesh reduce and clean it up in your editing software. I did a reduction of 15.33 to match the game per LOD.


Gear Components

Gear items are comprised of several individual pieces:

  1. One or more CharacterPieces (See Other Documentation)
  2. Gear Appearance assets that define the look of gear by combining the aforementioned CharacterPieces
  3. Items, defined through data tables, that can be obtained through various means (such as purchased from a vendor) and equipped to the player that reference the Gear Appearance asset to determine their look. (See How To Add Gear to a Vendor)

This document covers the second piece, Gear Appearance assets, aka GearAppearanceItemDefinitions. These are created using the CharacterCreator level.

Creating New Gear Appearance Item Definitions

  1. Open the CharacterCreator level.
    1. The easiest way to do this is generally to press Ctrl+P to open the file search dialog and search for CharacterCreator, then double click on the level name when it appears. Otherwise, you can find it in the CustomizableCharacter Content plugin folder.
  2. Set or Create the mod you wish to add gear to using the “Set Mod” drop down or the “Create Mod” button in the primary toolbar near the top of the screen.


  3. Once your mod has been set as active, click the “Play” button to begin playing in editor and launch the tool.
  4. In the top left corner of the screen you will find a drop down titled “Editor Mode.” If it is not already set to “Gear”, click on the dropdown and select “Gear” from the list.



  5. If the displayed character is not a mannequin (or a suitable character that you will be able to see your new gear on) already, click on the “Type” drop down directly to the right of the “Editor Mode” drop down and select “Mannequin”, then click on the “Character” drop down to the right of that and select “Mannequin_Bust_M” or “Mannequin_Bust_F” (other mannequin types should work fine as well).



  6. Optionally at this point, you can change the background scene to something more neutral by clicking on the “Scene” dropdown two drop downs to the right of the “Character” drop down and set it to another scene, such as the NeutralBasic scene.



  7. On the right, you will see the “Gear Editor” panel. This window will contain various sections for gear that is worn on different parts of the character. The name of the region the gear is worn on is displayed on the left of each section (BACK, FACE, HAND, etc below). Each section has a “Gear” drop down that normally defaults to “None”. Clicking on that drop down will show a list of existing GearAppearanceItemDefinitions that are valid for the selected character (GearAppearanceItemDefinitions generally have Male and Female variants, represented by either a _M or _F at the end of their asset name), generally of the form GA_SlotName_###, such as GA_Back_011. There are also a set of buttons to the right that we will be using to add and save changes to gear.

  8. Of the buttons to the right of each sections, the top-most one is the “New” button, highlighted below. Click it to start creating a new piece of gear.


  9. You will see the following dialog pop up:

     Enter the name of your new piece of gear in the text field and then click “Ok”. You do not need to preface this name with GA_, the editor will automatically append that text where necessary.
  10. Now, if you click on the dropdown next to the “Gear” label for the section you created a new piece of gear in, you should see your new gear at the top of the list. Click on your gear to select it for modification.

  11. Once you’ve selected the gear, the other drop downs should light up and become clickable. Click on any that you want to modify and select whatever options you’d like. These dropdowns contain CharacterPieces that will combine to form the appearance of your gear. You should see the gear appear on the mannequin to the left as you select new options.


  12. If the gear appears grey on the mannequin, or you just want to customize it further, click on the gear icon to the right of the CharacterPiece, highlighted below:

  13. This will open another window with additional settings for that character piece. Note that not all character pieces will have additional options. Make any changes to the gear you’d like here.
  14. When you have finished editing the appearance of your gear, click the “Save” icon to the right of the drop downs in the gear section you are working in, highlighted below:

  15. You should now be able to find the GearAppearanceItemDefinition asset for your gear under your mods content directory in the Data/GearAppearances/#SLOT#/ directory, replacing #SLOT# with the slot the item is equipped in in all caps (such as Data/GearAppearances/HAND). The name of the asset should be DA_GA_#YourAssetName#_M or _F.

    For instance, the above example made a gear item called “CustomGloves” in the text entry field in the NewGearMod mod. The asset is in NewGearModContent, at Data/GearAppearances/HAND/DA_GA_CustomGloves_M.
  16. If you want the gear to be wearable by both Male and Female characters, switch the mannequin to the opposite gender physique by selecting a new mannequin bust matching that gender under the “Character” dropdown (_M if you were using an _F mannequin, _F if you were using an _M mannequin).
  17. Now, ensure your gear’s name is selected in the appropriate section. You will see that any settings you had previously set do not appear for this mannequin. This is because GearAppearanceItemDefinitions use different meshes for male and female character rigs. Apply whatever cosmetics to your gear as you’d like, following steps 11 through 15 again. You should end up with two data assets, one with an _M and one with and _F suffix, in the designated folder. You now have a complete GearAppearanceItemDefinition

Using a Custom Mod Mesh for Gear

You can use a custom Character Piece mesh for the Data Asset aka DA file that you made with the Character Creator when you clicked new gear and saved. That DA file is in the bottom of the Data folder that was created in your mod folder. The Character Piece is what we will be replacing.



Inside your mod folder somewhere you choose. Right click → Miscellaneous → Data Asset.



For the class we want it to be the same as the Character Piece. So search for CharacterPiece and click Select. Then name it DA_whatyounamedyourgear.



You are going to want to make it match the Character Piece from the DA file the Character Creator made in the Data folder. So also open the Character Piece file in another window by double clicking the icon.



Now put both CharacterPiece DA files by each other. You are going to make the one you created the same for the Character Classification, Character Piece Type, and Gender if you wish. (You can use the other fields as needed)



The last thing to do is add the Default Mesh of your mod. Remember to have your mesh, materials, and textures in your mod folder. Choose that mesh for the Default Mesh in your CharacterPiece DA file you made. Remember to Save.



Now go to the GearAppearanceItemDefinition DA file the Character Creator made. Choose the CharacterPiece DA file you just made for the Character Piece and click save.



Next we will be creating the two Data Tables that are needed. First is for it to be viewable including in the Character Creator. Second is for it to have the Gear Icon.


Creating Needed Data Tables

These Data Tables will be put into your BP_ModMutator Blueprint. First we will make the DT DbCharacterPiece which is used for the mesh itself. Right click where you choose in your mod folder and go to Miscellaneous → Data Table.



Search for and choose DbCharacterPiece for the Row Structure and click OK.



Name it DT_NewGearMod or DT_somethingsimilar. Then open it and click Add up top. Click the line it made. Choose your DA Character Piece that you made (not the one from the Character Creator) for the Character Piece slot. Change the Row Name to the literal same as the gear without the DA_. So ours says SnakeAmulet. Then click save.



Now we will be making the Data Table for the Gear Icon. Right click where you choose in your mod folder and go to Miscellaneous → Data Table like before. Search and choose IconInfo for the Row Structure and click OK.



Name it DT_IconNewGearMod or DT_somethingsimilar. Then open it and click Add up top. This is where we will be putting the Icon file that is generated from the Gear Icon Maker. 


Save it for now and we will come back to it in the Gear Icon Maker Step. Next we will be setting up the BP_ModMutator for your gear to show up in the Gear Icon Maker and for the Gear Icon to show up in the game.


Setting the DT Files in the Mod Mutator

Open up your BP_ModMutator that’s in your mod folder. Go to the UGC Data Table Extensions section and click the + to add a 1 Array element.



We need to tell the game what Data Tables to add to and what to add to them. So for the first one in the array, 0, for Additional Data choose the DT_NewGearMod. That is the one you made for the gear itself. For the Table to Add To you want DT_DbAssetMap_CharacterPieceDefinition.



Next we need to do the same thing for the second one in the array, 1. Choose DT_IconNewGearMod for Additional Data. That is the one you made for the icon for the gear (but haven’t filled it out yet since we don’t have the icon yet). For the Table to Add To you want UI_DT_Icons. Remember to Compile then Save up top when finished.



How To Make a Gear Icon

Open your DT_IconNewGearMod in your mod folder. The DT you made for the icon. We need a texture file that will be the image the icon shows in the game. The icon file must be a .png with a 256x256 ratio. You can add an Alpha if you wish.



For your 256x256 .png of your gear, you can either import it to your mod folder of any image you choose, or you can use the Character Creator for it to be shown on an avatar. Open the Character Creator in the CustomizableCharacter Content.



Our DT_NewGearMod file that we added to the BP_ModMutator will make our gear now show up in the Character Creator.


Go to the Gear Editor Mode like before. Then you will be selecting the gear from the Gear Editor on the right. So for ours, we go to Neck. Then choose GA_SnakeAmulet at the bottom for the Gear. Then choose SnakeAmulet for the Scarf. 

You should see it on the Mannequin. If you don’t double check your DT file and the Mod Mutator in your mod folder and follow the steps above again. 


Naming convenction in the DT is also very important. Ours must be called SnakeAmulet because the full file is GA_SnakeAmulet.


To pose for your shot you click in the gray area. Left mouse to rotate. Scroll wheel to zoom. Mouse 3 aka scroll wheel click to change Camera locations. You can also click above on Camera to change the location. For ours we chose face. 


You can change the Scene and View Mode up top to your choosing as well. At the bottom you can drag that line to change the animation of the mannequin.


After you’ve posed how you’d like, use the software of your choosing to take a photo. In a photo editor, change the dimensions to 256x256 and save it as a .png. You can add an alpha and modify the image as you choose. 


You can use the snipping tool and google .png dimension editor if you don’t have a software. We used the snipping tool and just googled .npg dimension editor to show you no software required for bare minumum. You can hit esc to close the Character Creator once you have your pic.


Once you have your icon as you’d like. Import it to your mod folder to a place of your choosing. Right click and hit Import.


Name your file UI_T_whatever. For ours to keep it similar, we named it UI_T_SnakeAmulet. Choose your gear icon .png you resized. 

Open it once it’s imported and go to Compression. Change Compression Settings to BC7 (DX11, optional A). Then scroll down to Levol of Detail. Change Texture Group to 4kReadyUI. Then click Save.


If you notice weird Alpha issues, double check that the Min Alpha is set to 1 in your UI_T Files.


Now go to your DT in your mod folder you made for your gear icon. Remember ours was DT_IconNewGearMod. Choose your gear icon texture image for the Icon. Then change the Row Name to what your file is called without the UI_T_. So for ours it’s SnakeAmulet. Click Save and you’re done!


Using Gear

The Gear Editor only enables the creation of gear appearance assets. To actually put your gear on a player character, you’ll need to optionally create additional Items that uses your GearAppearanceItemDefinition and add then to a vendor for purchase or to loot tables to be lootable by players. 


By default, this process only creates a common item definition.


See the How To: Add New Gear to a Vendor document for adding gear to vendors to be purchased.


Renaming Gear

Note that it is easy to make an error in this process and break your gear item or mod, as the changes must currently be made by hand. 


You should close the editor and make a local backup of your mod’s ModEdits.sql file before continuing. This file contains all of the sql database changes your mod will apply at runtime, not just the changes for the singular piece of gear. You can find this file under “PhoenixGame/Mods/YourMod/Content/ModEdits.sql”. 


Once you’ve made a local backup copy, you should be ready to proceed as follows. This example will follow from the above example of creating new HAND items called “CustomGloves”, renaming them to “CustomMittens”.


1. Open your mod’s ModEdits.sql (at “PhoenixGame/Mods/YourMod/Content/ModEdits.sql) in your text editor of choice. 

You will see at least several lines beginning with “INSERT INTO”. These will generally be formatted as follows:
INSERT INTO TableName(#Comma_separated_list_of_column_names#) VALUES(#Comma_separated_list_of_column_values);
 For example:

INSERT INTO Registry(RegistryID, SubtypeID) VALUES("CustomGloves_Common", "GearHand");

In this case TableName is “Registry”, two columns are edited (RegistryID and SubtypeID), and their values are set, respectively, to “CustomGloves_Common” and “GearHand”.


2. The first step is to identify the first line that is associated with your GearAppearanceItemDefinition. 

This should be an insertion into the “GearApperanceItems” table, with one column (GearAppearanceID) and one value (“GA_YourGearName”). In this example, it looks like this:

INSERT INTO GearAppearanceItems(GearAppearanceID) VALUES("GA_CustomGloves");

The next several lines should all be related to your gear.


3. Now we need to find the final line associated with your gear. This should be an insertion into the “GearItems” table, with 4 columns and values. It should look like the below:

INSERT INTO GearItems(GearID, SlotID, GearAppearanceID, NumGeneralAbilities) VALUES("CustomGloves_Common", "Hand", "GA_CustomGloves", "1");

All in all this should normally span 5 lines, including the start and end lines we’ve identified.


4. Next, you’ll need to go over each of these lines and change any reference to the previous name of your asset in the VALUES list of each command to the new name. 

The name must match exactly between each field, so it can be helpful to copy the text of your new gear name to the clipboard and just paste it wherever it needs to go. Of note, you will usually be modifying part of a word (for example, “CustomGloves_Common” needs to become “CustomMittens_Common” in this example), so be careful that you do not paste over other specifiers in the strings you are modifying like _Common or GA_, just the actual name of your gear. Once done with this step, save the file.


5. In total, you will need to make the following modifications for the following table insertions:

  1. GearAppearanceItems: First value, “GA_YourGearName”
  2. Registry: First value “YourGearName_Common”
  3. LockDefinition: First value “YourGearName_Common”
  4. ItemDefinition: First value “YourGearName_Common”, 14th value “YourGearName_Common”
  5. GearItems: First value “YourGearName_Common”, third value “GA_YourGearName_Common”
  6. In this example, we go from
  7. INSERT INTO GearAppearanceItems(GearAppearanceID) VALUES("GA_CustomGloves");
  8. INSERT INTO Registry(RegistryID, SubtypeID) VALUES("CustomGloves_Common", "GearHand");
  9. INSERT INTO LockDefinition(LockID, LockTypeID) VALUES("CustomGloves_Common", "Simple_Locked");
  10. INSERT INTO ItemDefinition(ItemID, ItemType, RarityTier, EconomyValue, SellPrice, Inventoryable, Persistent, Giftable, Sellable, Dropable, SlotLevel, Consumable, TriggerAbilityOnConsume, LockID, UsableFromInventory, UIDisplayMethod, UsableOnDiamond, StorageLocation) VALUES("CustomGloves_Common", "GearAesthetic", "Common", "0", "0", "1", "0", "1", "1", "1", "Single", "0", "0", "CustomGloves_Common", "0", "NoNotification", "0", "CostumeStorage");
INSERT INTO GearItems(GearID, SlotID, GearAppearanceID, NumGeneralAbilities) VALUES("CustomGloves_Common", "Hand", "GA_CustomGloves", "1");

to

INSERT INTO GearAppearanceItems(GearAppearanceID) VALUES("GA_CustomMittens");
INSERT INTO Registry(RegistryID, SubtypeID) VALUES("CustomMittens_Common", "GearHand");
INSERT INTO LockDefinition(LockID, LockTypeID) VALUES("CustomMittens_Common", "Simple_Locked");
INSERT INTO ItemDefinition(ItemID, ItemType, RarityTier, EconomyValue, SellPrice, Inventoryable, Persistent, Giftable, Sellable, Dropable, SlotLevel, Consumable, TriggerAbilityOnConsume, LockID, UsableFromInventory, UIDisplayMethod, UsableOnDiamond, StorageLocation) VALUES("CustomMittens_Common", "GearAesthetic", "Common", "0", "0", "1", "0", "1", "1", "1", "Single", "0", "0", "CustomMittens_Common", "0", "NoNotification", "0", "CostumeStorage");
INSERT INTO GearItems(GearID, SlotID, GearAppearanceID, NumGeneralAbilities) VALUES("CustomMittens_Common", "Hand", "GA_CustomMittens", "1");


6. At this step you should be done modifying the ModEdits.sql file. 

However, if you’ve added this gear to any loot tables or vendors, there will be additional lines in this file that reference your gear. You can search the file (usually Ctrl+F in most text editing programs) for instances of the previous name of your item and replace them as needed with the new name. Just make sure that any suffixes or prefixes remain after editing and that the name matches exactly.


7. Now, reopen the editor and navigate to your mod’s content folder to find the assets you created via the CharacterCreator.

They should be under YourModContent/Data/GearAppearances/#SLOT#/, replacing #SLOT# with the appropriate equipment slot in all caps. 


In this example, this will be NewGearModContent/Data/GearAppearances/HAND/. Select your assets one at a time (they should be named in the following format: DA_GA_#YourGearName#_M and/or _F, replacing #YourGearName# with the name you entered in the New Gear dialog box earlier) and either press F2 or right click them and select “Rename” from the context menu. Rename the assets such that the #YourGearName# portion above matches the new name exactly, ensuring the _M or _F suffix and DA_GA_ prefix remain. In this example, DA_GA_CustomGloves_M becomes DA_GA_CustomMittens_M.


8. Your gear should now be successfully renamed.


Removing Gear

In the event you’ve created a GearAppearanceItemDefinition that you no longer want to be a part of your mod, deleting it requires manually editing the ModEdits.sql file in your mod’s content folder. 


Note that it is easy to make an error in this process and break your gear item or mod, as the changes must currently be made by hand. You should close the editor and make a local backup of your mod’s ModEdits.sql file before continuing. This file contains all of the sql database changes your mod will apply at runtime, not just the changes for the singular piece of gear. You can find this file under “PhoenixGame/Mods/YourMod/Content/ModEdits.sql”. 


Once you’ve made a local backup copy, you should be ready to proceed as follows.

1. Open your mod’s ModEdits.sql (at “PhoenixGame/Mods/YourMod/Content/ModEdits.sql) in your text editor of choice. You will see at least several lines beginning with “INSERT INTO”. These will generally be formatted as follows:
INSERT INTO TableName(#Comma_separated_list_of_column_names#) VALUES(#Comma_separated_list_of_column_values);
 For example:

INSERT INTO Registry(RegistryID, SubtypeID) VALUES("CustomGloves_Common", "GearHand");

In this case TableName is “Registry”, two columns are edited (RegistryID and SubtypeID), and their values are set, respectively, to “CustomGloves_Common” and “GearHand”.


2. The first step is to identify the first line that is associated with your GearAppearanceItemDefinition. 

This should be an insertion into the “GearApperanceItems” table, with one column (GearAppearanceID) and one value (“GA_YourGearName”). In this example, it looks like this:

INSERT INTO GearAppearanceItems(GearAppearanceID) VALUES("GA_CustomGloves");

The next several lines should all be related to your gear.


3. Now we need to find the final line associated with your gear. This should be an insertion into the “GearItems” table, with 4 columns and values. It should look like the below:

INSERT INTO GearItems(GearID, SlotID, GearAppearanceID, NumGeneralAbilities) VALUES("CustomGloves_Common", "Hand", "GA_CustomGloves", "1");

All in all this should normally span 5 lines, including the start and end lines we’ve identified.


4. Next, simply delete these lines from the file. Afterwards, save the file.

At this step you should be done modifying the ModEdits.sql file. However, if you’ve added this gear to any loot tables or vendors, there will be additional lines in this file that reference your gear. You can search the file (usually Ctrl+F in most text editing programs) for instances of the name of your item and remove any remaining lines pertaining to it before saving.


5. Now, reopen the editor and navigate to your mod’s content folder to find the assets you created via the CharacterCreator.

They should be under YourModContent/Data/GearAppearances/#SLOT#/, replacing #SLOT# with the appropriate equipment slot in all caps. In this example, this will be NewGearModContent/Data/GearAppearances/HAND/. Select the DA_GA_ assets for the gear you are deleting (there should be 2, one with a _M and one with a _F suffix) and press the delete key. Confirm any prompts that pop up at this point. After the asset has been deleted, the GearAppearanceItemDefinition should be fully removed from your mod.


Setting Whether Gear Needs to Be Identified

Doing this currently requires editing of the ModEdits.sql file. 


Note that it is easy to make an error in this process and break your gear item or mod, as the changes must currently be made by hand. You should close the editor and make a local backup of your mod’s ModEdits.sql file before continuing. This file contains all of the sql database changes your mod will apply at runtime, not just the changes for the singular piece of gear. You can find this file under “PhoenixGame/Mods/YourMod/Content/ModEdits.sql”. 


Once you’ve made a local backup copy, you should be ready to proceed as follows.


1. Open your mod’s ModEdits.sql (at “PhoenixGame/Mods/YourMod/Content/ModEdits.sql) in your text editor of choice. You will see at least several lines beginning with “INSERT INTO”. These will generally be formatted as follows:
INSERT INTO TableName(#Comma_separated_list_of_column_names#) VALUES(#Comma_separated_list_of_column_values);
 For example:

INSERT INTO Registry(RegistryID, SubtypeID) VALUES("CustomGloves_Common", "GearHand");

In this case TableName is “Registry”, two columns are edited (RegistryID and SubtypeID), and their values are set, respectively, to “CustomGloves_Common” and “GearHand”.


2. The first step is to identify the first line that is associated with your GearAppearanceItemDefinition. This should be an insertion into the “GearApperanceItems” table, with one column (GearAppearanceID) and one value (“GA_YourGearName”). In this example, it looks like this:

INSERT INTO GearAppearanceItems(GearAppearanceID) VALUES("GA_CustomGloves");

The next several lines should all be related to your gear.


3. The third line below this one should be an insertion statement into the LockDefinition table as follows:

INSERT INTO LockDefinition(LockID, LockTypeID) VALUES("CustomMittens_Common", "Simple_Locked");

Once you’ve found this line, set the second value string to either “Simple_Locked” if the item should require identification or “Simple_Unlocked” if it should not. Double check to make sure it matches one of those two strings exactly and is still surrounded by quotation marks and save the file.


Custom containers and altering chest contents

Here is a short step-by-step guide on how to set up custom containers in order to alter the content of a chest. This guide will mostly involve editing four different Data Tables in order to achieve the desired effect.


Instructions


Loot category and container creation

 

These steps will detail which Data Tables need to be edited in order to create a custom Loot Category, a custom Virtual Container and to decide what to put in that Container.

  1. Open the Static Tables search engine by choosing [Windows>DB>Text Entry>Static].
  2. In the search bar, type ‘LootCategories’ and open the table by double clicking it.
  3. Scroll down at the bottom and name your new Loot Category.
  4. In the TypeID field, for this example, choose ‘Common’.
  5. Confirm this change by clicking the + icon on the left of this row.A screenshot of a computer

Description automatically generated

  6. Back in the Static Tables search engine, search for 'VirtualContainerList' and open the table by double clicking it.
  7. Scroll down at the bottom and name your new Virtual Container.
  8. In the SubTypeID field, for this example, let’s choose LootDrop.
  9. Click the + icon to save these changes.A screenshot of a computer

Description automatically generated

  10. Back in the Static Tables search engine, type ‘LootContainerContents’ and open it by double clicking.
  11. Scroll down at the bottom row.
  12. In the LootCategoryID drop down menu, search and select your Loot Category (see step 3).
  13. In the Container ID drop down menu, search and select your virtual container (see step 7).
  14. Leave the other fields of this table as is for this example.
  15. Hit the + button on the left to save these edits.A screenshot of a computer

Description automatically generated

  16. Back in the Static Tables search engine, type ‘VirtualContainerContents’ and open it by double clicking.
  17. Scroll down at the bottom row.
  18. In the ‘VcontainerID’ field, search and select your Virtual Container (see step 7).
  19. In the ‘ItemID’ field, choose the item you want your container to contain.
  20. Leave the rest of the fields as is for now.
  21. Click the + icon on the left of this row to save your changes.A screenshot of a computer

Description automatically generated

We will now be able to assign this loot table to a chest.


Changing the content of a chest

  1. In the Content browser, search for a Chest blueprint (ex: BP_Container_HM_CedarChest_A)
  2. Drag and drop it in a level.
  3. Select the Chest in the level.
  4. In the Details window, select the ‘Loot Drop’ component.
  5. In the 'Loot Group' field, search and select your custom Loot Category (see step 3 of the Container Creation guide).A screenshot of a computer

Description automatically generated

  6. Click the Play button above the Viewer.
  7. Open the Chest you’ve placed in the level to ensure you have successfully altered the contents of this chest.

Indestructible Grouping Mesh

Here’s a step by step how on how to group many meshes together and making adjustments. We can adjust the scale of the group and add new meshes.

 

Grouping multiple static meshes in one group:

To start, select all the static meshes you wish to group together.



Right click on your selection and select ‘'Group’' or press Ctrl + G.


Making adjustments in your group:

Right click on your group> ‘'Group’' > Select ‘'Unlock’'.


Select an asset you wish to move or remove by right click > ‘'Groups’' > ‘'Remove from Group’'.


Return to your group and observe the adjusments.

A computer screen shot of a game

Description automatically generated


If you wish to add another asset to you group, click your asset you wish to add > click your group > right click and select ‘'Groups'' > ‘'Regroup’'

A screenshot of a computer

Description automatically generated


And you now have a group of meshes!


Merging Static Meshes

Use this quick guide to group multiple objects (meshes) and assets into one static mesh and make anything from a custom shelf to an entire house.


Used for making a group of assets into one solid Static Mesh which can be reused throughout your level(s).


 Instructions

  1. Using the Content Browser, find a group of meshes that you're looking to make into one asset.
    You can move, rotate, scale them all individually into the positions you prefer!

    Note: We suggest using only Static Meshes for this, as merging a blueprint or more complex mesh may result in unwanted changes. 
    To find static meshes only, you can click "Filters" next to the  search bar and make sure "Static Mesh" is marked.A screenshot of a computer

Description automatically generated

  2. Select the meshes you wish to merge by shift+clicking or ctrl+clicking the selected actors either in the viewport or in the World Outliner list.A screenshot of a computer

Description automatically generated

    Note: Keep in mind that the FIRST object you select will be the one who will be used for the center of the merged group, this will ensure pivot point (center for all transformations, e.g. move, rotate, and resize) is as desired.
  3. Right click on any of the selected assets and select "Merge Actors".A screenshot of a computer

Description automatically generated

  4. In the Merge Actors window simply click "Merge Actors" in the bottom right.A screenshot of a computer

Description automatically generated

    Note: You have several settings you can adjust in this window if desired, but for now there aren't any changes necessary.
  5. Choose the file location and name the new asset as you wish, then click save.A screenshot of a computer

Description automatically generated

    Note: For naming your newly merged assest, be sure to use a format the you will easily remember and include words that make sense for the asset you're making for easier searching in future.

    Optional: Assign LOD preset if LOD default settings are incorrect

  6. Double click the Satic mesh that was made in the previous step within the Content Browser to edit its settings.A screenshot of a computer

Description automatically generated

  7. In the Details tab of the Static Mesh's settings, scroll down to LOD Settings and click on the LOD Group dropdown menu. Here, you can choose an LOD preset that best matches the asset you've made and apply it.A screenshot of a computer

Description automatically generated

    Note: If none of the options matches what the asset is intended to be, choose the option that would closest resemble the size of your asset. In this instance, Decoration was created, and as such, "Deco" was selected.

You now have a static asset that you can place anywhere and as many times as you like around your game world to decorate it as you see fit!

A screenshot of a computer

Description automatically generated

Note: Merging actors in this way is extra useful if you want to make sure that your assembled assets all move, rotate, and scale uniformly

However, for a more temporary form of this effect, you can select any amount of items then right click them in the World Outliner and select "Group". 


This process is more reversible and can actually be ungrouped by right clicking in the World Outliner Again.

A screenshot of a computer

Description automatically generated


How To: Creating a Wand Mod 

This document will cover how to create a mod to swap the mesh for the default player wand with a custom mesh.


Adding the Wand Mesh

We’ll begin by creating a new mod by selecting the Create Mod button, New Empty Mod, and then Create Mod. This will create a new mod that won’t have anything inside the content browser.


Next we’ll import the Skeletal Mesh we want to swap the mod with into our mod folder. We can import a new Skeletal Mesh from outside the Creator Kit or use a Skeletal Mesh provided in the Creator Kit. For this mod we’ll use the SK_WPN_TombProtector01_Sword mesh.


Right Click the SK_WPN_TombProtector01_Sword, select Copy Reference, and then paste it into your mod folder. We’ll also copy and paste its skeleton asset SK_WPN_TombProtector01_Sword_Skeleton so we can control where the handle / wand tip is.

These are both located at Content / RiggedObjects / Props /Weapons / Golems/

 Note: Make sure the SK_WPN_TombProtector01_Sword is referencing the SK_WPN_TombProtector01_Sword_Skeleton in the mod folder. You can check this by right clicking the SK_WPN_TombProtector01_Sword_Skeleton, selecting Assign Skeleton, and make sure it’s assigned to the Skeleton in the mod folder file path.


Next we’ll need to add a Muzzle Socket to our SK_WPN_TombProtector01_Sword, this will let us place where the spells will originate from on our wand mods.

  1. Double click the SK_WPN_TombProtector01_Sword
  2. Select Skeleton in the top right corner
  3. Right click on root
  4. Select Add Socket
  5. Rename socket to MuzzleSocket
  6. Position the socket at the tip of the “wand“
  7. Orient the socket so the X-axis (Red Arrow) points out from the end of the sword


Changing the Default Wand Mesh


 Next, we need to tell our mod to use the SK_WPN_TombProtector01_Sword instead of the default wand, for this we’ll need to copy the BP_WandTool Blueprint and paste it into our mod folder. This Blueprint is located at Content / Gameplay / ToolSet / Items / Wand / BP_WandTool.


Next we’ll set the Skeletal Mesh in the BP_WandTool to our SK_WPN_TombProtector01_Sword. Open the BP_WandTool and select the SK Wand Mesh Component.


In the Details panel select the Skeletal Mesh and assign it to the SK_WPN_TombProtector01_Sword in the mods folder. Compile and Save the BP_WandTool and close the blueprint.


If successful you should see the Tomb Protecter Sword model in the thumbnail for the BP_WandTool.


Setting Up the Mod Mutator

Next, we’ll add a Mod Mutator to our mod. This will allow us to reference the original BP_WandTool and replace it with our Modded version.

  1. Right Click the Content Browser
  2. Select Blueprint Class
  3. Search for ModMutator and add it to the Content Browser
  4. Rename the Mod Mutator to BP_ModMutator



 Next, we’ll set the BP_ModMutator to override the original BP_WandTool. Change the following fields to reference the BP_WandTool located at Content / Gameplay / ToolSet / Items / Wand / BP_WandTool.

  • Actor Types to Override
  • Actor Types for Spawn Notifications


This will tell the mod what we want to override now we need to tell it what to override it with. We’ll do this by overriding the Request Actor Override function. Right click the Override button next to the Functions list and select Request Actor Override.


First thing we’ll do is check and make sure the actor we’re overriding is the original BP_WandTool.

  1. Drag off from Original Actor Pin and create an Equal Operator node
  2. Set the bottom field to the Original BP_WandTool
  3. Create a Branch node and hook up the Request Actor Override and Equals Operator Nodes


The last step for creating this mod will be to set this Blueprint to override to Original BP_WandTool with our Modded one.

  1. Drag off from the True pin on the Branch Node and Create a Return Node
    Select the New Widget Type field to the BP_WandTool in our Mod Folder
  2. Drag off from the False pin on the Branch Node and Create a Return Node
    Select the New Widget Type field to the BP_WandTool in our Mod Folder


Compile and Save the BP_ModMutator. You can now check and verify your mod is working by loading any level and cast any spell. Make sure that your Wand Mod is selected before you select Play.


Uploading Your Wand Mod

Once you’re satisfied with your wand mod select the Upload Mod button at the top of the Creator Kit. Fill out all of the information in the ModUploadWindow and select Upload.


You’ll receive a Mod Upload Sucess once your mod is validated and is being cooked.


Once your mod is finished cooking you can check it in Steam to verify it’s working as intended.