Ir al contenido

Solución de problemas

El puñado de cosas que fallan más de una vez, y las respuestas que no son obvias.


restart no vuelve a leer fxmanifest.lua. Si has añadido un archivo, haz primero refresh:

refresh
restart mic_phone

Sin eso, el servidor sigue con la lista de archivos que tenía, y un archivo nuevo simplemente no está. Esto es cosa de FiveM y no del teléfono, y a todo el mundo le ha costado al menos una hora alguna vez.

El teléfono no se abre y no hay nada en la consola

Sección titulada «El teléfono no se abre y no hay nada en la consola»

Casi siempre es el inventario, y casi siempre justo después de reiniciarlo.

Reiniciar ox_inventory mientras hay gente conectada bloquea su cliente. invBusy se queda en true y cada búsqueda se cuelga para siempre, así que el teléfono pregunta “¿hay un teléfono en este bolsillo?” y nunca recibe respuesta.

Reinícialo una segunda vez. El primer reinicio es el que rompe el cliente conectado y el segundo es el que sobrevive. Nadie tiene que reconectarse, y limpiar el state bag a mano no es suficiente.

Si no, por orden:

  • ¿El ítem de Config.Open.Item es el que tiene realmente tu inventario?
  • ¿Está activado Config.Open.RequireItem en un servidor cuyos jugadores no llevan uno? Desactivarlo es la forma más rápida de averiguar si el problema es el ítem.
  • ¿Está la batería activada y agotada? Config.Battery.Dead impide abrirlo por debajo de su nivel.

Eso es shared/config/restrict.lua, y cada regla que contiene tiene un interruptor. Las dos que sorprenden a la gente:

  • Caer: el juego cuenta bajar de un bordillo como caer. Falling.Height son los metros de aire bajo tus pies antes de que cuente; viene en 8, que es una caída de unos seis metros.
  • Escalar: el juego cuenta descolgarte de un muro como escalar. Climbing.After son los segundos antes de que cuente; viene en 1.0, que un salto de parkour nunca alcanza y una escalera siempre.

Config.Restrict.Tell.OnClose decide si lo dice cuando pasa. Está desactivado: ya estás viendo lo que te ha quitado el teléfono de la mano.

El teléfono no transporta la voz; pone a las dos personas en un canal y deja que lo haga tu recurso de voz. pma-voice, mumble-voip, SaltyChat y TokoVoip se detectan solos: si no se está ejecutando ninguno, las llamadas conectan y nadie oye nada.

shared/server_config.lua decide adónde va una imagen. Dos cosas lo rompen sin hacer ruido:

  • Un token de Fivemanage que no es de este servidor, o un webhook de Discord que se ha borrado.
  • Un host que no está en Hosts. El servidor solo acepta URLs de vuelta de las direcciones que aparecen ahí, que es lo que impide que un cliente le pase a la galería un enlace a donde le dé la gana.

Por orden: ¿está en off en Config.AppList? ¿Está restringida a un trabajo con Jobs o NotJobs? ¿Es una app Boss = true y cree el framework que este jugador lleva un negocio? ¿Está en una carpeta? Arrastra un icono sobre otro y habrás creado una.

La biblioteca de apps, desde el botón de editar de la pantalla de inicio, lista todo lo que existe y no está en una página.

El teléfono del navegador necesita un certificado, y el recurso consigue el suyo propio. El certificado cubre los casos que la guía corta no cubre: lo habitual es un puerto que no está abierto, o un nombre de DuckDNS que no se ha actualizado desde que cambió tu dirección.

Config.Locale es el idioma por defecto, y cada jugador puede elegir el suyo en Ajustes, algo que también siguen las notificaciones de fuera del teléfono. Dos idiomas vienen completos; el resto vuelve al inglés string a string en lugar de romperse, así que un idioma a medias muestra lo que tiene.