16x MapFix

  • 16x MapFix
KingMods Logo
Publicado por KingMods
Reclamar este mod
V1.1.4.0
1 017

FS25 16x Map Fix: la causa raíz + una herramienta de reparación

¿Por qué los mapas 16x (y más grandes) en Farming Simulator 25 fallan con un error "allocReg"?
¿O estancado en “compilación 100% de sombreadores”? Aquí encontrará el diagnóstico completo y una herramienta.
esto permite cargar y sincronizar en modo multijugador en hardware normal.

Importante:
¿Te gusta la herramienta?
Puede apoyar el desarrollo en Ko-fi; mencione "16x Map Fix" para saber en qué trabajar a continuación.
Diagnóstico en un servidor dedicado y un cliente con 16 GB de RAM, ambos ejecutando la misma tarjeta 16x.
La herramienta redujo los errores de allocReg en un mapa real de 16x de 878,987 a 0, haciéndolo jugable en modo multijugador.

En resumen (TL;DR),
El bloqueo de allocReg en realidad es causado por dos problemas diferentes que parecen idénticos:
Causa Solución
Requisitos de memoria en el modo para un jugador: un mapa de 16x requiere aproximadamente entre 20 y 32 GB durante la compilación inicial de datos de densidad (mapas de densidad); 16 GB no son suficientes.
Un archivo de intercambio grande (48 GB+) + DX11 → se carga el mapa original sin modificar. Multijugador
Un registro de mosaico de capacidad fija en el módulo de sincronización del mapa de densidad reduce el nivel de densidad grabable del mapa a 8192 píxeles para mapas de densidad de 16384 píxeles; consulte la herramienta a continuación.

Prueba de que no es un problema de RAM en el modo multijugador: un servidor dedicado con 262 GB de RAM todavía produjo los mismos errores 3014 "allocReg". Más RAM o un archivo de intercambio más grande no ayudan en el modo multijugador; sólo menos mosaicos resuelven el problema.
La causa en detalle.

Las capas desbordantes (frutas, tierra, malezas, capa de información) son los mapas de densidad de "detalles del terreno" escribibles del juego: aras, siembras y cosechas en cualquier lugar de ellos, incluso fuera de la vista, y el servidor monitorea todo el mapa. Los datos grabables no pueden utilizar “texturas virtuales” (donde solo se transmiten mosaicos visibles y de solo lectura). Por lo tanto, estas capas deben estar completamente en memoria y registradas. Sus requisitos de recursos aumentan con el área del mapa: 16x significa 16 veces la cantidad de mosaicos. En el modo de un solo jugador, el cliente carga sus propios archivos .gdm precompilados; El único cuello de botella es el breve aumento en el uso de memoria durante la primera compilación, que es manejado por un archivo de intercambio suficientemente grande.
En el modo multijugador, el servidor transmite mapas de densidad a cada cliente que se une, lo que los recompila en vivo a través del registro de mosaicos de tamaño fijo (TiledBitmapOperationCompiler). Una densidad de 16384 píxeles provoca un desbordamiento y, por tanto, miles de operaciones "allocReg". Esto representa un límite estricto de capacidad que es independiente de la RAM; Precisamente por eso fallan incluso los servidores con 262 GB de RAM y el límite superior efectivo de GIANTS para el modo multijugador es cuatro veces el tamaño estándar (4x): una tarjeta 4x es el área más grande cuya densidad de escritura cabe tanto en el registro como en la sincronización por conexión.
la herramienta

herramienta/mapfix.py + herramienta/Optimize-Map.bat (arrastrar y soltar en Windows). Escala cualquier densidad de gran tamaño o capa de información (16384 píxeles, potencia de dos) de una tarjeta a los 8192 píxeles seguros para el motor, exactamente la resolución a la que se envían las tarjetas 4x en funcionamiento. Se conserva la información del campo y del cultivo (decodificación → remuestreo del vecino más cercano → recodificación; verificado como 99,9% de píxeles idénticos, cobertura del cultivo sin cambios). Los mapas de elevación y la geometría del terreno (dem.png, cuadrícula con 2ⁿ+1 puntos) se reconocen según su tamaño (no una potencia de dos) y no se modifican.


Solicitud

Arrastre el archivo zip de su mapa a la carpeta Optimize-Map.bat (requiere Python 3; Pillow se instalará automáticamente).
Se creará un archivo con la extensión “_fixed.zip” en la misma carpeta; su archivo original permanecerá sin cambios.
Sube el mapa corregido a tu servidor, inicia un nuevo juego (importante: las partidas guardadas antiguas contienen la revisión de poesía anterior) y participa en el juego.


Incluye grleconvert (licencia MIT) para convertir entre .gdm/.grle y PNG. Admite tarjetas de 16x y 32x; La salida siempre está en el formato seguro de 8192 píxeles.
Nota sobre el modo multijugador (GIGANTES con guardado automático).Incluso con una tarjeta gráfica corregida, el servidor dedicado GIANTS realiza un guardado automático de bloqueo (“auto_save_interval”, predeterminado: 10 minutos). En tarjetas gráficas grandes, este proceso de guardado bloquea el hilo principal durante tanto tiempo que la conexión con el cliente puede perderse exactamente en ese momento (“conexión perdida”), mientras el servidor permanece en línea. Para minimizar este problema, aumente el valor de auto_save_interval en dedicadaServerConfig.xml (por ejemplo, a 30-60).
Mod adicional: Optimizador automático de VRAM


Un mod pequeño e independiente que aumenta el límite de transmisión de texturas en FS25 (alrededor de 4 GB de forma predeterminada) a la VRAM real de su tarjeta gráfica. Esto da como resultado una carga más fluida y menos ventanas emergentes en todas las tarjetas gráficas con más de 4 GB de VRAM, no solo en las tarjetas 16x.

Servidor
Consolas
registro de cambios
1
Créditos
  • KeilerHirsch
Comentarios
0