> ## Documentation Index
> Fetch the complete documentation index at: https://rust-co.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Solución de problemas

> Problemas comunes de RCO Appearance y cómo solucionarlos.

Antes que nada: establece `Config.Debug = true` en `rco-appearance/config/config.lua`, reinicia el recurso y reproduce el problema. Appearance imprime lo que está haciendo y por qué rechazó algo. La mayoría de problemas se vuelven obvios con esa salida.

Si te quedas atascado, abre un ticket en [Discord](https://discord.gg/j67u6pbnDs) con la salida de la consola, tu framework y lo que esperabas que ocurriera.

## Arranque

<AccordionGroup>
  <Accordion title="'Could not detect a framework. Start rsg-core or vorp_core...'">
    Appearance está arrancando antes del core de tu framework. Mueve `ensure rsg-core` (o `ensure vorp_core`) por encima de `rco-appearance` en tu lista de inicio.
  </Accordion>

  <Accordion title="'Both rsg-core and vorp_core are started...'">
    Tu `server.cfg` está arrancando los dos cores. Casi siempre es un `ensure` sobrante — elimina la línea del framework que **no** uses. En RSG solo `rsg-core`; en VORP solo `vorp_core`.
  </Accordion>

  <Accordion title="'Config.Framework is rsg but rsg-core is not started' (or the VORP equivalent)">
    Forzaste un framework en la configuración, pero ese core no está en ejecución cuando Appearance arranca. Corrige el orden de inicio o establece `Config.Framework = 'auto'`.
  </Accordion>

  <Accordion title="'oxmysql is not started. Persistence requires oxmysql...'">
    `oxmysql` está arrancando después de Appearance. Mueve `ensure oxmysql` al principio de tu lista de inicio, por encima del core del framework. Sin él, los aspectos no pueden guardarse.
  </Accordion>

  <Accordion title="'Failed to migrate rco_appearance / rco_appearance_outfits'">
    Appearance no pudo crear o actualizar sus tablas. El detalle después de `Error=db_schema` te dice por qué — normalmente el usuario de la base de datos carece de permisos `CREATE` / `ALTER`. Concédelos, o importa `sql/rco_appearance.sql` a mano una vez, y reinicia.
  </Accordion>

  <Accordion title="'stop the stock vorp_character resource before starting this pack' (VORP)">
    El `vorp_character` del stock sigue en ejecución. Elimina `ensure vorp_character` de tu lista de inicio y reinicia el servidor. La carpeta puede quedarse en disco; solo un recurso del stock *en ejecución* activa este mensaje.
  </Accordion>
</AccordionGroup>

## Aspectos y guardado

<AccordionGroup>
  <Accordion title="Un personaje perdió el pelo, o su rostro se reseteó">
    Casi siempre otro script escribió un blob completo de apariencia sobre el personaje. Causas habituales: `rsg-barbers` aún en ejecución en RSG, o un script de ropa/barbería de terceros que envía la skin completa en lugar de los campos que cambió.

    Detén los recursos del stock listados en [Instalación](/es/rco-appearance/installation), y consulta [Compatibilidad](/es/rco-appearance/compatibility) para qué deben hacer los scripts de terceros. Luego haz que el jugador corrija su aspecto en una barbería o, como admin, ábrele el creador con `/rco_creator`.
  </Accordion>

  <Accordion title="Cambié algo con ApplyAppearance / EquipCategory y no se guardó">
    Eso es lo esperado. Los exports del cliente aplican un aspecto visualmente; nunca guardan. Para persistir un cambio desde otro recurso, usa el export del servidor `SetAppearanceForCharacter`. Consulta [Exports](/es/rco-appearance/exports).
  </Accordion>

  <Accordion title="Los personajes existentes muestran un ped predeterminado tras instalar">
    La migración se ejecuta la primera vez que cada personaje inicia sesión. Si un personaje sigue mostrando un aspecto predeterminado después, sus datos antiguos de apariencia estaban vacíos o eran inválidos y se omitieron. Con `Config.Debug` activo, la consola nombra al personaje. Pueden reconstruir su aspecto en el creador (`/rco_creator` como admin, o en una barbería y tienda de ropa).
  </Accordion>

  <Accordion title="El ped se ve glitcheado tras una sesión larga">
    Escribe `/reloadskin`. Vuelve a aplicar el aspecto guardado sin cambiar nada. Si ocurre a menudo tras una acción concreta (montar a caballo, muerte), cuéntanos qué script lo dispara.
  </Accordion>
</AccordionGroup>

## Tiendas

<AccordionGroup>
  <Accordion title="Dos blips de barbería en cada pueblo (RSG)">
    `rsg-barbers` sigue en ejecución. Elimínalo de tu lista de inicio. Sus tiendas guardan en `playerskins`, que Appearance ya no lee, así los cortes comprados ahí desaparecen al reconectar de todos modos.
  </Accordion>

  <Accordion title="Dos interfaces de barbería o dos blips en el mismo pueblo (VORP)">
    `vorp_barbershop` sigue en ejecución. Elimínalo de tu lista de inicio. Detener `vorp_character` no basta: la barbería es un recurso aparte en el pack VORP predeterminado.
  </Accordion>

  <Accordion title="El prompt en la puerta de la tienda no hace nada">
    Comprueba que el jugador está dentro de `Config.ShopInteractDistance` de las coordenadas `prompt` y pulsa la tecla en `Config.ShopInteractControl`. Con `Config.Debug` activo, la consola del cliente muestra si el prompt se registró y si el servidor aceptó la solicitud de apertura.
  </Accordion>

  <Accordion title="No se cobra a los jugadores">
    `Config.ShopCost` es `0` por defecto. Establécelo al precio que quieras. Recuerda que se cobra solo cuando el jugador guarda en una tienda de ropa o barbería — nunca en el creador o el guardarropa.
  </Accordion>

  <Accordion title="Mi tatuaje personalizado no aparece">
    Tres cosas que comprobar: el `.ytd` está en `rco-appearance/stream/addons/`, el `dict` en tu entrada `Config.OverlayAddons` coincide exactamente con el nombre del archivo (sin `.ytd`), y el `id` es único. Reinicia el recurso tras los cambios. Consulta [Tiendas y overlays personalizados](/es/rco-appearance/shops#custom-tattoos-and-makeup).
  </Accordion>

  <Accordion title="Los comandos antiguos del guardarropa de rsg-wardrobe no hacen nada">
    `rsg-wardrobe` se detiene intencionalmente. Los jugadores usan las tiendas guardarropa; los scripts usan `OpenEditor` con `mode = 'wardrobe'`, `SetUndressed` o `ListOutfits`.
  </Accordion>
</AccordionGroup>
