# ArchiveXL: Resource linking

## Summary

**Published:** May 18 2024 by [mana vortex](mailto:undefined)\
**Last documented update:** May 18 2024 by [mana vortex](mailto:undefined)

Starting with version 1.14, ArchiveXL allows you to create **resource symlinks**. This guide will teach you how to avoid duplicate meshes for dynamic substitution that way.

If you want to avoid duplicate material definitions, check [ArchiveXL: Resource patching](/cyberpunk-2077-modding/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-resource-patching.md).

## Why do I need this?

While [ArchiveXL: body mods and refits](/cyberpunk-2077-modding/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-body-mods-and-refits.md) has solved one problem, it introduced a new one. If you want to use the preferred approach of [**mesh path substitution**](/cyberpunk-2077-modding/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-dynamic-conversion-guide.md#method-2-component-substitution), you'll end up with a million duplicate files.

<figure><img src="/files/KP5DXy9Keh8dPBv3owzb" alt="" width="184"><figcaption></figcaption></figure>

While [ArchiveXL: Resource patching](/cyberpunk-2077-modding/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-resource-patching.md) will let you keep your materials in one spot, why would the **chest size** be relevant for a pair of socks? Rhetorical question, it's not. But body types don't care.

This is where **linking** comes in.

## Problem

You have a jacket, and you made a`big_boobs` refit for all fo the bodies with back problems:

```
yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__big_boobs.mesh
```

However, thanks to [component stubstitution](/cyberpunk-2077-modding/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-dynamic-conversion-guide.md#method-2-component-substitution), the game will still try to load the following:

```
yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__lush.mesh
yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__ebb.mesh
yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__ebbp.mesh
yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__ebbrb.mesh
yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__ebbprb.mesh
yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__angel.mesh
```

... and if it doesn't find them, it will fall back to `t2_084_pwa__base_body.mesh`, which will clip.

## Solution

The solution is as simple as it is brilliant: ArchiveXL can create **links**.

```yaml
resource:
  link:  
    yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__big_boobs.mesh:
      - yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__lush.mesh
      - yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__ebb.mesh
      - yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__ebbp.mesh
      - yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__ebbrb.mesh
      - yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__ebbprb.mesh
      - yourname\clothing\torso\your_jacket\meshes\t2_084_pwa__angel.mesh
```

When the game tries to read `t2_084_pwa__ebb.mesh`, ArchiveXL will gently but firmly take it by the hand and point it towards `t2_084_pwa__big_boobs.mesh` instead. And it will never even know.

Now we can do away with the extra components and simply use body mod substitution — and anything duplicate can be linked.

{% hint style="success" %}
You can now also give your `.mesh` files passive aggressive filenames and then use substitution to hook them up to the body mods. The possibilities are endless!
{% endhint %}


---

# 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://wiki.redmodding.org/cyberpunk-2077-modding/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-resource-linking.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.
