Hace unos días el creador de Proton GE anunció su nuevo proyecto, la “Unified Linux Wine Game Launcher”, el cual tenía como principal objetivo que ejecutar títulos de fuera de Steam (Epic Games Store, Ubisoft Connect o lo que sea) tenga la misma experiencia que ejecutar un título desde la propia Steam… y esto marcha.
Los principales launchers de ejecución de juegos alternativos a Steam participarán en el proyecto
Como podemos leer en la publicación de Wine GE por parte del autor, la cual puede ser la última por la naturaleza de este proyecto, desarrolladores de Lutris, Heroic y Bottles han comenzado a trabajar juntos en este proyecto, por lo que estamos MUY CERCA de que comprar o ejecutar un título fuera de Steam tenga la misma experiencia que dentro.
En palabras del propio creador:
Básicamente, ULWGL le permitirá ejecutar sus juegos que no sean de Steam usando Proton, Proton-GE u otras bifurcaciones de Proton usando los mismos paquetes y tiempos de ejecución que Valve usa para ejecutar juegos con Proton. Esto significa que tus juegos se ejecutarán exactamente de la misma manera que los juegos de Proton, pero fuera e independiente de Steam.
Fuente: Github
Muy cerca de que los esfuerzos de los desarrolladores vayan en una dirección fuera de Steam
El propio creador de este proyecto ha querido explicar cómo funcionaba antes un juego ejecutado fuera de Steam y cómo será ahora, siendo bastante claro, aunque utiliza términos técnicos que puede que te pierdas un poco, pero merece la pena intentar entenderlo:
Para explicarlo brevemente, el camino actual para ejecutar juegos en Wine es el siguiente:
- Algún instalador con un script personalizado (lutris, heroic, bottles, etc.) inicia la instalación a través de Wine. Este script personalizado puede contener elementos que el juego necesita, como Winetricks, anulaciones de DLL, variables de entorno, etc.
- Cuando se ejecuta el script, inicia Wine usando un tiempo de ejecución personalizado (lutris y botellas actualmente tienen sus propias bibliotecas de sistema de usos heroicos, si mal no recuerdo) o bibliotecas nativas del sistema. Llama a Winetricks o establece anulaciones o variables de entorno según lo indique cualquier script que se esté ejecutando. Tenga en cuenta que el script de instalación depende únicamente de quién lo creó (lutis, botellas, heroic,?) y todos pueden diferir o faltar por completo correcciones.
- Luego, Wine ejecuta el juego utilizando bibliotecas nativas del sistema o cualquier tiempo de ejecución personalizado configurado para cualquier lanzador que se esté utilizando (lutris, bottles, heroic).
Son muchos puntos de falla entre diferentes lanzadores. El guión puede diferir entre lanzadores. Los scripts pueden tener diferentes trucos, anulaciones o variables de entorno entre lanzadores. Los tiempos de ejecución pueden diferir o no existir en absoluto.
Con ULWGL, todo eso se maneja bajo un mismo entorno unificado. Entonces la forma de ejecutar los juegos de Wine cambia:
- El iniciador pasa ‘nombre en clave’ y ‘almacenamiento’ a la base de datos ULWGL. Luego, la base de datos proporciona una identificación ulwgl para el juego según el nombre en clave y lo almacena.
- Luego, el iniciador pasa el ID de ULWGL al iniciador de ULWGL.
- El lanzador ULWGL luego inicia el juego usando Proton+ Valve’s Runtime + “pressure vessel environment” (lo mismo que se usa en Proton en Steam) y usa el ID de ULWGL para identificar los scripts de protonfix y aplicarlos. Los scripts de Protonfix esencialmente reemplazan los scripts de instalación que utilizan varios lanzadores.
De esta manera, todos los juegos tienen exactamente el mismo entorno de ejecución y exactamente los mismos scripts de protonfix, y se puede trabajar al unísono para solucionar cualquier problema en el script de protonfix en lugar de todos y cada uno de los scripts de inicio individuales u otros archivos externos.
Fuente: Github
Un antes y un después en el gaming en Linux
Cuando lancé la noticia no esperaba que esto fuera a evolucionar tan rápido, pero esto implica que estamos realmente cerca que empiece a funcionar con todo lo necesario para que jugar fuera y dentro de Steam tenga la misma experiencia.
Al final, la clave de todo esto es que Linux sea un sistema operativo 100% transparente para el usuario y gracias a ello poder tener OS mucho más especializados y dedicados al videojuego para proyectos más allá del propio escritorio, como SteamOS y Steam Deck.