# CCXL Theory: Scopes and extensions

## Summary

**Published:** March 12 2025 by [mana vortex](mailto:undefined)\
**Last documented edit:** March 12 2025 by [mana vortex](mailto:undefined)

This page explains how ArchiveXL expansions work in the context of the character creator. It is currently a work in progress.

## Hair materials

The full list of hair style materials as supported by CCXL extension:

| material for chunkmask | parameter name in @context |
| ---------------------- | -------------------------- |
| `@beard`               | `BeardBaseMaterial`        |
| `@braid`               | `BraidBaseMaterial`        |
| `@cap`                 | `CapBaseMaterial`          |
| `@cap01`               | `CapBaseMaterial`          |
| `@curls`               | `CurlsBaseMaterial`        |
| `@dread`               | `DreadBaseMaterial`        |
| `@long`                | `LongBaseMaterial`         |
| `@short`               | `ShortBaseMaterial`        |
| `@brows`               | `BrowsBaseMaterial`        |
| `@lashes`              | `LashesBaseMaterial`       |

{% hint style="info" %}
While `@cap01` falls back to CapBaseMaterial, this is how you can define an extra hair cap texture for `cyberware_01`.
{% endhint %}

## Material colour extensions

Material colour extension makes use of both [https://github.com/CDPR-Modding-Documentation/Cyberpunk-Modding-Docs/blob/main/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-character-creator-additions/broken-reference/README.md](https://github.com/CDPR-Modding-Documentation/Cyberpunk-Modding-Docs/blob/main/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-character-creator-additions/broken-reference/README.md "mention") and [ArchiveXL: Resource patching](/cyberpunk-2077-modding/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-resource-patching.md).

First, you require an intermediary layer of .mi files that define individual properties, for example **colours**. All of these need to derive from a common ancestor, which defines all other properties.

<figure><img src="/files/JWwYe9F5US0aA6t9vRVI" alt=""><figcaption></figcaption></figure>

You can make use of [https://github.com/CDPR-Modding-Documentation/Cyberpunk-Modding-Docs/blob/main/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-character-creator-additions/broken-reference/README.md](https://github.com/CDPR-Modding-Documentation/Cyberpunk-Modding-Docs/blob/main/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-character-creator-additions/broken-reference/README.md "mention") to use the correct .mi files, while allowing auto-extendability for future patching via the `@context`.

{% hint style="info" %}
You can find another example for this under [CCXL: Hairs](/cyberpunk-2077-modding/for-mod-creators-theory/core-mods-explained/archivexl/archivexl-character-creator-additions/ccxl-hairs.md)
{% endhint %}

<figure><img src="/files/VmwqaInSx9dKgpzfKlq9" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Defining multiple make-up styles in one mesh will break extensibility (read below). To be extensible, you need one mesh per style.
{% endhint %}

To define multiple different make-up stypes in one mesh, you can put the textures directly into the local material - e.g. `@makeup`, `@makeup_02`.


---

# 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-character-creator-additions/ccxl-theory-scopes-and-extensions.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.
