-
Notifications
You must be signed in to change notification settings - Fork 0
Configuration
ASV has two configuration layers:
- Global Settings — project-wide settings in Project Settings → Plugins → Asset Standards Validator
-
DataAsset config — per-checker rules, validators, and triggers in
UASVCheckerConfigassets
The UASVCheckerConfig DataAsset controls what ASV checks and when. The plugin creates one automatically on first run at Content/Data/DA_ASV_AllarStyleGuide with all validators pre-added and conservative defaults. You don't need to create it manually.
Tip: Open
DA_ASV_AllarStyleGuidein the Content Browser and expand the validators to see and adjust their settings.





Find Content/Data/DA_ASV_AllarStyleGuide in the Content Browser and double-click to open it. If it doesn't exist yet, run a validation once — the plugin creates it automatically on first use.
The config already contains all six validators. You don't need to add them — just expand each one to configure:
| Validator class | What it checks |
|---|---|
ASVValidator_NamingConvention |
Asset naming: prefix, suffix, pattern, junk names |
ASVValidator_FolderStructure |
Folder placement, path format, Developers/ check |
ASVValidator_Texture |
Power-of-two, max size, sRGB, compression, LODGroup |
ASVValidator_Blueprint |
Variable naming, bool prefix, tooltips, compilation |
ASVValidator_Mesh |
Collision, LODs, Nanite policy |
ASVValidator_AssetHealth |
Stale redirectors |
Expand each validator to see its properties. The defaults are conservative — most checks are off until you enable them. Toggle flags on, adjust thresholds, add custom class rules.
Example — enable Blueprint variable checks:
- Expand ASVValidator_Blueprint
- Set
bCheckBoolPrefix = trueto enforcebprefix on boolean variables - Set
bCheckPascalCase = trueto enforce PascalCase variable names
Example — add a custom class prefix (e.g. GA_ for Gameplay Abilities):
- Expand ASVValidator_NamingConvention
- Under Class Rules, click +
- Set Class Picker to
UGameplayAbility - Set Prefix to
GA_
See Validators Reference for all properties and off-by-default rules.
Under Triggers, click + and add the triggers you want to fire automatically:
| Trigger class | When it fires |
|---|---|
ASVTrigger_OnSave |
Asset saved in the editor |
ASVTrigger_OnStartup |
Editor opens |
ASVTrigger_OnAssetCreated |
New asset created in Content Browser |
ASVTrigger_OnAssetRenamed |
Asset renamed in Content Browser |
ASVTrigger_OnPIE |
Before Play In Editor starts |
ASVTrigger_Manual |
On demand — triggered from the panel or Tools menu |
Under Filters, you can limit which assets this config applies to:
| Property | Effect |
|---|---|
AssetPathFilters |
Only validate assets under these paths |
AssetClassFilters |
Only validate assets of these classes |
ExcludePaths |
Skip assets under these paths |
ASV discovers all ASVCheckerConfig DataAssets in the project automatically — no registration step needed. As long as bEnabled is checked on the asset, it will be picked up on the next validation run.
Tip: You can have multiple
ASVCheckerConfigassets for different teams or content types — one for art assets with texture rules, another for Blueprints only. All enabled configs run together.
Accessed via Project Settings → Plugins → Asset Standards Validator. Stored in Config/DefaultAssetStandardsValidator.ini.

| Property | Type | Default | Description |
|---|---|---|---|
ScanRoots |
TArray<FDirectoryPath> |
/Game (implicit) |
Content roots to scan. Empty = scan /Game only. Add /Game/ProjectName if your content is under a subdirectory. |
ExcludeScanRoots |
TArray<FDirectoryPath> |
Empty | Paths to exclude. Useful for excluding ThirdParty content or engine redirectors. |
bRecursiveScan |
bool |
true |
Scan subfolders of each root. |
IgnorePaths |
TArray<FString> |
Empty | Wildcard patterns to skip (e.g. Developers/*, ThirdParty/*). |
| Property | Type | Default | Description |
|---|---|---|---|
bOpenMessageLogOnIssues |
bool |
false |
Automatically open the Message Log when violations are found. |
bAutoOpenPanel |
bool |
true |
Automatically open the validator panel after a validation run (Validate Selected, Validate Folder, Run Full Audit). Turn off if you work mostly in the Content Browser — explicit actions (Open in Panel, thumbnail/folder badges, the Tools menu) still open the panel. When off and the panel is already open, results are refreshed quietly without stealing focus. |
bVerboseLogging |
bool |
false |
Enable verbose logging for all ASV log categories. Useful for diagnosing validation issues. |
LogExamplesLimit |
int32 |
50 |
Maximum number of example violations to write to the output log. |
| Property | Type | Default | Description |
|---|---|---|---|
IgnoreAssets |
TArray<FString> |
Empty | Exact package paths to skip entirely (e.g. /Game/Characters/SK_Hero). Useful for specific assets that are intentionally non-standard. Can also be toggled via right-click → Ignore Asset in the Content Browser. |
IgnoreFolders |
TArray<FString> |
Empty | Folder paths excluded recursively (e.g. /Game/ThirdPartyArt). All assets under these folders are skipped. Can be toggled via right-click → Ignore Folder in the Content Browser. |
| Property | Type | Default | Description |
|---|---|---|---|
bShowAssetBadges |
bool |
true |
Show an orange badge on asset thumbnails when issues are found. Disable if overlays cause slowdown on very large projects. |
bShowFolderBadges |
bool |
true |
Show an orange badge on folders when any contained asset has P0/P1 issues. UE 5.3+ only — has no effect on earlier versions. |
| Property | Type | Default | Description |
|---|---|---|---|
MaxBatchSize |
int32 |
0 (unlimited) |
Maximum assets to process per run. Set to e.g. 500 to prevent long hangs on large projects. Validation stops at the limit without error. |
Both the Naming and Folder validators support ClassRules — an array of FASVClassRule that override the built-in defaults for specific asset types.

| Field | Description |
|---|---|
AssetClassName |
UE class name to match (e.g. "MyCustomBlueprint"). Exact match. |
ClassPicker |
UClass picker — matches assets whose parent class is this class or a subclass. Use for Blueprint hierarchies. |
Prefix |
Required prefix for this class (Naming validator) |
Suffix |
Required suffix for this class (Naming validator) |
AllowedSuffixes |
Set of allowed suffixes (if any are required, e.g. _P, _Audio for levels) |
TargetFolders |
Allowed folder paths for this class (Folder validator) |
Suppose you have a custom class MyEnemy that extends Character. You want assets prefixed NPC_ and located in Characters/Enemies/:
- In Naming Convention Validator → ClassRules, add a rule with
AssetClassName = "MyEnemy",Prefix = "NPC_" - In Folder Structure Validator → ClassRules, add a rule with
AssetClassName = "MyEnemy",TargetFolders = ["/Characters/Enemies"]
Full reference for the CI commandlet (-run=ASVCommandlet):
| Argument | Default | Description |
|---|---|---|
-severity=P0 |
none (no failure) | Exit code 1 if violations at this severity or above exist. Values: P0, P1, P2, P3. |
-Root=/Game/Content |
from GlobalSettings | Root path(s) to scan, comma-separated. Overrides the ScanRoots setting. |
-checkers=Name1,Name2 |
all enabled | Run only the named checker configs (comma-separated). Use -all to force all. |
-MaxAssets=1000 |
unlimited | Stop after this many assets. Useful for CI timeouts on large projects. |
-format=html |
none | Export format: csv, json, or html. No export if omitted. |
-output=C:/Reports |
none | Directory to write the export. Required when using -format. |
-milestone=Sprint-42 |
empty | Optional label embedded in the report header. |
-report=report.json |
none | Write JSON to this file path (legacy; prefer -format/-output). |
See Reports for full export format documentation and exit code reference.
This page is generated from the in-editor documentation. Do not edit it here — edit Plugins/AssetStandardsValidator/Content/Docs/*.html and regenerate.