Lo que falla con más frecuencia, lo que realmente significa y qué hacer al respecto. Con Config.Debug = true, la mayoría de estos problemas también deja una línea en la consola del servidor o en la consola F8 que indica la causa.
Instalación#
El recurso no inicia
El manifiesto depende de ox_lib y screenshot-basic. Si falta alguno o inicia después, FXServer se niega a iniciar qs-yacht. Pon el ensure de ambos, además de oxmysql, por encima de él en server.cfg.
Un error al cargar custom.none.client / custom.none.server
No se detectó ningún framework. es_extended, qb-core o qbx_core deben iniciarse antes que qs-yacht. Un recurso de framework renombrado debe añadirse a la lista frameworks al principio de config/main.lua.
Table 'qs_yachts' doesn't exist, o Unknown column 'yacht_inside'
El SQL no se importó, o solo se importó la mitad. Ejecuta database/main.sql y luego esx.sql o qb.sql, y reinicia. Consulta Instalación.
esx.sql falla en la línea del datastore
Tu servidor no tiene esx_datastore. Esa fila solo la usa el armario integrado de ESX: omítela si usas un script de ropa como illenium-appearance o qs-appearance.
La consola está llena de mensajes del yate
Config.Debug viene en true. Ponlo en false cuando la instalación funcione; eso también elimina el comando de prueba /createyacht.
La tienda y la compra#
"No available yacht"
Los 42 amarres tienen dueño. Un amarre solo se libera cuando su yate se vende al banco. Reduce Config.MaxYachtsPerPlayer si unos pocos jugadores acaparan la mayoría.
"You don't have enough money" aunque el jugador tiene efectivo
Los yates, las mejoras, las banderas y los muebles se cobran de Config.MoneyType, que es bank por defecto. Cámbialo a money (ESX) o cash (QBCore) para cobrar en efectivo.
"You can only purchase 1 yachts"
El jugador alcanzó Config.MaxYachtsPerPlayer. Una compra de Tebex ignora el límite cuando bypassMaxOwnedCount está activado.
El clima parpadea durante la vista previa
Tu script de clima no es uno que la tienda sepa pausar. Añade sus eventos de pausa y reanudación a client/custom/weather/weather.lua.
A bordo#
Un amarre de yate está vacío o el yate es invisible
Los amarres 36 – 41 usan mapas de DLC posteriores. Sube sv_enforceGameBuild a una build del juego que incluya The Contract. En cualquier amarre, comprueba también que ningún otro recurso elimine o reemplace los archivos de mapa del yate (apa_yacht_grp…).
La puerta, el puente o el almacén rechazan a un jugador
Solo el dueño y quienes tienen llave abren la puerta, entran al puente y usan el almacén. Cualquier otra persona toca el timbre con G — o el dueño le da una llave desde Key Management.
"No one is inside the yacht" al tocar el timbre
El timbre solo le llega al dueño, y solo mientras está conectado y dentro de la cabina. Un dueño en la cubierta o en el puente no lo oye, y quienes tienen llave no pueden responderlo.
"You are not in a yacht" en /yachtMenu
El menú solo se abre cerca de tu yate, a menos de 500 m. Ve al yate y luego escribe el comando.
No hay almacén ni armario en el yate
No existen hasta que el dueño los coloca: Yacht Management → Locate Storage / Locate Wardrobe, ponte en el lugar y pulsa G. Los muebles de almacenamiento y de armario del decorador también sirven.
El almacén no se abre
Los invitados no pueden abrir almacenes. Para el dueño y quienes tienen llave, no se detectó el inventario: comprueba que inicie antes que qs-yacht y que esté en la lista de compatibles, o fíjalo como se muestra en Integraciones. Con la mejora Vault, un código incorrecto muestra "Invalid vault code".
No hay música a bordo
No hay ningún recurso de sonido en ejecución: inicia xsound, qs-3dsound o mx-surround antes que qs-yacht. Si hay uno en ejecución, prueba con otro enlace: YouTube solo reproduce un video dentro de otro programa cuando su propietario permite insertarlo.
Me pasan al asiento del pasajero del helicóptero o de un barco
Es el comportamiento correcto. Solo el dueño y quienes tienen llave pueden conducir los vehículos del yate; los demás van como pasajeros.
"This shower / jacuzzi area / lean area is currently in use"
Otro jugador ya está en ese lugar. Cada uno lo ocupa un solo jugador y se libera cuando se va o se desconecta.
Decoración y mejoras#
"Decoration is not available, someone using it"
Otro dueño o alguien con llave está decorando el mismo yate. Solo se permite un decorador a la vez; se libera cuando lo cierra o se desconecta.
"You are too far from the decoration area"
La cámara libre se alejó más de Config.MaximumDistanceForDecorate (350 m) del lugar donde se abrió el decorador. Auméntalo o ponlo en false para no tener límite.
"You have reached the maximum number of furniture items"
El yate admite 50 piezas, o 150 con la Furniture Upgrade. Las piezas guardadas siguen contando: vende las que no necesites. Ambos límites están en Config.FurnitureLimits.
"You need to install the camera upgrade first"
Ver las cámaras requiere la mejora Security Camera System y al menos una cámara colocada desde la página Dynamic del decorador.
Tebex#
"Invalid Tebex transaction ID"
Una de tres cosas:
sv_tebexSecretfalta en server.cfg: la consola lo advierte después de iniciar.La transacción no contiene un paquete con el nombre exacto de
packageName. La consola imprime los nombres de los paquetes que recibió.El ID se escribió mal. Tiene la forma
tbx-xxxxx-xxxxx.
"This transaction ID has already been used the maximum number of times"
El ID ya compró maxYachtPerTransaction yates. Un ID usado queda usado para siempre, aunque el yate se haya vendido después.
"Tebex redeem must be run by a player in-game"
El comando de canje se ejecutó desde la consola del servidor o por el propio Tebex. Guarda el ID en el jugador que lo escribe, así que solo funciona dentro del juego. Quítalo de los comandos de juego del paquete; los jugadores canjean en la tienda o en el chat.
¿Sigues con problemas? Abre un ticket e incluye el orden de carga de tu server.cfg, tu framework e inventario, y la salida de la consola del servidor y de la consola F8 con
Config.Debug = true.



