Skip to main content

Compatibility

XDEV Appearance was designed to operate as a universal appearance framework rather than a framework-locked clothing resource.

The system supports compatibility workflows for:

  • QBCore
  • qb-clothing
  • illenium-appearance
  • legacy appearance systems
  • custom frameworks
  • standalone environments

System Philosophy

The resource intentionally separates:

appearance logic
framework logic
UI logic
synchronization logic

This architecture allows easier integration into existing servers without requiring large rewrites.


Internal Compatibility Layers

The resource internally includes:

converter systems
event bridges
reload systems
ped synchronization
tattoo rebuilding

to improve migration compatibility.


Supported Compatibility Targets


QBCore

Native support exists for:

QBCore player data
commands
permissions
job systems
gang systems

qb-clothing

The system includes compatibility event bridges for:

qb-clothing

Example compatibility events:

RegisterNetEvent('qb-clothing:client:openMenu')
RegisterNetEvent('qb-clothing:client:openOutfitMenu')
RegisterNetEvent('qb-clothing:client:loadOutfit')

This allows older resources to continue functioning without modification.


illenium-appearance

Compatibility support exists for:

illenium menu events
appearance conversion
tattoo conversion
reload compatibility

Example compatibility events:

RegisterNetEvent('illenium-appearance:client:openClothingShopMenu')
RegisterNetEvent('illenium-appearance:client:openTattooShopMenu')

Legacy Appearance Systems

The converter layer may be used to support older appearance structures.

Typical conversion targets:

skin
props
components
tattoos
peddata

Appearance Conversion

The resource internally converts appearance structures between formats.

This includes:

head overlays
components
props
tattoos
peddata

depending on compatibility target.


Tattoo Compatibility

The tattoo system supports rebuilding structures such as:

{
collection = "",
name = "",
label = "",
zone = "",
hashMale = "",
hashFemale = "",
opacity = 0.5
}

This improves compatibility with:

Illenium Appearance
legacy tattoo systems
external appearance resources

Reload Compatibility

The resource includes internal reload systems to improve synchronization after:

menu closing
appearance saving
ped switching
resource restarting

This helps reduce:

  • invisible tattoos
  • missing props
  • overlay desync
  • incomplete appearance rebuilding

Ped Compatibility

The system supports:

freemode peds
addon peds
custom ped synchronization

through:

peddata

and rebuild workflows.


Database Compatibility

The SQL structure was intentionally designed to support:

fresh installations
existing databases
Illenium migrations
column extending

Example:

ALTER TABLE playerskins
ADD COLUMN peddata TEXT;

This allows existing servers to extend old appearance databases safely.


Event Compatibility

The resource exposes customizable events through:

sendEvent('system:OnMenuOpen')

This allows external systems to integrate without modifying protected files.


Override Compatibility

Override hooks exist for:

notifications
money handling
walkstyles
checks
permissions

allowing easier framework replacement.


Universal UI Philosophy

The UI intentionally avoids framework-specific dependencies.

Purpose:

standalone compatibility
custom integrations
simpler migrations

Migration Philosophy

The resource was designed so developers can:

replace old appearance systems
keep old events
preserve old resources
avoid full rewrites

during migration.


Recommended Migration Workflow

Recommended migration process:

1. Install XDEV Appearance
2. Extend existing SQL tables
3. Enable compatibility events
4. Verify tattoo synchronization
5. Verify ped rebuilding
6. Remove old appearance dependencies

Developer Notes

Most appearance systems tightly couple:

framework logic
appearance logic
database logic

XDEV intentionally separates these layers to improve:

  • compatibility
  • migration support
  • modularity
  • long-term maintainability