Something visible on the ped is not automatically something saved for the character.Use client APIs for visual/gameplay state. Use server-authorized APIs when an editor or appearance change must persist.
Persistent editor opens
Server: OpenEditor(source, options)
Server: OpenWardrobe(source, options?)
Client: persistent OpenEditor / OpenWardrobe
A client cannot grant itself persistent save authorization. Direct client calls return:
OpenEditorLocal is not a replacement for the server-authorized persistent flow.
Visual appearance
ApplyAppearance
GetAppearance
ReloadAppearance
Client:
Direct clothing helpers
These helpers are useful for controlled visual integrations. They do not replace the normal tailor/wardrobe save flow.EquipCategory / UnequipCategory operate on the live ped. If you need a temporary gameplay toggle that should survive streaming/reapply correctly, use Quick Clothing instead.
Dress / undress
RCO exposes a simple visual undress flow for medical, bathing, prison, hotel or other gameplay resources:Undress()/SetUndressed(true)remove clothing from the live ped;Dress()/SetUndressed(false)request the saved RCO appearance from the server;- this does not overwrite the saved snapshot just because the player was temporarily undressed;
- compatible Quick Clothing state may be reapplied after the base appearance is restored.
Use Quick Clothing when you want to hide one semantic category such as a hat, coat or gun belt. Use
Undress / Dress when your gameplay flow needs the character’s clothing removed as a whole.Editor state
Character persistence
GetAppearanceForCharacter(charId, callback)
SetAppearanceForCharacter(charId, snapshot, callback)
charId is the framework character identifier (RSG citizen id / VORP character identifier). Treat it as an opaque identifier.
Saving is asynchronous. Wait for the callback before chaining logic that assumes the database write succeeded.
Outfit helpers
Server-side integrations can also use the character’s saved outfit list:Quick Clothing API
Quick Clothing is the recommended API for temporary radial-menu clothing actions.ToggleGunBelt() is a named helper for the gunbelt category. Gun holsters use the generic holsters category:
ToggleClosedCoat() is an alias for the logical coat group, which includes open/closed coat variants and coat accessories handled by RCO.
Server scripts can use the same semantic state:

