Skip to content

Configuration Guide

This page explains the correct way to configure the uri-core using the provided uri-config resource and the monsters addon while preserving compatibility and updatability

To configure the monsters-wrapper, you simply need to replace the files inside @monsters-wrapper/data and @monsters-wrapper/maps. This allows you to override the default configurations and tailor the content to your server's needs.


Do Not Modify uri-core Directly

You should never edit the uri-core resource directly. Instead, use the uri-config addon located in the [addons] folder. This resource is designed specifically to let you override and extend configuration safely without risking future updates or breaking the internal structure.


uri-config Resource Structure

The uri-config addon includes a predefined folder structure that must be preserved:

uri-config/
├── data/
│   └── config/
│       ├── config.json
│       └── onlyserverconfig.json
│   └── content/
│       └── achievements.json
│       └── craftingtables.json
│       └── items.json
│       └── permissions.json
│       └── recipes.json
│       └── shops.json
│       └── zones.json
│   └── locales/
│       └── en_US.json
│   └── uri/
└── fxmanifest.lua

⚠️ Do not rename or add subfolders to any of the existing directories.
⚠️ Do not use wildcards (*, **) in fxmanifest.lua.
⚠️ Do not list onlyserverconfig.json in the files array of the fxmanifest.lua.

Any deviation from this structure may cause loading errors or expose sensitive data to the client side.

Overrides apply per entry, so you only need to define the keys you want to change.
All other values will still load from the original files, allowing lightweight and targeted customizations.


data/config/

This folder contains:

  • config.json: Public configuration overrides of original config.json from core or monsters.
  • onlyserverconfig.json: Private server-only configuration overrides of original onlyserverconfig.json from core or monsters.

Both files can include overrides for uri-core and the monsters addon. The values defined here will override the defaults from the original resources.

You can find the explanation of each configuration field under:

📂 Utilities > Config in the documentation for any section.
Please note that some parts might be slightly outdated depending on the current version, we recommend looking the config in @uri-core/data/config and @uri-core/addonscontent/monsters/data/config


data/content/

Inside here, you can define custom game data such as:

  • achievements.json
  • craftingtables.json
  • items.json
  • permissions.json
  • recipes.json
  • shops.json
  • zones.json

Each of these content files is documented inside Utilities > Content for each corresponding system in each section or maybe in dedicated guides


data/locales/

In this folder, you can add a single translation file for your entire language setup. This file can include translations for the uri-core system o the monsters addon

For example, you could include es_ES.json or pt_BR.json with all string overrides.


data/uri/

This is where you can include any custom .uri logic scripts:

  • Entirely new logic files you’ve written
  • Translations of existing .uri files
    (e.g., Start.en.uriloc for changing mission names or dialogue)

fxmanifest.lua Requirements

The fxmanifest.lua must list every file explicitly. Do not use wildcards:

✅ Correct:

files {
    'data/config/config.json',
    'content/items.json',
    'locales/en.json',
    'uri/Start.en.uriloc'
}

❌ Incorrect:

files {
    'data/config/*.json', -- 🚫 DO NOT USE WILDCARDS
    'uri/**/*'
}

The only exception is onlyserverconfig.json, which should not be listed at all in the files array to prevent leaking private server data.

Summary

  • Use uri-config for all overrides.

  • Do not modify core resources directly.

  • Maintain folder structure and naming.

  • Use explicit file paths in fxmanifest.lua.

  • Refer to the documentation for config and content schemas.

  • Always test thoroughly before pushing changes to production.

This setup allows you to safely extend and configure both the core and addon systems.