> For the complete documentation index, see [llms.txt](https://docs.nexomc.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.nexomc.com/general-usage/faq.md).

# FAQ

## 📦 ResourcePack

#### Can I still use my own resourcepack with Nexo?

Yes, you can merge any resourcepacks into the ResourcePack generated by Nexo.\
You can do so by simply adding the .zip or folder to `Nexo/pack/external_packs`\
and the plugin will merge it into the final ResourcePack and send it to all players.\
Check out the [ResourcePack](/configuration/resourcepack.md) page for a detailed explanation

***

## 🪨 Bedrock (Geyser)

#### Does Nexo support Bedrock players?

Yes, through the [Scaffolding](/addons/scaffolding.md)-addon. Nexo builds a Java ResourcePack, which Bedrock players connecting through [Geyser](https://geysermc.org/) cannot read on their own.\
Scaffolding converts your entire Nexo setup into a Bedrock-compatible pack plus Geyser mappings automatically, deploys it to Geyser, and keeps it in sync as you change your content.

#### What converts to Bedrock and what doesn't?

Most content converts: items (2D and 3D), custom blocks, player armor, glyphs and emotes, sounds, custom GUIs and vanilla HUD/GUI reskins.

**Furniture** and **ModelEngine** need the bundled **ScaffoldingExtension** installed in Geyser.\
A few things do not convert yet, such as dyeable models and furniture, custom mob armor, custom paintings and custom HUD plugins like MythicHUD.\ See the Scaffolding support tables for the full, up-to-date list.

#### Why does something look off for Bedrock players?

Bedrock renders differently from Java, so a few things (glyph sharpness, custom GUI alignment) are approximate rather than pixel-perfect.\
Scaffolding is also in early access. If something looks wrong, report it in our Discord with a screenshot and the item, block or furniture involved.

***

## 🔧 Configuration

#### How do I reference a ResourcePack file in a config?

Minecraft ResourcePacks follow a defined and consistent structure.\
ResourcePack files are also split into sub-categories; **sounds, textures, models, fonts, etc..**\
A full list of it can be found on the [Minecraft Wiki](https://minecraft.wiki/w/Resource_pack#Directory_structure), more info on ResourcePacks in [ResourcePack](/configuration/resourcepack.md)

The **namespace** is just another way to sort said sub-categories between different usecases.\
The **filepath** is the remaining path to your file itself

When you then want to make a reference to said file in say a NexoItem, this is how you do it;

{% code title="assets/nexo/textures/item/nexo\_defaults/forest\_axe.png" %}

```yaml
myitem:
  Pack:
    # assets/minecraft/models/item/paper.json
    model: minecraft:item/paper.json
    # assets/nexo/textures/item/nexo_defaults/forest_axe.png
    texture: nexo:item/nexo_defaults/forest_axe
```

{% endcode %}

Here is an example to reference a given PNG Texture **or** a JSON Model.\
This is the exact same for sounds, fonts etc. Only difference is the immediate folder after the namespace is not textures

**ItemModels:**\
assets/**NAMESPACE**/items/**PATH/FILE**.json -> `item_model: NAMESPACE:PATH/FILE`

**Models:**\
assets/**NAMESPACE**/models/**PATH/FILE**.json `model: NAMESPACE:PATH/FILE`

**Textures:**\
assets/**NAMESPACE**/textures/**PATH/FILE**.png `texture: NAMESPACE:PATH/FILE`

**Sounds:**\
assets/**NAMESPACE**/sounds/**PATH/FILE**.ogg `sound: NAMESPACE:PATH/FILE`

If your file is inside `assets/minecraft/...` , meaning your namespace is **minecraft**, specifying it in a config is optional. If no namespace is defined, it will assume you mean **minecraft**

#### NoteBlocks & Tripwires aren't working correctly?

Nexo uses NoteBlocks and TripWires for custom blocks, and thus disables all their vanilla behaviour.\
Noteblock-mechanic does have an option to re-enable this without losing custom blocks, if you go to Nexo/`mechanics.yml`\
If you do not care about Custom Blocks, you can also just disable the noteblock & stringblock-mechanics in `mechanics.yml`

#### Why can't I hear Stone/Wood sounds?

Nexo replaces these sounds with empty ones in order to correctly play Custom Block sounds.\
Nexo will however, play a clone of the vanilla sound whenever the sound would normally play.\
Majority of the time when you cannot hear these sounds, is when you have a ResourcePack sent by Nexo, but you are on a server without Nexo. Like a Velocity/Bungee network where Server A has Nexo, but Server B does not.

The fastest fix is to disable `custom_block_sounds` in `mechanics.yml` for CustomBlock & Furniture.

#### What is a Duration & how do I use it?

A duration is a dynamic way to specify time in a variety of ways.\
Normally plugins require you to specify in ticks or seconds only.\
Nexo allows you to more easily define a length of time with a Duration Format.\
An example is [Sounds](/configuration/sounds.md) which has a `duration` inside `jukebox_playable` to set the sound-length.\
The format for duration is a value + a suffix stamp for the DurationUnit. Some DurationUnits support non-integer values and will automatically format this into the correct values.

`duration: 20t` - 20 ticks\
`duration: 20ms` - 20 milliseconds\
`duration: 20.2s` - 20 seconds & 40 ticks\
`duration: 20.1m` - 20 minutes and 6 seconds\
You also have <mark style="color:yellow;">h</mark>ours, <mark style="color:yellow;">d</mark>ays, <mark style="color:yellow;">w</mark>eeks & <mark style="color:yellow;">mo</mark>nths
