Grand Theft Auto Online se ha vuelto todo un problema en cuanto a tiempos de carga, ya que el juego puede tardar varios minutos en estar jugable incluso con los SSD más rápidos del mercado. Al parecer el problema residente en como el juego de Rockstar interactúa con la base de datos de objetos, que ahora mismo incluye más de 63.000 items diferentes.

El modder t0st ha corregido esto mediante un mod, el cual mejora los tiempos de carga hasta un 70% respecto el estado original, clamando que seis minutos se han reducido en apenas algo más de un minuto después de la aplicación de sus sistema. La solución sin embargo llega de manos de un archivo .dll modificado, que puede suponer un baneo de GTA Online si somos detectados por el sistema anti-trampas.

Digital Foundry por su parte ha explicado porque ocurre este problema, señalando un problema de cuello de botella de CPU a la hora de utilizar este proceso de lectura de la base de datos del juego, que provoca que cada uno de los 63.000 objetos se revise individualmente creando una interminable cola para la CPU, resultando en tiempos de carga interminables que irán a más cuantos más objetos se añadan al juego. El proceso de la CPU además está terriblemente mal implementado ya que solo se centra en un único hilo de la procesador para esta titánica tarea y de hecho, el modder asegura que Rockstar apenas le costaría un día de trabajo solventar el problema con un solo desarrollador y actualizar la librería a una más optimizada.

Esto es lo que dice Digital Foundry al respecto:

Primero, el juego estaba leyendo en un archivo de texto de todos los elementos que se pueden comprar en el juego, y después de cada uno de los 63,000 elementos, cuenta cada personaje en el archivo de texto de 10 MB de nuevo. Hacer este recuento una vez no es gran cosa, pero hacerlo 63.000 veces suma una gran cantidad de tiempo de CPU desperdiciado.

En segundo lugar, para preparar todos los datos del elemento que se han leído, el juego registra tanto los datos asociados con ese elemento (por ejemplo, su nombre, precio, categoría, estadísticas) como un hash de ese elemento (esencialmente una ‘huella digital’ calculada que de forma única lo identifica). Cada vez que el juego almacena un elemento de la lista, que, recuerde, ocurre 63,000 veces, verifica el valor hash del elemento que se almacena con el valor hash de todos los demás elementos que ya se han almacenado.

Veremos si finalmente Rockstar toma cartas en el asunto y solventa el problema de su juego más popular o si en cambio espera a lanzar una versión de GTA V actualizada a las consolas de nueva generación con un repaso interesante a su código, ya que será un juego que habrá vivido entre tres generaciones de consolas.

Suscríbete!
Notificar
guest
0 Comments
Inline Feedbacks
Ver todos los comentarios