Respuesta rápida: Reducir NPCs y tráfico ambientales con un pequeño cliente de recursos que llama a los nativos del multiplicador de densidad cada fotograma. Incluir ambos fxmanifest.lua y el archivo Lua del cliente, comenzar con un valor moderado en la etapa, y medir la misma ruta antes y después. No prometer una ganancia de FPS: el resultado depende de la carga de recursos y activos del cliente más amplia.
A veces, querrás reducir la cantidad de personajes no jugables (PNJ) o su densidad en el mundo del juego para mejorar el rendimiento del servidor o crear escenarios de juego específicos. En este tutorial, te mostraremos cómo reducir los PNJ en FiveM.
NotaReducir la densidad de PNJ puede requerir conocimientos de scripting del lado del servidor en FiveM. Asegúrate de tener acceso administrativo a tu servidor FiveM y conocimientos básicos de scripting en Lua.
Prerrequisitos:
- Un servidor FiveM. (Cómo configurar)
- Acceso administrativo al servidor.
- Un editor de texto (por ejemplo, Bloc de notas++) para editar scripts de Lua.
- Conocimientos básicos de scripting en Lua.
Pasos:
1. Acceda a su servidor FiveM:
- Asegúrese de tener acceso SSH o RDP a su servidor FiveM, o acceso a su panel de control.
2. Localiza tu carpeta de recursos:
- Navegue al directorio principal de su servidor FiveM.
- Busque la carpeta “recursos”; aquí es donde se encuentran los scripts y recursos de su servidor.
3. Crea un nuevo script Lua:
- Dentro de la carpeta “recursos”, cree un nuevo directorio si es necesario, por ejemplo, “npc_reducer”.
- Adentro
npc_reducer, crearfxmanifest.luay un script de cliente comoreduce_npc_density.lua. El manifiesto debe declarar el archivo Lua como unclient_scripto FiveM no lo detectará y cargará como se describe a continuación.
4. Edite el script de Lua:
- Abre el archivo “reduce_npc_density.lua” con tu editor de texto preferido.
- Agregue el siguiente código Lua al archivo:
Citizen.CreateThread(function() while true do Citizen.Wait(0) -- Adjust the number below to set the desired NPC density. local newDensity = 0.1 -- Modify this value as needed. SetVehicleDensityMultiplierThisFrame(newDensity) SetPedDensityMultiplierThisFrame(newDensity) SetRandomVehicleDensityMultiplierThisFrame(newDensity) SetParkedVehicleDensityMultiplierThisFrame(newDensity) SetScenarioPedDensityMultiplierThisFrame(newDensity, newDensity) end end)
- En el código anterior, puedes modificar el
newDensityVariable para controlar la densidad de varios tipos de PNJ y vehículos en el mundo del juego. Un valor de1.0representa la densidad predeterminada, mientras que valores más pequeños la reducen.
5. Guarde y cierre el script de Lua:
- Guarde los cambios realizados en el script Lua y cierre el editor de texto.
6. Configure su server.cfg:
- Navegue al directorio principal de su servidor FiveM.
- Abra el archivo “server.cfg” con un editor de texto.
- Añade la siguiente línea al archivo:
ensure npc_reducer
- Esta línea asegura que su script “reduce_npc_density.lua” se cargue cuando se inicia el servidor.
7. Reinicie su servidor FiveM:
- Guardar el Archivo “server.cfg” y reinicie su servidor FiveM para aplicar los cambios.
8. Ajustar la densidad de NPC en tiempo real:
- Una vez que su servidor vuelva a estar en funcionamiento, puede ajustar la densidad de NPC en tiempo real modificando el
newDensityVariable en el script de Lua. Valores bajos reducirán la densidad de PNJ, mientras que valores altos la aumentarán.
Has aprendido a reducir la densidad de PNJ en FiveM creando un script Lua y configurando tu servidor para que lo cargue. Esto puede ayudarte a optimizar el rendimiento del servidor o a crear escenarios de juego específicos con menos PNJ en tu servidor de GTA V FiveM.
Por favor, dale me gusta, comparte y comenta si te ayudó. :)
Lista de verificación práctica
Utilice esta guía como lista de verificación antes de modificar un servidor FiveM en producción. Confirme la versión actual del artefacto del servidor, la versión del framework, las dependencias de recursos, los cambios en la base de datos y cualquier archivo del lado del cliente antes de aplicar el cambio.
- Realice una copia de seguridad de los archivos de configuración y las tablas de la base de datos afectados.
- Primero, aplique el cambio en un servidor de prueba.
- Supervise la consola del servidor y la consola F8 del cliente para detectar errores.
- Comprueba si el cambio afecta a los trabajos, el inventario, los vehículos, los mapas, la voz, los permisos o los datos del jugador.
- Documente el archivo, comando o configuración exactos que modificó para que se puedan revertir rápidamente.
Pruebas previas a la producción
Tras la primera prueba, inicia sesión con una cuenta de jugador normal y repite el proceso desde la perspectiva del jugador. Si el tema está relacionado con el rendimiento, realiza mediciones antes y después con el mismo número de jugadores, ruta y conjunto de recursos. Si se trata de herramientas o permisos de administrador, verifica tanto a los usuarios autorizados como a los denegados.
Errores comunes
La mayoría de los problemas de FiveM se deben a dependencias faltantes, caché obsoleta, nombres de carpeta incorrectos, incompatibilidad de framework o configuración copiada de otro servidor. Evite modificar varios sistemas a la vez; realice un cambio, pruébelo y luego continúe.
Recursos relacionados
Para obtener recursos listos para la producción, compare los recursos de pago en el Tienda FiveMX. Para obtener recursos gratuitos, navegue Recursos de FiveM y pruebe cada recurso antes de usarlo públicamente.
Notas sobre el lanzamiento de la producción
Antes de usar esta guía en un servidor FiveM en vivo, define el resultado exacto que esperas del cambio. Para Cómo Reducir la Densidad de NPC en FiveM, eso significa verificar qué recurso, configuración, comando o flujo de trabajo se ve afectado y confirmar que el cambio se ajusta a tu framework actual, versión del artifact y reglas del servidor. Mantén la implementación lo suficientemente pequeña como para poder revertirla rápidamente si los jugadores reportan errores.
Utilice un servidor de pruebas con la misma estructura, esquema de base de datos, orden de recursos y dependencias clave que el servidor de producción. Si el problema afecta la jugabilidad, los permisos, los gráficos, el audio, los vehículos, los mapas, el inventario o el comportamiento económico, realice pruebas con al menos una cuenta de administrador y una cuenta de jugador normal. Observe la salida de la consola del servidor, los registros F8 del cliente y la temporización de los recursos mientras reproduce el flujo de jugadores exacto que se producirá en el servidor en producción.
Lista de verificación de reversión
- Guarde el archivo de configuración anterior, la carpeta de recursos y el estado de la base de datos antes de realizar cualquier cambio.
- Anota la versión del recurso, la confirmación, la página de descarga o el valor de configuración que hayas probado.
- Reinicia primero solo el recurso afectado, si es posible, y luego reinicia el servidor completo si las dependencias lo requieren.
- Si aparecen errores, revierta el único recurso o configuración que haya cambiado antes de probar otra solución.
Guía de mantenimiento
Revise esta configuración nuevamente después de las actualizaciones de artefactos FiveM, actualizaciones del marco de trabajo o cambios importantes en los recursos. Una configuración que funciona hoy puede dejar de funcionar después de actualizaciones de dependencias, exportaciones renombradas, eventos modificados o migraciones de bases de datos. Conserve notas junto con la documentación de su servidor para que los futuros administradores comprendan qué se modificó, por qué se modificó y cómo verificarlo nuevamente.
Revisión en curso
Vuelve a verificar Cómo Reducir la Densidad de NPC en FiveM después de actualizaciones importantes del artifact FiveM, cambios de framework o migraciones de recursos. Confirma que el consejo aún coincida con el comportamiento actual del servidor, que cualquier fuente vinculada siga disponible y que los pasos de instalación aún coincidan con los archivos que un propietario de servidor realmente descargará o configurará.
Para servidores públicos, mantén un breve registro de cambios junto a la documentación del servidor. Indica qué se probó, qué se modificó, qué cuentas se usaron para la verificación y cómo revertir los cambios. Esto agiliza el mantenimiento futuro y evita que las notas de configuración antiguas se vuelvan confusas o inseguras para los jugadores.
Agregar el manifiesto de recursos requerido
Cfx.re’s Lua resource guide states that a resource folder needs a manifest to be detected and that client_script le dice al tiempo de ejecución del cliente qué archivo cargar. Agregar esto al lado reduce_npc_density.lua:
fx_version 'cerulean'
game 'gta5'
client_script 'reduce_npc_density.lua'
El ejemplo usa SetPedDensityMultiplierThisFrame, SetScenarioPedDensityMultiplierThisFrame, SetVehicleDensityMultiplierThisFrame, SetRandomVehicleDensityMultiplierThisFrame y SetParkedVehicleDensityMultiplierThisFrame. Mantener el bucle del lado del cliente y rendir cada fotograma como se muestra. Probar interiores poblados, tráfico de emergencia, misiones y scripts de trabajo antes del lanzamiento porque las poblaciones ambientales reducidas pueden cambiar el juego así como la carga.
No combinar este enfoque con ediciones no documentadas popcycle.dat durante la misma prueba. Cambiar un control a la vez, registrar el valor, comparar el rendimiento del cliente y restaurar el recurso anterior si el comportamiento se degrada.
Referencias principales: Cfx.re Lua resource guide y el repositorio oficial de documentación de nativos de CitizenFX.
