This tutorial will walk you through the process of copying your favourite player gear to a named NPC.
It will work even if that gear has been modded… thus allowing you to apply your favourite gear mod to a named NPC!
As an example, we're going to transfer the “18th Century Spring Gown” by Aryksa to Poppy Sweeting:

To make changes to an NPC's appearance we need to edit the Data Asset (or DA for short) for that NPC. We can view the existing DA (which resides inside the game files) using Fmodel , but we can't edit it because it's been "cooked" (i.e. turned into byte code). To change it we need to recreate the DA using JSON2DA and then edit our copy. That process is described in the JSON2DA User Guide. I'm therefore going to assume that you've read that and:
PhoenixUProj.FModel.JSON2DA.JSON2DA to create the DA for the NPC that you want to edit.In the JSON2DA User Guide we saw how to create a DA using JSON2DA. Let's take a look at the one we created for Poppy.
phoenix.uproject.Content\Data\CC\Student:
DA_PoppySweeting and expand the Outfits > Default >  Outfit Items > Upper section:
Upper Character Piece is defined as DA_HUM_F_CMBH_StuUni03_Robed_Master.Lower Character Piece so this item must be full-length.Shoes or Socks so this item must include them.Outfits (Flight, Formal, Quidditch and Sleepware) always seem to be blank so may not be used by the game.If we want to apply a modded item like Aryksa's Spring Gown we need to know what we're dealing with.
Open FModel and change Loading Mode to Single:

Now select the mod you want to examine (for the purposes of this example, that would be z_18thBallGown_SpringGown178_P.utoc) and hit Load:

After a few seconds you'll see something like the image below. When you do, press the Expand All button:

You'll now see the contents of the mod:

The folders with little numbers on them have actual assets inside. All the other folders are empty. Things to note:
Data\GearAppearances and RiggedObjects\Characters\Human\Clothing.RiggedObjects contains the individual CharacterPiece DA's, plus the Meshes, Materials and Textures which define each item of clothing in the mod.GearAppearances contains higher level GearAppearanceItemDefinition DA's which combine CharacterPieces into a complete outfit.There are two GearAppearances in this particular mod. Double click each one and you'll discover:
Head DA called DA_GA_Head_022_F.Outfit DA called DA_GA_Outfit_113_F.These names are important. They tell us that this mod replaces:
Head item #22 (the “Nomad Hat”).Outfit item #113 (the "Bubotuber Harvesting Attire").Double click each of those DA's and you'll see in the JSON information that:
DA_GA_Head_022_F contains: a single “Outfit Item” - a Hat.DA_GA_Outfit_113_F contains: Upper , Lower, Socks, Shoes, and a Scarf (though it's actually a choker).So what does all of this mean?
DA only contains CharacterPieces, it does not contain any GearAppearances.CharacterPieces.What if we wanted Poppy to wear an item of clothing from the game (rather than a mod) like the one that Aryksa's mod replaced - the “Bubotuber Harvesting Attire”. How would we achieve that?
Well, we need to look at the “Bubotuber Harvesting Attire” DA and see what we're dealing with.
But which DA is that? There's no easy way to figure it out, so I dumped the game's MAIN-enUS.bin file and stripped out all the appearance descriptions. You'll find a csv file of them below. Download that.
Now search for “Bubotuber”:

We can see that the “Bubotuber Harvesting Attire” is Outfit_113 (ignore the Legendary bit).
If we search for a DA with that in the name, using FModel, we find:

Poppy is female so the top one (ending with _F) is the one we're after. Full name: DA_GA_Outfit_113_F. If we open it up we find:

So it's a GearAppearanceItemDefinition DA containing an Upper CharacterPiece and (further down) a Lower, and Shoes. That's all.
In terms of CharacterPieces:
DA contains only one clothing-related CharacterPiece: an Upper.DA contains three: Upper , Lower, and Shoes.DA contains five:  Upper , Lower, Socks, Shoes, and a Scarf .So:
Upper , Lower, and Shoes from the game's DA_GA_Outfit_113_F to DA_PoppySweeting.Upper , Lower, Socks, Shoes, and a Scarf from Aryksa's modded DA_GA_Outfit_113_F to DA_PoppySweeting.The process is the same, but the details are different.
Aryksa's Spring Gown is much nicer than the Bubotuber outfit so I'm going to proceed with that in this example.
To copy the CharacterPieces from Aryksa's modded DA we need to recreate that DA. Please refer to the JSON2DA User Guide for instructions on how to do that. It doesn't matter what you call this new DA. We're not going to pak it. We're just going to copy the CharacterPiece information from it. The CharacterPieces themselves will be Dummy Assets created by JSON2DA, but they might be accompanied by a load of Scalar and Vector Overrides which we definitely don't want to enter by hand! Let's call the modded DA something like… DA_AryksaSummerGown. Once you've created it, you should have:

Double click one, then the other. Both should appear as tabs in a new window but you can drag them apart:

As indicated above, we need to delete the existing Upper CharacterPiece and then copy all five CharacterPieces from the mod to our Poppy DA:
Upper and select Delete:
+ on the Outfit Items line to add a new Item:
None with 6 empty “members”:
Unfortunately, that's bad news, because the Upper item in the mod only has 3 members, which means we can't copy & paste the whole Upper item. We'll need to copy and paste each member one at a time. Still, it's not the end of the world.
Why are they different? Because we're copying from a GearAppearanceItemDefinition to a CustomizableCharacterDefinition. They're similar but not identical.
Let's copy the CharacterPiece first then do the Scalar Overrides, Vector Overrides and Texture Overrides:
CharacterPiece in the mod and select Copy:
CharacterPiece line of the Poppy DA:
Scalar Overrides, Vector Overrides and Texture Overrides.None to Upper:
Okay, that's the Upper done. Now we just need to repeat that process for the Lower, Socks, Shoes, and Scarf until we have this:

Hit Save, because you're done! 🙂
Proceed as follows:
DA_PoppySweeting Data Asset in the Data\CC\Student folder.Asset Actions > Assign to Chunk:
OK. The number can be anything between 20 and 9999, so I'll choose 2222.File > Package Project > Windows (64 bit):

Show Output Log to see the output (be patient - it can take a while to appear). There will be literally thousands of warnings (about 5000, in fact). Ignore them. It's normal.Output Log visible.
WindowsNoEditor.WindowsNoEditor\phoenix\Content\Paks (ignore everything else along the way) and you should find:
pakchunk2222-WindowsNoEditor.*) are your mod. Everything else is junk.Rename:
z and ends with _P. I'm going to use zPoppySpringGown-2222_P:

Data Asset mods WILL NOT WORK unless you name them like this!~mods folder. This will install your mod.Start up Hogwarts Legacy and find Poppy. This is how Poppy looked originally versus now:
 
          ![]()  | 
        
          ![]()  | 
      
Looks brilliant! 🤩Apart from one tiny tiny little thing… hardly worth mentioning really… I mean it's just a detail… but SHE HAS NO FOREARMS!!! 😱
Okay, this is a problem. You remember in the JSON2DA User Guide when we had a look at Poppy's head Skeletal Mesh… and discovered that there were hands included? Well, that has come back to bite us. Poppy's hands were designed for her long-sleeved outfit. Now that we've replaced her long-sleeve with a mid-length sleeve we've revealed parts of her arm for which there is no mesh. There are three obvious options for how to solve this:
DA.Options 1 & 2 are rubbish, so it has to be option 3. Unfortunately my Blender skills are non-existent. But I happen to know that there is a head replacement mod on Nexus (here) to allow the player to look like Poppy. Because the player's hands are separate, the creator of that mod must have removed the hands. So they've done the work for me! All I have to do is install that mod, then replace Poppy's default head with the head from that mod. Simple! 😁
The Poppy mod replaces what they call “Female Head #5” with Poppy's head … but which Head DA is that? The answer can be found in ll500's Face Mod Guide (which lists the Skeletal Meshes not the DA's, but we just need to replace SK_ with DA_ to get the DA name):
 
| AVA_YF_Head_Emily/ SK_Young_F_Head_Emily_Master  | 
        AVA_YF_Head_SC_LH/ SK_YF_Head_SC_LH_Master  | 
        AVA_YF_Head_Andrews/ SK_YF_Head_ScanAndrews_Master  | 
        AVA_YF_Head_CN/ SK_YF_Head_SC_CN_Master  | 
        AVA_YF_Head_African/ SK_YF_Head_ScanAfrican_Master  | 
      
| AVA_YF_Head_SC_SE/ SK_YF_Head_SC_SE_Master  | 
        AVA_YF_Head_Hispanic/ SK_YF_Head_Hispanic_Master  | 
        AVA_YF_Head_SC_RC/ SK_YF_Head_SC_RC_Master  | 
        AVA_YF_Head_Maria/ SK_YF_Head_ScanMaria_Master  | 
        AVA_YF_Head_Asian/ SK_YF_Head_ScanAsian_Master  | 
      
| AVA_YF_Head_SC_JY/ SK_YF_Head_SC_JY_Master  | 
        AVA_YF_Head_SC_DK/ SK_YF_Head_SC_DK_Master  | 
        AVA_YF_Head_Indian/ SK_YF_Head_ScanIndian_Master  | 
        AVA_YF_Head_Amita/ SK_YF_Head_Amita_Master  | 
        AVA_YF_Head_SC_CM/ SK_YF_Head_SC_CM_Master  | 
      
So “Female Head #5” is DA_YF_Head_ScanAfrican_Master in the Content\RiggedObjects\Characters\Human\Heads\AVA_YF_Head_African folder.
Next I need to add an Arms Character Piece. A quick search in Fmodel reveals that there is in fact only one to choose from, Content/RiggedObjects/Characters/Human/Body/Arms_F/Arms01/DA_HUM_F_Body_Arms01_Master, so that was easy.
Here is the final DA:

And here's the final result… with her usual hair, and then with dyed blonde hair (brown eyes, dark roots & eyebrows), and then with natural blonde hair (blue eyes, blonde roots & eyebrows):
 
          ![]()  | 
        
          ![]()  | 
        
          ![]()  | 
      
Here are the Hair Vector Overrides for the dyed blonde look:

And here are the Head Overrides for the natural blonde look:

I had a go at removing the hands from Poppy's Head mesh in Blender and got it to work. The hard part was exporting the mesh to Blender and then re-importing it, but if you follow ll500's Face Mod Guide very very carefully you should be fine.
The actual deleting was done in Blender by:
Edit Mode .z then 4 to enable Wireframe Mode. The mesh should be black.ALT-z to enable X-ray mode. This will ensure that vertices are selected whether they're visible or not.x or delete then selecting Vertices.There's something odd about the colour of Poppy's chest: it doesn't match her face. I think that's built into the Head Texture Overrides because her chest is supposed to be hidden underneath clothing. If I delete those Texture Overrides it looks much better (but still not perfect). However, I am reliably informed (by user sebominis) that this can be solved by exporting the face texture as a png file, editing that in a photo editor (like Photoshop or Gimp) to make the chest colour match the face colour, then dragging & dropping that edited png into the correct folder of the Custom Engine's Content Browser to create a texture .uasset file, and giving that texture .uasset the same pakchunk as your mod.
That turned out to be a bit more convoluted than I'd hoped, but we got there. If you're thinking of doing something similar, pay particular attention to the arms. It would be easiest to just swap short-sleeved gear with short-sleeve gear, mid-length with mid-length, and long-sleeve with long-sleeve. But if you don't want to do that, have a plan for how you'll replace the arms.