DOCUMENTATION

MP Development docs

Official setup guides, configuration notes, commands, and FiveM Asset Escrow information for all MP Development resources.

FiveM Asset Escrow Information

Cfx.re Keymaster

All MP Development resources are protected via FiveM Asset Escrow. Core client and server scripts are encrypted, while 100% of customization (configuration, brand colors, webhooks, commands, and language locales) is available in open, editable files.

Artifacts 5848+
Keymaster License
Character Management & Identityv1.2.0

MP Multichar

A next-generation ESX Legacy character management system featuring a sleek NUI interface, multi-slot allowances, in-depth character creation, relog safeguards, and a comprehensive in-game admin management panel.

Key Features

  • Modern character selection interface built with React & custom dark-first styling.
  • Multi-slot character support with customizable default allowances and individual player overrides.
  • Seamless character creation flow with identity validation (DOB ranges, character lore, name checks).
  • Built-in /relog command with configurable cooldowns and optional location-based restrictions.
  • Dedicated Admin NUI (/multichar) to view active players, set slot limits, and delete inactive characters with required audit reasons.
  • Automatic database column widening for identifier and owner columns on first boot.
  • Full preview integration with skinchanger, esx_skin, or illenium-appearance.

Asset Escrow & File Access

This resource is protected by FiveM Asset Escrow. Core client and server logic files are encrypted. All player customization, spawn points, relog rules, slot definitions, commands, and locales are 100% accessible in the editable files listed below.

Editable Files (Full Access)

You have full access to view, edit, and extend these files:

config/shared.lua

Locales, UI brand text, theme colors, spawn coords, relog settings, canDelete toggle.

config/server.lua

Default character slots, identifier prefixes, identity regex/age rules, Discord logs.

server/commands.lua

Custom command registrations and staff permission handlers.

client/utils.lua

Client-side utility functions and animation/camera overrides.

locales/*.lua

All language translation files (en, cs, etc.).

Escrow Protected Files

Encrypted via FiveM Asset Escrow; customization is handled via editable files:

server/main.lua

Core player session orchestration, license checks, and MySQL transactions.

server/discord.lua

Internal Discord webhook formatting and avatar queries.

client/main.lua

NUI message synchronization, scene transitions, and ped spawning.

web/build/**/*

Compiled React NUI frontend bundle.

Requirements & Installation

Dependencies

es_extended

ESX Legacy framework (player management, accounts, jobs, identities).

ox_lib

Shared helper library for locales, callbacks, notifications, and UI components.

oxmysql

High-performance MySQL adapter for persistent resource data.

spawnmanager

Native GTA spawn helper (auto-spawn is disabled during character selection).

skinchanger & esx_skin

Preview and first-time appearance customization.

illenium-appearanceOptional

Supported modern appearance alternative for character creation.

Installation Steps

  1. 1Extract the mp_multichar folder into your server's resources directory.
  2. 2Configure your preferred settings in config/shared.lua (locale, spawn coords, relog rules).
  3. 3Configure slot limits and Discord webhook URLs in config/server.lua.
  4. 4Set Config.Multichar = true inside your es_extended configuration.
  5. 5Ensure start order in server.cfg (dependencies first, then mp_multichar).
  6. 6Restart the server and inspect console for any database column width adjustments.

Suggested server.cfg Start Order

server.cfg
ensure oxmysql
ensure ox_lib
ensure es_extended
ensure spawnmanager
ensure skinchanger
ensure esx_skin
ensure mp_multichar

Database Setup (manual)

Characters live in standard ESX users table. Create the multicharacter_slots table if your base does not already have it:

SQL Schema
CREATE TABLE IF NOT EXISTS `multicharacter_slots` (
  `identifier` VARCHAR(60) NOT NULL,
  `slots` INT(11) NOT NULL,
  PRIMARY KEY (`identifier`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Configuration & Setup

  • mp.config.locale: Choose interface language ('en', 'cs', etc.).
  • mp.config.canDelete: Set to true if players are allowed to delete their own characters.
  • mp.config.relog.enabled & cooldown: Enable /relog command and set cooldown in seconds (default: 600s).
  • mp.config.relog.anywhere: Set to false to restrict /relog only to designated safe zones (e.g. Legion Square, Pillbox).
  • mp.config.client.positions: Set camera and ped coordinates for each character slot.
  • mp.config.UI: Customize primary colors, surfaces, brand accent text, and server logo URL.

Commands & Permissions

CommandArgumentsPermissionDescription
/relog—EveryoneReturn to character selection (respects cooldown & safe zone restrictions).
/multichar—admin / seniorOpens the admin NUI to inspect players, manage slots, and delete characters.
/setslots<identifier> <slots>admin / seniorAssigns a custom slot limit to a player license (base license without char prefix).
/remslots<identifier>admin / seniorRemoves the custom slot row, reverting the player to the default slot limit.

Events & Exports

mp_multichar:client:setupCharactersClient Event

Triggers initial character selection sequence for the player.

mp_multichar:client:setupUiClient Event

Sends loaded character list and maximum slots to the NUI frontend.

mp_multichar:client:openAdminClient Event

Opens the administrative multichar control panel.

Usage & In-Game Workflow

  1. 1When connecting, players are placed into character selection with cinematic cameras.
  2. 2Select an existing character to spawn or choose an empty slot to create a new citizen.
  3. 3If allowed by config, players can delete unneeded characters with a confirmation dialogue.
  4. 4Administrators use /multichar to search citizens, inspect loaded characters, or wipe inactive peds.

Resource Integrations

ESX Legacy

Full integration with ESX identity, jobs, licenses, and accounts.

oxmysql

Fast character fetching and column width compatibility management.

illenium-appearance

Seamless transition into modern character customizers on character creation.

Troubleshooting & Solutions

!

No character UI appears upon connecting.

Make sure Config.Multichar = true is set in es_extended/config.lua and verify mp_multichar starts AFTER es_extended in server.cfg.

!

Players are kicked with OneSync error.

mp_multichar requires OneSync Infinity. Ensure set onesync on is present in your server.cfg launch arguments.

!

Database connection kick or queries failing.

Ensure your mysql_connection_string is set before oxmysql starts in server.cfg and includes the database name.

!

Kick: Duplicate identifier detected.

Another active session or stale server ped is holding that charN:license identifier. Restart the player session or server.

!

Identity form rejected with invalid format.

Ensure name contains only letters, DOB year falls within lowestYear and highestYear, and lore matches allowed options in config/server.lua.

!

Custom slots set with /setslots are ignored.

Confirm you provided the base Cfx license identifier (e.g. license:abc...), NOT the prefixed character identifier (char1:license:...).