# FF14 Asset Reference Document
This Document contains information sourced from and annotated from the FF14 Textooles Reference Document by Sel. It has been updated in some places and had some annotations added by me, however most of the information credit must go to it's original creator.
This Doc will only contain Dawntrail-specific information, until the last page which will have anything from Endwalker that changed as a reference, but the information in that page should not be used outside of comparison's sake. I will try to keep this as up to date with the GSheets as I can, but for the fastest updates and an Excel spreadsheet format, please check the original document.
# (Dawntrail) Shader Reference Table
This page is a list of tables with explinations/annotations of how the New shaders in dawntrail work. Most of this page has been adapted from the Textools Reference Document by Sel. Extra information is added based on research and conversations in modding creation discords, mainly the Textools and Bibo+ Discords.
This page is partially incomplete as we still do not fully understand every shader. Shaders with entirely blank boxes are those that we know exist, but do not understand how they work. Any important notes or observations about these shaders will be notated below their shader tables in Red.
---
##### The following explains how each color/data channel is used in each shader.
##### Channels are listed by their Default Behavior whenever variable.
##### Channels listed in **Purple** are variable and affected by shader keys. These will be listed Below each main table for the shader, before any notes or annotations.
##### **S**ub**S**urface **S**cattering (SSS) and Fur Settings are controlled by the same channels/fields when applicable
*Please note that all textures making use of an alpha channel for non-transparency should be saved as either **.DDS** or **.TGA** when bringing it in/out of an art program. PNG frequently gets mishandled by programs and ends up "eating" the alpha channel or forcing it as transparency, which destroys the data used.*
FFXIV uses the OpenGL format for Normal map direction (Y+ up if you are using a software with diffuse to normal generation capabilities)
Character.shpk (Gear & Monster Shader) |
Texture Data |
Normal Texture | Mask Texture |
RED | Standard Tangent Space Normal Map | RED | Specular Power |
GREEN | Standard Tangent Space Normal Map | GREEN | Roughness |
BLUE | Opacity | BLUE | Ambient Occlusion |
ALPHA | Unused | ALPHA | Unused |
Diffuse Texture | Specular Texture |
RED | Standard Color Data | RED | Standard Color Data |
GREEN | Standard Color Data | GREEN | Standard Color Data |
BLUE | Standard Color Data | BLUE | Standard Color Data |
ALPHA | ??? | ALPHA | ??? |
Index Texture | Flow Texture |
RED | Colorset Pair (0-16) | RED | ??? |
GREEN | Colorset Even/Odd Blending | GREEN | ??? |
BLUE | Unused | BLUE | ??? |
ALPHA | Unused | ALPHA | ??? |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | Specular Mask | RED | Faux-Wind Influence |
GREEN | Roughness | GREEN | Faux-Wind Multiplier |
BLUE | Diffuse Mask | BLUE | ??? |
ALPHA | Opacity | ALPHA | ??? |
UV Channel 1 | UV Channel 2 |
UV | Normal UV Channel | UV | Decal UV Channel (FC Crests, etc.) |
Texture Mode - Diffuse Texture |
Key : B616DC5A |
Value | Effect |
DEFAULT | Default Mask Texture Mode |
COMPATIBILITY | Used to enable Diffuse Texture |
SIMPLE | Unknown |
|
|
Flow Map Mode? - Flow Texture |
Key : 40D1481E |
Value | Effect |
337C6BC4 | Standard Value |
71ADA939 | Enable Flow Map? |
|
|
|
|
Specular Mode - Specular Texture |
Key : C8BD1DEF |
Value | Effect |
OFF | No Specular Texture |
MASK | Use Mask sampler for Specular |
DEFAULT | Use Spec sampler for Specular |
A7D2FF60 | Unknown |
Vertex Color Mode - Model Vertex Colors |
Key : F52CCF05 |
Value | Effect |
MASK | Use as Mask |
COLOR | Use as Diffuse Color |
DFE74BAC | Unknown |
5CC605B5 | Unknown |
Decal Mode - Model UV2 Layer |
Key : D2777173 |
Value | Effect |
OFF | No Decals |
COLOR | Use as Color Decal Placement |
ALPHA | Use as Alpha Decal Placement |
|
|
This is the standard shader used for most things you would mod (gear, minions, mounts, weapons) that are not options tied to the CHaracter creator. This shader will probbaly be the one you look at most often. There are a few other things that this shader can do based on keys, and I will explain them below.
This shader can make use of a field named "Effect ID". There appear to be 5 total shader effects, and number 3 Is what's used for a holographic/iridescent effect seen on some new gear. In order to utilize these effects, you must also set a value for "Effect Opacity". 0 means there will be no effect, 1 is full effect, and over 1 appears to be multiplicative. This effect is only possible on gear with the new Character shader, and not Character Legacy (the endwalker compatability version of this shader).
Number 1 seems to apply a "clear vinyl overlayer" effect
CharacterLegacy.shpk (Endwalker Gear & Monster Shader) |
Texture Data |
Normal Texture | Mask Texture |
RED | Standard Tangent Space Normal Map | RED | Specular Power |
GREEN | Standard Tangent Space Normal Map | GREEN | Gloss |
BLUE | Opacity | BLUE | Ambient Occlusion |
ALPHA | Unused | ALPHA | Unused |
Diffuse Texture | Specular Texture |
RED | Standard Color Data | RED | Standard Color Data |
GREEN | Standard Color Data | GREEN | Standard Color Data |
BLUE | Standard Color Data | BLUE | Standard Color Data |
ALPHA | Unused | ALPHA | Unused |
Index Texture | -- |
RED | Colorset Pair (0-16) | RED | |
GREEN | Colorset Even/Odd Blending | GREEN | |
BLUE | ??? | BLUE | |
ALPHA | ??? | ALPHA | |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | Diffuse Mask | RED | ??? |
GREEN | Gloss | GREEN | ??? |
BLUE | Specular Mask | BLUE | ??? |
ALPHA | Opacity | ALPHA | ??? |
UV Channel 1 | UV Channel 2 |
UV | Normal UV Channel | UV | Decal UV Channel (FC Crests, etc.) |
Texture Mode - Diffuse Texture |
Key : B616DC5A |
Value | Effect |
DEFAULT | Default Mask Texture Mode |
COMPATIBILITY | Used to enable Diffuse Texture |
SIMPLE | Unknown |
|
|
Specular Mode - Specular Texture |
Key : C8BD1DEF |
Value | Effect |
OFF | No Specular Texture |
MASK | Use Mask sampler for Specular |
DEFAULT | Use Spec sampler for Specular |
A7D2FF60 | Unknown |
Vertex Color Mode - Model Vertex Colors |
Key : F52CCF05 |
Value | Effect |
MASK | Use as Mask |
COLOR | Use as Diffuse Color |
DFE74BAC | Unknown |
5CC605B5 | Unknown |
Decal Mode - Model UV2 Layer |
Key : D2777173 |
Value | Effect |
OFF | No Decals |
COLOR | Use as Color Decal Placement |
ALPHA | Use as Alpha Decal Placement |
|
|
This is the Character Legacy shader. It is a port of the old endwalker shader for compatability with old assets that have not been updated by Square Enix. It is Not reccommended to continue creating anything for this shader, as it is not able to do all the things that the new Character shader can. Most Assets will still be using this shader unless updated by Square Enix or a modder. This shader is to our knowledge, not capable of handling some of the extra shader effects that the new Character shader can.
Skin.shpk (Character Skin Shader) |
Texture Data |
Normal Texture | Mask Texture |
RED | Standard Tangent Space Normal Map | RED | Specular Power |
GREEN | Standard Tangent Space Normal Map | GREEN | Roughness |
BLUE | Skin Color Influence | BLUE | SSS Thickness/Fur Parallax \* |
ALPHA | Wetness Mask | ALPHA | Hair Highlight Color Influence \* |
Diffuse Texture | -- |
RED | Standard Color Data | RED | |
GREEN | Standard Color Data | GREEN | |
BLUE | Standard Color Data | BLUE | |
ALPHA | Opacity | ALPHA | |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | Muscle Slider Influence | RED | Unused (?) |
GREEN | Unused | GREEN | Unused (?) |
BLUE | ??? | BLUE | Unused (?) |
ALPHA | Shadow Castin On/Off
| ALPHA | Unused (?) |
UV Channel 1 | UV Channel 2 |
UV | Normal UV Channel | UV | Decal UV Channel (Legacy Mark) |
Skin Type - Normal Alpha Channel |
Key : 380CAED0 |
Value | Effect |
BODY | Use as Wetness Mask |
FACE | Use as Lip Mask |
HRO | Use as Hair Mask \* |
EMISSIVE
| Use as Emissive mask
|
\* Also enables Mask Alpha |
Vertex Color Mode - Model Vertex Colors |
Key : F52CCF05 |
Value | Effect |
MASK | Use as Mask |
COLOR | Use as Diffuse Color |
DFE74BAC | Unknown |
5CC605B5 | Unknown |
|
|
Texture Mode - Normal Texture |
Key : B616DC5A |
Value | Effect |
DEFAULT | ?? |
COMPATIBILITY | Restores EW Normal Map Use |
SIMPLE | ?? |
|
|
Decal Mode - Model UV2 Layer |
Key : D2777173 |
Value | Effect |
OFF | No Decals |
COLOR | Use as Color Decal Placement |
ALPHA | Use as Alpha Decal Placement |
|
|
This is the Shader used for Body skin, Faces, and Hrothgar Skin with Fur.
- As a note, When both Skin influence and Hair influence are set, Skin influence wins out.
When working with this shader for body mods, Keep in mind that as of writing this, Body mods on the Female base (bibo, tf gen 3, etc) use skin type Body/standard skin. However, Male body mods (TBSE) Use the Hrothgar shader key for skin to allow for body hair that changes with head hair color. As such, authoring of maps for these two may differ slightly.
When using/authoring skin using the Hrothgar version of the skin shader, pay special attention to the alpha and blue channels as they are interconnected. The blue channel will be both skin color influence (depigmentation) AND Hair color selection at the same time, with the alpha determining which of the two effects are used in what spot. Portions of the blue channel that are not pure white with a BLACK alpha become depigmentation while the areas with a WHITE alpha become hair color influence.
You can create a faux metallic effect on skin by confusing the Subsurface shader (though be careful). To do this, set the blue channel of the mask to a value close to 255. This creates an effect that is both metallic and subsurface at the same time. This method should only be done by Power users who know what they are doing. All other users should instead use the shader ID 10 method listed below for metal on skin.
While skin has an opacity mask, This can not be used to create a semitransparent body part, as the opacity has a "clamp" on it's values, effectively turning it from a scaled value into a yes/no. More research is needed to see if this can be changed.
As emissive is a shader key on the same level as hrothgar (body hair on skin) you cannot use both emissive and dyeable body hair on skin at the same time using vanilla shaders. this is non-negotiable.
- When Shader ID is set to 10 (default value is 1) this activates "proper" metal on skin, and changes the Mask blue from Subsurface/Fur parallax to Metalness. When authoring with this shader ID for metalness, all skin/non metal must be PURE BLACK in the blue channel (causing it to look yellow in RGB mode). The closer the value is to white, the more metalness it has. The Green roughness channel must also be given special consideration. values closer to black cause the metal to be more shiny/polished looking, but due to how 14 has implemented this, it will also pick up more color from the skybox/environment lighting, to the point where it will change the color of the metal entirely if the roughness value is too low. To avoid skybox discoloration but keep the metal looking shiny, it is reccommended to keep the value closer to a midtone grey. The skybox tinting effect with low roughness is more pronounced and visible on any metallic bits facing up towards the sky, so anything on the chest, or if the arms are bent at a 90 degree angle (such as folded at the chest).
Hair.shpk (Hair Shader) |
Texture Data |
Normal Texture | Mask Texture |
RED | Standard Tangent Space Normal Map | RED | Specular Power |
GREEN | Standard Tangent Space Normal Map | GREEN | Roughness |
BLUE | Highlight Color Influence | BLUE | SSS Thickness |
ALPHA | Opacity | ALPHA | Diffuse Mask / Ambient Occlusion |
Diffuse Texture | -- |
RED | Standard Color Data | RED | |
GREEN | Standard Color Data | GREEN | |
BLUE | Standard Color Data | BLUE | |
ALPHA | Opacity | ALPHA | |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | ??? | RED | Faux-Wind Influence + Anistropy |
GREEN | ??? | GREEN | Faux-Wind Multiplier |
BLUE | ??? | BLUE | ??? |
ALPHA | Shadow Casting On/Off | ALPHA | ??? |
UV Channel 1 | UV Channel 2 |
UV | Normal UV Channel | UV | Opacity Mapping for Miqo'te? |
Sub Color Map - Normal Blue Channel |
Key : 24826489 |
Value | Effect |
FACE | Use as Tattoo Color Influence |
HAIR | Use as Hair Highlight Influence |
584265DD | Unknown |
This is the hair Shader. Many things have changed and unlike character, there is no legacy version of this shader. All old hair mods must be converted to use the channels described in this section. Hair is also used for Miqo'te tails.
At this time, the shader does not seem to be responsive to whatever value appearance plugins and tools such as Anamnesis, Glamourer, and Ktisis used to use for their "hair glow" parameter. This indicates something was shuffled around, but we are currently unsure as to what.
Iris.shpk (Eye Shader) |
Texture Data |
Normal Texture | Mask Texture |
RED | Standard Tangent Space Normal Map | RED | Emissive Mask |
GREEN | Standard Tangent Space Normal Map | GREEN | Reflection Mask/Cubemap Intensity |
BLUE | Unused | BLUE | Iris Mask |
ALPHA | Unused | ALPHA | Unused |
Diffuse Texture | -- |
RED | Standard Color Data | RED | |
GREEN | Standard Color Data | GREEN | |
BLUE | Standard Color Data | BLUE | |
ALPHA | Unused | ALPHA | |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | Left Eye color influence (odd eyes) | RED | Unused (?) |
GREEN | Right eye color influence (odd eyes) | GREEN | Unused (?) |
BLUE | | BLUE | Unused (?) |
ALPHA | | ALPHA | Unused (?) |
UV Channel 1 | UV Channel 2 |
UV | Normal UV Channel | UV | Unused (?) |
63030C80 - Unknown Effect |
Key : 63030C80 |
Value | Effect |
EFDEA8F6 | Unknown |
This is the iris, or new eye shader. There is no legacy version of this shader that can be used on players, so ALL eye mods must be thrown through a converter such as Loose Texture Compiler or Textools' Eye saver. This is non-negotiable.
The new iris shader allows for Sclera and Iris to be on the same map, allowing for some interesting effects
A large thing to note compared to old eye mods is that the catchlight is no longer an editable texture, and is now permanently part of the shader. All catchlight mods or edits can no longer be used. If you want to create a fake catchlight, you can draw this onto the diffuse, but it will be static and not move around. This is not fixable, and we do not currently know if catchlight will ever be editable, even using shader parameters.
Likewise, Au Ra limbal rings are also part of a shader now, and no longer part of a texture. Any mods that altered the Au Ra limbals must be scrapped. While shape cannot be changed, there is a shader constant that allows them to be turned on and off, and this is availible for all eyes, not just au ra. The parameters to change are
7DABA471- g\_IrisRingEmissive
| 0-1 (au ra at 0.8)
|
|
|
58DE06E2-Limbal Color
| Red (0-1)
| Green (0-1)
| Blue (0-1)
|
Furthermore, Sclera can either be changed by drawing on the diffuse, OR by changing shader constant 11C90091-g\_ White Eyes Color. the 3 values are RGB going from 0-1 in each box.
Emissive is now included in the eye shader for ALL eyes, but in order to activate it, you need to mask out where you want glow on the mask RED channel, AND turn the shader constant 3BA64362-g\_Emissive color on by changing the 3 values to not 0. the three editable boxes are RGB values that you may choose, that go from 0-1. emissive strangth is not known how or if it can be edited.
Finally, due to the eyeball now being a diffuse texture, it is possible to get multicolored eyes without having to sacrifice heterochromia. This both makes them more compatible with a variety of heads, and allows for more than 2 colors. because FF14 overlays the eye color closest to the layer style Multiply, it is best to check how colors will interact by simulating in an art program. You can either draw with color on the iris portion of the diffuse, and then allow eye color influence to change those colors, or draw with color on the diffuse, and then mask off the same areas/gradients on the Mask Blue channel, to stop those portions from changing with your eye color.
This is an example of simulating how placing colors on the diffuse and then allowing the game to put color on top can change the colors. This is a simulation in an art program, but it's enough to show what the effect will do when you do not mask out the colored parts on the multi.
[](https://xivmodding.com/uploads/images/gallery/2024-07/1HCOgcAh7kHth8BV-image.png)
CharacterTattoo.shpk (Face Tattoos Shader) |
Texture Data |
Normal Texture | -- |
RED | Standard Tangent Space Normal Map | RED | |
GREEN | Standard Tangent Space Normal Map | GREEN | |
BLUE | Mole or Tattoo Color Influence | BLUE | |
ALPHA | Opacity | ALPHA | |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | ??? | RED | |
GREEN | ??? | GREEN | |
BLUE | ??? | BLUE | |
ALPHA | ??? | ALPHA | |
UV Channel 1 | UV Channel 2 |
UV | Normal UV Channel | UV | ??? |
Sub Color Map - Normal Blue Channel |
Key : 24826489 |
Value | Effect |
FACE | Use as Tattoo Color Influence |
HAIR | Use as Hair Highlight Influence |
584265DD | Unknown |
|
|
Decal Mode - Model UV2 Layer |
Key : D2777173 |
Value | Effect |
OFF | No Decals |
COLOR | Use as Color Decal Placement |
ALPHA | Use as Alpha Decal Placement |
|
|
There isn't much to edit about this shader, but it is important to keep in mind, as Facial ETC textures have multiple materials that all point to the same textures, but have different shader keys and parameters. Before changing any, please check this table, or make the texture path for the specific one you want to change unique.
CharacterStocking.shpk (Stocking/Translucent Cloth) |
Texture Data |
Normal Texture | Mask Texture
|
RED | Standard Tangent Space Normal Map | RED | See character shader
|
GREEN | Standard Tangent Space Normal Map | GREEN | See character shader |
BLUE | Opacity\* (Skin visibility)
| BLUE | See character shader |
ALPHA | Unused
| ALPHA | Unused |
Diffuse Texture
| Specular Texture
|
RED | See character shader | RED | See character shader |
GREEN | See character shader | GREEN | See character shader |
BLUE | See character shader | BLUE | See character shader |
ALPHA | See character shader | ALPHA | See character shader |
Index Texure
| -- |
RED | Colorset Pair (0-16)
| RED | ??? |
GREEN | Colorset Even/Odd blending
| GREEN | ??? |
BLUE | Unused | BLUE | ??? |
ALPHA | Unused | ALPHA | ??? |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | Specular Mask
| RED | Faux wind influence
|
GREEN | Roughness
| GREEN | Faux wind multipler
|
BLUE | Diffuse mask
| BLUE | ??? |
ALPHA | Opacity
| ALPHA | ??? |
UV Channel 1 | UV Channel 2 |
UV | Normal UV | UV | Decal UV |
UV Channel 3 | | |
UV | Skin UV | |
|
As of 7.1 This shader is being adapted to player gear which allows us to research it more. This shader is nearly identical to the character (gear) shader, with a few exceptions. The main thing is that this shader utilizes UV channel 3 to copy and put skin underneath the "stockings" using only one mesh instead of the double layer mesh technique previously used. This is hardcoded to skin material A however, which means it will always be the symmetrical skin.
Texture wise, "opacity" on the normal map's blue channel is no longer overall opacity, but determines where and how much skin is shown "underneath".
Do NOT enable transparency in the material flags for this shader though, as it will crash your game.
The "nylon" texture and effect used on most gear with this shader is tile material 43, and you can get a nice stocking effect using a negative sheen value. Finally as of current research, sphere maps (like the holographic effect) seem to be disabled for this shader.
As of current research (12/03/2024) It seems that there is a strange link to material A used for this shader. When a modded skin mat A is loaded via textools into the game, the modded mat A shows correctly underneath the stockings, however when a modded skin mat A is loaded via penumbra, it does not. we are currently looking into why this is and how to cause the textools behavior on penumbra. The mod type (ttmp2 vs pmp) used does not change this behavior, nor can the penumbra behavior be circumvented via using textools' attach to penumbra system. for now a partial sort of fix is to have your modded skin in the default collection (this will mean everyone has your skin) in order for the stockings' mat A to properly reflect your skin. we don't know why this is the case, but it is likely due to how penumbra handles loading files vs textools. This has been tested on and works well on middie based ladies, but we could not get it to work on men. if you would like to test, please do and post a comment on this page of the results. (thank you to Virgo on discord for this research)
[](https://xivmodding.com/uploads/images/gallery/2024-12/iSMrQvr9gPMvpjy6-characterstocking-observations.png)
CharacterOcclusion.shpk (Eye Occlusion Shader) |
Texture Data |
Normal Texture | -- |
RED | ??? | RED | |
GREEN | ??? | GREEN | |
BLUE | ??? | BLUE | |
ALPHA | ??? | ALPHA | |
-- | -- |
RED | | RED | |
GREEN | | GREEN | |
BLUE | | BLUE | |
ALPHA | | ALPHA | |
-- | -- |
RED | | RED | |
GREEN | | GREEN | |
BLUE | | BLUE | |
ALPHA | | ALPHA | |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | Standard Tangent Space Normal Map | RED | Unused (?) |
GREEN | Standard Tangent Space Normal Map | GREEN | Unused (?) |
BLUE | ??? | BLUE | Unused (?) |
ALPHA | Unused | ALPHA | Unused (?) |
UV Channel 1 | UV Channel 2 |
UV | Normal UV Channel | UV | ??? |
Sub Color Map - Normal Blue Channel |
Key : 24826489 |
Value | Effect |
FACE | Use as Tattoo Color Influence |
HAIR | Use as Hair Highlight Influence |
584265DD | Unknown |
|
|
Vertex Color Mode - Model Vertex Colors |
Key : F52CCF05 |
Value | Effect |
MASK | Use as Mask |
COLOR | Use as Diffuse Color |
DFE74BAC | Unknown |
5CC605B5 | Unknown |
Decal Mode - Model UV2 Layer |
Key : D2777173 |
Value | Effect |
OFF | No Decals |
COLOR | Use as Color Decal Placement |
ALPHA | Use as Alpha Decal Placement |
|
|
There isn't much to say about this shader.
CharacterGlass.shpk (Glass Shader) |
Texture Data |
Normal Texture | Mask Texture |
RED | Standard Tangent Space Normal Map | RED | Specular Power |
GREEN | Standard Tangent Space Normal Map | GREEN | Roughness |
BLUE | Opacity | BLUE | Ambient Occlusion |
ALPHA | Unused | ALPHA | Unused |
Index Texture | -- |
RED | Colorset Pair (0-16) | RED | |
GREEN | Colorset Even/Odd Blending | GREEN | |
BLUE | ??? | BLUE | |
ALPHA | ??? | ALPHA | |
-- | -- |
RED | | RED | |
GREEN | | GREEN | |
BLUE | | BLUE | |
ALPHA | | ALPHA | |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | Specular Mask | RED | Faux-Wind Influence |
GREEN | Roughness | GREEN | Faux-Wind Multiplier |
BLUE | Diffuse Mask | BLUE | ??? |
ALPHA | Opacity | ALPHA | ??? |
UV Channel 1 | UV Channel 2 |
UV | Normal UV Channel | UV | Decal UV Channel (FC Crests, etc.) |
Texture Mode - Diffuse Texture |
Key : B616DC5A |
Value | Effect |
DEFAULT | Default Mask Texture Mode |
COMPATIBILITY | Used to enable Diffuse Texture |
SIMPLE | Unknown |
|
|
Specular Mode - Specular Texture |
Key : C8BD1DEF |
Value | Effect |
OFF | No Specular Texture |
MASK | Use Mask sampler for Specular |
DEFAULT | Use Spec sampler for Specular |
A7D2FF60 | Unknown |
Flow Map Mode? - Flow Texture |
Key : 40D1481E |
Value | Effect |
337C6BC4 | Standard Value |
71ADA939 | Enable Flow Map? |
| |
|
|
Vertex Color Mode - Model Vertex Colors |
Key : F52CCF05 |
Value | Effect |
MASK | Use as Mask |
COLOR | Use as Diffuse Color |
DFE74BAC | Unknown |
5CC605B5 | Unknown |
Decal Mode - Model UV2 Layer |
Key : D2777173 |
Value | Effect |
OFF | No Decals |
COLOR | Use as Color Decal Placement |
ALPHA | Use as Alpha Decal Placement |
|
|
Transparency Effect |
Key : E8DA5B62
|
Value | Effect |
7B804D6E | Dithering Toggle |
71A1FBF8 | Block Visibility through mesh (?) |
According to recent testing, Passthrough visibility is conditional on dithering being active. That is, if the dithering key is not present (alongside the additional data bit value "00 80 00 00" being enabled), the passthrough effect will not do anything, even if the key is toggled on. To fully activate dithering, the shader key must be enabled, AND the bit value in the additional data section of the material editor must be enabled. (thank you arghblargh for this info)
This shader is still being researched. We have a general idea of how it works, but not enough for any automatic texture conversions to look good. If you have any observations or are willing to research it, please let us know.
CharacterTransparency.shpk
|
Texture Data |
Normal Texture | Mask Texture |
RED | Standard Tangent Space Normal Map | RED | Specular Power |
GREEN | Standard Tangent Space Normal Map | GREEN | Roughness |
BLUE | Opacity | BLUE | Ambient Occlusion |
ALPHA | Unused | ALPHA | Unused |
Diffuse Texture? | Specular Texture? |
RED | Standard Color Data | RED | Standard Color Data |
GREEN | Standard Color Data | GREEN | Standard Color Data |
BLUE | Standard Color Data | BLUE | Standard Color Data |
ALPHA | ??? | ALPHA | ??? |
Index Texture | Flow Texture |
RED | Colorset Pair (0-16) | RED | ??? |
GREEN | Colorset Even/Odd Blending | GREEN | ??? |
BLUE | Unused | BLUE | ??? |
ALPHA | Unused | ALPHA | ??? |
Model Data |
Vertex Color 1? | Vertex Color 2? |
RED | Specular Mask | RED | Faux-Wind Influence |
GREEN | Roughness | GREEN | Faux-Wind Multiplier |
BLUE | Diffuse Mask | BLUE | ??? |
ALPHA | Opacity | ALPHA | ??? |
UV Channel 1? | UV Channel 2? |
UV | Normal UV Channel | UV | Decal UV Channel (FC Crests, etc.) |
Transparency Effect |
Key : E8DA5B62
|
Value | Effect |
7B804D6E | Dithering toggle |
71A1FBF8 | Passthrough visibility (?) |
- Unknown Effect |
Key :
|
Value | Effect |
| Unknown |
|
|
0033C8B5 - Unknown Effect |
Key : 0033C8B5
|
Value | Effect |
D1E60FD9 | Unknown |
93D6C21A | Enable Emissive Color |
This is a new shader introduced in 7.2, first seen on the Historia Chokers. It is assumed that it acts similarly to the standard character shader but uses a few additional shader keys for better transparency effects.
When these shaders are overlaid with certain other effects (like byakko's falling VFX) Character Glass will dither, but Character Transparency will hide completely. This could be a reason to use one shader over the other.
According to recent testing, Passthrough visibility is conditional on dithering being active. that is, if the dithering key is not present (alongside the additional data bit value "00 80 00 00" being enabled), the passthrough effect will not do anything, even if the key is toggled on. To fully activate dithering, the shader key must be enabled, AND the bit value in the additional data section of the material editor must be enabled. (thank you arghblargh for this info)
This shader is new and not properly researched. Any information here is tentative, and we would appreciate comments about this shader if you know more.
CharacterInc.shpk |
Texture Data |
Normal Texture | -- |
RED | ??? | RED | ??? |
GREEN | ??? | GREEN | ??? |
BLUE | ??? | BLUE | ??? |
ALPHA | ??? | ALPHA | ??? |
-- | Mask/Multi Texture |
RED | ??? | RED | ??? |
GREEN | ??? | GREEN | ??? |
BLUE | ??? | BLUE | ??? |
ALPHA | ??? | ALPHA | ??? |
-- | -- |
RED | ??? | RED | ??? |
GREEN | ??? | GREEN | ??? |
BLUE | ??? | BLUE | ??? |
ALPHA | ??? | ALPHA | ??? |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | ??? | RED | ??? |
GREEN | ??? | GREEN | ??? |
BLUE | ??? | BLUE | ??? |
ALPHA | ??? | ALPHA | ??? |
UV Channel 1 | UV Channel 2 |
UV | Normal UV | UV |
|
So far, we know that this shader does not seem to utilize vertex color for anything special, and seems to utilize a mask map for the special effects. (Thank you to Ulli for this information)
This shader has been in the game since 7.0, but was first used in 7.2. We do not have any information on this shader and will be updating this portion when more information is found.
Bg.shpk (Furniture Shader) |
Texture Data |
Normal Texture | Mask Texture |
RED | Standard Tangent Space Normal Map | RED | Specular Mask A? |
GREEN | Standard Tangent Space Normal Map | GREEN | Roughness |
BLUE | ??? | BLUE | Specular Mask B? |
ALPHA | ??? | ALPHA | ??? |
Diffuse Texture | -- |
RED | Standard Color Data | RED | |
GREEN | Standard Color Data | GREEN | |
BLUE | Standard Color Data | BLUE | |
ALPHA | Unused | ALPHA | |
-- | -- |
RED | | RED | |
GREEN | | GREEN | |
BLUE | | BLUE | |
ALPHA | | ALPHA | |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | ??? | RED | Unused (?) |
GREEN | ??? | GREEN | Unused (?) |
BLUE | ??? | BLUE | Unused (?) |
ALPHA | ??? | ALPHA | Unused (?) |
UV Channel 1 | UV Channel 2 |
UV | Normal UV Channel | UV | ??? |
BG Use DiffuseAlpha - Diffuse Alpha |
Key : A9A3EE25 |
Value | Effect |
72AAA9AE | Use as Opacity |
BG Vertex Paint - Vertex Color |
Key : 4F4F0636 |
Value | Effect |
BD94649A | Use as Diffuse Color |
Multiple - Unknown Effect |
Key : Multiple |
Value | Effect |
At least ~9 Additional keys of unknown effect |
Texture Mode - Diffuse Texture |
Key : B616DC5A |
Value | Effect |
DEFAULT | Unknown |
COMPATIBILITY | Unknown |
SIMPLE | Unknown |
1DF2985C | Unknown |
941820BE | Unknown |
07D3170F | Unknown |
This shader is not fully understood.
BgColorChange.shpk (Dyeable Furniture Shader) |
Texture Data |
Normal Texture | Mask Texture |
RED | Standard Tangent Space Normal Map | RED | Specular Mask A? |
GREEN | Standard Tangent Space Normal Map | GREEN | Roughness |
BLUE | ??? | BLUE | Specular Mask B? |
ALPHA | Opacity | ALPHA | ??? |
Diffuse Texture | -- |
RED | Standard Color Data | RED | |
GREEN | Standard Color Data | GREEN | |
BLUE | Standard Color Data | BLUE | |
ALPHA | Dyeability Mask | ALPHA | |
-- | -- |
RED | | RED | |
GREEN | | GREEN | |
BLUE | | BLUE | |
ALPHA | | ALPHA | |
Model Data |
Vertex Color 1 | Vertex Color 2 |
RED | ??? | RED | Unused (?) |
GREEN | ??? | GREEN | Unused (?) |
BLUE | ??? | BLUE | Unused (?) |
ALPHA | ??? | ALPHA | Unused (?) |
UV Channel 1 | UV Channel 2 |
UV | Normal UV Channel | UV | ??? |
BG Use DiffuseAlpha - Diffuse Alpha |
Key : A9A3EE25 |
Value | Effect |
72AAA9AE | Use as Opacity (?) |
BG Vertex Paint - Vertex Color |
Key : 4F4F0636 |
Value | Effect |
BD94649A | Use as Diffuse Color |
This shader is not fully understood.
Notes courtesy of Vincent on discord:
Keys:
9A696A17 - Velocity of the scroll. Positive values are left & up direction. Parameter 1 & 2 are Diffuse A's X & Y scroll respectively, and 3 & 4 are the same for Diffuse B.
Emissive, Diffuse, etc. - Affects these values on Diffuse A (the overlay layer.)
MultiEmissive, MultiDiffuse, etc. - Affects these values on Diffuse B (the base photo layer.)
BFE9D12D - A master emissive multiplier. Setting this to 0 turns off the lights on the whole thing.
The apparent 50% opacity on the Diffuse A overlay seems to be hard-coded. None of the other constants seemed to do anything at all.
Changing the alpha threshold parameter or alpha of the images had no effect.
This shader is used on the Phasmascapes.
We are assuming that this shader works the same as the non-dyeable furniture shader, with the addition of a second diffuse and scrolling parameters.
##### Additional Data Values Table
Additional Data bit Value
| Function
| Relevant Shader
| Bit Interactions
| Other Notes
|
00 80 00 00
| Enable Dithering
| Glass, Transparency
| | Glass often has this enabled and shadows disabled. Assumed that this also affects transparency in character shader.
|
00 40 00 00
| Disable Shadows
| Global (?) Glass, Transparency, Character
| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
# Attribute Reference Tables
This page is based off the "attribute reference table" in the textools reference doc by sel. This information has not been validated to have been changed in dawntrail, so while nothing on here should have changed, it is possible that some information is outdated or missing.
##### Mesh parts in FF14 have many types of Attributes, and these determine when and what parts of a mesh should be hidden.
##### Every Mesh part (X.0, X.1, etc) Has it's own list of attributes that will change what is and is not hidden when the correct metadata is combined with it. for example a mesh part with the upper arm attribute will be hidden if the item is paired with long gloves.
This is especially important when replacing the mesh parts of one model with another's, or when you are making/altering a mesh that needs to hide certain parts. If the mesh part numbers are different, then unwanted parts may hide when something is equipped. If you ever have a mod where something goes invisible when another gear piece is worn (usually long gloves) then that means that an attribute was incorrectly placed on a mesh part. likewise, if a part of the mesh does not hide when the corresponding piece is worn (like long gloves) then that means that mesh part does not have the attribute set.
Some gear uses special "Variant Attributes" such as atr\_tv\_a. these attributes are special as they are not decided by what other gear you have on, but rather are decided by what item *variant* you have equipped. What variants hide/show what items is determined by thier IMC values, which can be found in the metadata editing tabs of your chosen mod editor.
Variant attributes go from a to j (so atr\_xv\_b for example) with a total of 10 possible variant attributes per item, at the time of writing this.
Other variant attributes may exist for other model types, but most other model types do not have IMC files, so they will not be gone over here.
Hats / Headgear (met) |
atr\_mv\_x | Head Variant Parts |
atr\_inr | Gorget |
Gloves (glv) |
atr\_gv\_x | Glove Variant Parts |
atr\_arm | Glove |
Hair (hir) |
atr\_hv\_x | Hair Variant Parts |
atr\_kam | Scalp |
Unusual/Strange |
atr\_hair | Au Ra F Faces Only
|
atr\_sta | Miqo'te Hair Only
|
Common / Misc |
atr\_lod | Excess Detail |
atr\_tlh | Non-Tail Races Only |
atr\_tls | Tail Races Only |
atr\_top | Miqo'te Ears |
Body (top) |
atr\_tv\_x | Body Variant Parts |
atr\_hij | Wrist |
atr\_nek | Neck |
atr\_ude | Elbow |
Legs (dwn) |
atr\_dv\_x | Leg Variant Parts |
atr\_hiz | Knee |
atr\_kod | Waist |
atr\_sne | Shin |
Accessories |
atr\_ev\_x | Earring (ear) Variant Parts |
atr\_nv\_x | Necklace (nek) Variant Parts |
atr\_wv\_x | Bracelets (wrs) Variant Parts |
atr\_rv\_x | Ring (rir/ril) Variant Parts |
Connector Attributes |
atr\_cn\_neck | Neck Connector |
atr\_cn\_wrist | Wrist Connector |
atr\_cn\_ankle | Ankle Connector |
atr\_cn\_waist | Waist Connector |
Face (fac) |
atr\_fv\_x | Face Variant Parts (Char Select) |
atr\_hig | Facial Hair |
atr\_hrn | Horns |
atr\_kao | Face |
atr\_mim | Ears |
Weapons |
atr\_bv\_x | Other Variant Parts |
atr\_parts\_x | Weapon Specific Parts |
atr\_arrow | Arrow |
atr\_ar1-3 | Arrow in Quiver |
atr\_attach | Gauss Barrel |
Shoes (sho) |
atr\_sv\_x | Shoe Variant Parts |
atr\_leg | Boot |
atr\_lpd | Knee Pad |
Monsters & Demihumans |
atr\_bv\_x | Other Variant Parts |
atr\_parts\_x | Monster Specific Parts |
Extremely Rare / Unknown |
atr\_showhide | Used on 2 Weapon Models |
atr\_blt | Used on 3 Body Models |
atr\_eye\_a
| NPC head setting?
|
Unlisted model types have no unique attributes. Ex: Tail (til) and Ear (zir)
# Shapes Reference Table
This page was adapted from the Textools Reference doc by Sel. This information has not been updated or re-researched since pre-dawntrail, so some information may be missing or outdated.
##### It is assumed that a shape can be created for any otherwise unlisted attribute and will be triggered if the attribute associated with it is hidden, however this has not yet been tested.
Shape Name | Trigger Conditions | Notes |
Body Gear (top) |
shp\_nek | atr\_nek Hidden | Hide conditions dependent upon head gear. |
shp\_kat | Long-Glove Equipped | Only one of these will be triggered at once, the others will have their associated attribute hidden. |
shp\_ude | Mid-Glove Equipped |
shp\_hij | Short-Glove Equipped |
Leg Gear (dwn) |
shp\_kos | atr\_kos Hidden | Hide conditions dependent upon body gear. |
shp\_mom | Long-Boot Equipped | Only one of these will be triggered at once, the others will have their associated attribute hidden. |
shp\_hiz | Mid-Boot Equipped |
shp\_sne | Short-Boot Equipped |
Hand Gear (glv) |
shp\_glv | atr\_glv Hidden | Hide conditions dependent upon body gear. |
Faces (fac) |
shp\_brw\_x | Character Creation Settings | Eyebrow Selection. \_a is the SECOND option. |
shp\_chk\_x | Character Creation Settings | Jaw Selection. \_a is the SECOND option. |
shp\_etc\_x | Character Creation Settings | Tattoo/etc. Selection. \_a is the SECOND option. |
shp\_eye\_x | Character Creation Settings | Eye Shape Selection. \_a is the SECOND option. |
shp\_mth\_x | Character Creation Settings | Mouth Selection. \_a is the SECOND option. |
atr\_iris\_x | Character Creation Settings | Iris Size Selection. \_a is the SECOND option. |
Hair (hir) |
shp\_hib | Hat Equipped | |
shp\_hic | ??? | ??? |
Weapons |
shp\_bv\_a | shp\_bv\_a hidden(?) | IMC Variant Shape? |
shp\_met | Headgear hidden(?) | ??? |
Demihumans |
shp\_hiz | ??? | ??? |
shp\_kos | ??? | ??? |
shp\_mom | ??? | ??? |
shp\_mv\_a | ??? | ??? |
shp\_mv\_b | ??? | ??? |
# Visibility Reference Tables
This page is an adaptation of the Textools Reference document by Sel. This data has not been tested since the release of dawntrail, so some information may be missing/outdated.
Key: | Flag that should always be set if the gear exists. |
| Flag that shows/hides an entire gear slot. |
| Flag that shows/hides an Attribute (and associated Shape) |
| Flag that is unused or has unknown purpose |
| **Visibility Flag**
| **Controlling Slot**
| **Attribute**
| **Shape**
| **Notes**
|
| | | | | |
Byte 0
| **EnableBodyFlags**
| Body (top)
| --
| --
| Must be enabled for the rest of the body flags to work correctly.
|
| **BodyHideWaist**
| Body (top)
| atr\_kod
| shp\_kod, shp\_kos(?)
| |
| Bit2
| Body (top)
| ???
| ???
| |
| **BodyHideShortGloves**
| Body (top)
| atr\_arm
| atr\_arm
| Has something to do with glove settings based on the type of glove equipped.
|
| BodyGloveUnknown2
| Body (top)
| ???
| ???
|
| **BodyHideMidGloves**
| Body (top)
| atr\_arm
| shp\_arm
| Ex. HideLongGloves will only hide atr\_arm on long gloves.
|
| **BodyHideLongGloves**
| Body (top)
| atr\_arm
| shp\_arm
| But not on Mid Gloves.
|
| **BodyHideGorget**
| Body (top)
| atr\_inr
| shp\_inr
| |
| | | | | |
Byte 1
| **BodyShowLeg**
| Body (top)
| --
| --
| When body gear hides other slots, the visibility parameters from *that slot in the same set as the body gear*
|
| **BodyShowHand**
| Body (top)
| --
| --
| is used for determining down-stream visibility settings. (Ex. Should Shoes be shown/hidden)
|
| **BodyShowHead**
| Body (top)
| --
| --
| |
| **BodyShowNecklace**
| Body (top)
| --
| --
| If *either* of equipped body or head gear hides necklace, it will be hidden.
|
| **BodyShowBracelet**
| Body (top)
| --
| --
| If *either* of equipped body or glove gear hides bracelet, it will be hidden.
|
| **BodyShowTail**
| Body (top)
| --
| --
| If *either* of equipped body or leg gear hides tail, it will be hidden.
|
| BodyTriggersomeShapeData
| Body (top)
| ???
| ???
| |
| Bit15
| Body (top)
| ???
| ???
| |
| | | | | |
Byte 2
| **EnableLegFlags**
| Leg (dwn)
| --
| --
| Must be enabled for the rest of the leg flags to work correctly.
|
| **LegHideKneePads**
| Leg (dwn)
| atr\_lpd
| shp\_lpd
| |
| **LegHideShortBoot**
| Leg (dwn)
| atr\_leg
| shp\_leg
| Like gloves, the atr\_leg triggers are dependent upon the equipped boot's visibility settings. (Long boots cannot be hidden)
|
| **LegHideHalfBoot**
| Leg (dwn)
| atr\_leg
| shp\_leg
|
| LegBootUnknown
| Leg (dwn)
| ???
| ???
| Something to do with interactions with half-boots.
|
| **LegShowFoot**
| Leg (dwn)
| --
| --
| |
| **LegShowTail**
| Leg (dwn)
| ???
| ???
| If *either* of equipped body or leg gear hides tail, it will be hidden.
|
| Bit23
| Leg (dwn)
| ???
| ???
| |
| | | | | |
Byte 3
| **EnableHandFlags**
| Gloves (glv)
| --
| --
| Must be enabled for the rest of the hand flags to work correctly.
|
| **HandHideElbow**
| Gloves (glv)
| atr\_ude
| shp\_ude, shp\_hij, shp\_kat
| When Elbow is set without forearm the glove is marked as a short glove (which will trigger shp\_hij). Exact selection of which Shapes are triggered is based on the combination of flags. (Mid glove triggers ude, Long triggers kat)
|
| **HandHideForearm**
| Gloves (glv)
| atr\_hij
| shp\_ude, shp\_hij, shp\_kat
|
| Bit27
| Gloves (glv)
| ???
| ???
| |
| **HandShowBracelet**
| Gloves (glv)
| --
| --
| If *either* of equipped body or glove gear hides bracelet, it will be hidden.
|
| **HandShowRingL**
| Gloves (glv)
| --
| --
| |
| **HandShowRingR**
| Gloves (glv)
| --
| --
| |
| Bit31
| Gloves (glv)
| ???
| ???
| |
| | | | | |
Byte 4
| **EnableFootFlags**
| Shoes (sho)
| --
| --
| Must be enabled for the rest of the foot flags to work correctly.
|
| **FootHideKnee**
| Shoes (sho)
| atr\_hiz
| shp\_hiz, shp\_sne, shp\_mom
| When Knee is set without Calf, item is marked as a short boot (Which will hide shp\_sne). Exact shapes triggered depends on the combination of the flags. (mid boot triggers hiz, long triggers mom)
|
| **FootHideCalf**
| Shoes (sho)
| atr\_sne
| shp\_hiz, shp\_sne, shp\_mom
|
| **FootHideAnkle**
| Shoes (sho)
| ???
| ???
| |
| Bit36
| Shoes (sho)
| --
| --
| Unused
|
| Bit37
| Shoes (sho)
| --
| --
| Unused
|
| Bit38
| Shoes (sho)
| --
| --
| Unused
|
| Bit39
| Shoes (sho)
| --
| --
| Unused
|
| | | | | |
Byte 5
| **EnableHeadFlags**
| Head (met)
| --
| --
| Must be enabled for the rest of the head flags to work correctly.
|
| **HeadHideScalp**
| Head (met)
| atr\_kam
| shp\_kam
| When set alone, hides scalp. When set with HideHair, hides *everything*.
|
| **HeadHideHair**
| Head (met)
| --
| --
| When set alone, hides hair. When set with HideScalp, hides *everything*.
|
| **HeadShowHairOverride**
| Head (met)
| --
| --
| When set, shows hair, regardless of the previous two flags.
|
| **HeadHideNeck**
| Head (met)
| atr\_nek
| shp\_nek
| |
| **HeadShowNecklace**
| Head (met)
| --
| --
| If *either* of equipped body or head gear hides necklace, it will be hidden.
|
| Bit46
| Head (met)
| ???
| ???
| |
| **HeadShowEarrings**
| Head (met)
| --
| --
| Full earring toggle cannot be disabled without also disabling hair (HeadHideHair)
|
| | | | | |
Byte 6
| **HeadShowEarringsHuman**
| Head (met)
| --
| --
| Everything not Au Ra (?)
|
| **HeadShowEarringsAura**
| Head (met)
| --
| --
| Au Ra Only (?)
|
| **HeadShowEarHuman**
| Head (met)
| atr\_mim
| atr\_mim
| Hyur/Elezen/Lalafell
|
| **HeadShowEarMiqo**
| Head (met)
| atr\_top
| shp\_top
| Miqo/Hrothgar
|
| **HeadShowEarAura**
| Head (met)
| atr\_hrn
| shp\_hrn
| Au Ra (Horns)
|
| **HeadShowEarViera**
| Head (met)
| --
| --
| Viera
|
| HeadUnknownHelmet1
| Head (met)
| ???
| ???
| These flags are usually set in place of ShowEarrings\[Race\] flags on helmet gear.
|
| HeadUnknownHelmet2
| Head (met)
| ???
| ???
| Their purpose is currently unknown, but presumably triggers some shape data.
|
| | | | | |
Byte 7
| **HeadShowHrothgarHat**
| Head (met)
| --
| --
| Allows Hrothgar hats to be shown
|
| **HeadShowVieraHat**
| Head (met)
| --
| --
| Allows Viera hats to be shown
|
| Bit58
| Head (met)
| --
| --
| Unused
|
| Bit59
| Head (met)
| --
| --
| Unused
|
| Bit60
| Head (met)
| --
| --
| Unused
|
| Bit61
| Head (met)
| --
| --
| Unused
|
| Bit62
| Head (met)
| --
| --
| Unused
|
| Bit63
| Head (met)
| --
| --
| Unused
|
# (Dawntrail) Colorset Values reference table
This page has been adapted from the same from the Textools Reference Doc made by Sel.
##### Dawntrail colorsets now use an Index Texture/ID map and use TWO channels to complete thier blending. Index red is similar to Endwalker Normal Alpha in that it is divided into 16 blocks; However it cannot be blended.
##### Instead for Dawntrail each block comes as a pair of rows that can be blended and this blend is controlled by the index Green channel. A pure white value will blend to A and a pure black value will blend to B
Colorset Reference Table - Index Red |
| | | | | |
When working with these channels, your Greyscale Color space should be set to sGrey.
(Ctrl-Shift-K in Photoshop for color space settings) |
|
| | | | | |
Row Pair # | Greyscale % | Photoshop Greyscale % | sGrey Value | Hex Value | Color |
Row Pair 1 | 0.00 | 100.00 | 0 | \#000000 | |
Row Pair 2 | 6.67 | 93.33 | 17 | \#111111 | |
Row Pair 3 | 13.33 | 86.67 | 34 | \#222222 | |
Row Pair 4 | 20.00 | 80.00 | 51 | \#333333 | |
Row Pair 5 | 26.67 | 73.33 | 68 | \#444444 | |
Row Pair 6 | 33.33 | 66.67 | 85 | \#555555 | |
Row Pair 7 | 40.00 | 60.00 | 102 | \#666666 | |
Row Pair 8 | 46.67 | 53.33 | 119 | \#777777 | |
Row Pair 9 | 53.33 | 46.67 | 136 | \#888888 | |
Row Pair 10 | 60.00 | 40.00 | 153 | \#999999 | |
Row Pair 11 | 66.67 | 33.33 | 170 | \#AAAAAA | |
Row Pair 12 | 73.33 | 26.67 | 187 | \#BBBBBB | |
Row Pair 13 | 80.00 | 20.00 | 204 | \#CCCCCC | |
Row Pair 14 | 86.67 | 13.33 | 221 | \#DDDDDD | |
Row Pair 15 | 93.33 | 6.67 | 238 | \#EEEEEE | |
Row Pair 16 | 100.00 | 0.00 | 255 | \#FFFFFF | |
| | | | | |
Photoshop uses Black as "100%" and White as "0%" for some reason, ergo the percentages are reversed for Photoshop. | | | | |
|
for both Red and Green values-
ID Red values (hex): | ID Green Values: | "Final" Values: |
Pair 1 | \#00 | Row A
| \#FF | \#00FF00 |
Row B
| \#00 | \#000000 |
Pair 2
| \#11 | Row A
| \#FF | \#11FF00 |
Row B
| \#00 | \#110000 |
Pair 3
| \#22 | Row A
| \#FF | \#22FF00 |
Row B
| \#00 | \#220000 |
Pair 4
| \#33 | Row A
| \#FF | \#33FF00 |
Row B
| \#00 | \#330000 |
Pair 5
| \#44 | Row A
| \#FF | \#44FF00 |
Row B
| \#00 | \#440000 |
Pair 6
| \#55 | Row A
| \#FF | \#55FF00 |
Row B
| \#00 | \#550000 |
Pair 7
| \#66 | Row A
| \#FF | \#66FF00 |
Row B
| \#00 | \#660000 |
Pair 8
| \#77 | Row A
| \#FF | \#77FF00 |
Row B
| \#00 | \#770000 |
Pair 9
| \#88 | Row A
| \#FF | \#88FF00 |
Row B
| \#00 | \#880000 |
Pair 10
| \#99 | Row A
| \#FF | \#99FF00 |
Row B
| \#00 | \#990000 |
Pair 11
| \#AA | Row A
| \#FF | \#AAFF00 |
Row B
| \#00 | \#AA0000 |
Pair 12
| \#BB | Row A
| \#FF | \#BBFF00 |
Row B
| \#00 | \#BB0000 |
Pair 13
| \#CC | Row A
| \#FF | \#CCFF00 |
Row B
| \#00 | \#CC0000 |
Pair 14
| \#DD | Row A
| \#FF | \#DDFF00 |
Row B
| \#00 | \#DD0000 |
Pair 15
| \#EE | Row A
| \#FF | \#EEFF00 |
Row B
| \#00 | \#EE0000 |
Pair 16
| \#FF | Row A
| \#FF | \#FFFF00 |
Row B
| \#00 | \#FF0000 |
These more specific values were found in the Penumbra server, posted by Ramen. the color swatches from the above table are still correct if you want to color pick instead of typing hex codes, as they matched the color swatches that were originally combined with this data (as tested and color picked in CSP). the values in this chart account for mathematical rounding of the values by other programs.
|
[](https://xivmodding.com/uploads/images/gallery/2025-04/2cRavjD3rQnrzmZ1-id-map-colorset-rows-colorpick.png)
Here is a chart that can be colorpicked from with the corresponding values from the above chart.
# Dye templates and Tile References
This page was made as an adaptation of the same in the Textools Reference doc created by sel. This has not been updated for dawntrail, so some information may be outdated or missing.
##### As of dawntrail, it is now possible to have two dye channels. In order to select and set between the two, you must go to the colorset editing window, and on the row you wish to be connected to the dye channel, select either Channel 1 or Channel 2. There are technically up to 4 channels in the data, but 3 and 4 are unused and cannot be manipulated in game.
[](https://xivmodding.com/uploads/images/gallery/2024-07/PqavMRwe6YcHwp3b-image.png)
##### There are currently 41 different dye templates in FF14. These templates control how dyes via the in game dye system or anamnesis/ktisis/brio/glamourer/etc affect a colorset row.
##### Other than selecting a template, you can also select which fields it should effect when dyed such as Diffuse color, Spec color, Emissive color, Gloss, and Spec power. Not all templates contain data for all of the above fields. Furthermore, emissive color can only be dyed using templates #510-522.
A general rule of thumb is as follows:
- (#)#00- dyes "default"
- (#)#01- dyes "darker"
- (#)#02- dyes "lighter"
- (#)#2#- dyes black (220, 420, 221, 421)
Dyed gloss values increase as you go up the 100s bracket from ~1 to ~24
Special templates other than black are:
- Silver- 540
- Gold-550
These templates (and black) will always dye the same color no matter what dye is used.
---
#### Tile materials
In addition to basic colors per row, a sub material known as a tile material may be used for microdetail such as linen or leather. ff14 has 64 possible tile materials defined, though only half actually work.
The tile material is a 32x32 px normal map and diffuse map which is mapped onto the UV1 layer of the material. the tile material is also repeated (tiled) a specified amount of times along each axis and can be further skewed to rotate or change the tiling as desired.
The grid version of the tiles and texture paths for them will be updated when found for dawntrail.
# Racial Scaling tree (wip, outdated)
this does not include viera male or hrothgar female and must be remade. will update later, here's the old one.
[](https://xivmodding.com/uploads/images/gallery/2024-07/YNwUMWpMVV3QrE8G-image.png)
# Bone list and Bone Scaling notes.
this has been adapted from the textools reference doc page of the same title, created by sel. this has not been fully updated for dawntrail, and some information IS missing or outdated. I will correct when I can.
As a note. this list is based off the old bone list. Dawntrail completely redid the entire face skeletons, but there is not a complete list of them yet, so they will be added later. Do not use this list for facial bones. Furthermore this is a list of *Vanilla* bones. any extra bones added by a mod such as IVCS, YAS or Skelomae will not be in this list, and cannot be manipulated or used unless said mod is installed and set up properly.
Bones with <a-e> are multiple bones in sequence, such as sebo (spine) bones. Bones with <l/r> are left and right bones such as leg bones. bones with <f/b/s> are Front, Back, and Side bones, such as skirts. any bone with \_ex in it's name is an Extra bone, and will only exist when the associated skeleton metadata is loaded. this is most commonly seen on hair, but has been used on gear on extremely rare occasions.
##### Main Bones
Bone Name | English Equivalent | Notes |
n\_root | Root (base bone) | |
n\_hara | Center Of Mass/Belly | |
n\_throw | ??? | Attached to n\_hara |
j\_kao | Head/Face | |
j\_sebo\_<a-c> | Spine | |
j\_ude\_<a-b>\_<l/r> | Arm | |
n\_hhiji\_<l/r> | Elbow | |
n\_hte\_<l/r> | Hand | |
j\_te\_<l/r> | Hand | |
j\_mune\_<l/r> | Breast | Females only |
j\_kosi | Hip/Lower Back | Feet bones are bones d/e |
j\_asi\_<a-e>\_<l/r> | Leg | 6 Bones in total per <a-c> level |
j\_sk\_<f/b/s>\_<a-c>\_<l/r> | Skirt | |
j\_sako\_<l/r> | Collar | |
n\_hkata\_l | Shoulder | |
j\_kubi | Neck | |
j\_ago | Chin | |
j\_kami\_<a-b> | Hair (Ponytail) | |
j\_kami\_f\_<l/r> | Bangs | |
j\_mimi\_<l/r> | Ears | |
n\_sippo\_<a-e> | Tail | Midlander M and Tail Races M/F Only (Miqo'te/Au Ra/Hrothgar)) |
n\_ear\_<a-b>\_<l/r> | Earring Bones | A is attachment point, B is hanging part |
| | |
n\_kataarmor\_<l/r> | Shoulder Pad | |
n\_hizasoubi\_<l/r> | Knee Pad | |
n\_hijisoubi\_<l/r> | Elbow Pad | |
| | |
j\_buki\_kosi\_<l/r> | Sheathed Weapon(Hip) | |
j\_buki2\_kosi\_<l/r> | Sheathed Weapon(Hip2) | |
j\_buki\_sebo\_<l/r> | Sheathed Weapon(Back) | |
n\_buki\_<l/r> | Drawn Weapon | |
n\_buki\_tate\_<l/r> | Drawn Shield | |
| | |
j\_oya\_<a-b>\_<l/r> | Thumb | |
j\_hito\_<a-b>\_<l/r> | Index Finger | |
j\_naka\_<a-b>\_<l/r> | Middle Finger | |
j\_kusu\_<a-b>\_<l/r> | Ring Finger | |
j\_ko\_<a-b>\_<l/r> | Pinky Finger |
|
##### Dawntrail Face Bones
As a note, not every bone can be manipulated or scaled outside of gpose, (such as with Customize+ for normal gameplay). furthermore, many of the facial bones are kindedriver or "Helper" bones, and are either not meant to be touched on thier own, or are meant to provide small adjustments after moving the main bone. If you are not posing an old NPC head, you should only use the face bones listed here, and not the ones in the above chart.
**An example of gpose only bones is eyeprm and irisprm bones. These bones will only ever work in gpose and in cutscenes, and trying to alter them in a non-gpose only setting such as customize+ will cause these bones to immediately revert when leaving gpose. Do not use these for scaling outside of screenshots. This is not fixable and is a game limitation. if you want to dialate or contract your pupils for out of gpose, you will need to look into eye mods**
---
#### Bone scaling notes
Many in-game models share the same model, but scale the bones to fit the body shape they want. this is a list of known and confirmed scaling values that match up correctly with the in-game versions.
These are meant to be used with posing tools/plugins, with Customize+, or when testing your models in a modeling software to ensure that things don't clip at larger bust scalings.
At this time there is only bust scalings, but we will be happy to add other scalings as people find them. Keep in mind that not all gear pieces are weighted equally to the breast bones. many newer gear pieces are weighted to 50% breast influence instead of 100%. For these you may need to go up another percentage category to have the same effect as your racial starter gear or nude.
##### Bust sizes- Apply to Mune\_l and \_r
Slider Percentage
| X
| Y
| Z
|
0%
| 0.92
| 0.816
| 0.80
|
50%
| 1
| 1
| 1
|
100%
| 1.08
| 1.184
| 1.20
|
150%
| 1.16
| 1.368
| 1.40
|
200%
| 1.24
| 1.552
| 1.60
|
250%
| 1.32
| 1.736
| 1.80
|
300%
| 1.40
| 1.92
| 2
|
As a note, these same values will work in a 3d modeling software like blender or 3ds max. for 3ds max, move the decimal point back 2 spaces.
# Outdated tables (cross-reference only)
These are a few pages/tables that are included for cross referencing for the sake of older mods and setups, and should not be used when doing things post dawntrail. they are being saved for archival's sake, but I will not be formatting them in a pretty way, sorry. These are taken from the Textools Reference doc made by sel.
#### Endwalker shader tables-
**Standard Gear Shader**
|
**Normal Map**
| **Multi**
| **Vertex Color/Alpha**
| **UV2**
|
**RED**
| Standard Tangent Space Normal Map
| **RED**
| Ambient Occlusion
| **RED**
| Ambient Occlusion
| Decal Placement, such as Grand Company Logos
|
**GREEN**
| Standard Tangent Space Normal Map
| **GREEN**
| Gloss
| **GREEN**
| Gloss
|
**BLUE**
| Opacity \[0-128, 128+ is full Opacity\]
| **BLUE**
| Specular Power
| **BLUE**
| Specular Power
| **Specular**
|
**ALPHA**
| Colorset Row
| **ALPHA**
| ???
| **ALPHA**
| Opacity
| Standard Full Color Specular Map
|
**Standard Gear Shader - Monster Preset**
|
**Normal Map**
| **Multi**
| **Vertex Color/Alpha(UV3)**
| **UV2**
|
**RED**
| Standard Tangent Space Normal Map
| **RED**
| **Specular Intensity**
| **RED**
| ???
| Decal Placement, such as Grand Company Logos
|
**GREEN**
| Standard Tangent Space Normal Map
| **GREEN**
| **Gloss (?)**
| **GREEN**
| ???
|
**BLUE**
| Opacity \[0-128, 128+ is full Opacity\]
| **BLUE**
| **???**
| **BLUE**
| ???
| **Specular**
|
**ALPHA**
| Colorset Row
| **ALPHA**
| ???
| **ALPHA**
| ???
| **Used as a Multi map (See Multi column)**
|
**Glass Shader**
|
**Normal Map**
| **Multi**
| **Vertex Color/Alpha(UV3)**
| **UV2**
|
**RED**
| Standard Tangent Space Normal Map
| **RED**
| Ambient Occlusion
| **RED**
| ???
| ???
|
**GREEN**
| Standard Tangent Space Normal Map
| **GREEN**
| Gloss
| **GREEN**
| ???
|
**BLUE**
| Opacity
| **BLUE**
| Specular Power
| **BLUE**
| Z Depth?
| **N/A**
|
**ALPHA**
| Colorset Row
| **ALPHA**
| ???
| **ALPHA**
| ???
| |
**Skin Shader**
|
**Normal Map**
| **Multi**
| **Vertex Color/Alpha(UV3)**
| **UV2**
|
**RED**
| Standard Tangent Space Normal Map
| **RED**
| Player Skin Color Selection Influence
| **RED**
| Player Muscle Slider Influence
| Decal Placement, such as Legacy Mark or Face Paint.
|
**GREEN**
| Standard Tangent Space Normal Map
| **GREEN**
| Specular Intensity
| **GREEN**
| ???
|
**BLUE**
| ???
| **BLUE**
| Unused
| **BLUE**
| Angle of Refraction Intensity
| **N/A**
|
**ALPHA**
| ???
| **ALPHA**
| ???
| **ALPHA**
| Player Skin Color Selection Influence
| |
**Skin Shader - Face Presets**
|
**Normal Map**
| **Multi**
| **Vertex Color/Alpha**
| **UV2**
|
**RED**
| Standard Tangent Space Normal Map
| **RED**
| Player Skin Color Selection Influence
| **RED**
| Player Muscle Slider Influence
| Decal Placement, such as Legacy Mark or Face Paint.
|
**GREEN**
| Standard Tangent Space Normal Map
| **GREEN**
| Specular Intensity
| **GREEN**
| ???
|
**BLUE**
| Opacity
| **BLUE**
| **Player Lip Color Selection Influence**
| **BLUE**
| Angle of Refraction Intensity
| **N/A**
|
**ALPHA**
| ???
| **ALPHA**
| ???
| **ALPHA**
| Player Skin Color Selection Influence
| |
**Skin Shader - Skin with Hair Preset**
|
**Normal Map**
| **Multi**
| **Vertex Color/Alpha(UV3)**
| **UV2**
|
**RED**
| Standard Tangent Space Normal Map
| **RED**
| Player Skin Color Selection Influence
| **RED**
| ???
| Decal Placement, such as Legacy Mark or Face Paint.
|
**GREEN**
| Standard Tangent Space Normal Map
| **GREEN**
| **Player Hair Color Selection Influence**
| **GREEN**
| ???
|
**BLUE**
| ???
| **BLUE**
| **Hair Highlight Color Selection Influence**
| **BLUE**
| ???
| **N/A**
|
**ALPHA**
| ???
| **ALPHA**
| ???
| **ALPHA**
| ???
| |
**Hair Shader**
|
**Normal Map**
| **Multi**
| **Vertex Color/Alpha(UV3)**
| **UV2**
|
**RED**
| Standard Tangent Space Normal Map
| **RED**
| Diffuse Mask
| **RED**
| Red Color Influence
| Opacity Mapping
|
**GREEN**
| Standard Tangent Space Normal Map
| **GREEN**
| Specular Mask
| **GREEN**
| Green Color Influence
|
**BLUE**
| ???
| **BLUE**
| Unused
| **BLUE**
| Blue Color Influence
| **N/A**
|
**ALPHA**
| Opacity (see UV2)
| **ALPHA**
| Highlight Color Influence
| **ALPHA**
| Opacity
| |
**Hair Shader - Face Presets**
|
**Normal Map**
| **Multi**
| **Vertex Color/Alpha**
| **UV2**
|
**RED**
| Standard Tangent Space Normal Map
| **RED**
| Brightness
| **RED**
| Red Color Influence
| Opacity Map
|
**GREEN**
| Standard Tangent Space Normal Map
| **GREEN**
| Specular Intensity
| **GREEN**
| Green Color Influence
|
**BLUE**
| ???
| **BLUE**
| Unused
| **BLUE**
| Blue Color Influence
| **N/A**
|
**ALPHA**
| Opacity
| **ALPHA**
| **Player Tattoo/Etc\* Color Influence**
| **ALPHA**
| Opacity
| |
* Tattoo/Etc. Color varies by race and is default as one of: | |
Tattoo Color | |
Limbal Color | |
Ear Clasp Color |
|
**Iris Shader**
|
**Normal Map**
| **Multi**
| **Vertex Color/Alpha(UV3)**
| **UV2**
|
**RED**
| Standard Tangent Space Normal Map
| **RED**
| Diffuse Mask
| **RED**
| Left Eye Color Influence
| ???
|
**GREEN**
| Standard Tangent Space Normal Map
| **GREEN**
| Specular Mask
| **GREEN**
| Right Eye Color Influence
|
**BLUE**
| ???
| **BLUE**
| Gloss(?)
| **BLUE**
| ???
| **Reflection**
|
**ALPHA**
| ???
| **ALPHA**
| ???
| **ALPHA**
| ???
| Reflection Map ("Catchlight")
|
**Furniture Shader**
|
**Normal Map**
| **Multi**
| **Vertex Color/Alpha(UV3)**
| **UV2**
|
**RED**
| Standard Tangent Space Normal Map
| **RED**
| Diffuse Mask
| **RED**
| ???
| Emissive Color Mapping (?)
|
**GREEN**
| Standard Tangent Space Normal Map
| **GREEN**
| Specular Mask
| **GREEN**
| ???
|
**BLUE**
| Unused
| **BLUE**
| Gloss
| **BLUE**
| ???
| **Diffuse Note**
|
**ALPHA**
| Opacity
| **ALPHA**
| Emissive Mask
| **ALPHA**
| ???
| Diffuse Alpha is also used for Opacity
|
**Dyeable Furniture Shader**
|
**Normal Map**
| **Multi**
| **Vertex Color/Alpha(UV3)**
| **UV2**
|
**RED**
| Standard Tangent Space Normal Map
| **RED**
| Specular Mask
| **RED**
| ???
| Emissive Color Mapping (?)
|
**GREEN**
| Standard Tangent Space Normal Map
| **GREEN**
| Roughness
| **GREEN**
| ???
|
**BLUE**
| Unused
| **BLUE**
| Also Specular Mask...?
| **BLUE**
| ???
| **Diffuse Note**
|
**ALPHA**
| Opacity
| **ALPHA**
| Emissive Mask
| **ALPHA**
| ???
| Diffuse Alpha is used for Dyeability
|
**Further Notes**
|
| | | | | | | |
SE's Gloss implementation is very unique, and doesn't adhere particularly well to most modern PBR system's assumption of Gloss. (Closer to non-PBR Spec-Gloss)
|
In particular, their Gloss layers in the textures are really more like \[Specular + Gloss\]. To get a true Gloss-Only variance, your best bet is to blend Colorset Rows.
|
---
#### Endwalker colorset row reference table
Colorset Reference Table |
| | | | | |
When working with normal map Alpha channels, your Greyscale Color space should be set to sGrey.
(Ctrl-Shift-K in Photoshop for color space settings) |
|
| | | | | |
Row # | Greyscale % | Photoshop Greyscale % | sGrey Value | Hex Value | Color |
Row 1 | 0.00 | 100.00 | 0 | \#000000 | |
Row 2 | 6.67 | 93.33 | 17 | \#111111 | |
Row 3 | 13.33 | 86.67 | 34 | \#222222 | |
Row 4 | 20.00 | 80.00 | 51 | \#333333 | |
Row 5 | 26.67 | 73.33 | 68 | \#444444 | |
Row 6 | 33.33 | 66.67 | 85 | \#555555 | |
Row 7 | 40.00 | 60.00 | 102 | \#666666 | |
Row 8 | 46.67 | 53.33 | 119 | \#777777 | |
Row 9 | 53.33 | 46.67 | 136 | \#888888 | |
Row 10 | 60.00 | 40.00 | 153 | \#999999 | |
Row 11 | 66.67 | 33.33 | 170 | \#AAAAAA | |
Row 12 | 73.33 | 26.67 | 187 | \#BBBBBB | |
Row 13 | 80.00 | 20.00 | 204 | \#CCCCCC | |
Row 14 | 86.67 | 13.33 | 221 | \#DDDDDD | |
Row 15 | 93.33 | 6.67 | 238 | \#EEEEEE | |
Row 16 | 100.00 | 0.00 | 255 | \#FFFFFF | |
| | | | | |
Colors will blend in pairs of two going down the rows. | | | | | |
(Ex. Row [1 & 2] can be blended, but row [2 & 3] cannot, and will snap to the nearest colorset row) | | | | | |
| | | | | |
Sub-material information does not blend, and is determined by discrete value that is closer. (Ex. 3% rounds to Row 1, 6% rounds to row 2) | | | | | |
| | | | | |
Photoshop uses Black as "100%" and White as "0%" for some reason, ergo the percentages are reversed for Photoshop. | | | | |
|