When uploading avatar items to the Marketplace, Roblox validates the submission to ensure that the asset meets the appropriate specification for that asset type, such as clothing specifications.
Mesh
Mesh validation errors refer to generic issues with your MeshPart. This can range between geometry budget issues, size, missing IDs, unexpected data models, and more.
See the following specifications for mesh requirements:
Error Message | Additional notes |
---|---|
%s asset size is larger than the max allowed bounding size of %s. You need to scale down or remodel the asset. Full body size is larger than the max allowed bounding size of %s. You need to scale down or remodel the asset | Try rescaling your asset to keep the original aspect ratio. If that doesn't resolve the issue, try to scale along the axis that is failing validation. |
%s asset size is smaller than the min allowed bounding size of %s. You need to scale up or remodel the asset. Full body size is smaller than the min allowed bounding size of %s. You need to scale up or remodel the asset | Try rescaling your asset to keep the original aspect ratio. If that doesn't resolve the issue, try to scale along the axis that is failing validation. |
%s has size larger than max allowed bounding size. The max size for type %s is [%f, %f, %f] | Your model has one or more small pieces of geometry disconnected from your main mesh that contribute to the overall size. This issue is usually associated with small pieces or particles. You need to either remove these small pieces from your model or scale them to become visible. |
Mesh resolution of %d for model %s is higher than max supported number of triangles %d. You need to retopologize your model to reduce the triangle count. | The resolution of your model mesh is too high. You need to retopologize the model to bring the resolution down below the allowed limits. |
Model mesh %s resolution of %d is higher than max supported value of %d. You need to retopologize your model and try again. Your mesh exceeds the max triangle limit for UGC upload requirements. | The resolution of your model (number of triangles) is higher than the maximum allowed limit. You need to retopologize and remove enough triangles to bring the total count below this limit. |
%s is not visible enough from the %s. The most visible region found scored %.2f but needs to be above %.2f. Mesh for %s is completely invisible from the %s. | Your accessory or body part is too thin along one dimension (X, Y, or Z) and can become invisible (or hardly visible) during gameplay. You need to scale up your asset along the axis failing validation. |
Model meshId mismatch between MeshPart.MeshId and SpecialMesh.MeshId for %s. You need to match the meshIds and try again. | Verify Model includes a MeshPart or SpecialMesh with the correct IDs. |
The total surface area of model mesh %s is %f, it cannot be greater than %d. You must reduce the number and/or size of all triangles. The total surface area of model mesh %s is greater than %d. You must reduce the number and/or size of all triangles. | Your model mesh has too many triangles on screen that cannot be culled. This will cause performance problems during gameplay when using lower powered mobile devices. You need to reduce the triangle count of your model. |
Detected zero-area triangle in model mesh %s. You need to edit the mesh to remove zero-area triangles. | Your model mesh has some vertices too close to each other that they create zero area triangles. You need to move these vertices apart to resolve this issue. |
Detected two or more vertices in model mesh %s sharing near identical positions. You need to position vertices by at least %s apart from each other. | Make sure there are no coincident vertices in your model mesh. |
Bounds for the mesh %s are not centered at the origin. The max allowed distance is %f | The asset model mesh is too far away from the origin. Usually the center of the model and the origin of the coordinate system should coincide. |
%s mesh is too small or made of disconnected pieces that are too small. Detected %s centered around %s that increases %s bounding box. Remove the geometry or increase its size so that it is more visible. | The model mesh is too large. You need to scale it down. |
%s is more than max difference %f in size compared to the other mesh %s. You need to edit the model to adjust its size. | The model mesh is too big. You need to scale it down. |
Texture
Texture errors refer to generic issues with your MeshPart.TextureID or SurfaceAppearance. Depending on the type of asset and texture you are creating, you may need to use a third-party software to fix and re-export.
See the following resources:
Error Message | Additional notes |
---|---|
Failed to execute UV check for %s. Make sure the UV map exists and try again. | |
Failed to execute texture size check for %s. Make sure the textureId is valid and try again. | |
Model textureId mismatch between MeshPart.TextureID and SpecialMesh.TextureId for %s. You need to match the textureIds and try again. | Verify textures are properly set up. |
Invalid material setup for %s. Accepted values are: %s | |
Invalid vertex color found in mesh model %s. You need to edit the color map to be all white and try again. Invalid vertex color found in mesh model %s. You need to edit the color map to be all white with no transparency and try again. | |
TextureID and Surface Appearance are both defined for MeshPart %s. Publishing will only use Surface Appearance | |
%s has an empty TextureID and no child surface appearance instance. You need to define at least one of them. | |
Invalid textureID used in mesh %s. Make sure the texture exists and try again. | |
Your textures exceeds the max texture size limit for UGC upload requirements. Texture resolution %dx%d px found in %s is higher than max size supported value of %dx%d px. You need to reduce the texture resolution. | You need to change the resolution of your textures to be within the allowed limits. |
Model textureId mismatch with rigid accessory SpecialMesh.TextureId for %s. You need to match the textureIds and try again. | Verify textures are properly set up. |
Failed to execute UV mismatch check for %s. Make sure UV map exists and try again. |
Rigging and skinning
Rigging and skinning errors refer to issues with your rigging and skinning data. Depending on the type of error, you may need to use a third-party software to fix and re-export.
See the following specifications for rigging and skinning requirements:
Skinning is the assignment of vertices of your rendered mesh to the underlying rig. For additional resources, see the rigging and skinning requirements for clothing and bodies.
Error Message | Additional notes |
---|---|
Detected mismatch between model and skinned data for %s. You need to re-skin your model to fix this issue. | The number of vertices in the model mesh do not match the number of skin weights provided. You need to reskin your model. |
Missing skinning data for %s. You need to skin your model. |
Cage mesh
Cage errors refer to generic issues with your WrapLayer or WrapTarget. Depending on the type of error, you may need to use a third-party software to fix and re-export.
See the following resources for caging:
Error Message | Additional notes |
---|---|
WrapTarget %s found under %s has a CageOrigin position greater than %. You need to set CageOrigin.Position to 0,0,0. | Cage origin must be zero to properly align with its corresponding body or accessory. |
Average distance between outer cage to mesh is too high. Mesh seems to be outside of the outer cage. Average distance between outer cage to mesh is too high %. Make adjustment to cage to fit the mesh better. | The outer cage is too far away from its corresponding body or accessory model mesh. You need to remodel the outer cage and bring its vertices closer to the model mesh. |
Validation detected %d% of the accessory is outside its outer cage. Make adjustments to have more of the accessory placed between the cages. | The outer cage needs to envelop the model mesh of its corresponding accessory. This check has detected a large portion of the model mesh is outside its outer cage. You need to edit the model and/or the cage to fix this issue. |
The average distance between the layered accessory %s and its outer cage is too large. You need to edit the cage to be within %s from the accessory. | The outer cage is too far away from its corresponding body or accessory model mesh. You need to remodel the outer cage and bring its vertices closer to the model mesh. |
There are cage vertices inside the layered accessory mesh %s, which could lead to interpenetration issues during fitting. You need to edit the cage mesh to fix this intersection issue. | The layered accessory mesh vertices need to be positioned between the inner and outer cages. Whenever a mesh vertex passes through the cage mesh it causes rendering issues in the area making the accessory look like it is intersecting the body. |
The meshId reference for cage %s is invalid or doesn't exist. Please, verify you are using a valid mesh asset and try again. | |
Outer cage of %s has mesh edits on regions that don't correspond to its current asset type %s (i.e. edits on the lower leg cages when asset type is set to 'Head'). You need to check the asset type for the layered accessory %s. | Your outer cage was deformed in regions that don't envelop any part of your accessory. For example, the outer cage for a hat accessory is expected to deform on the head region and not the left foot. Make sure your outer cage is properly setup and deforms only where is needed. |
Outer cage of %s has mesh edits that place vertices too far away from the model mesh. You need to edit the cage and enforce vertices are at most %s away from the model. | Ideally the outer cage of an accessory completely envelops its model mesh. There are cases in which you may intentionally not want to do that. For example, if the accessory is a wing, you would want the outer cage to envelop only the base of the wing that connects it to the back of the avatar. If the entire wing is enveloped, it'll cause extreme deformations to any additional layered assets equipped. This validation checks that the outer cage is enveloping a large enough region of the accessory. You need to edit the outer cage to contain more vertices of the accessory mode mesh. |
Cage %s is not watertight (i.e. detected holes in the mesh). You need to edit the mesh and close the holes (may leave eyes and mouth areas open when applicable). | There are holes in your cage mesh. You need to fix them and make your cage mesh watertight. For example, if you were to pour water inside the mesh it wouldn't leak. |
Failed to execute cage non-manifold check for %s. Make sure cage mesh exists and try again. | |
Cage %s is non-manifold (i.e. there are edges with 3 or more incident faces). Some vertices are likely too close and welded together as a single vertex causing edges to collapse into a non-manifold. You need to edit the cage mesh to have vertices distant by at least %s from each other. | There are edges in your cage model mesh that are connected to more than two faces, possibly caused by stacked or very closely positioned vertices. You need to remodel your cage to fix these issues. |
Failed to execute cage detection for %s. Make sure the cage mesh exists and try again. | |
Detected too many coplanar triangles intersecting in model mesh %s. The maximum is %d intersections in a %d triangle mesh. Edit your mesh to reduce the number of coplanar triangle intersections. | Your cage model mesh has an excessive number of triangle faces that are coplanar and intersecting. This causes a visual artifact during gameplay that makes your accessory look like it is blinking in the area of the coplanar triangles. You need to edit the vertex positions of these triangles to untangle the intersections. |
Missing cage for %s. You need to provide a cage mesh for each of the 15 body parts making up the R15 body. | |
WrapLayer ImportOrigin.Position is %f from the origin. The max is %f. You should move the Position closer to the origin. | The import origin position adds an offset between the cage and its corresponding asset. If this offset is too large than the cage will no longer envelope the asset (may end up completely outside the asset). This breaks the layered clothing system and makes the asset behave unexpectedly. Ensure that your import origin is set at (0,0,0). |
Failed to execute cage relevancy detection for %s. Make sure the cage mesh exists and try again. | |
Validation detected %d % of the outer cage edits do not cover the accessory. Make sure you are moving the outer cage only where needed. | This validation has detected that you moved out many vertices of your outer cage that weren't in the same region as your model geometry. You need to verify your outer cage is modified only enough to envelop the accessory model mesh, and stays consistent with the inner cage everywhere else. |
WrapLayer %s found under %s.%s has a CageOrigin position greater than %f. You need to set CageOrigin.Position to 0,0,0. | Cage origin position needs to be set to (0,0,0). Otherwise your cage will be moved out and may no longer envelop the accessory being deformed. |
Cage mesh verts referenced in %s.%s.CageMeshId were found that are %.2f studs outside the %s render mesh. %s studs is the maximum. Please reduce the size of your cage mesh. | |
Failed to execute testing render mesh inside bounding box of outer cage modified area. Make sure both cage meshes and render mesh exist and try again. | |
Only %d%% of the render mesh verts are situated in the modified %s area of the WrapLayer CageMesh (outer mesh). %d%% is required. Move the render mesh to be within the modified %s area of the WrapLayer CageMesh (outer mesh). | |
Missing HSR data for %s. Please, try again. | The HSR (Hidden Surface Removal) data is calculated in the cloud server and may take a few minutes to be updated for your assets. Wait some time and try again. |
Failed to execute body max cage distance check. Make sure all render meshes and their WrapTarget cage meshes exist, and try again. | |
A vertex was found on the %s's cage mesh that is %.2f studs away from the closest render mesh. %s studs is the maximum. Make the cage mesh more closely match the shape and size of the render mesh. |
Cage UV
Cage UV errors relate to cage mesh UV issues for layered accessories and bodies. Roblox recommends never altering or manipulating the UVs of your cage objects, although this may occur accidentally when modeling or within Studio.
See the following for more information and resources:
Error Message | Additional notes |
---|---|
Failed to load UVs for Inner cage of %s. Make sure the UV map exists and try again. | |
There are %d UV values in %s cage that do not belong to the template. Please correct the cage UV. | The cage has an invalid UV map, possibly from using an old or third-party cage. Use the UV map and model mesh templates provided in the official documentation resources. |
Failed to load UVs for %s. Make sure the model has a valid UV map and try again. | |
Detected zero-area triangle in UV map of %s. You need to edit the UV map to fix this issue. | Your UV map has zero area triangles. You need to fix it and verify all triangles connecting UV points have non-zero area. |
Found invalid UV value outside [0, 1] range for %s. You need to edit the UV map to fix this issue. | All UV maps need to have values within the range [0, 1]. |
Failed to execute UV check for %s. Make sure the UV map exists and try again. | |
%s.%s ( %s ) should have %d unique UVs, but has %d. Please make sure the mesh has the required number of unique UVs and try again. | Your UV map has many repeated UV values. Use the UV map and model mesh templates provided in the documentation. |
Inner and Outer cage UV for %s are mismatched. The Roblox provided cage template should be used to create inner and outer cages with no modifications to the UV map. | The UV maps for cages should not be edited. You need to restore the UV map to match that of the templates provided in the documentation. |
Detected modified UV values for mesh %s. The original UV map for this model can't be altered. | |
Failed to execute excluded modified cage UV check. Make sure both cage meshes exists and try again. | |
%d%% of modified cage UVs in WrapLayer CageMesh (outer mesh) are outside the expected region of the body. For a %s no more than %d%% of the modified UVs can be outside the %s area. Move your asset to the correct area of the body. | |
The WrapLayer CageMesh (outer mesh) for a %s must modify %d%% of the cage UVs in the %s area. Currently only %d%% are modified. Move your asset to the correct area of the body. |
Accessory
Accessory errors relate to the rigid or layered accessory components of your asset.
See the following for more information:
Error Message | Additional notes |
---|---|
Upload of model has too many children assets (Meshes, Textures, etc.) and cannot be processed as is. You need to rearrange the model. | |
Asset type %s is not a rigid accessory category. It can only be used with layered clothing. | |
Model meshId mismatch with rigid accessory SpecialMesh.MeshId for %s. You need to match the meshIds and try again. | Verify Model includes a MeshPart or SpecialMesh with the correct IDs. |
Accessory MeshPart %s must contain a valid meshId. Make sure the mesh referred to by the meshId exists and try again. | |
Accessory name must match "Accessory (Name)" format style (i.e. "Accessory (MyAccessory)" if you want to name your accessory ). |
Layered clothing
Layered clothing errors refer to the layered accessory components of your asset.
See the following for more information on layered accessories:
Error Message | Additional notes |
---|---|
%s has %d % of vertices too close to each other. Please edit the vertices to have at most %d % coincident or close to one another. | Your accessory cage has too many vertices close together. This may cause the system to treat them as repeated vertices, or zero area triangles. You need to edit and move the vertices away from each other in the region(s) they are almost coincident. |
Failed to load layered clothing accessory %s. Make sure mesh exists and try again. Failed to load texture for layered clothing accessory %s. Make sure texture exists and try again. Failed to load children assets (Meshes, Textures, etc.) for %s. Make sure the assets exist and try again. | |
Asset type %s is not a layered clothing category. It can only be used with rigid accessories. | |
Missing meshId on layered clothing accessory %s. Make sure you are using a valid meshId and try again. | |
Missing WrapLayer on layered clothing accessory %s. You need to create a child WrapLayer and try again. | Make sure you converted your model into a layered accessory (you might have converted to a rigid accessory instead or selected the wrong asset type). |
The maximum vertex density has been exceeded. Reduce the number of vertices that are very close to each other. | Your accessory cage has too many vertices close together. This may cause the system to treat them as repeated vertices, or zero area triangles. You need to edit and move the vertices away from each other in the region(s) they are almost coincident. |
Body
Body errors refer to issues related to body-specific components of your asset.
See the following for more information on various character body components:
Error Message | Additional notes |
---|---|
Detected rotation in Attachment %s. You must reset all rotation values for this attachment to zero. Detected invalid orientation for %s. Attachment orientation should be %s, but can be rotated up to %d degrees in total | Body attachments, except grip attachments, should not have an applied rotation. This would affect all accessories connected to these attachments and can make some accessories look "broken" when equipped to the body. |
Attachment %s in %s is placed at a position %s that is outside the valid range. You need to adjust the attachment position. Attachment %s in %s is placed at a position %s that is outside the valid range of (%s to %s). You need to adjust the attachment position. | Body attachments need to be within reasonable distance from the bodyshould not have an applied rotation to avoid introducing unrealistic gaps when equipping accessories to those attachments. |
Body part %s does not follow R15 schema. The specific issues are: %s | |
Failed to load body part mesh %s. Make sure body part exists and try again. | |
Expected %s CollisionFidelity to be %s. | |
Unable to run full body validation due to previous errors detected while processing individual body parts. | Too many validation errors already detected and reported. You need to fix the reported ones first to have visibility on the additional ones remaining. |
Full body check did not receive the correct set of body part Asset Types (i.e. Head, Torso, LeftArm, RightArm, LeftLeg, RightLeg). Make sure the body model is valid and try again. | |
Unable to run full body validation due to previous errors detected while processing individual body parts. | Too many validation errors already detected and reported. You need to fix the reported ones first to have visibility on the additional ones remaining. |
%s is at a %d degree angle from the X,Y plane, it must be within %d degrees. Make sure the character is in I pose, A pose, or T pose. | Validation detects that the body is not one of the following supported poses:
|
The AvatarPartScaleType value in %s is invalid. Verify the value you are using is either Classic, ProportionsSlender, or ProportionsNormal. | |
Attribute %s has different values in different children folders. You need to use the same value in all folders. | Verify extra attributes are initialized the same way on all children folders. |
All MeshParts must have the same value in their AvatarPartScaleType child. Please verify the values match. | The AvatarPartScaleType property is used to scale the MeshPart. Possible values are: Classic, ProportionsNormal, ProportionsSlender. Combining MeshParts with different scales (equipping an accessory to an avatar body) results in a visual mismatch that makes them look too large or too small compared to each another. |
Head
Head errors relate to issues with the head geometry or FACS animation data associated with your head geometry.
See the following for more information on various character head components:
Error Message | Additional notes |
---|---|
Failed to load model for dynamic head %s. Make sure model exists and try again. | |
Failed validation for dynamic head %s due to missing FACS information. You need to provide FACS controls for at least 17 poses (see documentation). | The face controls for dynamic heads need to have at least 17 poses connected to the rig. This is necessary to enforce a minimum level of face expressions for avatars during gameplay. You need to setup additional face controls that are missing. |
%s is missing FACS controls: %s %s has inactive FACS controls: %s | Face controls need to be connected to the face rig. You need to reconnect the inactive controls. |
Unable to capture snapshot of DynamicHead %s Failed to read data from snapshot of DynamicHead %s DynamicHead %s when emoting surpasses the expected bounding box | An animation pose is invalid or may extend past the expected bounding box. You need to recalibrate the face controls connected to the face rig. |
Data model / runtime
Data model or runtime errors refer to issues with loading parts of the data model or running checks.
These errors can occur from modeling issues, exporting issues, studio importing issues, accidental changes to data model, or generic issues loading and processing parts of the asset.
Error Message | Additional notes |
---|---|
Asset could not be loaded | |
Failed to execute max total surface area check for %s. Make sure mesh exists and try again. | |
Failed to execute similarity mesh vertex check for %s. Make sure mesh exists and try again. | |
Failed to load meshHandle.Name's render mesh data. | |
Failed to load detailed information for model assets. Make sure all model assets exist and try again. | |
Failed to read mesh. Make sure the body part exists and try again. | |
Failed to execute cage intersection detection for %s. Make sure the cage mesh exists and try again. | |
Failed to load model mesh %s. Make sure the mesh exists and try again. | |
Failed to retrieve mesh data to validate skinned mesh. Failed to load mesh for %s. Make sure mesh exists and try again. | |
Failed to load mesh for accessory %s. Make sure mesh exists and try again. | |
Failed to load model mesh %s. Make sure mesh exists and try again. | |
Failed to load model mesh %s. Make sure the mesh exists and try again. | |
Failed to execute triangle count check for %s. Make sure mesh exists and try again. | |
Failed to load vertex color map for model mesh %s. Make sure it exists and try again. | |
Failed to execute overlapping mesh vertex check for %s. Make sure mesh exists and try again. | |
Failed to execute texture size check for %s. Make sure the textureId is valid and try again. | |
Failed to load texture for %s. Make sure the texture exists and try again. | |
Failed to execute validateUVSpace check on %s. Make sure the UV maps exists and try again. | |
Failed to load layered clothing accessory %s. Make sure mesh exists and try again. Failed to load texture for layered clothing accessory %s. Make sure texture exists and try again. Failed to load children assets (Meshes, Textures, etc.) for %s. Make sure the assets exist and try again. | |
%s contains attributes in its properties that are not allowed. You need to remove the following attributes: %s | |
Failed to get triangle face information from model mesh %s. Make sure model exists and try again. | |
Detected the following error(s): %s %s has an invalid name %s is of type %s which is not allowed | |
Deprecated R6 folder for body part %s should be empty. You need to clear that folder and try again. | |
Incorrect hierarchy for %s with the following missing folders: %s | |
Failed to parse package data for model %s. Make sure the packageId is valid and try again. | |
Property %s does not exist on type %s. Delete the property and try again. | |
Trying to access property %s.%s using the incorrect type for it. Expected %s to be %s. | |
Failed to execute render mesh inside outer mesh check for %s and %s. Make sure the meshes exists and try again. | |
Selected more than one instance of type %s. Please, select a single instance of this type and try again. | |
Failed to find an instance of the asset type %s. Make sure one exists and try again. | |
Found the following instance tags which are not allowed: %s | |
Invalid target asset for thumbnail generation. Expected it to be %s. | |
Asset %s is positioned outside the thumbnail's camera view. You need to reposition the asset at the center of the camera view and try again. | You need to move your asset to the origin of the coordinate system. |
Failed to execute vertex density check for %s. Make sure mesh exists and try again. | |
Failed to execute body part max cage distance check. Make sure meshHandle.Name's render mesh and its WrapTarget's cage mesh exist, and try again. |
Permission / moderation
Permission and moderation errors relate to issues with the asset's ownership or moderation review. Many moderation issues resolve after a period of time.
Ensure that you or your group has permission to use all parts of your asset, including the model and texture assets.
Error Message | Additional notes |
---|---|
Asset %s is not owned by the current user. You can only validate assets that you or a group you belong to owns. | You need to own the assets being validated. |
%s.%s ( %s ) being used is not owned by the experience creator or player. You can only publish assets that you own. | You need to own the assets being validated. |
Asset %s is not owned by the current user. You can only validate assets that you or a group you belong to owns. | You need to own the assets being validated. |
Failed to load asset %s that is still going through the review process. Please, wait for a notification of completion from the review process and try again. | Your asset is currently in moderation queue. Roblox can only validate assets that have already passed moderation. |
Failed to parse feedback from model review for %s. Make sure the review process is complete and try again. | |
Asset(s) failed to pass moderation: %s. | |
Failed to fetch moderation results for %s. Make sure all assets are owned by the current user. | |
Failed to parse moderation results for %s. Make sure moderation process is completed and try again. | |
Failed to validate current user during moderation. Make sure you own the assets being validated and try again. | You need to own the assets being validated. |