# Setup Local Asset Validation

{% hint style="success" %}
verified: 2025-11-20 version: v39
{% endhint %}

The setup is recommended to be done by one person in your team and version controlled to avoid unnecessary duplication of work.

#### Linting <a href="#setuplocalassetvalidation-linting" id="setuplocalassetvalidation-linting"></a>

1. Enable the “Linter” plugin by adding the following to your `.uproject` file.\
   `{`\
   `"Name": "Linter",`\
   `"Enabled": true,`\
   `}`
2. Version control this so all devs can use it without doing this step \\

   ![](/files/9XeSmywyX5wIFUmS3sCM)
3. Run a first-pass validation
   1. Right-click your plugin folder and select “Scan with Linter”\\
   2. Select the WorldBuilder Preflight RuleSet and click “Next”\\

      <figure><img src="/files/6fp1KAAD7xqNMOOCC8h5" alt=""><figcaption></figcaption></figure>
4. Once you have your first validation result and opened, there will likely be many errors under “*2.11 Asset references across plugins*“. To fix this, in your World Builder `.uplugin` that stores your content and that you’ll upload, you need to add the content dependencies that you use.
   1. Using your validation result, collate a list of plugins you need to add dependencies for. In the below example, I’ll add `M2Core, M2Content, JunoSkypark` (e.g. if the error says “*This asset references "/M2Core/…”\`* then you need the `M2Core` dependency)\\

      <figure><img src="/files/YBMQShTYDYywInxWtbIf" alt=""><figcaption></figcaption></figure>
   2. Navigate to the `.uplugin` file, open it in your favourite text editor which should look like this\\

      ![](/files/RQLIdX4dWkyVq356w4XI)
   3. Add the following section, and add each plugin dependency you need.\\

      ```
      	"Plugins":
        	[
      		{
      			"Name": "M2Content",
      			"Enabled": true
      		},
      		{
      			"Name": "M2Core",
      			"Enabled": true
      		},
      		{
      			"Name": "JunoSkypark",
      			"Enabled": true
      		}
        	]
      ```
5. The `.uplugin` file should now look like this. Make sure to also version control this modified file.\\

   ![](/files/OH9nN88uouCqqUtixo3e)
6. Re-run the linter, which should now be free of those errors and will be left with relevant validation issues.
7. (optional) Copy the `M2upPreflightRuleSet` you just used and make a local version so you can control your own validation settings. To use this asset, set it as the `Default Lint Rule Set` in the Project Settings, and ensure you check in `/Config/DefaultLinter.ini` where this is saved.

#### Cooking <a href="#setuplocalassetvalidation-cooking" id="setuplocalassetvalidation-cooking"></a>

You can run a normal World Builder package to test your content cooks correctly, while also avoiding uploading the content which can take a long time and is unnecessary for pure validation.

1. Navigate to your World Builder settings and enable “Show Package Only Command”\\

   ![](/files/6ZTEFdqPmUEAKt6UyhaF)

You can version control this change by using “Set as Default” in the top-right of the Editor Preferences, which will update `DefaultPerProjectUserSettings.ini` in your project config folder.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.otherside.xyz/platform-documentation/creation/unreal-development/tutorials/reference/setup-local-asset-validation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
