Proton: Ingenieros espaciales - 244850

Creado en 20 oct. 2018  ·  531Comentarios  ·  Fuente: ValveSoftware/Proton

La última versión de Space Engineers de Steam, con el ID de aplicación 244850, parece requerir un parche que tiene Wine-Staging.

Sí, omití las especificaciones de mi sistema, ya que no es importante para este problema. (Protón 3,16)

Confirmo:

  • [x] que no he encontrado un informe de compatibilidad existente para este juego. (No específicamente para este juego, y no específicamente para este error, aunque puede verse como una solución)
  • [x] que he comprobado si hay actualizaciones disponibles para mi sistema.

Síntomas

Los ingenieros espaciales utilizan la función GetCurrentPackageId. SE se bloquea con un error, que dice que la función se invocó con un parámetro incorrecto. Esto es causado por un error en el vino que ha sido ignorado, la preparación del vino incluye un parche para resolver este problema. No tengo la experiencia suficiente para enviar una solicitud de extracción, ni podría compilar protones porque soy un poco incompetente.

Reproducción

La reproducción es realmente fácil, descargue Space Engineers de Steam, instale .net 4.7 como se describe aquí . Después de una instalación exitosa de .net y con los comentarios de transformación funcionando, debería recibir un mensaje de error como este

Unhandled Exception: 00bb:fixme:ver:GetCurrentPackageId (0x53a800 (nil)): stub System.ArgumentException: Parameter is not valid. at System.Drawing.Image.get_Flags() at System.Windows.Forms.ControlPaint.IsImageTransparent(Image backgroundImage) at System.Windows.Forms.Control.set_BackgroundImageLayout(ImageLayout value) at Sandbox.MyMessageBoxCrashForm.InitializeComponent() at Sandbox.MyMessageBoxCrashForm..ctor(String gameName, String logPath) at Sandbox.MyErrorReporter.ReportGeneral(String logName, String gameName, String id) at Sandbox.MyCommonProgramStartup.PerformReporting() at SpaceEngineers.MyProgram.Main(String[] args) wine: Unhandled exception 0xe0434352 in thread bb at address 0x7b44b08c (thread 00bb), starting debugger... Unhandled exception: 0xe0434352 in 64-bit code (0x000000007b44b08c).

Esto se puede resolver fácilmente poniendo el parche corriente arriba en el vino (puede haber una buena razón por la que no está corriente arriba) o podríamos aplicar el parche directamente al protón.

.NET .NET-winforms Game compatibility - Unofficial Regression XAudio2

Comentario más útil

Como se solicitó anteriormente, ahora tenemos un canal especial dedicado a SE en Linux en nuestro KSH Discord oficial. No dude en unirse a nosotros allí:
https://discord.gg/keenswh

Todos 531 comentarios

Por cierto, puedo confirmar que Space Engineers, de hecho, trabaja con vino, ya que pude comenzar SE con wine-staging 3.18 sin dxvk. Se bloquea porque la API wined3d11 no era capaz de ejecutar SE durante el tiempo suficiente para reproducirse, parecía fallar en puntos aleatorios en el tiempo, pero esto me indica que SE debería ser funcional, una vez que parcheamos proton.

Intenté ubicar el parche que lo hace funcionar en la preparación de vinos, pero no pude hacerlo. O estoy completamente ciego o no existe. Puede ser que la función que no funciona sea un subproducto de algún otro error. Seguiré buscando

Ahora que me he dado cuenta de que SE se bloquea debido a algo diferente, y esa función está rota en ambas versiones de vino, ahora descubriré por qué se bloquea en primer lugar.

He descompilado SE y he descubierto dónde está la ruta del código problemático, parece que SE piensa que '-report' se pasó como un argumento de línea de comando, pero por lo que entiendo de la fuente descompilada, no debería haber una razón para que SE piense eso.

He publicado un enlace a este hilo en la página de soporte oficial de Space Engineers. Veré si alguien tiene alguna idea.

¡Vota también ese hilo en el foro para tratar de llamar la atención en caso de que sea un SE y no un problema de vino!

https://support.keenswh.com/spaceengineers/general/topic/improve-compatibility-with-steam-play-and-proton-linux-mac

No, me entendiste mal, déjame explicarte un poco más. SE usa .NET 4.7.1 que está roto en vino, pero se puede hacer que se ejecute con una solución alternativa y un poco de suerte. Aquí está la solución alternativa necesaria. Luego, SE usa Stream Output / Transform Feedback, que es una característica obsoleta en DX11, y probablemente se transfirió del renderizador DX9, que SE ha usado en el pasado. Vulkan ha recibido recientemente esta extensión "VK_EXT_transform_feedback", que permite que Stream Output funcione en Vulkan, por lo que DXVK ahora admite Transform Feedback, por lo que SE debería funcionar en wine, pero wine aún necesita parches para exponer esta extensión. Proton ya tiene estos parches, creo, no estoy seguro, no me cites. El vino de línea principal llegará en el próximo lanzamiento si ya ha sido organizado, lo que significa que la puesta en escena de vinos también lo obtendrá. Ahora, wine-staging tiene un parche que permite que SE se inicie bajo opengl, pero aún falla porque opengl no es capaz de sostener el motor gráfico. El problema en el protón no está relacionado con la retroalimentación de transformación. No puedo identificar el parche responsable de esto, ya que en realidad no sé cuál es el problema. He descompilado SE y miré el código que está causando el bloqueo, basado en el seguimiento de pila proporcionado por el tiempo de ejecución de .net y no veo una razón clara por la que falla. Publicaré las funciones relevantes más tarde.

Lo sé, intenta notificar al usuario que debe actualizar sus controladores gráficos. Por eso intenta denunciar algo. Pero aún así, funciona en la preparación de vinos, por lo que aún necesitamos encontrar el parche relevante.

Alguien puede ayudar No estoy seguro de qué buscar en esos parches.

https://stackoverflow.com/questions/11796082/invalid-parameter-when-setting-an-image y esto parece estar relacionado, aunque no estoy más cerca de resolver esto.

la línea 914 parece ser el problema, eso es lo único que puedo ver, el GdiPlus.dll es un dll nativo de vino como se puede ver aquí

GetGdiImageFlags devuelve un parámetro no válido si la imagen o las banderas están vacías, como se puede ver aquí , línea 5219, por lo que probablemente se anule en algún lugar de .net o cuando se pasa a la biblioteca nativa desde wine.

Creo que lo encontré, si lo entiendo correctamente,

GpStatus WINGDIPAPI GdipGetImageFlags(GpImage *image, UINT *flags)
{
    TRACE("%p %p\n", image, flags);

    if(!image || !flags)
        return InvalidParameter;

    *flags = image->flags;

    return Ok;
}

esta función no debería comprobar si flags es 0, ya que flags es la variable de salida, que puede ser lo que sea.

Estoy completamente equivocado en mi último comentario, odio los consejos. De todos modos, voy a hacer una copia de seguridad del stacktrace tratando de averiguar por qué la imagen es nula.

No estoy seguro de las ramificaciones legales, pero Space Engineers proporciona un EULA visible / abierto de su código fuente en github, si puede revisarlo, para que no tenga que descompilar.
Podría valer la pena echarle un vistazo si es kosher, para descubrir qué está explotando y comprometerse con el vino.

https://github.com/KeenSoftwareHouse/SpaceEngineers/blob/master/EULA.txt

Editar:
Tienen una cláusula de intertoperabilidad bajo la cual el vino cae como 'compatibilidad'

Espere unos meses hasta que Valve actualice la versión de Wine que utiliza Proton. Valve tiene algunos parches en la parte superior de Wine y necesita probar la estabilidad, por lo que hay razones por las que Valve no actualiza inmediatamente la versión de Wine que usa Proton.

@SpookySkeletons Ese código fuente no se ha actualizado desde 2016.

@aaronfranke
Esto afecta tanto al vino de vainilla como al protón, lo que llegue primero puede ascender al otro.
Space Engineers ha sido un gran problema durante años en cualquier tipo de envoltura, incluso cuando funcionaba, era estable como un taburete de dos patas.

Quizás simplemente no sé cómo funciona todo esto, pero esto podría ser algo para investigar.

6421.401: 0031: 0032: trace: module : load_dll Módulo cargado L "C: \ windows \ assembly \ NativeImages_v4.0.30319_64 \ mscorlib \ 386b8793866138dad77588a7399d11c3 \ mscorlib.ni.dll" (nativo) en 0x64478000000
La biblioteca se carga en 0x64478000000
Algún tipo de función gira y se quema aquí, compartiendo un espacio de memoria final muy cercano con mscorlib.ni.dll:

6421.486: 0031: 0032: trace: seh : RtlVirtualUnwind tipo 0 rip 64478454d69 rsp 53b5d0
6421.486: 0031: 0032: trace: seh : dump_unwind_info * * func 454cf0-454da3
6421.486: 0031: 0032: trace: seh : dump_unwind_info desenrollar información en 0x644785364bc banderas 3 prólogo 0x10 bytes función 0x64478454cf0-0x64478454da3
6421.486: 0031: 0032: trace: seh : dump_unwind_info 0x10: subq $ 0x68,% rsp
6421.486: 0031: 0032: rastreo: seh : dump_unwind_info 0xc: pushq% rbx
6421.486: 0031: 0032: trace: seh : dump_unwind_info 0xb: pushq% rsi
6421.486: 0031: 0032: trace: seh : dump_unwind_info 0xa: pushq% rdi
6421.486: 0031: 0032: rastreo: seh : dump_unwind_info 0x9: pushq% r12
6421.486: 0031: 0032: trace: seh : dump_unwind_info 0x7: pushq% r13
6421.486: 0031: 0032: trace: seh : dump_unwind_info 0x5: pushq% r14
6421.486: 0031: 0032: trace: seh : dump_unwind_info 0x3: pushq% r15
6421.486: 0031: 0032: rastreo: seh : dump_unwind_info 0x1: pushq% rbp
6421.486: 0031: 0032: trace: seh : dump_unwind_info handler 0x644783da000 datos en 0x644785364d8

Parece que mscorlib.ni.dll es un componente para .NET framework, que es conocido por ser inestable bajo el vino. Es posible que tenga suerte usando winetricks para jugar con dotnet, pero es de esperar que Ethan Lee idee una solución mejor en el futuro.

Con Mesa 18.3.1 con parches aplicados desde aquí aplicados para admitir Transform Feedback y usando winetricks para instalar .NET 4.7.2 estuve muy cerca de tener el juego funcionando usando DXVK. El juego llegó al menú principal, corriendo a 120 FPS, y se carga el cursor del mouse. Sin embargo, el juego se bloquea antes de que aparezcan el video de fondo y los botones del menú.

Los mensajes de registro parecen ser bastante relevantes en este caso. La advertencia DXVK parece estar muy relacionada con lo que sucedió con Wine:

SpaceEngineers_dxgi.log

SpaceEngineers_d3d11.log

steam-244850.log.gz

SpaceEngineers.log

VRageRender-DirectX11.log

Mi información del sistema. Tenga en cuenta que esto muestra una versión de Mesa diferente porque las compilaciones de Mesa de 32 bits y 64 bits son distintas en este momento.

Me las arreglé para jugar con wine-staging, dxvk, controladores patentados de nvidia. Todos los voxels estaban horriblemente mal formados y no he logrado reproducirlos desde que se actualizó Wine.

@FurretUber
La última versión del juego se bloquea después de un minuto o más. Opte por la revisión multijugador en la pestaña beta y funcionará.

Acabo de actualizar mi GC a NVIDIA GeForce GTX 1060 y todos mis juegos de Steam funcionan a través de Steamplay excepto SE. Presiono play y SE intenta comenzar y luego se detiene. Sin mensaje de error, sin sonido y sin ventana de juego. He probado todas las versiones de protones que se ejecutarán en vapor. Después de leer este hilo, al menos sé que muchas personas están tratando de resolverlo. Parece que se necesita una nueva versión de protón y vino. Esperaba poder usar wintricks o algo así, pero podría ser más complicado. Eso es un fastidio. ¿Quizás una biblioteca o varias bibliotecas con winecfg?

Este juego puede iniciarse con wine 4.3 y DXVK 1.0, pero necesitarás .NET 4.7.2 como instalación adicional.
El instalador de Lutris para el juego funciona perfectamente para nuevas instalaciones.
Si tiene una instalación actual de ingeniero espacial, es posible que no funcione, todavía tengo que averiguar por qué es así.
Después de eso, puede jugar el juego, pero aún habrá errores menores, como:

  • Choque cuando vuela embarcaciones contra otras embarcaciones o rocas a 20 + m / s (aparece la herramienta de informe para SE)
  • Después de la pantalla de inicio, debe hacer clic con el mouse un par de veces para acceder al menú principal, ya que la cinemática no se reproducirá; de lo contrario, solo tendrá una pantalla negra.
  • Tartamudeos de audio menores que se corrigieron principalmente con Wine 4.3, pero mejorarán a medida que faudio se desarrolle más.
  • Las pantallas de carga lenta al principio debido a nuevos sombreadores deben almacenarse en caché.

Pastebin aquí de registros cuando se ejecuta y se estrella contra un planeta que bloquea el juego.
https://pastebin.com/tPC8y3tK

Supongo que la última beta de protones aún no es Wine4.3. ¿Por qué no funciona directamente a través de Steam?

Me las arreglé para hacer trabajar a los ingenieros espaciales. Definitivamente no está en buena forma, pero funciona. Tuve que:

1) Instale dotnet472 en Space Engineers WINEPREFIX;
2) Construya FAudio con soporte xWMA y bibliotecas en directorios no predeterminados. Esta compilación de FAudio debe funcionar con Megadimension Neptunia VIIR ;
3) Haga que el libFAudio.so construido se use para ingenieros espaciales, reemplazando el Proton de lib64 o LD_PRELOAD;
4) Asegúrese de que los controladores de video sean compatibles con Transform Feedback, como Mesa 19.1.0-devel para Intel Gen9;
5) ¡Asegúrese de que la biblioteca FAudio construida NO funcionará! No puede encontrar las bibliotecas necesarias al iniciar Space Engineers;
6) Los ingenieros espaciales deberían funcionar pero sin sonido .

Hay algunos errores relacionados con los gráficos como el video de apertura que no se carga, en los bordes ese efecto debido a que el casco tiene errores, incluso entonces es genial considerando que la GPU es una Intel HD Graphics 520 y tenía errores en Windows 10 hasta hace muy poco.

Están ocurriendo muchos errores relacionados con la generación de terrenos, todos los planetas y lunas son paisajes infernales.

Imágenes:

Captura de tela_2019-03-17_23-00-38

Captura de tela_2019-03-17_22-16-08

unknown (4)

Lo hice funcionar, pero los fps eran muy lentos en el menú (nunca me molesté en reproducir) y el audio crepitaba. Usé https://github.com/Kron4ek/FAudio-Builds pero quizás no se instaló correctamente.

EDITAR: No instalé faudio esta vez, y no hay sonido, así que debo haberlo instalado correctamente. Quizás el menú principal solo lo hace porque funciona, pero como señala, la generación de terreno está completamente desordenada.

Si lo instalas a través de Lutris (sí, lo sé) tiene una compilación tkg de Wine 4.4
con F-Audio que funciona de maravilla.

El miércoles 20 de marzo de 2019 a las 3:25 a.m., jarrard [email protected] escribió:

Lo hice funcionar, pero los fps eran muy lentos en el menú (nunca me molesté en
reproducir) y el audio está crepitando. solía
https://github.com/Kron4ek/FAudio-Builds pero tal vez no se pudo instalar
correctamente.

-
Estás recibiendo esto porque comentaste.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment-474658732 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AHuHtRix32b6V_NKrATqj1t79SVRJY1Kks5vYZwdgaJpZM4XyGNi
.

Intentaré informar mis hallazgos, es una pena que no puedas descargar vino
se construye a partir de lutris, sin lutris

El domingo, 24 de marzo de 2019, 15:09, Maltahl [email protected] escribió:

Si lo instalas a través de Lutris (sí, lo sé) tiene una compilación tkg de Wine 4.4
con F-Audio que funciona de maravilla.

El miércoles 20 de marzo de 2019 a las 3:25 a.m., jarrard [email protected] escribió:

Lo hice funcionar, pero los fps eran muy lentos en el menú (nunca me molesté en
reproducir) y el audio está crepitando. solía
https://github.com/Kron4ek/FAudio-Builds pero tal vez no pudo
Instalar en pc
correctamente.

-
Estás recibiendo esto porque comentaste.
Responda a este correo electrónico directamente, véalo en GitHub
<
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment -474658732
,
o silenciar el hilo
<
https://github.com/notifications/unsubscribe-auth/AHuHtRix32b6V_NKrATqj1t79SVRJY1Kks5vYZwdgaJpZM4XyGNi

.

-
Recibes esto porque eres el autor del hilo.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment-475963063 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AHonVxCEiLofIF2Jsbrz-HZMdIWpKfgyks5vZ4c2gaJpZM4XyGNi
.

Copié wine4.4 faudio protonificado en mi carpeta de compatibilidad de Steam personalizada, reinstalé el juego y dotnet472, cargados, sin audio.
Parece que el juego podría funcionar mejor, pero tiene este tartamudeo, tal vez el audio no funcional sea el culpable.
De todos modos, no pareció solucionar mi problema de audio, probablemente necesite instalar contenedores precompilados desde algún lugar en la carpeta de protones personalizada, estoy en el arco, por lo que es probable que los compilados en otras distribuciones no funcionen.

EDITAR: construí faudio personalizado con soporte ffmpeg, todavía no tuve suerte con el sonido, probablemente haciendo algo mal, encogiéndose de hombros. De todos modos, el juego no se puede reproducir en mi opinión, todos los mapas de las bases de los planetas no funcionan / están rotos, tienen tartamudeo y fallas ... Quizás algún día.

Dudo que los contenedores de otras distribuciones no funcionen. Lo harán, solo instalarán
wine the arch way para obtener todas las dependencias y eso debería hacerlo.

El domingo 24 de marzo de 2019 a las 23:59 jarrard [email protected] escribió:

Copié wine4.4 faudio protonificado en mi carpeta de compatibilidad de Steam personalizada,
juego reinstalado y dotnet472, cargado, sin audio.
Parece que el juego podría funcionar mejor, pero tiene este tartamudeo,
tal vez el audio no funcional sea el culpable.
De todos modos, no pareció solucionar mi problema de audio, probablemente necesite instalar
contenedores precompilados de algún lugar en la carpeta de protones personalizada, estoy en arco
por lo que es probable que los compilados en otras distribuciones no funcionen.

-
Recibes esto porque eres el autor del hilo.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment-476010132 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AHonV0PNKjPrMbFLzUDFBzbXqp2ZjOUNks5vaANBgaJpZM4XyGNi
.

Sí, es solo un problema de instalación al final, también parece que solo puedo construir bibliotecas de 64 bits, no puedo ver las de 32 bits a menos que sean el mismo archivo (no tengo idea).

Cuando copié mi archivo libFAudio.so en la carpeta personalizada proton_wine y cargué SE, simplemente configuré todas mis configuraciones de volumen en cero, y no las guardaría si aumenta, así que algo se pierde.

PERO como dije, el juego tiene problemas importantes bajo Linux, así que no es como si pudiera jugar a un cajero automático de manera realista a menos que sea pura supervivencia espacial sin lunas ni planetas.

El principal problema es la generación de terreno. Estoy perplejo de cuán infernal
se pueden crear paisajes

El lunes, 25 de marzo de 2019, 06:51 jarrard [email protected] escribió:

Sí, es solo un problema de instalación al final, también parece que solo puedo
construir bibliotecas de 64 bits, no se pueden ver las de 32 bits a menos que sean el mismo archivo (no
idea).

Cuando copié mi archivo libFAudio.so en la carpeta personalizada proton_wine y
cargado SE simplemente configuró todos mis ajustes de volumen a cero, y no se guardaría
ellos si sube así que algo es un error.

PERO, como dije, el juego tiene problemas importantes en el cajero automático, así que no es como si pudiera
jugar atm de forma realista a menos que sea pura supervivencia espacial sin lunas o
planetas!

-
Recibes esto porque eres el autor del hilo.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment-476063606 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AHonVxB8URy1FGMFsPoU2eRKq1dVFeg6ks5vaGP8gaJpZM4XyGNi
.

Sí, si alguien puede darse cuenta de eso, sería genial.
Lo que estoy pensando es que el juego está detectando tal vez memoria limitada o núcleos de CPU limitados, por lo que no puede hacer el trabajo.

Si miras en el registro de errores del juego, dice que el terreno es demasiado complejo, etc. en esos casos, compruébalo.

sí, el vino con informes de memoria disponible, núcleos y demás no es genial.

El lunes, 25 de marzo de 2019 a las 6:55 a.m., jarrard [email protected] escribió:

Sí, si alguien puede darse cuenta de eso, sería genial.
Lo que estoy pensando es que el juego está detectando tal vez memoria limitada o limitada
núcleos de CPU, por lo tanto, no puede hacer el trabajo.

Si miras en el registro de errores del juego, dice que el terreno es demasiado complejo
etc en esos casos, compruébalo.

-
Recibes esto porque eres el autor del hilo.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment-476064274 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AHonV9U7V6QwDB69qwGpkGR_avGmUh7Jks5vaGTdgaJpZM4XyGNi
.

Tengo un i7 4790k, 16 GB de RAM y GTX 1080. El juego se ejecuta usando el script lutris con Wine 4.4, FAudio y DXVK y el rendimiento es bueno, 1440p @ 60FPS sin embargo:

  • los mapas planetarios no funcionan ni en modo individual ni multijugador
  • la música está ausente
  • hay un tartamudeo periódico y muy regular durante la reproducción que es muy molesto
  • el juego se congela de 30 a 60 minutos en juego, aparentemente al azar, y luego se bloquea

No creo que sea jugable en esta etapa.

Puede que haya averiguado por qué el terreno se genera incorrectamente. Parece que los mapas de altura utilizados por el juego no están siendo leídos correctamente por el juego o el vino / protón o algo ... Obtuve el terreno para generar en Alien Planet abriendo los mapas de altura del terreno (los archivos llamados front.png back.png izquierda .png right.png up.png down.png Ubicado en ~ / SpaceEngineers / Content / Data / PlanetDataFiles / Alien /) y sin modificar la imagen real los guardó con nuevas opciones. Usé la versión 2.10.6 de Gimp para sobrescribir los archivos con las siguientes opciones.
SettingsScreenshot

Curiosamente, cuando usé la cámara de espectador para ir a la luna local (a la que no apliqué la corrección), el juego simplemente se congeló en lugar de generar el terreno con picos.
Las siguientes son capturas de pantalla del juego de trabajo:
Spectator Base
Spectator High
Spectator mountains

Mi conocimiento sobre esto es muy limitado, por lo que si alguien pudiera averiguar qué está sucediendo aquí, sería muy apreciado.

Nota: Mi juego fallaba constantemente al intentar estas correcciones, pero las veces que pude ingresar al juego no fallaron durante la sesión de juego, con la excepción de cuando fui a la luna y el juego se congeló. Después de eso, no pude hacer que el juego cargara el juego guardado o comenzara un nuevo mundo sin un bloqueo. Una vez que eliminé y recreé el prefijo, el juego comenzó a funcionar nuevamente.

Muy buena solución de problemas allí. Entonces, necesitamos protón / vino para ver por qué no puede leer estos archivos PNG correctamente. ¡Podría estar relacionado con un error desagradable en el propio vino que no puede leer configuraciones específicas para esos archivos!

Desearía que esto pudiera ser enviado a un desarrollador para que lo investigue, realmente me encantaría que este juego funcionara mejor. Lamentablemente, el problema del mapa de altura no es el único problema, tenemos que lidiar con el tartamudeo del sonido y el tartamudeo del marco a continuación, pero eso podría estar parcialmente relacionado.

@ Linux74656
¿Cómo podría el material png interpretar mal el png?

Eso explicaría la locura alta-baja que está sucediendo ... Quizás solo se esté truncando de 16 a un int de 8 bits ...

¿Qué sucede con 8bpc vs 16 bpc y compresión desactivada vs compresión máxima?

Podría valer la pena pedir una solución rápida a los desarrolladores de KSH, ya que esto no parece afectar el juego base al hacer este ajuste. Sin embargo, valdrá la pena arreglar esto en el vino upstream ahora que conocemos el problema.

Lo más importante para su solución, ¿qué png lib usa el vino ?

No estoy seguro de qué usa png lib wine, pero si instala el componente de imágenes de MS Windows (windowscodecs) con winetricks en el prefijo de los juegos; la mayoría de las imágenes de los juegos (iconos, miniaturas, etc.) son de color rosa y el terreno se vuelve completamente plano.

Probé la sugerencia de
MaxCompression 8bpc gray

16bpcGray

Curiosamente, al probar el Gray de 16bpc (tanto comprimido como no comprimido), el juego no iniciaba el escenario de Alien Planet, se congelaba mientras se cargaba. Solucioné esto iniciando un escenario de Mundo vacío en modo creativo y generando el planeta.
Después de esto, decidí comparar el archivo original con los modificados. Usé una herramienta llamada tweakpng (solo Windows pero se ejecuta en vino sin problemas) para ver los datos del encabezado tanto del png proporcionado con el juego como del que modifiqué con 8bpc.
El archivo que viene con los ingenieros espaciales utiliza una escala de grises de 16bcp.
Unmodified Space Engineers
Mientras que el modificado, como se esperaba, usa una escala de grises de 8bcp.
Modified

Creo que (Keen Software House) están usando 16bcp porque permitiría una mayor profundidad de color en la escala de grises y quizás proporcionaría un terreno más suave, aunque sin poder probar la generación de terreno de 16bcp en el juego, no puedo decirlo con certeza.

Entonces, ¿el juego se carga solo con WINED3D (dxvk desactivado) y lee el terreno 16bcp correctamente entonces? Si eso no se puede hacer, entonces quizás DXVK se pueda probar en Windows10 para ver si es el culpable o si Wine es el culpable.

Es importante saber si DXVK o el equipo de WINE deberían recibir el informe de error.

El juego se bloquea cuando se usa DirectX (PROTON_USE_WINED3D = 1) con un mensaje de error.
Screenshot from 2019-04-02 21-46-36

Cuando hago clic en el cuadro vacío antes de hacer clic en el mensaje de error, puedo escuchar la música del menú principal de Space Engineers y el sonido del botón.

Si alguien puede hacer que DXVK ejecute este juego en Windows, sería genial. Mientras tanto, continuaré intentando obtener PROTON_USE_WINED3D = 1 para devolver resultados positivos.

Intente falsificar la marca de configuración personalizada de AMD, lo que creo que es posible con vinos regedit o variables en algún lugar utilizando los identificadores de proveedores y productos. Hay algunos trucos que se pueden hacer. (No puedo recordarlos de un cajero automático)

Creo que Keen eligió 16 bits específicamente para ajustar el gradiente de altura lo más cerca posible de la imagen de 2048x2048, en comparación con las 256 gradaciones de 8 bits.

Sin embargo, no veo ninguna falta de precisión en el mapeo de altura al usar esta solución alternativa ... Quizás el motor en sí espera una muestra reducida de 16 a 8 en primer lugar o se aplica implícitamente una que causa esto en primer lugar.
Keen parece estar aplicando precisión en exceso a un proceso que descarta la precisión extra.

De cualquier manera, si pudiéramos ponernos en contacto con keen y preguntarle si es una buena idea enviar mapas de altura de 8 bits, podría ser una buena curita para avanzar hacia el soporte de protones. Y definitivamente una solución real para Proton, ya que este es un problema con el vino en sí ...

@jarrard Intenté configurar la tarjeta en un AMD RX480 VideoPciDeviceID en 10de (hex) y VideoPciVendorID en 1002 (hex) y todavía recibí el mismo error. Sin embargo, pude iniciar el juego ejecutando SpaceEngineers.exe con wine 4.5 y d3d11_43 instalados. El juego llegó al menú principal, pero se bloquea al intentar cargar un escenario.

@SpookySkeletons Enviaré un correo electrónico al soporte de Keen, con un enlace a este hilo y veré si obtengo una respuesta útil. Tal vez tengamos suerte y ellos lo investiguen.

Mientras tanto, seguiré intentando que los ingenieros espaciales funcionen con d3d11.

Conseguí que WINED3D funcionara pero no a través de vapor o protones. Eliminé el prefijo anterior y creé uno nuevo con Steam. Luego instalé todo el dx11 redist de Microsoft, así como los habituales dotnet472 y xact. También tuve que obligar a los ingenieros espaciales a ejecutarse en modo de ventana, ya que de lo contrario se congelaba y fallaba constantemente. Pude superar la congelación de carga iniciando un nuevo mundo vacío en lugar de ir directamente al planeta alienígena. Usé el menú de generación para agregar el planeta alienígena para ambos mundos (resultados en las imágenes a continuación).
Screenshot from 2019-04-03 01-45-00
Screenshot from 2019-04-03 01-53-58

El 16bpc no funcionó en WINED3D, y el 8bpc todavía lo hizo.

EDITAR: Estaba buscando en WineHQ problemas similares, cuando me encontré con este informe de error:
https://bugs.winehq.org/show_bug.cgi?id=46558
Comentario 8 Hace referencia a este hilo y la solución temporal, por lo que definitivamente están al tanto de lo que está sucediendo. ¡Esperemos que puedan resolverlo! :sonreír:

En cuanto al problema de la tartamudez, he intentado varias cosas para ver si puedo reducirlo.
El problema de la tartamudez existe tanto en WINED3D como en DXVK (noté que DXVK usa menos recursos de CPU en comparación con la implementación de Wine D3D). Y el problema parece ocurrir en los mismos intervalos sin importar la configuración de gráficos que use.

Probé varias configuraciones de CPU con los siguientes resultados.
Configuré mi cpu (i7 4770k) para que solo comience con un núcleo (usé el BIOS para deshabilitar todos menos uno y sin hiperprocesos). El juego tardó más en cargarse, pero una vez en el mundo, el tartamudeo no pareció verse afectado.

Luego subclockeé (4.2Ghz es lo que generalmente lo ejecuto en) mi CPU a 2.5Ghz (con todos los núcleos y el hiperproceso habilitado nuevamente). El tartamudeo siguió ocurriendo en el mismo intervalo, pero la duración del tartamudeo fue notablemente peor, en lugar de que el tartamudeo duró una fracción de segundo, pareció durar un segundo o más.

Entonces, hice overclockeé mi CPU a 4.5Ghz y el tartamudeo aún se produjo en el mismo intervalo, pero fue ligeramente menos notorio que las velocidades de 4.2Ghz a las que normalmente se ejecuta.

Entonces, ¿podría ser esto un problema de hilo de actualización del juego? ¿El juego realiza cálculos a intervalos establecidos y abruma a la CPU? Si es así, ¿qué haría que esto se notara en Linux / wine / proton, en comparación con imperceptible en Windows?

Me comuniqué con el soporte de Keen y les conté los problemas que estamos experimentando. Les di los tres problemas principales para que esto funcione en Linux (el terreno, el tartamudeo y el audio), y les expliqué cuál es el problema con el terreno. También les vinculé este hilo. Respondieron con algo parecido a que están vigilando Linux, pero no están planeando ningún cambio en este momento. Creo que por el momento estamos solos.

¿Quizás puedas grabar una carrera y publicarla en el foro DXVK? todavía podría ser reparable al final de DXVK, ¿crees?

OK, abrí un problema e hice referencia a este hilo.

ACTUALIZACIÓN: No es DXVK la causa del problema. Lo que significa que lo más probable es que nuestro problema no esté relacionado con los gráficos.

Nota rápida para cualquiera que quiera deshacerse de la molesta pantalla negra y la necesidad de hacer clic para que el juego inicie el menú principal: puede cambiar el nombre (solo agregue .old al final del archivo) el archivo aquí: ~ SpaceEngineers /Content/Videos/KSH.wmv y el juego comienza con más normalidad. Incluso obtengo algunas imágenes de inicio cuando el juego comienza en pantalla completa.
20190405125148_1

Desarrollo interesante: ahora que se han descartado los problemas gráficos y DXVK, me he centrado en el audio. Y creo que puedo estar en algo.

Si convierte la música del menú principal (~ / SpaceEngineers / Content / Audio / MUS / se_mainmenu1.xwm) a un formato mp3 (pero asegúrese de que el nombre del archivo y la extensión sean los mismos que los originales, IE se_mainmenu1.xwm), entonces hay no hay retraso en el menú principal, aunque la música no se reproduce. Si simplemente elimina el archivo, el retraso en el menú aún existe y no se reproduce. Entonces, si le das al motor del juego un tipo de archivo de sonido que no puede reconocer, parece que el problema del retraso del menú está resuelto.

Traté de ver si esto solucionaba el tartamudeo en el juego, pero cuando convierto la otra música de la misma manera, el juego entra en un ciclo de carga infinito al intentar iniciar un juego. También intenté desactivar el sonido en el vino y en el juego, pero eso no tuvo ningún efecto en ninguno de los casos.

Si abre el se_mainmenu1.xwm original en VLC, ocurre el mismo tipo de tartamudeo que en el juego.

¿No son los archivos XWM un formato de archivo de microsoft de mierda?

Sí, fallout4 / skyrim, todos los juegos que han tenido problemas con el audio en el pasado usaron este formato de xaudio2.

He tenido muchos problemas con Fallout 4, especialmente con el audio. Pero ha mejorado con el tiempo, y no veo el mismo tipo de tartamudeo en Fallout 4 que en SpaceEngineers. Ahora la pregunta es ... ¿Por qué esto aparentemente está causando un problema en Space Engineers sin tener el mismo problema en Fallout 4?

¿Ha intentado deshacerse de FAudio y simplemente instalar MS xact o xaudio lo que sea a través de winetricks? eso es lo que solía hacer para que el audio de fallout4 funcione (eventualmente se cortaría)

Podría valer la pena intentarlo.

Actualmente estoy usando xact para ingenieros espaciales. Nunca pude hacer que los ingenieros espaciales cargaran solo usando Faudio (compilaciones personalizadas de Winetricks o Kron4eks).
Acabo de comprobar, la dosis de música del menú principal de fallout 4 no tiene ningún tartamudeo en el juego, pero si extrae el MUS_MainTheme.xwm de Fallout4-Sounds.ba2 y lo reproduce con vlc, el mismo tartamudeo de audio que está en los ingenieros espaciales está presente.

Ya no estoy seguro de si el tartamudeo en el juego es un problema de audio. Después de sentirme demasiado frustrado para lidiar con el audio, traté de volver atrás y ver en qué versión del juego comenzó el problema. El tartamudeo en el juego existe desde la versión 1.172 (que es tan antigua como la pestaña beta de Steam). Pero el problema de audio en el menú principal no existe en esta versión. De hecho, el problema del audio del menú principal solo comenzó en la versión 1.188 del juego. Pero el tartamudeo en el juego está presente en todas las versiones disponibles en la pestaña de betas.

Aquí hay algo relacionado con los ingenieros espaciales, con suerte lo entretendrá. Mientras esperamos una solución.
https://gist.github.com/Linux74656/6093bd3fe9457f29f2f544681a262572

El error del vóxel es un error windowscodecs en el vino. Describí el error y adjunté un parche de reparación en https://bugs.winehq.org/show_bug.cgi?id=46558. Probado trabajando para mí en vapor bajo vino. Supongo que Proton funcionaría igual también con un windowscodecs wine-dll actualizado.

Sí, pero ¿qué pasa con los problemas de tartamudeo y distorsión del sonido?

@jarrard funciona para mí usando https://github.com/Kron4ek/FAudio-Builds . Supongo que las versiones de vino y protones incluidas son demasiado antiguas.

@kainz , ¿tienes algo que funcione mal en el juego con las compilaciones recientes de FAudio y tu parche de windowscodecs? ¿O está funcionando bien?

Las sombras de

Así que todavía falta un tiempo.
Espero que las futuras versiones de vino puedan resolver estos problemas restantes.
Es bueno tener juegos como este que claramente señalan problemas en la capa de compatibilidad del vino, casos duros pero reparables.

Aquí hay un windowscodecs.dll.so precompilado con el parche del error vinculado. Suelta esto en tu directorio Proton 4.2 / dist / wine / lib64 sobrescribiendo el archivo existente.

Hay un efecto secundario: las imágenes de vista previa del escenario y la partida guardada no se cargan, solo están rellenas de color magenta. Es muy posible que esto se deba a un descuido de mi parte al construirlo. No he notado ningún otro efecto nocivo.

windowscodecs.zip

El juego no comienza a través de Steam para mí. ¿Aún necesita que .NET 472 se instale con el último protón? ¿Faudio todavía está desactualizado con proton?

¿Es eso lo que impide que se cargue? ¿Por qué Faudio no tiene soporte WMV?
habilitado por defecto? ¿hay efectos secundarios negativos?

De nuevo, ¿sigue siendo necesario .net?

El viernes 26 de abril de 2019 a las 16:57, lucifertdark [email protected] escribió:

Construyo Faudio desde la fuente para agregar el soporte wmv, es realmente fácil y
rápido.

-
Estás recibiendo esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment-486956240 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AEE7DLTBNX7CLOZAPUK3FYDPSKVFNANCNFSM4F6IMNRA
.

-
- - - - - - -
He notado que cuando me esfuerzo por lograr y triunfar, me distancio
Desde el momento.

Aún necesitas dotnet472 sí. Necesitaba especificar -q al instalarlo a través de protontricks.

La última compilación de FAudio tampoco me funciona, simplemente falla de todos modos. xact parece arreglarlo pero no hay sonido.

Y también veo ese tartamudeo periódico.

Esto está solo parcialmente relacionado, pero ¿alguien está experimentando crepitaciones con
faudio? Reiniciar pulseaudio lo soluciona. Esto sucede con Fallout4,
Quiero saber si pasa algo similar con SE. Además si abro y
cerrar FO4 varias veces sin reiniciar el pulso, empeora.

El viernes 26 de abril de 2019 a las 10:27, roothorick [email protected] escribió:

Aún necesitas dotnet472 sí. Necesitaba especificar -q al instalarlo
a través de protontricks.

La última compilación de FAudio tampoco funciona para mí, simplemente bloquea todos los
mismo. xact parece arreglarlo pero no hay sonido.

Y también veo ese tartamudeo periódico.

-
Recibes esto porque eres el autor del hilo.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment-486973608 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AB5COVZBOCGLBILENE4RB3DPSK4GRANCNFSM4F6IMNRA
.

tartamudeo periódico, sí, hasta que se resuelva no voy a tocar esto.

¿Es eso lo que impide que se cargue? ¿Por qué Faudio no tiene habilitado el soporte WMV de forma predeterminada? ¿hay efectos secundarios negativos? De nuevo, ¿sigue siendo necesario .net?
...
El viernes 26 de abril de 2019 a las 16:57, lucifertdark @ . * > escribió: Construyo Faudio desde la fuente para agregar el soporte wmv, es realmente fácil y rápido. - Estás recibiendo esto porque te mencionaron. Responda a este correo electrónico directamente, véalo en GitHub < # 1792 (comentario) > o silencie el hilo https://github.com/notifications/unsubscribe-auth/AEE7DLTBNX7CLOZAPUK3FYDPSKVFNANCNFSM4F6IMNRA .
- - - - - - - - He notado que cuando me esfuerzo por lograr y triunfar, me distancio del momento.

Ignore lo que escribí (eliminado ahora). No estoy seguro de qué estaba hablando.

Ni siquiera puedo hacer que Faudio trabaje con esto, ni autocompilado ni el dll de Kron4eks ya que ambos fallan con un error de "no aplicación asociada". El nativo de Xaudio funciona, pero el tartamudeo es insoportable y parece afectar el rendimiento de los gráficos también, sin embargo, aumentar la latencia de pulseaudio ayuda un poco.

También probé la corrección de windowscodecs vinculada arriba para el suelo, mientras que soluciona el problema, obtengo skyboxes rosas.

Parece que te falta dotnet472. Eso es todavía necesario.

El 6 de mayo de 2019 2:57:47 a.m. CDT, fls2018 [email protected] escribió:

Ni siquiera puedo hacer que Faudio trabaje con esto, ni autocompilado ni el
Los dll de Kron4eks ya que ambos fallan con un error de "no aplicación asociada".
El nativo de Xaudio funciona pero el tartamudeo es insoportable y parece afectar
rendimiento de los gráficos también, aumentar la latencia del audio del pulso ayuda un poco
aunque.

También probé la corrección de los codecs de Windows vinculados arriba para el suelo, mientras
soluciona el problema, obtengo skyboxes rosas.

-
Estás recibiendo esto porque te mencionaron.
Responda a este correo electrónico directamente o véalo en GitHub:
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment -489537313

-
Enviado desde mi dispositivo Android con K-9 Mail. Por favor, disculpe mi brevedad.

Parece que te falta dotnet472. Eso es todavía necesario.

No, tengo dotnet472 instalado correctamente, el juego ni siquiera se ejecutaría con xaudio configurado como nativo de lo contrario.

El problema es que Faudio habilitado el juego se bloquea después de la pantalla de inicio. Usando xaudio estándar se ejecuta pero con tartamudeo.

Ejecutar Space Engineer ahora funciona con pequeños fallos de audio y pequeños tartamudeos, pero no más errores gráficos y errores de dibujo.

Tuve que cambiar a Wine 4.8 con DXVK 1.2 después de usar el instalador de Lutris

Las heladas ocurren si golpea el suelo / barcos / rocas con 30 m / so más rápido
Registro del bloqueo, incluida la información del sistema y la información del controlador aquí:
https://pastebin.com/yTV7FcBa

Hola @Maltahl , este compromiso debería ayudar a que la GPU se cuelgue del impacto. Vuelva a realizar la prueba con mesa 19.0.4 o mesa git master.

Proton 4.2-4 tiene un nuevo problema de terreno, la base en la misión 3 del primer escenario está flotando en el aire.

Screenshot from 2019-05-14 22-12-19

Si puede probar, ¿sucede con vino 4.7 o vino 4.8?

El 14 de mayo de 2019 4:13:59 PM CDT, fls2018 [email protected] escribió:

Proton 4.2-4 tiene un nuevo problema de terreno, la base en la misión 3 del
El primer escenario está flotando en el aire.

Screenshot from 2019-05-14<br />
  22-12-19

-
Estás recibiendo esto porque te mencionaron.
Responda a este correo electrónico directamente o véalo en GitHub:
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment -492412089

-
Enviado desde mi dispositivo Android con K-9 Mail. Por favor, disculpe mi brevedad.

Si puede probar, ¿sucede con vino 4.7 o vino 4.8?
...
El 14 de mayo de 2019 4:13:59 PM CDT, fls2018 @ . * > escribió: Proton 4.2-4 tiene un nuevo problema de terreno, la base en la misión 3 del primer escenario está flotando en el aire.Screenshot from 2019-05-14 22-12-19 - Estás recibiendo esto porque te mencionaron. Responda a este correo electrónico directamente o véalo en GitHub: # 1792 (comentario)
- Enviado desde mi dispositivo Android con K-9 Mail. Por favor, disculpe mi brevedad.

No estoy seguro, tendré que compilar un nuevo protón TKG, sin embargo, baso mi informe en el Proton 4.2-4 publicado hoy, que estaba destinado a solucionar estos problemas del terreno. Hasta ahora solo se ha arreglado el terreno puntiagudo en la misión 2.

También tenga en cuenta que no obtengo este problema con la corrección de wincodecs publicada anteriormente en este hilo (solo el cielo rosa / miniaturas).

Desafortunadamente, incluso después de cambiar el nombre del archivo aquí: ~ SpaceEngineers / Content / Videos / KSH.wmv (solo agregue .old al final del archivo) todavía me bloqueo después del logotipo de Space Engineers.

Manjaro
Núcleo: 5.0.9-2
Controlador de Nvidia: 418.56

https://gist.github.com/Evernow/6c6b02c027a4df3cb114037460b73ff2

Desafortunadamente, incluso después de cambiar el nombre del archivo aquí: ~ SpaceEngineers / Content / Videos / KSH.wmv (solo agregue .old al final del archivo) todavía me bloqueo después del logotipo de Space Engineers.

Manjaro
Núcleo: 5.0.9-2
Controlador de Nvidia: 418.56

https://gist.github.com/Evernow/6c6b02c027a4df3cb114037460b73ff2

Lo confirmo, el juego se bloquea inmediatamente después del inicio.
SO: Archlinux
Controladores de NVidia: 418.74

Parece que 4.2-4 solucionó el problema del terreno corrupto. Ya no debería necesitar mi DLL especial. dotnet472 y xact todavía se requieren.

El tartamudeo sigue ahí. Estoy bastante seguro de que no está relacionado con el audio; es demasiado irregular para eso. Parece empeorar a medida que te acercas a los vóxeles (planetas / asteroides) y mejorar un poco si te quedas quieto. Mi instinto dice bloqueo / sincronización relacionados con la transmisión. No sabría por dónde empezar a perseguir eso.

Parece que 4.2-4 solucionó el problema del terreno corrupto. Ya no debería necesitar mi DLL especial. dotnet472 y xact todavía se requieren.

El tartamudeo sigue ahí. Estoy bastante seguro de que _no_ está relacionado con el audio; es demasiado irregular para eso. Parece empeorar a medida que te acercas a los vóxeles (planetas / asteroides) y mejorar un poco si te quedas quieto. Mi instinto dice bloqueo / sincronización relacionados con la transmisión. No sabría por dónde _comenzar_ perseguir eso.

¿Puedes probar la Misión 3 "Campamento en ruinas" del escenario "El primer salto"? Es posible que el primer planeta en la misión 2 ya no sea puntiagudo, pero no ha solucionado completamente el problema aquí.

@FurretUber hizo una guía para hacer que el juego se ejecute hace unos meses en este hilo, pero ¿eso ha cambiado desde entonces? Es decir, ¿reemplazar faudio con xact? ¿Se requieren protontricks o puede funcionar la instalación de dotnet472 a través de winetricks normales? (¿dándole el WINEPREFIX correcto?)
Traté de seguir esas instrucciones originales con 4.2-4 y todavía me quedó la pantalla de bienvenida negra.

dotnet472 y xact se pueden instalar normalmente a través de winetricks, use la bandera --unattended (o -q), yo solo uso sppfx scripts.

PROTON_PATH = "$ HOME / .steam / steam / steamapps / common / Proton 4.2 /" sppfx 275850 winetricks - dotnet472 xact sin supervisión

Intenté ejecutar WINEPREFIX="/home/[user]/.steam/steam/steamapps/compatdata/244850/pfx/" winetricks -q dotnet472 xact
Pero luego el juego aún no se inicia, en modo winxp (en el que Winetricks lo establece) o win7. Tengo el lanzamiento más reciente de winetricks.

estás codificando tu prefijo si lo haces de esa manera, por eso utilizo SPPFX

Utilice los últimos trucos de protones. Usar winetricks directamente puede causar problemas porque puede invocar la versión incorrecta de Wine. Los protontricks recientes configuran el entorno para que los winetricks utilicen Wine empaquetado de Proton.

protontricks 244850 -q dotnet472 xact

(Esto lleva mucho tiempo; tenga paciencia).

Sí, básicamente lo que estaba diciendo. SPPFX es un conjunto de scripts que es como protontricks, pero también funcionará con cualquier otro comando.

Si solo tiene la intención de usar scripts de trucos, entonces protontricks está bien, pero a veces quiero instalar algo manualmente o ejecutar winreg, etc.

protontricks 244850 -q dotnet472 xact

Al ejecutar eso, y después de cambiar el nombre del archivo aquí: ~ SpaceEngineers / Content / Videos / KSH.wmv (solo agregue .old al final del archivo), pude no solo acceder al menú principal, sino cargar un ¡juego! La velocidad de fotogramas es realmente aceptable (llegando a los 90), pero la parte molesta es el tartamudeo, lo que hace que la experiencia no sea nada agradable.

¡Pero realmente funciona! Y tampoco se bloqueó, ¡el único problema extraño que experimenté es similar al que fls2018 informó con el terreno! ¡Maravilloso trabajo Valve, CodeWeavers, doitsujin y realmente todos los involucrados! ¡Nos estamos acercando tanto!

Desafortunadamente, incluso después de cambiar el nombre del archivo aquí: ~ SpaceEngineers / Content / Videos / KSH.wmv (solo agregue .old al final del archivo) todavía me bloqueo después del logotipo de Space Engineers.
Manjaro
Núcleo: 5.0.9-2
Controlador de Nvidia: 418.56
https://gist.github.com/Evernow/6c6b02c027a4df3cb114037460b73ff2

Lo confirmo, el juego se bloquea inmediatamente después del inicio.
SO: Archlinux
Controladores de NVidia: 418.74

Intente instalar protontricks y ejecutar esto:

protontricks 244850 -q dotnet472 xact

Luego cambie el nombre del archivo aquí: ~ SpaceEngineers / Content / Videos / KSH.wmv (simplemente agregue .old al final del archivo)

Pude hacer que el juego funcionara

YO:

  1. SE instalado
  2. Lo ejecuté una vez para generar el prefijo
  3. Corrió protontricks 244850 -q dotnet472 xact
  4. Renombrado el archivo KSH.wmv
  5. Intenté ejecutar SE con el botón de reproducción en 4.2-4
    Pero el juego permanece en "ejecución" y nunca se inicia. Ningún archivo exe aparece en el administrador de tareas.

El archivo de registro es muy corto y tiene esta línea clave:
313044.458:0027:0028:err:module:fixup_imports_ilonly mscoree.dll not found, IL-only binary L"SpaceEngineers.exe" cannot be loaded 313044.458:0027:0028:err:module:LdrInitializeThunk Importing dlls for L"Z:\\home\\james\\.local\\share\\Steam\\steamapps\\common\\SpaceEngineers\\Bin64\\SpaceEngineers.exe" failed, status c0000135
steam-244850.log

Parece que .NET no se instaló correctamente.

¿Qué causa que .NET se instale incorrectamente?

Winetricks tiene un problema con el verbo dotnet476 y tiene una 'solución de error'. Intente marcar el verbo para que no se solucione 'en wine 4.0 o más reciente.

El 16 de mayo de 2019 2:23:41 PM CDT, pipnina [email protected] escribió:

¿Qué causa que .NET se instale incorrectamente?

-
Estás recibiendo esto porque te mencionaron.
Responda a este correo electrónico directamente o véalo en GitHub:
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment -493199360

-
Enviado desde mi dispositivo Android con K-9 Mail. Por favor, disculpe mi brevedad.

Desafortunadamente, incluso después de cambiar el nombre del archivo aquí: ~ SpaceEngineers / Content / Videos / KSH.wmv (solo agregue .old al final del archivo) todavía me bloqueo después del logotipo de Space Engineers.
Manjaro
Núcleo: 5.0.9-2
Controlador de Nvidia: 418.56
https://gist.github.com/Evernow/6c6b02c027a4df3cb114037460b73ff2

Lo confirmo, el juego se bloquea inmediatamente después del inicio.
SO: Archlinux
Controladores de NVidia: 418.74

Intente instalar protontricks y ejecutar esto:

protontricks 244850 -q dotnet472 xact

Luego cambie el nombre del archivo aquí: ~ SpaceEngineers / Content / Videos / KSH.wmv (simplemente agregue .old al final del archivo)

Pude hacer que el juego funcionara

Sí, logré ejecutar el juego. No pude instalar dotnet472 sin el parámetro -q , dio un error. Pero el juego todavía no se puede jugar para mí. El FPS es demasiado bajo, el audio tartamudea y los artefactos gráficos (por ejemplo, espacio negro de color rosa). Puse la calidad gráfica en baja, pero con el mismo resultado. Mi tarjeta de video es NVidia GTX 770, los controladores son 418.74.

FPS está bien para mí, sin embargo, hay tartamudeo de audio y gráficos (cada vez que el audio tartamudea, los gráficos también lo hacen).

(Controlador Arch linux y AMDGPU en Gigatebyte RX 560 4GB OC)

Ahora he jugado y probado el juego durante aproximadamente 2 horas y encontré algunos errores adicionales:

  • Los efectos de partículas no funcionan. Esto incluye efectos de herramientas, humo, etc.
  • El posprocesamiento también parece no funcionar
  • Los faros de ingeniería funcionan, pero solo dan como resultado un cono de luz sólido, sin desvanecimiento en los bordes, etc. Los focos y las luces interiores parecen funcionar bien.

Esto se suma a la tartamudez que experimentan todos los demás. Nada de esto rompe el juego, pero son errores de todos modos.

¿Qué motor gráfico usa SE? ¿unidad?

Space Engineers utiliza un motor desarrollado internamente llamado VRAGE. El mismo motor se utiliza en Medieval Engineers y Miner Wars 2081.

probablemente explica mucho, probablemente muchos de los hacks no conformes.

No necesitaba el cambio de nombre para que funcionara. Solo la tartamudez queda como un problema real.

El fondo del menú no mostrará los videos. Eso podría investigarse, podría resolver otras cosas también.

No estoy seguro, pero el juego parece mejor ahora, todavía parece lento a pesar de que los fps son altos, pero la gran tartamudez parece haber desaparecido.

Aunque los fps bajan mucho al guardarlo parece. Todavía se necesitan mejoras para que la experiencia sea completamente jugable, pero está llegando rápido. ¡Buen trabajo a todos!

¿Qué hiciste para deshacerte de la tartamudez (que está 100% relacionada con el audio, ya que desaparece cuando presiono el botón de silencio)? último protón?

Hmm, todo lo que recibo por un tiempo es este mensaje de error:

grafik

¿Alguna idea de como arreglarlo?
Estoy usando Proton 4.2-7 y tengo xact, dotnet472 instalado

¿Qué hiciste para deshacerte de la tartamudez (que está 100% relacionada con el audio, ya que desaparece cuando presiono el botón de silencio)? último protón?

No creo que haya hecho nada, quiero decir que la tartamudez sigue ahí, es mucho menos frecuente que antes, al menos para mí. tal vez el nuevo controlador nvidia (on430.14 en este momento) y actualizaciones de Proton?

Hola @kellerkindt , DXVK necesita una pila de controladores Vulkan que funcione para traducir DirectX 11 a Vulkan. ¿Funciona alguna aplicación vulkan como vulkaninfo ?

Copie la información de su sistema de Steam ( Steam -> Help -> System Information ) y póngala en resumen , luego incluya un enlace a la esencia en este informe de problemas.

Hola @kellerkindt , DXVK necesita una pila de controladores Vulkan que funcione para traducir DirectX 11 a Vulkan. ¿Funciona alguna aplicación vulkan como vulkaninfo ?

Copie la información de su sistema de Steam ( Steam -> Help -> System Information ) y póngala en resumen , luego incluya un enlace a la esencia en este informe de problemas.

Aqui tienes:

vulkaninfo
vapor-info

De un vistazo, parece que está bien. Agregue PROTON_LOG=1 %command% a las opciones de inicio del juego y arrastre y suelte el $ HOME / steam-244850.log generado en el cuadro de comentarios.

De un vistazo, parece que está bien. Agregue PROTON_LOG=1 %command% a las opciones de inicio del juego y arrastre y suelte el $ HOME / steam-244850.log generado en el cuadro de comentarios.

Aqui esta

Parece que wine-mono tiene problemas con un par de variantes de Mono: DllImport error loading library 'd3d11': 'Datei nicht gefunden. todo el registro.

11121.045:0025:0026:trace:module:get_load_order looking for L"C:\\windows\\system32\\d3d11.dll"
11121.045:0025:0026:trace:module:get_load_order_value got environment  for L"d3d11"
11121.046:0025:0026:warn:module:load_dll Failed to load module L"d3d11.dll"; status=c0000135

Esto indica que la variable de entorno WINEDLLOVERRIDES ha desactivado d3d11.dll.

11121.045:0025:0026:trace:module:get_load_order looking for L"C:\\windows\\system32\\d3d11.dll"
11121.045:0025:0026:trace:module:get_load_order_value got environment  for L"d3d11"
11121.046:0025:0026:warn:module:load_dll Failed to load module L"d3d11.dll"; status=c0000135

Esto indica que la variable de entorno WINEDLLOVERRIDES ha desactivado d3d11.dll.

Bueno, no está establecido (por mí):

$ echo ">> $WINEDLLOVERRIDES <<"
>>  <<

Desde la última versión de proton, he encontrado este mensaje de error en otros juegos. A veces siguen funcionando después de hacer clic en Aceptar, como un trueno de guerra en protón. Esto me hace preguntarme si es un error. He probado proton tanto en arch linux como en openmandriva lx4 znver. No estoy seguro de si importaría algo, pero yo personalmente uso un RX 560 con controladores AMDGPU ... No estoy seguro si el otro comentarista aquí también usa AMD.

No puedo instalar dotnet472.
Mis winetricks, la versión es 20190615-next.
cuando lo intento: protontricks 244850 -q dotnet472 xact Está fallando en dotnet 40 con
dotnet40 install completed, but installed file (...).steam/steam/steamapps/compatdata/244850/pfx/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/ngen.exe not found

No puedo instalar dotnet472.
Mis winetricks, la versión es 20190615-next.
cuando lo intento: protontricks 244850 -q dotnet472 xact Está fallando en dotnet 40 con
dotnet40 install completed, but installed file (...).steam/steam/steamapps/compatdata/244850/pfx/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/ngen.exe not found

Estoy teniendo exactamente el mismo problema. No tengo idea de cómo solucionarlo. Estoy usando Ubuntu 18.04 y protontricks 1.2.2 con una GPU AMD R9 Fury.

No puedo instalar dotnet472.
Mis winetricks, la versión es 20190615-next.
cuando lo intento: protontricks 244850 -q dotnet472 xact Está fallando en dotnet 40 con
dotnet40 install completed, but installed file (...).steam/steam/steamapps/compatdata/244850/pfx/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/ngen.exe not found

Estoy teniendo exactamente el mismo problema. No tengo idea de cómo solucionarlo. Estoy usando Ubuntu 18.04 y protontricks 1.2.2 con una GPU AMD R9 Fury.

Usé la GUI de Protontricks sin problemas, ¿tal vez intentarlo?

No puedo instalar dotnet472.
Mis winetricks, la versión es 20190615-next.
cuando lo intento: protontricks 244850 -q dotnet472 xact Está fallando en dotnet 40 con
dotnet40 install completed, but installed file (...).steam/steam/steamapps/compatdata/244850/pfx/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/ngen.exe not found

Estoy teniendo exactamente el mismo problema. No tengo idea de cómo solucionarlo. Estoy usando Ubuntu 18.04 y protontricks 1.2.2 con una GPU AMD R9 Fury.

Usé la GUI de Protontricks sin problemas, ¿tal vez intentarlo?

Lo intenté y sigo recibiendo el siguiente error:
dotnet40 install completed, but installed file /home/username/.steam/steam/steamapps/compatdata/244850/pfx/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/ngen.exe not found

No puedo instalar dotnet472.
Mis winetricks, la versión es 20190615-next.
cuando lo intento: protontricks 244850 -q dotnet472 xact Está fallando en dotnet 40 con
dotnet40 install completed, but installed file (...).steam/steam/steamapps/compatdata/244850/pfx/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/ngen.exe not found

Estoy teniendo exactamente el mismo problema. No tengo idea de cómo solucionarlo. Estoy usando Ubuntu 18.04 y protontricks 1.2.2 con una GPU AMD R9 Fury.

Usé la GUI de Protontricks sin problemas, ¿tal vez intentarlo?

Lo intenté y sigo recibiendo el siguiente error:
dotnet40 install completed, but installed file /home/username/.steam/steam/steamapps/compatdata/244850/pfx/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/ngen.exe not found

¿En qué distribución estás? ¿Quizás un paquete esté desactualizado?

¿En qué distribución estás? ¿Quizás un paquete esté desactualizado?

Estoy en Ubutntu 18.04. Me aseguré de buscar actualizaciones de protontricks antes de ejecutar el comando. Como escribí, la última versión disponible para mí parece ser la 1.2.2.

¿En qué distribución estás? ¿Quizás un paquete esté desactualizado?

Estoy en Ubutntu 18.04. Me aseguré de buscar actualizaciones de protontricks antes de ejecutar el comando. Como escribí, la última versión disponible para mí parece ser la 1.2.2.

Vaya a Steam, Ayuda, Información del sistema, selecciónelo todo (CTRL + A) y luego cópielo todo (CTRL + C) y péguelo en pastebin.com si puede por favor

Hola, tengo exactamente el mismo error que @ bwyan86 y @LordJABA . Aquí está la información de mi sistema https://pastebin.com/7Ab8CY1Q

protontricks 244850 -q dotnet472 xact requería una combinación PRECISA de winetricks 20190310 y protontricks 1.2.2, ni más ni menos, ya que fallaría al instalar dotnet40.

Los mundos planetarios se bloquean en configuraciones de gráficos más altas que bajas. Hablando de planetas, el terreno está completamente roto (Proton 4.2-9):
Planet glitched

Gracias por la pista @LunaSquee . Sin embargo, tuve que ejecutar protontricks 244850 -q --force dotnet472 xact . Sin embargo, no puedo confirmar el terreno accidentado en los planetas. En el juego, experimento congelamientos / tartamudeos cortos y molestos en intervalos de 1-2 segundos. Pero esto cubre la experiencia actual de otros usuarios con respecto a las publicaciones en protondb. ¡Ojalá esto se solucione! Deseando.

¿En qué distribución estás? ¿Quizás un paquete esté desactualizado?

Estoy en Ubutntu 18.04. Me aseguré de buscar actualizaciones de protontricks antes de ejecutar el comando. Como escribí, la última versión disponible para mí parece ser la 1.2.2.

Estoy teniendo exactamente el mismo problema que tú, estoy en ubuntu 16.04

@EduardoGodoy , ¿ probaste las sugerencias de @LunaSquee con protontricks 1.2.2 y winetricks 20190310?

El terreno y las sombras ahora funcionan correctamente ...

El podría pasar como una calificación de plata si pudiéramos identificar la causa del tartamudeo en el juego. Tiene un promedio de 110-150 ms en el contador de tiempo de fotogramas DXVK.
¿Hay alguna forma de perfilar las aplicaciones dotnet debajo de wine para detectar el problema?

¿Alguien dijo que estaba relacionado con el audio? tal vez eliminar todos los controladores de audio y componentes / archivos y probar nuevamente?

El juego se bloquea inmediatamente cuando falta la carpeta de audio.
Desactivar todas las configuraciones de audio no parece cambiar nada.

@fwillo Si está decidido y tiene unas pocas horas de tiempo, mi solución sucia fue:

  • abrir /usr/bin/winetricks en el editor de texto
  • busque load_dotnet472()
  • Algunas líneas a continuación son una llamada a la versión anterior de dotnet como w_call dotnet462 .
  • Seguí la cadena y quité el 4.0 del último.
  • intentó de nuevo
  • falló en alguna versión posterior
  • cada vez que sucedió, encontré un enlace de descarga y argumentos para el instalador en el script winetricks y lo instalé dentro del prefijo wine a mano. (¿4.0 parece estar integrado en el vino? / No es necesario, se necesitan los más nuevos)
  • después de esa llamada de eliminación / comentario a la versión de dotnet recién instalada en el script winetricks y vuelva a intentarlo

Después de 2 o 3 horas conseguí que los ingenieros espaciales trabajaran sin problemas ... tal vez excepto la parte inicial: solo tendrá una pantalla en blanco, debe esperar al menos ~ 15 segundos y hacer clic con el mouse para que aparezca el menú.
Después de eso, el rendimiento es el mismo que en Windows para mí, pero si instalo alguna modificación, no funcionará en modo Steam sin conexión; no estoy seguro si ese es el juego o mi configuración.

EDITAR: para que quede claro, no estoy corriendo bajo protón sino a través de

lutris wine steam runner
wine version: ge-protonified-nofshack-4.9
DXVK:1.2.3

Puede obtener GE de protones para vapor precompilado con 4.11 a más tardar. Funciona con spengies.
Entonces lo que estás diciendo es:
¿Usó el mono incorporado de Proton para dotnet 4.0 y versiones anteriores, pero instaló los binarios de Microsoft para todo lo que pasó y funcionó sin tartamudeo?

¿Podrías ~ comprimir y cargar tu botella de vino o ~ ser un poco más conciso sobre cómo lograste esto?

Moderator note: Above line partially struck out because it would contain copyrighted libraries from the workaround.

@LordJABA Estoy dispuesto a las notas de

@SpookySkeletons Estoy seguro de que
@fwillo Lo siento por las instrucciones poco claras, dudaba en publicarlas de esa manera. Estuve deambulando por aquí unos días después de que lo descubrí, por lo que no había historia de bash ni recuerdos frescos.

haré todo lo posible para limpiarlo para usted a continuación, asumiendo un sistema nuevo.

  • Primero instale wine, asegúrese de que también instaló wine32: i386 - lo hizo por mí,
  • instalar Lutris https://lutris.net/downloads/
  • En lutris, haga clic en el engranaje cerca de "Corredores" en la parte superior izquierda para acceder al administrador de corredores,
  • Busque "Wine" en la lista, haga clic en el botón azul "Administrar versiones" y asegúrese de tener ge-protonified-nofshack-4.9 en la lista y habilitado
  • Justo debajo de "Wine" en la lista debe estar "Wine Steam", haga clic en "Opciones de corredor" junto a él y agregue %command% -no-cef-sandbox en "Argumentos", configure la versión correcta de vino y marque detener el vapor después de que el juego salga
  • Haga clic en Instalar Runner

Debería instalarse bien. Ahora la parte complicada.

Instale winetricks a través del script bash como se describe aquí https://github.com/Winetricks/winetricks
de esta manera siempre puede ejecutar update_winetricks para unf ... restaurar su /usr/bin/winetricks

En tipo de consola
export WINEPREFIX="/home/<user>/.local/share/lutris/runners/winesteam/prefix64"
Puedes comprobarlo en las opciones de lutris runner
Ahora estás trabajando dentro del prefijo wineteam

Usaré dotnet 40 como ejemplo sobre cómo eliminar la dependencia en winetricks, ya que tenemos que hacerlo con seguridad,
Asegúrese de que mono esté apagado escribiendo winetricks remove_mono
Intente escribir winetricks dotnet472 ; lo intentará, pero para mí falla al principio al intentar instalar 40 afirmando que ya está actualizado; esto evita que winetricks instale nunca uno.
Así que abra / usr / bin / winetricks en el aditor de texto y busque "load_dotnet472"

''
load_dotnet472 ()
{
w_package_warn_win64

if w_workaround_wine_bug 42170 "Running un-official repacked .NET 4.7.2 setup until the official version is fixed.", 3.1; then
    # Un-official slim version. See https://repacks.net/forum/viewtopic.php?t=7
    file_package="dotNetFx472_Full_x86_x64_Slim.exe"
    w_download "https://drive.google.com/uc?export=download&id=1aLBCH0Yt2-6ROpWRBxZ01kqGMyhc_8hM&confirm" a36da041b8f46079f8e16647312d642953cde520f4a600ad5b3f4f90a23495a7 $file_package
    unattended_args="/ai /gm2"
else
    # Official version. See https://www.microsoft.com/en-us/download/details.aspx?id=53344
    w_download https://download.microsoft.com/download/6/E/4/6E48E8AB-DC00-419E-9704-06DD46E5F81D/NDP472-KB4054530-x86-x64-AllOS-ENU.exe c908f0a5bea4be282e35acba307d0061b71b8b66ca9894943d3cbb53cad019bc
    file_package="NDP472-KB4054530-x86-x64-AllOS-ENU.exe"
    unattended_args="/sfxlang:1027 /q /norestart"
fi

w_call remove_mono

w_call dotnet462
w_set_winver win7

''

Hay algunas cosas a tener en cuenta aquí:

  • ves w_call a dotnet462, por lo que debes ir a load_dotnet462 y repetirlo hasta que llegues al que tiene la llamada al que falla, por lo que en nuestro ejemplo w_call dotnet40 está en el load_dotnet48 y necesita ser eliminado para seguir adelante.
    Deberá hacer esto para cada instalador que no se instale automáticamente a través de winetricks (lo instaló a mano) o si se instala correctamente pero winetriks no lo marcará como instalado.
    Cosas que necesita si el instalador falla:
  • en w_set necesitas la versión win para el instalador
  • en w_download tiene 2 URL (en este caso) que puede pegar en el navegador web para descargar el instalador
  • en unattended_args tiene argumentos para ejecutar el instalador con

suponiendo que eliminó la llamada a dotnet40 y guardó el archivo, puede intentarlo de nuevo.
Fallará a algunos instaladores después de eso -

  • si el instalador afirma que la instalación fue exitosa pero winetricks se queja de que faltan archivos al final y no instalará el siguiente, elimine el w_call; probablemente se instaló bien pero la verificación falló.
  • si ni siquiera comienza, intente si la url está funcionando; si no, busque en la página microsft o google para el nombre .exe
  • si la URL está bien, descárgala,
    Establezca la versión win de acuerdo con la parte de Winetricks para ese dotnet ex. winetricks win7
    intente ejecutarlo wine <installer>.exe <arguments from winetricks>
  • Si falla, intente sin los argumentos, tendrá que hacer clic en Siguiente;)
  • Si falla y tiene más de una URL / instalador, pruebe la otra
  • si no se instala de todos modos, elimine el w_call y espero que este no sea necesario, al menos uno de ellos falló sin importar lo que hice, pero el juego se ejecuta.

Después de instalar dotnet472 finalmente, solo necesita agregar algunas cosas (no estoy seguro de que todas sean necesarias)
winetricks xact vcrun2013 vcrun2015 vcrun2017 faudio d3dx9 d3dx10 corefonts - no tengo problemas aquí
xact-esto es necesario con seguridad

Luego, en lutris, haga clic en Wine steam en la lista de corredores y + firme encima de la lista para agregar el juego.
Escriba un nombre y en la pestaña "Opciones de juego" el steamid 244850 for space eng
Los iconos y el resto son opcionales,
Ver opciones de corredor
Argumentos: %command% -no-cef-sandbox
versión vino: ge-protonified-nofshack-4.9
DXVK: 1.2.3 y habilitado
Inícielo desde la lista de aplicaciones y debería ejecutar Steam e iniciar la descarga

¡Espero que funcione!

Mencióname si necesitas ayuda ... o

No pude ejecutar el juego con lutris (Steam dice que no tengo red), pero lo he instalado en Steam con protontricks 1.2.2 y winetricks 20190310. Proton 4.9.2.
He instalado dotnet472 xact vcrun2013 vcrun2015 vcrun2017 faudio d3dx9 d3dx10 corefonts.
He cambiado el nombre del video de introducción y empiezo el juego con: PROTON_NO_ESYNC = 1% command%

Y, sinceramente, el juego funciona bien. Tengo alrededor de 100 fps en el planeta con configuraciones gráficas altas. Pude comenzar un juego con muchas modificaciones. No jugué durante horas en el cajero automático, tengo que tomarme un tiempo para hacer más pruebas.
La minería en rocas estaba bien, la minería estaba bien en planetas o asteroides. Empecé con el mapa del sistema estelar.

Tengo un error de sonido como todos, pero está bien después de unos minutos. El error continúa menos notorio, pero puedes jugar. Tengo que hacer una prueba si me uno a otro juego, sin alojarme yo mismo.

Parece que el juego está cerca de ser jugable sin problema, excepto por el error de sonido.

¡Gracias por todos los consejos de esta página!

@LtStich ¿Dotnet472 se instaló bien sin ningún problema para usted?
Si es así, es una gran noticia, finalmente arreglaron el guión. Confirmo un
un pequeño tartamudeo justo después de comenzar. También noté que las sombras
a veces parpadea de forma extraña, pero no sé si es culpa del juego o
protón

czw., 18 labio 2019 o 11:26 LtSich [email protected] napisał (a):

No pude ejecutar el juego con lutris (Steam dice que no tengo
network), pero lo he instalado en Steam con protontricks 1.2.2 y
winetricks 20190310. Proton 4.9.2.
He instalado dotnet472 xact vcrun2013 vcrun2015 vcrun2017 faudio d3dx9
d3dx10 corefonts.
Cambié el nombre del video de introducción y empiezo el juego con: PROTON_NO_ESYNC = 1
%mando%

Y, sinceramente, el juego funciona bien. Tengo alrededor de 100 fps en el planeta con alta
configuración gráfica. Pude comenzar un juego con muchas modificaciones. Yo no
jugar durante horas atm, tengo que tomarme el tiempo para hacer más pruebas.
La minería en rocas estaba bien, la minería estaba bien en planetas o asteroides. Yo empecé
con el mapa del sistema estelar.

Tengo un sonido como todo el mundo, pero está bien después de unos minutos. El bicho
Continua menos perceptible, pero puedes jugar. Tengo que hacer prueba si me uno
otro juego, sin alojarme yo mismo el juego.

Parece que el juego está cerca de ser jugable sin problema, excepto
ese error de sonido.

¡Gracias por todos los consejos de esta página!

-
Estás recibiendo esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/ValveSoftware/Proton/issues/1792?email_source=notifications&email_token=ABSXEL3A4XGGNMQUHZ4NSITQAAZNVA5CNFSM4F6IMNRKYY3PNVWWK3TUL52HS4DFVDVREXG43VMTUL52HS4DFVDVREXWJWKNM34 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/ABSXEL6J4HFRILSQPK5FHVLQAAZNVANCNFSM4F6IMNRA
.

@MagicRB Estuvo bien, pero con protontricks 1.2.2 y winetricks 20190310.
Parece que la nueva versión de winetricks tiene problemas, debería intentarlo de nuevo, pero ahora que el juego está funcionando no quiero romper todo :)

Jugaré un poco más y veré si todo va bien.

Sí, no puedo hacer que el juego funcione porque protontricks (1.2.3-1) no instalará dotnet porque cree que ya está instalado. Esto también es con una instalación de arco nuevo, por lo que hay un mal funcionamiento importante en las versiones recientes de vino o algo así. Toda una pita, quién sabe si alguna vez se arreglará.

Si solo MONO emulara dotnet 472 ....

Steam debe documentar e instalar ese problema directamente para el juego ...
Es molesto tener que jugar con prototricks y winetricks ...

¿Qué versión de winetricks usas? Sabes que puedes hacer una instalación manual para usar una versión específica ...

wget http://winetricks.org/winetricks -O / usr / bin / winetricks

Lo último, ¿cuál es el comando para instalar la versión de trabajo correcta?

Aquí hay algo interesante que he notado.
El mismo tartamudeo que normalmente está presente en el juego se vuelve muy frecuente si sacas cualquier herramienta manual.

Los pases de renderizado DXVK también parecen dar un salto a los tres dígitos en el tartamudeo.

En otras noticias, ¿qué tan pronto estará wine mono listo para ejecutar aplicaciones dotnet 4.7.2? ¿Alguien sabe qué se ha implementado hasta ahora?

wget http://winetricks.org/winetricks -O / usr / bin / winetricks

Lo último, ¿cuál es el comando para instalar la versión de trabajo correcta?

Vaya aquí: https://github.com/Winetricks/winetricks/releases
Descargar: 20190310
Descomprime, ve a src para obtener wintetricks.

Desinstala el Winetrick que tienes.
Y coloque los winetricks que ha descargado en su ruta (/ usr / local / bin para mí en Debian).

Después de eso, intente reinstalar desde cero SE e intente reinstalar todo lo que necesita.
No olvide cambiar el nombre del video de introducción.

ok instalar dotnet ahora parece funcionar. ¿POR QUÉ los mantenedores de Winetricks paralizarían el soporte de .net? ¿nadie sabe? parece que nadie se da cuenta, aunque es esencial para tantas cosas, es como lanzar una actualización de vino que evita que .exe se ejecute ... ¡una locura!

De todos modos, dejé un problema en el github al respecto, quién sabe, tal vez alguien se dé cuenta ...

Acerca del juego, bueno, parece que se está cargando ahora, el sonido tartamudea un poco, cargué un juego personalizado en el planeta tierra y se cargó bien, excepto por muchos tartamudeos y pausas, probablemente relacionados con el motor de sonido que tiene problemas, también advirtió sobre problemas de rendimiento varias veces, pero eso parece desaparecer.
Diría que los problemas se relacionan con el motor de sonido que causa los problemas de tartamudeo, etc.

No estoy seguro de que el problema esté relacionado con este motor de sonido, pero lo más probable es que se deba al rendimiento que afecta al audio. Tenía otro juego como este, el sonido tartamudeaba, pero una vez que conseguí una nueva CPU, funcionó bien.

Por mi parte, he jugado unas pocas horas, el juego funciona bien en general, pero la velocidad de la simulación no pasa de 0.8.
He desactivado la música, pero eso no cambia el rendimiento.

Pocos se bloquean, pero en general el juego se puede jugar si aceptas algunos retrasos / tartamudeo y bloqueos. Tengo alrededor de 100 fps en una configuración gráfica media en la Tierra.
Probablemente probaré mi minero atmo hoy, veré si el juego no falla. En realidad, solo tengo un pequeño rover ...

He instalado dxvk 0.96 con protontricks, pero eso no cambia nada.
Mi CPU no se usa realmente, la carga es pequeña, pero el juego parece no poder usar todo el núcleo o el rendimiento de la computadora.

Como dije antes, para mí el problema del sonido es la consecuencia del problema de rendimiento global (probablemente del lado de la CPU) y no la razón por la que el juego tartamudea ... No sé qué podemos hacer al respecto ...

ok instalar dotnet ahora parece funcionar. ¿POR QUÉ los mantenedores de Winetricks paralizarían el soporte de .net? ¿nadie sabe? parece que nadie se da cuenta, aunque es esencial para tantas cosas, es como lanzar una actualización de vino que evita que .exe se ejecute ... ¡una locura!

De todos modos, dejé un problema en el github al respecto, quién sabe, tal vez alguien se dé cuenta ...

Acerca del juego, bueno, parece que se está cargando ahora, el sonido tartamudea un poco, cargué un juego personalizado en el planeta tierra y se cargó bien, excepto por muchos tartamudeos y pausas, probablemente relacionados con el motor de sonido que tiene problemas, también advirtió sobre problemas de rendimiento varias veces, pero eso parece desaparecer.
Diría que los problemas se relacionan con el motor de sonido que causa los problemas de tartamudeo, etc.

Dudo que lo hicieran intencionalmente, es más probable que Microsoft cambie el instalador de .Net de alguna manera para que el número de versión sea diferente al que buscaba Winetricks, les encanta jugar.

los instaladores de dotnet no han cambiado

los instaladores de dotnet no han cambiado

Bueno, con cosas como esta, todo lo que se necesita es un solo error de ortografía en una sola línea para causar todo tipo de problemas, dudo seriamente que los mantenedores de Winetricks hicieran algo como esto para jodernos, ¿cuál sería el punto?

Parece que Wine 4.12.1 instala .Net de tal manera que funciona con Wine 4.12.1, mientras que Wine 4.2 lo instala de tal manera que funciona con 4.2. La configuración de las variables de entorno WINE y WINESERVER que apuntan a los binarios de Proton hizo que winetricks funcionara de manera confiable.

Respecto al juego, me tartamudeo seriamente por el sonido: la velocidad de simulación es 1 pero gracias a los efectos de sonido se reduce a 0,73 y vuelve a 1 más tarde. Si utilizo el soldador, la velocidad de simulación desciende a 0,53 hasta que se recupera. El problema ocurre independientemente de si elimino las bibliotecas FAudio o si uso winetricks xact , incluso con el sonido desactivado, sucede, realmente se nota con el soldador.

Parece que hay un error gráfico en las esquinas del casco y las fuentes de luz, pero esto es menor.

Información del sistema

Con Proton 4.11-1 funciona de inmediato si ha cambiado el nombre del archivo de video. Pero hay bastante tartamudeo, tanto por audio como visualmente. La instalación de dotnet472 y xact no pareció resolver eso. ¿Algun consejo?

Tampoco he descubierto cómo resolver el tartamudeo, si no fuera por el tartamudeo, estaría bien, incluso a 4k en mi 1080TI dio 50-60 fps, lo cual es bastante bueno, excepto por los tartamudeos ...

Ningún cambio de rendimiento para mí con 4.11.
Sigo pensando que el problema del sonido es un problema de rendimiento y no un problema de sonido (ver la velocidad de la simulación). El sonido tartamudea debido a la mala estabilidad / rendimiento.

Cambiar al kernel 5.2 dio un pequeño impulso al rendimiento. Pero el tema del sonido siempre está aquí.

Tampoco puedo confirmar una mejora de rendimiento para mí con Proton 4.11. También probé la función FSync en Arch Linux con el kernel linux-fsync proporcionado. Se verificó que se cargó el kernel correcto y, desafortunadamente, no se puede confirmar una mejora aquí. El tartamudeo sigue ahí.

Una pregunta menor: el juego se inició con DXVK_HUD=full %command% . El gráfico de tiempos de fotogramas muestra barras rojas cuando se produce el tartamudeo. Supongo que esto no tiene un significado especial aparte de que no se renderizan marcos.

Noté que la velocidad de simulación "inactiva" aumentó un poco aquí, de 0,73 a 0,87 consistentemente. El problema de rendimiento que ocurre, aparentemente, cuando se reproducen sonidos todavía está presente. Es extraño que siga funcionando a una velocidad de simulación de 0,87 incluso cuando hay, supuestamente, suficientes ciclos libres de CPU.

Me di cuenta de que a menudo el juego parece recrear los flujos de sonido. pavucontrol muestra que la transmisión del juego es la transmisión 2, pero luego es la transmisión 6 y luego la transmisión 10 cuando se usa pulseaudio.

Además, cada vez que cierro el juego, abre Wine Debugger y luego abro la ventana que dice que el juego se bloqueó.

Grabé un video que muestra un poco del estado del juego, incluidos los problemas de sonido: https://cdn.discordapp.com/attachments/457747189616214019/606572169886957577/se-sound000.webm

El comando winetricks que utilicé para el prefijo actual es winetricks -q xact dotnet472 vcrun2013 vcrun2015 vcrun2017 faudio sound=alsa . Y las especificaciones del sistema actual.

Interesante, claramente tengo un mejor rendimiento y no tengo este problema al usar herramientas (al menos no tanto). Mi velocidad de simulación está entre 0,7 y 0,9.

Cuando juego, si ejecuto htop, puedo ver claramente que mi CPU no está completamente utilizada, tengo muchos "recursos de repuesto" disponibles. Probablemente puedan hacer algo al respecto ... Como cambiar el video para el menú de inicio y no usar ese formato wmv ... Tal vez todas las cosas sobre el sonido sean el mismo problema ... Archivos muy "parecidos a ventanas" y herramientas ...

[EDITAR]
Prueba rápida en el espacio, sin modificaciones. Pequeño problema de sonido, pero realmente pequeño.
Velocidad de la simulación entre 0,9 y 1. No bajes de 0,8 incluso cuando utilizo herramientas.
Alrededor de 100 fps con alta configuración gráfica.

El rendimiento probablemente disminuirá si se genera un dron, tengo un gran problema con eso en mi juego con mods en la tierra. Como el juego probablemente no pueda usar todo el núcleo o distribuir la carga.
[/EDITAR]

¿Hemos confirmado que una carrera para este juego no ayudará con este problema en particular? parece que podría ser un problema relacionado con el vino y no dxvk.

En realidad, hay 3 o 4 problemas de acumulación según los entiendo:

  1. El audio necesita algunas cosas de FAudio bastante avanzadas para funcionar. Esto tampoco se fusiona a partir de Proton 4.11. Incluso con FAudio, verá una cantidad significativa de tartamudeo de audio que puede disminuir dependiendo de su máquina / cpu / framerate / etc.
  2. Se requiere dotnet472. Creo que Proton 4.11 soluciona esto.
  3. El video dentro del juego no funciona. Probablemente un problema de marco de medios como lo tienen muchos otros juegos.
  4. Todavía no he podido probar con Proton 4.11, pero al menos en 4.2, el analizador PNG 'windowscodecs' (o el código anterior) no maneja correctamente el orden de bytes de PNG en escala de grises de 16 bits, que es lo que VRAGE (el motor de los ingenieros espaciales) utiliza para sus mapas de altura planetarios. Esto podría solucionarse, pero me mudé de una máquina nvidia a una Vega, por lo que me golpean con bloqueos de GPU que se ven como en https://github.com/doitsujin/dxvk/issues/252 cuando intento ejecutar SE en un planeta. Puedo volver atrás y verificar la máquina nvidia algún tiempo después, pero si ves planetas 'puntiagudos', consulta https://source.winehq.org/git/wine.git/commit/0c0def962f2b86f44625f11d8d9d2013aaffa46a si quieres probar respaldando esa solución.

@kainz
¿Los bits de Faudio que faltan causan el tartamudeo en el juego?
¿Algún problema abierto o parches para probarlos que conozca?

Sé con certeza que se ha perfilado antes y el tartamudeo no fue el resultado de ninguna llamada DX.

No soy desarrollador, pero en mi opinión, el problema que tenemos con SE está más relacionado con el multihilo y el rendimiento.
Probablemente en lo que están trabajando: https://lkml.org/lkml/2019/7/30/1399 y con el reemplazo de esync: fsync: https://steamcommunity.com/games/221410/announcements/detail/2957094910196249305

Esto necesita un kernel muy reciente, tal vez alguien en Arch pueda hacer alguna prueba ... Miraré como uso el kernel Liquorix en Debian ...

Para instrucciones fsync: https://steamcommunity.com/app/221410/discussions/0/3158631000006906163/

El juego se inicia solo con Mono, pero recibo este mensaje (al hacer clic se cierra el juego):

Screenshot from 2019-08-03 08-42-12

Sorprendentemente, no tuve tartamudeo en la música del menú cuando apareció esto, ¿tal vez el tartamudeo se deba al dotnet en el vino?

¡Guau! ¡Ordenado! ¿Cómo conseguiste que se lanzara con Mono?
@LtSich
Usuario de Gentoo aquí, fsync no ayuda. Si es mono como @ fls2018 dice arriba, entonces esta podría ser una buena solución.

depende de si tartamudea en el juego.

¡Guau! ¡Ordenado! ¿Cómo conseguiste que se lanzara con Mono?
@LtSich
Usuario de Gentoo aquí, fsync no ayuda. Si es mono como @ fls2018 dice arriba, entonces esta podría ser una buena solución.

Solo un nuevo prefijo con las instalaciones de mono proton de forma predeterminada, también tuve que cambiar xaudio dlls a native ya que faudio hace que se bloquee. Supongo que la ventana emergente se debe a que mono necesita wpf o tal vez está buscando .Net, encontrando mono y negándose a continuar. En los registros veo que reconoce mono como el entorno: Environment.Version: Mono 6.3.0 (tarball)

También instalé dotnet472 nuevamente, me permitió ingresar al juego, pero regresó el tartamudeo del menú, también usando el kernel fsync.

Entonces dices que no hay tartamudeo con mono, pero el juego se niega a continuar sin dotnet ...
¿Es eso algo que KSH podría cambiar directamente en su juego para ayudarnos?
Igual que cambiar el formato de video para evitar cambiar el nombre del video de introducción y poder ver esos videos en segundo plano en el menú ...

Esto puede ser algo que KSH podría cambiar. Si eliminan el cheque dotnet en presencia de vino, puede ayudar, pero esto es, por supuesto, un: NO lo hagas por consejo de los desarrolladores de vinos.

Deberíamos abrir un informe de error en WineHQ y obtener ayuda igual que con el problema del pico de terreno. ¿Dónde puedo encontrar este binario mono egde sangrante?
Ir a probar una construcción nocturna.

Ahora que he probado esto, puede valer la pena pedir a los desarrolladores que anulen el uso de mono. Verifican la variable de entorno para ver si estás ejecutando una vieja dotnet con errores para decirte que actualices, pero parece que no tiene en cuenta un valor nulo y simplemente elimina el juego por completo.

El registro indica: 2019-08-03 11: 07: 01.985 - Subproceso: 1 -> Se produjo un error durante la enumeración de la información del entorno. La aplicación continúa. Excepción: System.ArgumentNullException: el valor no puede ser nulo.

En este caso, si podemos pedirle a KSH que elimine el cheque, ¡Proton puede funcionar con una calificación de oro tan rápido en protondb!
¿Dónde hay un buen lugar para familiarizarse con Keen?

Entonces dices que no hay tartamudeo con mono, pero el juego se niega a continuar sin dotnet ...

Para que quede claro, estoy hablando de la tartamudez de la música del menú, que parece estar relacionada con la tartamudez dentro del juego. Puede que el problema no sea el audio o los gráficos, pero el hecho de que este juego se base más en .Net que en otros títulos y .Net a través de winetricks es, en el mejor de los casos, inestable.

Puede ser que solo necesite que mono no sea bloqueado por el cheque y todo esté bien, sin embargo, si el juego usa otras cosas de .Net como WPF, entonces podría ser el caso que muestre la ventana emergente porque no puede usarla porque es no disponible en mono (todavía).

@EsqueletosEsqueletos

Aquí probablemente: https://forum.keenswh.com/

1 desarrollador de KSH realmente debería unirse a nosotros aquí y analizar esto ...
Esto y el formato de video para usar algo más que funcionaría en Linux para evitar la necesidad de cambiar el nombre del video de introducción ...

Parece que no puedo recibir un correo electrónico de confirmación para mi cuenta anterior, por lo que alguien más tendrá que hacer el hilo. Como dijo @LtSich ,

Sé que KSH también está activo en Discord si alguien tiene un enlace a su canal, puede enviarle un mensaje directo allí.

Aquí está la discordia oficial: https://discordapp.com/invite/KeenSWH

Necesitamos preguntar si el juego requiere WPF u otros componentes específicos de DotNet.
Desbloquear mono no valdrá mucho si están usando funciones no implementadas.

Proton 4.11-1 agrega una regresión que reintroduce la generación de terrenos con errores

Proton 4.2-9 funciona bien pero todavía tiene tartamudeo, pero eso parece ser DotNet como SpookySkeletons y fls2018 mencionaron

Parece que la versión 4.11 agrega muchos problemas.
Empyrion y Frostpunk ya no se inician, pero funcionan bien con 4.2-9.

Al parecer, el SE tiene algún problema con la generación del terreno.
Yo no lo vi, pero solo jugué unos minutos para probar si el juego comenzaba.

Intenté ejecutar con 4.11-1 con d9vk habilitado. da un error de que .net framwork está desactualizado y usa una revisión de Windows y luego se bloquea.

Intenté ejecutar con 4.11-1 con d9vk habilitado. da un error de que .net framwork está desactualizado y usa una revisión de Windows y luego se bloquea.

No se supone que el juego se ejecute en DirectX 9 a menos que deshagas algunos parches.

DXVK y Proton 4.2-9 con DotNet 472 es actualmente la única forma conocida de ejecutar el juego.
Sin embargo, tartamudeará y eso actualmente no se puede evitar.

Es más una falla de rendimiento que cualquier otra cosa, algo se engancha, si ese algo se resolviera, el juego funcionaría y funcionaría bien a buenos fps.

Primero de todos, GRAN TRABAJO.
Ha recorrido un largo camino que solo los verdaderos ingenieros pueden seguir. Esa es una verdadera dedicación allí mismo. : +1:

Ahora de vuelta al tema.
Con respecto a los problemas de rendimiento que mencionaste, te recomiendo que cambies a una "versión modding" que distribuimos junto con la versión básica en Steam.
Además de un montón de ventajas para los modders, viene con nuestro generador de perfiles interno habilitado para que puedas ver exactamente lo que ralentiza tu juego. Siempre es más fácil _ solucionarlo_ cuando sabes cuál es el problema.

Encontrarás todo lo que necesitas aquí:
https://github.com/malware-dev/MDK-SE/wiki/Advanced-Profiling-The-Game

Cuando se trata de la "verificación de la versión .NET", el juego no aplica ninguna versión específica de .NET siempre que todos los componentes se inicien y funcionen correctamente.
Después de una mirada rápida al código, parece que este cuadro de mensaje se activa por una falla en la inicialización del compilador de scripts. Si ese es el caso, debería ver la siguiente línea en el registro del juego:
"Error durante la inicialización de ModAPI: ALGÚN MENSAJE AQUÍ"

El compilador no es esencial para el juego siempre que no requiera modificaciones o scripts en el juego, por lo que puede eliminarlo para probarlo. Sabes cómo jugar con los binarios de MSIL, ¿verdad?
https://github.com/KeenSoftwareHouse/SpaceEngineers/blob/master/Sources/Sandbox.Game/MySandboxGame.cs#L1401

@InflexCZE
Gracias por la información.

No tengo tanta experiencia en la edición de IL, pero logré editar ese valor y acceder a los menús con mono:

Screenshot from 2019-08-10 02-37-36

Pero al intentar cargar un juego, se bloquea con este error:

Screenshot from 2019-08-10 02-28-48

Aquí está el registro:

SpaceEngineers.log

Lo más probable es que no haya editado el dll correctamente, muestra errores acerca de que hay un duplicado de la lista blanca, algo u otro.

Según el registro, el matrimonio de Mono y nuestro compilador no es particularmente feliz: stick_out_tongue:
Está bien, no lo necesitamos.

Desafortunadamente, no hay un solo punto para deshabilitar el compilador (todavía), por lo que tendrá que eliminar 2 lugares clave que he identificado y esperar lo mejor.

1) Obtenga la corteza de todas las cosas en este capítulo.
https://github.com/KeenSoftwareHouse/SpaceEngineers/blob/master/Sources/VRage.Scripting/MyScriptWhitelist.cs#L47

2) Haga que este método devuelva null (evite que invoque el núcleo del compilador)
https://github.com/KeenSoftwareHouse/SpaceEngineers/blob/master/Sources/VRage.Scripting/MyScriptCompiler.cs#L154

@InflexCZE, ¿se comprende qué falla y por qué? O una forma de crear una pequeña prueba que falla de manera similar.

Cada tiempo de ejecución de .NET (.NET FW, Mono, .NET Core, Xamarin, ...) viene con una biblioteca de clases base (BCL) propia. Si bien la implementación y la funcionalidad son muy similares en todos los ámbitos y el programa compilado con un BCL específico en mente generalmente está bien cuando se le da una implementación diferente en tiempo de ejecución, algunas diferencias aún existen.

En este caso, es la distribución de ciertos tipos de BCL entre los binarios de BCL lo que está desechando al compilador. Algunos ajustes rápidos probablemente resolverían el problema y harían que el compilador también fuera completamente funcional en Mono BCL, pero eso sería un poco más difícil que apagar el compilador y probar si el juego se ejecuta mejor en Mono-Linux o no. Si es así, podemos centrarnos en pulir.

Espero que responda a su pregunta de una manera comprensible: smile_cat:

Bueno, intenté ir en sentido contrario e intentar que la compilación del generador de perfiles funcionara, pero tuve menos suerte con eso. Instalé el Mod SDK e intenté ejecutar el juego instalando dotnet472 y xact en su prefijo y enlazando la carpeta Contents en su ruta (así es como ejecuté Mod SDK en mi instalación de Windows) y copiando la carpeta Bin64_Profiler en mi instalación habitual (donde todo ya está funcionando y puedo iniciar el juego). Ninguno de los enfoques funcionó realmente.

Configuré todas las variables de entorno que el vino podría necesitar y usé vino que se encuentra en ~/.local/share/Steam/steamapps/common/Proton 4.11 , intenté ejecutar proton run desde ese directorio, pero todos los métodos arrojaron los mismos resultados:

  • Recibí una advertencia sobre la ejecución sin el tiempo de ejecución de Steam y me indica que cambie el valor de la variable MyFakes.ENABLE_RUN_WITHOUT_STEAM , lo que no puedo hacer sin editar el ensamblado, como lo entiendo al menos.
  • Luego se quejó de ejecutar Windows y actualizaciones de controladores de tarjetas gráficas
  • Después de todo eso, todo lo que obtengo es un bloqueo, con el siguiente seguimiento de pila
Unhandled Exception: System.ArgumentException: Parameter is not valid.
   at System.Drawing.Image.get_Flags()
   at System.Windows.Forms.ControlPaint.IsImageTransparent(Image backgroundImage)
   at System.Windows.Forms.Control.set_BackgroundImageLayout(ImageLayout value)
   at VRage.Platform.Windows.Forms.MyMessageBoxCrashForm.InitializeComponent()
   at VRage.Platform.Windows.Forms.MyMessageBoxCrashForm..ctor(MyCrashScreenTexts& texts)
   at VRage.Platform.Windows.Forms.MyMessageBoxCrashForm.ShowDialog(MyCrashScreenTexts& texts, String& message, String& email)
   at Sandbox.MyErrorReporter.ReportGeneral(String logName, String gameName, String id)
   at Sandbox.MyCommonProgramStartup.PerformReporting()
   at SpaceEngineers.MyProgram.Main(String[] args)

Lo cual no es tan útil de todos modos porque ese es el mensaje del informe de fallas que no se carga ...

Si alguien tiene una idea de lo que estoy haciendo mal y puede hacer que la creación de perfiles funcione correctamente, se agradecería que se dieran las instrucciones adecuadas, más ojos puestos en el problema, mejor :)

Proporcione el registro del juego. Debe contener la excepción original.

Registro adjunto:

SpaceEngineers.log

Dado que menciona DX9 en algunos de los espacios de nombres, intenté ejecutarlo sin DXVK pensando que podría ser una falla, pero no parece haber ayudado.

El problema está en algún lugar interno de este método (Windows Forms), ya que no pudo cargar la imagen del cursor del juego.

https://github.com/mono/mono/blob/master/mcs/class/System.Drawing/System.Drawing/Image.cs#L154

at System.Drawing.Image.FromStream(Stream stream, Boolean useEmbeddedColorManagement, Boolean validateImageData)

Ojalá alguien sepa lo que está pasando, porque aquí es donde termina mi campo de especialización.

Bueno, también estaba haciendo algo mal al jugar manualmente con el prefijo, pero intenté soltar la carpeta Bin64_Profile en mi instalación habitual y cambiarle el nombre a Bin64 . Esto ayudó un poco (consiguió la pantalla de bienvenida), pero presumiblemente está fallando debido a bits adicionales incluidos en la construcción de perfiles. Primero, no puede obtener el nombre del sistema operativo (usando Mono, no se queja con MS dotnet instalado) pero parece superar eso (con el nombre del sistema operativo aparentemente correcto también, así que, sí ...) pero falla al intentar inicializar los gráficos (esto sucede con DXVK activo y cuando se configura USE_WINED3D ). Por lo tanto, parece que la compilación de perfiles no se cargará por ahora.

SpaceEngineers-Mono.log

Mono log adjunto, el bloqueo real es el mismo con dotnet, esto solo demuestra la falla en Mono también.

Suelta aquí el registro de renderización también, por favor

Ah, nunca me di cuenta de que se escribe así. Aquí está:

VRageRender-DirectX11.log

Parece fallar en la compilación de sombreadores. ¿Hay alguna forma de obtener versiones precompiladas de esos en algún lugar?

Interesante. El juego ya viene con sombreadores precompilados en %SE_install_dir%/Content/ShaderCache .
Compruebe si están intactos, no están dañados ni nada.

El directorio de caché alternativo para los sombreadores compilados por juego es %dir_where_you_found_the_logs%/ShareCache2 .
Puedes intentar copiar el caché aquí para ver si el juego tiene más suerte para encontrarlo aquí.

Intenté verificar los archivos, intenté copiarlo en %appdata%/SpaceEngineers/ShaderCache2 , incluso probé %SE_install_dir/TempContent/ShaderCache solo en caso de que la compilación del perfil también lo intente, el mismo resultado en todos los casos :(

Hm, es posible que la creación de perfiles agregue algún código de creación de perfiles a los sombreadores también, lo que inutilizará la caché proporcionada.

Has dicho que también tienes SE ejecutándose en Win, ¿verdad?
¿Quizás podría intentar ejecutar la creación de perfiles en Win y luego copiar la caché de sombreado generada en Linux?

¿Están tratando de que esto funcione sin dotnet (con mono), o tratando de resolver los tartamudeos? (o ambos).

Bueno, en el lado de la construcción de perfiles, estoy probando con dotnet ya que sabemos que se carga por completo y se puede reproducir, así que con suerte podríamos precisar los tartamudeos en ese frente. Dado que el problema actual con mono es que el compilador no funciona, lo que significa que los scripts y mods no funcionarán incluso si lo engañamos para que se carguen, creo que podría ser un mejor curso de acción por ahora, tanto en el frente de conseguir el juego completamente funcional y podemos precisar un problema en protones que, si se fija, podría afectar a otros juegos, así y hacerlas funcionar.

Lamentablemente, actualmente estoy atascado en ese frente: accedí a mis particiones de Windows e intenté copiar sobre los sombreadores desde allí (había muchos más archivos presentes), pero no tuve suerte, exactamente el mismo bloqueo. También planeé borrar por completo todo en mi instalación de Windows y simplemente comenzar el juego en modo de creación de perfiles desde una pizarra en blanco para asegurarme de que los sombreadores estén compilados, pero mi instalación de Windows no se está iniciando actualmente debido a que estoy haciendo algunas particiones y mezclando HDD. recientemente y no he logrado arreglarlo (o reinstalarlo) todavía.

Si alguien más tiene un arranque dual en funcionamiento (o una PC adicional con Windows instalado) y puede volver a rastrear mis pasos para ver si se ejecuta con los archivos de sombreado compilados copiados, sería genial. Mientras tanto, intentaré que mi instalación de Windows vuelva a funcionar cuando tenga tiempo libre para hacerlo.

Debería tener una instalación de Windows 10 que funcione, no la he usado en un tiempo, pero debería funcionar. Cuando llegue a casa intentaré hacer esa cosa de sombreado.

@InflexCZE ¡gracias por ayudarnos a la gente de Linux! No quiero ser grosero ni nada, pero llevamos mucho tiempo pidiendo ayuda, ¿qué cambió?

Entonces, logré obtener nuevos sombreadores de una instalación de Windows (involucró compartir con la familia, un compañero de habitación y sobornos, y aún menos problemas que reinstalar Windows).

Bueno, sin dados, parece que tiene la intención de recompilar esos sombreadores sin importar qué. Intenté instalar tiempos de ejecución de Visual C también (todos ellos desde 2010 en adelante, pero 2015 no se instaló y realmente no me molesté en intentar hacerlo funcionar también) con la esperanza de que solo falten algunos tiempos de ejecución de C ++, pero no tuve suerte con Eso tampoco.

Entonces, a menos que vcrun2015 en particular ayude (lo cual, dados los errores, dudo), no tengo ideas, esto involucra tanto sombreadores como cosas específicas de VRage que están muy por encima de mi cabeza. En caso de que alguien más pueda hacerlo funcionar, publique sus resultados.

@ Onyx47, ¿qué

@MagicRB Todo lo que hice fue instalarlo como todos lo hicimos hasta ahora (incluido protontricks 244850 -q dotnet472 xact ), instalé la versión Mod SDK desde la página de herramientas y luego copié el directorio Bin64_Profile directorio de instalación de SE normal y lo renombró a Bin64 después de renombrar el original a Bin64_bak .

Al iniciar el juego desde Steam, se intentará ejecutar la compilación de perfiles. Como referencia y para ahorrarle excavar en la estructura del directorio (debería poder copiar y pegar las rutas en su administrador de archivos / terminal):

  • La instalación de SE debe estar en ~/.steam/steam/steamapps/common/SpaceEngineers/
  • La instalación de Mod SDK donde debe obtener el directorio Bin64_Profile debe estar en ~/.steam/steam/steamapps/common/SpaceEngineersModSDK/
  • SpaceEngineers.log y VRageRender-DirectX11.log deben estar en ~/.steam/steam/steamapps/compatdata/244850/pfx/drive_c/users/steamuser/Application Data/SpaceEngineers

¡Hijo de un Klang, corre! Todo lo que necesitábamos era el paquete d3dcompiler_47 de winetricks. Y allí estaba instalando tiempos de ejecución de XNA y VC para tratar de ver si alguno de ellos contiene los encabezados faltantes ( float.h y xnamath.h ) de los que se quejaba ...

Bueno, comienza ahora, pero lamentablemente se bloquea al crear o cargar un mundo. Puedo confirmar que el generador de perfiles funciona en el menú al menos (y el tartamudeo está presente incluso allí, por lo que podría ser algo con lo que podamos trabajar independientemente).

Adjunto mis registros más recientes desde el momento en que comenzó hasta intentar cargar un mundo (después de lo cual se bloquea). Me doy cuenta de que la última línea de SpaceEngineers.log es

External debugger: listening...

Puede ser lo que lo falla, puede que no, pero ... no estoy familiarizado con la depuración remota en .NET, es que solo un socket como gdb proporciona, y hay alguna posibilidad de que podamos adjuntarlo usando MonoDevelop o algo así? ¿O hay al menos una forma de obtener información significativa incluso en el menú solo, incluso sin eso? ¿Cómo volcar algunos registros de creación de perfiles en un archivo en algún lugar? No veo nada sobre eso en el Wiki vinculado.

cc: @InflexCZE

NOTA (principalmente para Inflex): no te preocupes por los errores de video, somos conscientes de que no se carga y realmente no nos importa de todos modos, el juego se ejecuta después de hacer clic en él.

SpaceEngineers.log

VRageRender-DirectX11.log

Editar: Algunas capturas de pantalla del generador de perfiles en el menú al menos, los principales culpables parecen ser MyAudio-Update (como se sospechaba al menos parcialmente) y GuiManager - Update Screens , que no es realmente lo que esperaba.

https://imgur.com/a/S1O435i

Buenas noticias: +1:

Desafortunadamente, los registros no contienen información útil que me ayude a determinar la causa del bloqueo. El problema más probable en el código nativo resulta en una falla de segmentación y el sistema operativo cierra el proceso de inmediato. La forma habitual de depurar esto es indicar al sistema operativo que realice un volcado mini / completo del proceso antes de derribarlo. Si logra capturar uno y resolver el seguimiento de la pila a partir de él, probablemente podría decirle lo que está sucediendo. Dado que las contraventanas también están presentes en el menú principal, no me molestaría con ellas ahora y procedería directamente a la creación de perfiles.

Para hacer eso:
1) Inicie el juego en el menú principal
2) Abra el generador de perfiles con Alt + [NumPad Dot]
3) Cambie el generador de perfiles al modo de perfil profundo Alt + E
4) Recopile una ventana de perfiles completa de datos (espere 1024 cuadros)
5) Guardar en la ranura n. ° 1 con LCtrl + Alt + 1
6) Busque y comparta el archivo en% appdata% / FullProfile1

Toda esta información está en el manual que publiqué antes:
https://github.com/malware-dev/MDK-SE/wiki/Advanced-Profiling-The-Game

Editar:
"MyGuiSandbox :: Update3" actualiza la entrada del juego (recopila los estados del mouse, teclado y joystick del sistema operativo). También tenemos varios bloques de creación de perfiles, me pregunto por qué no aparecen. Habilite el perfil profundo si aparecen en ese modo.

@InflexCZE : Ok, reescribiendo toda mi publicación porque finalmente me

Entonces, ignorando el menú por ahora, aquí hay un volcado de perfil que tomé en un mapa del Sistema Solar vacío.

FullProfiler-1.gz
(renombrado debido a que GitHub es exigente)

Y aquí está el menú también en caso de que sea el mismo problema y el volcado del menú pueda tener menos ruido en la señal:

FullProfiler-2.gz

Espero no haber olvidado algo crucial aquí.

Por lo que puedo ver en los perfiles, no hay ningún sistema afectado que ralentice todo el juego. Todo el sistema y todos los subprocesos se ven afectados por igual en todos los ámbitos. Desafortunadamente, esto significa que no existe un sistema único que podamos optimizar y / o arreglar para ayudarlo con las contraventanas. Lo que nos dice del otro lado es que el problema está en el lado del sistema.

Reconozco muy bien el patrón en los perfiles. Cuando lo veo en Windows, 9 veces y media de cada 10 es GC (recolector de basura .NET). O hay algo que afecta su funcionalidad normal y hace que se detenga el juego durante una gran cantidad de tiempo durante cada ciclo de trabajo o, dado que es una máquina de autoajuste, se configuró terriblemente mal debido a que el sistema operativo portado incorrectamente le proporcionó información no válida. función.

Alternativamente, podría haber alguna función del sistema operativo muy básica, algo tan común como malloc por ejemplo, que usan todos los sistemas en todo el juego (o .NET Framework para el caso). Tener una de estas funciones funcionando mal en una llamada, también podría explicar los hallazgos.

En cualquier caso, el juego no podrá perfilarse y encontrar el problema. Será necesario perfilarlo desde el exterior y encontrar la causa mediante una herramienta externa que podrá identificar la función lenta del sistema operativo o condenar al GC por culpa. En tal caso, saber qué es lento en el GC podría decirnos cómo abordarlo también. No estoy familiarizado con la creación de perfiles en Linux, por lo que no podré ayudarlo allí.

En cuanto a la segunda opción, Mono parece manejar el juego con más estabilidad, por lo que, alternativamente, podríamos continuar con Mono y ver qué tan bien se desempeña con más carga de trabajo. Mi última instrucción sobre este asunto mostró cómo eliminar el compilador del juego, por lo que ahora debería poder iniciar una sesión. Si encuentra más problemas allí y si está dentro de mi campo de experiencia, estaré encantado de ayudarlo allí.

Es bastante probable que las funciones de consulta de recursos se hayan eliminado y estén alimentando información incorrecta de .NET, tal vez en WMI o una función NtQuery * en ntdll.

En primer lugar, muchas gracias Inflex por tomarse el tiempo de analizar esto en lo que supongo que es su tiempo libre.

Bueno, aunque no es una gran noticia para una solución rápida que esperábamos, al menos nos pone en el camino correcto en lugar de perseguir fantasmas. Me entretuve un poco mirando los gráficos y noté que los picos ocurren por todas partes, así que incluso como un extraño al código base (y alguien con un conocimiento muy superficial de .NET) encuentro la explicación de los problemas de GC muy convincente .

Voy a investigar todo lo que pueda en los frentes Mono y nativo .NET durante los próximos días y trataré de proporcionar tanta información aquí o veré si valdría la pena abrir un nuevo número. A largo plazo, probablemente sería mejor si pudiéramos arreglarlo correctamente y parchearlo en sentido ascendente porque si el GC está funcionando mal, eso significa que hay posibles ganancias de rendimiento en una amplia gama de aplicaciones, no solo en juegos. Pero, pasos de bebé :)

Espero que esto sea al menos algo útil, realmente tengo poca experiencia con este tipo de cosas.
setrace.zip
Ésta es una copia de un seguimiento del sistema recopilado de perf. Debería poderse abrir desde PerfView en Windows. O, alternativamente, puede colocar fileperf.data.txt en SpeedScope
Intenté mirar las trazas en SpeedScope, pero como dije, básicamente no tengo idea de lo que estoy viendo.
Ojalá alguien más pueda hacer uso de esto. Si se necesita más información o un rastreo diferente, haré todo lo posible para proporcionar lo que pueda.

Hola @ kisak-valve solo para información Space Engineers no funciona con Proton 4.11-2 pero funciona con Proton 4.2-9.
Comenzaba con 4.11 pero con errores extraños, y con 4.11-2 no comienza en absoluto.

Y seguimos sufriendo de mal desempeño, con la ayuda de @InflexCZE para encontrar cuál es el problema pero en este momento no avanzamos porque es muy complejo.

Si necesita ayuda para encontrar la causa del problema con 4.11-2, simplemente publique aquí, intentaremos ayudarlo.
Y si puedes trabajar con @InflexCZE para mejorar el rendimiento del juego, será increíble :)

Hola @LtSich , un recordatorio amistoso de que soy moderador de los rastreadores de problemas de Valve en Github y no soy un desarrollador de Proton.

Mirando la historia reciente, parece que varios desarrolladores se han acercado y están reflexionando sobre el juego, por lo que no hay mucho que pueda contribuir. Esta parece ser la primera mención clara de una regresión Proton 4.11-1 -> 4.11-2. ¿Puedes agregar PROTON_LOG=1 %command% a las opciones de inicio del juego y arrastrar y soltar el $ HOME / steam- $ APPID.log generado en el cuadro de comentarios?

Perdón por mi error @ kisak-valve.

Aquí está mi registro de Proton 4.11-3 https://dl.cafe-philo.net/steam-244850.log.gz
Falló la instalación de dotnet 472.

¿Alguna actualización / progreso?

No hay actualizaciones, creo.

Falló la instalación de dotnet 472.

Asegúrese de que Winetricks esté actualizado; si no, intente degradar un par de versiones, este fue un error en su versión anterior que me dijeron que podría corregirse con la última versión. (aún para probarlo yo mismo)

Aquí hay una muestra del juego que se carga en un nuevo mundo alienígena en Win10 con el método de inyección de envoltorio (d3d11, dxgi). No se habilita ninguna superposición. 1080TI utilizado.

Win10-trace [1.6GB]: https://www.dropbox.com/s/2yxl18f7a2l126o/SpaceEngineers.7z?dl=0
_Linux-trace []: ¿ayudaría esto? _

Quizás esto ayude a realizar más investigaciones sobre los problemas de rendimiento.

He mirado un poco más las grabaciones de la interpretación. Todavía tengo poca idea de lo que está sucediendo, pero noté que la falta de coincidencia de Inode parece ocurrir con frecuencia y es el elemento que está consumiendo la mayor parte del rendimiento de la CPU durante un pico de retraso (ver imagen adjunta).

Screenshot_20190916_073836

También noté que durante el retraso, un solo núcleo aumenta al 100% y los otros núcleos disminuyen en uso. No estoy seguro de qué hacer con eso. Quizás el resto del juego esté esperando algo que sea de un solo hilo.

Aquí hay una imagen con más del pico seleccionado (hay muchos más elementos debajo de la pantalla, pero no quería publicar una docena de capturas de pantalla).

Screenshot_20190916_074053

A continuación se muestra una selección ligeramente más estrecha de un pico diferente que muestra problemas similares.

Screenshot_20190916_074206

No tengo conocimientos técnicos de esto, pero espero que sea de alguna ayuda.

AFAIK inode mismatch es una advertencia de sysprof de que el archivo ha cambiado en el disco. En su rastreo, esto podría significar que los binarios Proton y steam han cambiado en el disco desde que registró el rastreo. Por lo tanto, no se puede mostrar ningún símbolo real de los ejecutables que causaron los picos.

Muy bien ... algo en MS Dotnet está causando el problema de retraso. Conseguí que SE trabajara con wine-mono 4.9.3, después de seguir el consejo de

El juego se desarrolló sin problemas ... sin tartamudeo en absoluto. Solo hubo un leve desvanecimiento ocasional de audio (probablemente algunos problemas con el audio de audio, ya que el mismo desvanecimiento de audio está en Fallout 4), pero no hubo retraso ni tartamudeo para acompañarlo. Puedo confirmar que el tartamudeo existe con MS DotNet, incluso con el compilador de script eviscerado. Así que no estoy exactamente seguro de qué está mal con el compilador de secuencias de comandos, lo que significa que no hay modificaciones ... pero esto significa que mono podrá ejecutar el juego básico muy bien si el compilador de secuencias de comandos está desactivado.

Si alguien necesita registros u otra información, haré todo lo posible para ayudar.

Muy bien, creé un video que muestra las versiones DotNet y Wine-Mono del juego. ¡La versión mono funciona mucho mejor!

Aquí hay un enlace al video:
https://youtu.be/LwqRLCQR6aM

Ahora todo lo que tenemos que hacer es averiguar cómo hacer que el compilador de scripts coopere con Mono, y el juego será, si no tan, casi tan jugable como en Windows.

¡Esa es una gran diferencia!
¡Gracias por tu prueba!

¿Con mono es sin mods y sin scripts?
¿O simplemente un juego de vainilla sin mods?

¿Cómo haces para ejecutar el juego de esa manera?
¿Algún documento en alguna parte? (Realmente no soy bueno en esas cosas).

@LtSich Tanto la

Para que el juego se ejecute, utilicé el consejo de @InflexCZE y
Desde la publicación del 10 de agosto de @InflexCZE :

Según el registro, el matrimonio de Mono y nuestro compilador no es particularmente feliz, uno pegado_out_tongue
Está bien, no lo necesitamos.

Desafortunadamente, no hay un solo punto para deshabilitar el compilador (todavía), por lo que tendrá que eliminar 2 lugares clave que he identificado y esperar lo mejor.

1. Get rind of all stuff in this ctor.
   https://github.com/KeenSoftwareHouse/SpaceEngineers/blob/master/Sources/VRage.Scripting/MyScriptWhitelist.cs#L47

2. Make this method return `null` (prevent it from invoking the compiler core)
   https://github.com/KeenSoftwareHouse/SpaceEngineers/blob/master/Sources/VRage.Scripting/MyScriptCompiler.cs#L154

Parece mantequilla suave @ Linux74656 . Tu arduo trabajo valió la pena después de todo, CG 👍
Es posible que pueda echar un vistazo al compilador por la noche, tal vez podamos hacerlo funcionar también para que tú también puedas disfrutar de las modificaciones.

Por cierto, eché un vistazo a la traza proporcionada por @ Linux74656 , pero era mi uso incompetente de PerfView o faltaban símbolos o algo así, pero en cualquier caso no pude abrir la traza y ver información útil allí. Dado que mono parece bastante estable, creo que podemos continuar con él y dejar la depuración de .NET FW a otra persona :)

Tampoco pude obtener ningún dato útil del seguimiento del rendimiento, es por eso que renuncié a dotnet y comencé a trabajar para que mono funcionara. Estoy bastante seguro de que los trazos están incompletos, porque no puedo averiguar cómo resolver los símbolos que faltan.

Maldita sea si el juego puede ejecutarse con mods y scripts que podrían ser realmente increíbles ...
¡Muchas gracias por su trabajo, chicos!

Aquí están los registros y el archivo de minivolcado del juego mientras intenta cargar un mundo guardado.
Esto está usando wine-mono, y el único código modificado es deshabilitar la ventana emergente dotnet, por lo que el código del compilador del script no se modifica.
SpaceEngineers.zip

Después de un breve vistazo al compilador, parece que podríamos solucionar el problema bastante rápido, al menos este. Veremos qué / si algún otro salta sobre nosotros después.

En VRage.Scripting.MyScriptWhitelist hay 6 guardias que garantizan la compatibilidad de la lista blanca con el BCL proporcionado (más información aquí: https://github.com/ValveSoftware/Proton/issues/1792#issuecomment-520141233).
Esos necesitan irse.

Reemplace los siguientes IL.thow s con IL.pop seguido de IL.ret inmediatos.

MyScriptWhitelist#RegisterMember(MyWhitelistTarget, ISymbol, MemberInfo):
    (2x) throw new MyWhitelistException("The member " + member + " is covered by the " + namespaceKey + " rule");
    (1x) throw new MyWhitelistException("Duplicate registration of the whitelist key " + whitelistKey + " retrieved from " + member);

MyScriptWhitelist#Register(MyWhitelistTarget, INamespaceSymbol, Type):
    (1x) throw new MyWhitelistException("Duplicate registration of the whitelist key " + whitelistKey + " retrieved from " + type);

MyScriptWhitelist#Register(MyWhitelistTarget, ITypeSymbol, Type):
    (1x) throw new MyWhitelistException("The type " + type + " is covered by the " + namespaceKey + " rule");
    (1x) throw new MyWhitelistException("Duplicate registration of the whitelist key " + whitelistKey + " retrieved from " + type);

Después de este cambio, corremos el riesgo de que el verificador de la lista blanca no funcione un poco, ya sea permitiendo que los scripts hagan más de lo que deberían o prohibiendo algo que debería estar permitido. Podemos lidiar con eso cuando lleguemos allí. Por ahora sería bueno que comenzara :)

Hágame saber a dónde lo lleva esto, si llega al juego o si algún otro problema lo detiene.

Eso me lleva al juego con el modo Experimental habilitado. Antes de recibir un mensaje de error.

Desafortunadamente, no creo que los scripts estén funcionando. Pude hacer funcionar algunas modificaciones básicas (DX11 Door pack DX11 Shutters ... etc), pero cosas como Easy Inventory no funcionan.
Encontré algo muy interesante, las misiones de la campaña de juegos tampoco parecen funcionar ... supongo que se basan en scripts. Puedes ver el error en el video a continuación.
Enlace de video: https://youtu.be/aP7FdE4L6-M

Aquí están los archivos de registro de este evento:
SpaceEngineers.zip

Sí, la campaña también se ejecuta en scripts.

Hay una pantalla especial para errores de carga de mod. (Ctrl?) + F11 después de cargar un juego. Si algo salió mal durante la carga, debería estar allí.

Para una prueba rápida del compilador, intente pegar bloque programable + batería en un mundo vacío y cárguelo en el siguiente script. Debería imprimir el mensaje en información detallada del bloque o arrojarle algunos errores de compilación si falla. Esto debería decirnos si el compilador funciona y solo necesita algunos ajustes o si está totalmente roto.

void Main() 
{
    Echo("Yay works");
}

Creé un mundo vacío y coloqué una batería y un bloque programable con el código de arriba. Este fue el resultado después de presionar el código de verificación:
Screenshot_20190925_185615
No apareció nada más.
Cuando lo cerré y volví al Panel de control, presioné Ejecutar, dice ensamblaje no encontrado ... (Resultados a continuación)
Screenshot_20190925_190813
Hacer clic en recompilar no hace nada.

Supongo que esto cae en la categoría "totalmente roto" :)
¿Algo en el registro?

Aquí están los registros: SpaceEngineers.zip También

Alt + F11 me lleva a esta pantalla:
Screenshot_20190926_073809
y hacer clic en abrir en una nueva ventana muestra esto:
Screenshot_20190925_191201
Tengo 4 mods cargados en esta prueba: Easy Inventory (Falló), Text HUD API (Falló), DX11 DoorPack (Algunos problemas de textura pero funcionales) y Persianas DX11 (Totalmente funcional sin problemas).
Así que parece que los mods sin scripts integrados funcionarán.

Sin mensaje de error, nada en el registro, no estoy seguro de cómo sucede esto, pero parece que ha encontrado un agujero en nuestro informe de errores del compilador.

Creo que tendré que depurar esto por mi cuenta. ¿Podrías escribir los pasos para que SE funcione en mono para mí? Qué Linux usar, qué paquetes descargar, ... Configuraré VM e intentaré reducir lo que está sucediendo.

Muy bien

NOTA: Evitaría una VM, nunca podría hacer que el juego comenzara a usar una. Una máquina virtual podría funcionar para la depuración de código limitada ... pero probablemente sería mucho más fácil a largo plazo instalar Ubuntu en un SSD _en blanco y separado_ (para minimizar el riesgo de pérdida de datos). Un HDD probablemente funcionaría, pero he notado más tartamudeo en el juego mientras está instalado en un HDD.
¡Buena suerte! Espero que esto ayude.

Guide.docx

Bueno, parece que están sucediendo cosas en mi ausencia, nunca logré continuar depurando usando .NET, pero si Mono funciona, ¡es aún mejor!

Supongo que esta es la versión normal, ¿no tendría más sentido ejecutar la versión ModSDK aquí? ¿Eso debería registrar las excepciones de los mods en el archivo de registro, IIRC?

Lo intentaré más tarde y publicaré registros si surge algo.

Guide.docx

Gracias por tu doc ​​... Pero maldición, te detienes en la parte más importante :(
Esto es probablemente algo que KSH tiene que hacer directamente en el juego.
Omita la verificación de dotnet si hay alguna forma de detectar que el juego se ejecuta en Linux ...

La verificación de dotnet debe permanecer para los usuarios de Windows, pero también debe verificar la compatibilidad con mono en la misma declaración

Si está hablando de una modificación del juego para agregar controles específicos de protones / vino, no lo haga.

@ Linux74656, si bien entiendo su aprensión por escribir una guía sobre cómo modificar el código, ¿podría al menos decirme qué herramienta utilizó? El navegador de ensamblaje de MonoDevelop no parece permitir que se realicen modificaciones (o simplemente no lo uso correctamente), y parece que no puedo encontrar ninguna otra herramienta de Linux disponible. Tengo una copia con licencia de Rider en mi máquina de trabajo que podría ayudar, pero trataría de evitar jugar con esto en el trabajo.

Vuelve a leer, _la herramienta_ está en la guía :)

@ Linux74656 Por

@InflexCZE De hecho lo he visto, pero esperaba algo que se ejecutara correctamente en Linux, ya que mi instalación de Windows está actualmente con manguera y no tenía el tiempo ni la inclinación para arreglarlo todavía ... Haré que una VM funcione Supongo que continuaré mañana si es necesario, pero con usted ahora en el caso podría ser superfluo. Aún así, intentaré echar una mano donde y si es posible :)

@ Onyx47 Ah, lo siento, no me di cuenta. No estoy acostumbrado a trabajar con .NET en Linux, así que no conozco las herramientas allí :(

Aunque traigo buenas noticias. Me las arreglé para ejecutar el compilador, compilar el ensamblaje dinámico y ejecutarlo también. Hasta ahora probado solo en .NET FW aunque. Es casi la 1 de la madrugada, así que no puedo molestarme en intentar cambiar a Mono ahora: stick_out_tongue:
En cualquier caso, aquí va la solución. Pruébelo, si encuentra algún problema en Mono, continuaré depurándolo mañana.

Nuestro motor llama a Roslyn aquí:
https://github.com/KeenSoftwareHouse/SpaceEngineers/blob/master/Sources/VRage.Scripting/MyScriptCompiler.cs#L204

El código en el enlace está un poco desactualizado, en realidad hay un argumento más ( pdbStream ) en la versión actual del juego. Elimine este argumento (pase null lugar) y el compilador debería cumplir. (Básicamente, revertirlo a esta versión anterior de la línea que está en el enlace).

Ofc aplica este cambio a los cambios de ayer. Si el verificador de la lista blanca se queja (como he dicho, el BCL no es totalmente compatible, por lo que ahora puede estar mal configurado un poco), puede cerrarlo de manera muy simple poniendo el retorno inmediato al comienzo de este método:
https://github.com/KeenSoftwareHouse/SpaceEngineers/blob/master/Sources/VRage.Scripting/Analyzers/WhitelistDiagnosticAnalyzer.cs#L43

Lo siento @InflexCZE, ¡ me lo perdí por completo! ¡Gracias por señalarlo! ¡He actualizado el enlace de la guía con una versión revisada!

@ Onyx47 Desafortunadamente, intenté buscar herramientas que se ejecutaran de forma nativa en Linux. No pude encontrar ninguno que funcionara. Así que utilicé la herramienta mencionada y la ejecuté en un prefijo de vino con vcrun2015 vcrun2017 y dotnet472 instalados. parece funcionar bastante bien.

Parece que todavía es un poco de trabajo para los usuarios comunes de Steam hacer que este juego funcione. Espero que algunas de estas soluciones puedan incluirse en una actualización para SE en algún momento, de modo que la gente pueda simplemente presionar reproducir y terminar. Puedo decirles que no muchos se molestarán en compilar sus propios scripts :)

@InflexCZE ¡¡¡¡ Eso lo consiguió !!!!
¡El guión del juego que me diste antes se compila!

void Main() 
{
    Echo("Yay works");
}

Screenshot_20190926_193213

¡Easy Inventory también funciona!
Screenshot_20190926_193524

@InflexCZE
¡Oh wow!

¿Vamos a ver estos cambios en el juego, aunque de una forma un poco menos hacky, en el corto plazo? Me encantaría empezar a jugar de nuevo, ha pasado demasiado tiempo.

¡Háganos saber cómo se ve el aumento de recuento de jugadores de Linux en su extremo una vez que esto llegue a reddit!

Como solución temporal, ¿la creación de un archivo de parche / script de parche que realice los cambios relevantes automáticamente sería mal visto desde el punto de vista legal? No soy abogado, pero me parece que varios parches de pantalla ancha y similares para algunos juegos nunca molestaron a nadie y esto me parece el mismo tipo de modificación ...

Para que quede claro, no estoy sugiriendo que la distribución de un ejecutable modificado, a un diff binario simple que parchear el juego existente que todavía tendría que ser descargado desde Steam.

¿Quizás @InflexCZE podría verificar esto por nosotros con el liderazgo legal de Keen para nosotros? Por supuesto, espero que haya un buen cambio, simplemente podemos introducir estos cambios en el juego y hacer que todo esto sea discutible, pero como alternativa (en caso de que esto pueda causar problemas en la fase inicial) podría ser viable (y podría ser convertido en un guión de Lutris para jugadores menos expertos en tecnología).

Otra opción es, por supuesto, las actualizaciones de Wine / Proton que harían que el juego funcione correctamente con MS .NET, pero como parece que es un problema de GC, eso podría estar muy lejos ya que sin duda es un problema complicado.

Es bueno ver que hay al menos algo de amor por el juego en Linux, me encantaría poder jugarlo, incluso a través de protones.

@ Onyx47 Si es posible crear una diferencia que contenga solo los cambios requeridos, realmente no tendría ningún problema legal, considerando que no está redistribuyendo ninguna parte de la IP de KSH. En esencia, no sería diferente de un mod regular.

Me comuniqué con Keen sobre la legalidad de redistribuir un parche como este, y la persona a la que reenviaron el correo electrónico dijo que se lo llevarían al CEO en su reunión del lunes.

Habiendo dicho eso ... He creado un parche Diff y lo he aplicado al juego en la computadora de mi hermana. Parece que no tiene ningún problema y funcionó bien. Incluso podemos jugar a un juego de Direct Connect lan. sin ningún problema.
Sin embargo, me preocupa el modo multijugador y quizás @InflexCZE pueda iluminarme. Ya que modifiqué un par de archivos DLL de juegos para que esto funcione. ¿Cuáles son las posibilidades de que el juego / steam sea capaz de detectar eso y piense que es una forma de trampa si el juego se conecta a un servidor oficial / público? ¿Y también cuáles serían las otras ramificaciones potenciales de que los jugadores del lado del cliente ejecuten un código de juego modificado que permita que algunos scripts pasen por el filtro de la lista blanca?

Si esto es algo que puede suceder, y obtengo el permiso de mi contacto de Keen para distribuir dicho parche, necesitaría asegurarme de que la gente entienda que no debe conectarse a juegos multijugador a través de Internet, y más bien solo jugar juegos LAN locales mientras esto es parcheado.

¡Has hecho un muy buen trabajo!
¡Muchas gracias por eso!

Espero que puedas distribuir el parche.

Como solo juego para un jugador, no tengo ningún problema con el aspecto multijugador del juego.

Dejaré la parte legal a las personas responsables de esto y me enfocaré solo en el aspecto técnico del trato en mi respuesta.

Como ha tenido la oportunidad de ver por su cuenta, jugar con el juego para que haga algo que nunca fue pensado es muy fácil y por esta razón no se puede confiar en los clientes . Esa es la filosofía que seguimos muy estrictamente y todo el juego está codificado como tal. El resultado de eso es que los servidores hacen toda la simulación, mientras que el cliente es solo una interfaz gráfica que conecta al jugador humano y al servidor. Los clientes nunca calculan nada "para el servidor" y nunca le dicen qué hacer, simplemente transmiten solicitudes de humanos. El servidor verificará cada solicitud, la realizará y le enviará el resultado (o lo pateará en el acto si hace algo que no está autorizado).

Esto también se aplica a las solicitudes originadas en los modos del lado del cliente. Para los scripts de bloques programables, la situación es aún más simple, solo se ejecutan en el servidor.

En resumen, siempre que el animal que el servidor observa en el otro lado de la conexión siga el protocolo y haga consultas válidas, será aceptado y tratado como cliente legítimo sin importar lo que sea en realidad.

Una cosa que me gustaría señalar es que existe una tabla fija de consultas MP que tanto el cliente como el servidor crean al inicio. Si modificas tu juego demasiado, podrías tirar esta mesa de tu lado y el servidor se negará a dejarte conectarte. En ese caso, se te dirá que estás usando una versión del juego diferente a la que está ejecutando el servidor. Si lo encuentra, sabrá lo que está pasando.

Bueno, esperaré la diferencia potencial que parece, o estoy haciendo algo mal con mi edición de IL o hay otra cosa sutil sucediendo en alguna parte, tener un juego modificado que funcione confirmado probablemente sería una mejor idea que perseguir fantasmas. Me quedo atascado en un ciclo de carga al crear un mundo. Dicho esto, adjuntando registros por si acaso:

SpaceEngineers.txt

Tenga en cuenta que se detiene en MyDefinitionManager.LoadData() - START , la última línea es después de que cerré el juego con fuerza. Dado que menciona scripts allí (aunque ni siquiera habilité el modo experimental, quería probarlo sin eso primero), tengo muchas esperanzas de que sea yo quien cometa errores al hacer las ediciones, en lugar de ser sensible a Mono. versiones o lo que sea.

EDITAR: puede que no sea el juego, descubrí ayer que mi HDD está renunciando al fantasma, así que sí ... quién sabe ...

@ Linux74656 Tengo una pregunta. En este video (https://youtu.be/LwqRLCQR6aM), muestra que el juego funciona bastante bien en Mono, aunque hay algunos picos en el gráfico de tiempo de fotogramas.

Solo por curiosidad profesional, ¿podría cambiar a la compilación Modding (compilación con generador de perfiles) y medir por mí qué está causando los picos en el hilo de renderizado y qué tan grandes son los picos?

@InflexCZE
Podría deberse a una salida de código de sombreado LLVM no optimizada. RADV, el controlador gratuito y vulkan, usa LLVM de forma predeterminada para compilar sombreadores en el juego y es bastante propenso a tartamudear.
Puede valer la pena hacer una repetición con la nueva rama ACO de la válvula y ver si el tartamudeo todavía está presente. Tuvo un microstutter similar en el piso de matar 2 que ACO arregló.

Las capturas de renderización de Space Engineer se han analizado antes en el rastreador de problemas de visitas dxvk sin problemas aparentes en las llamadas a la API.

Necesitaría obtener el diff para probarlo yo mismo. Esperando el sí / no legal, supongo.

@InflexCZE He probado el generador de perfiles (con las modificaciones de código) en wine-mono sin éxito. Se bloquea sin mensaje de error una vez que cargo un mundo. Lo he probado (con las modificaciones de código) con dotnet y obtengo el mismo resultado. Probé tanto un mundo previamente guardado con modo experimental como un nuevo mundo Crashed Red Ship sin modo experimental.
Se adjuntan registros para el mundo guardado previamente tanto para mono como para dotnet:
LogDOTNETProfiler.zip
LogsMonoProfiler.zip

También recibí una respuesta de mi contacto de Keen, y él dice que, dado que estas modificaciones se están realizando como una actividad impulsada por la comunidad, Keen no tiene ningún problema con eso. Hizo hincapié en que no tienen soporte oficial para Linux en este momento.
Así que me gustaría tomarme el tiempo para agradecer a @InflexCZE por ayudarnos, en su tiempo libre, a llegar tan lejos. ¡Hubiera sido posible sin su ayuda!

Estoy en el proceso de crear una guía para explicar cómo instalar estos parches. ¡Publicaré una actualización cuando esté lista!

Muy bien, hice un repositorio simple que contiene un archivo Léame que explica cómo instalar los parches y los archivos de parche reales comprimidos y archivados.
Lo puedes encontrar aquí:
https://github.com/Linux74656/SpaceEngineersLinuxPatches

@SpookySkeletons Si se trata de algo en GPU (sombreadores deficientes) o API DX (envoltorio de Proton), veríamos picos en la etapa "Presente" (cadena de intercambio) o alguna llamada API específica. Creo que es Mono GC ya que no está tan bien optimizado como .NET GC (hicimos mediciones bastante recientemente) y el juego es bastante pesado en el recuento de objetos administrados en este momento.

Si ese es el caso, puede esperar mejoras bastante buenas en futuras versiones debido a las optimizaciones que hemos realizado para XBox.

@ Linux74656 Es bastante desafortunado que sea un bloqueo duro sin ningún seguimiento de pila. Supongo que lo dejaré pasar, verás si mejora en los próximos lanzamientos.

Una cosa que puedes probar es configurar la variable de entorno "MONO_GC_PARAMS" para el proceso del juego en nursery-size=32m o minor=simple-par o nursery-size=32m,minor=simple-par y observar si eso hace alguna diferencia en la frecuencia y / o tamaño de los picos respectivamente.

En cualquier caso, fue un placer trabajar con todos ustedes y espero que pasen un buen rato con SE 👍
Si necesita ayuda en el futuro, no dude en enviarme un ping.

Muchas gracias @ Linux74656
Pero para mí, el juego comienza bien en el cajero automático y cuando intento iniciar un mapa, el juego se bloquea.
Y después de que el juego se bloquee cada vez que intento iniciarlo ...

Tengo que eliminar la carpeta% appdata% para reiniciar ...

Haré más pruebas para encontrar cuál es el problema ...
Tal vez configuración gráfica o algo así.

Al menos no tengo problemas de sonido ni errores en el menú principal.
Habilitar vsync parece ralentizar el rendimiento.

Es un gran paso adelante para nosotros poder jugar en nuestro juego :)

@InflexCZE Probé tu sugerencia. ¡Definitivamente hizo una diferencia!
Este es el tamaño de la guardería = 32 m
nursery-size=32m

Esto es menor = par simple
minor=simple-par

y este es el tamaño de la guardería = 32m, minor = simple-par
(Tomado del juego porque el menú no tenía picos. NOTA: este pico NO tiene tartamudeo asociado).
nursery-size=32m,minor=simple-par

Por lo tanto, parece que el tamaño de la guardería = 32 m, minor = simple-par reducirá los picos con bastante eficacia. No estoy muy seguro de lo que esto significa. Pero asumo que es bueno.

@LtSich Tuve una experiencia similar, solo que siempre me quedé atascado en un bucle de carga infinito en lugar de un bloqueo, no pude cargar un solo mapa.

Lo intentaré de nuevo lo antes posible, aunque necesito arreglar mi PC esta noche, los discos duros defectuosos apestan :(

@LtSich ¿Está ejecutando la compilación modSDK (generador de perfiles)? Si es así, usa el juego normal. Solo he visto fallas en la carga cuando el bin64 está usando la compilación modSDK

@LtSich ¿Está ejecutando la compilación modSDK (generador de perfiles)? Si es así, usa el juego normal. Solo he visto fallas en la carga cuando el bin64 está usando la compilación modSDK

Hum, recuerdo que hice alguna prueba con eso.
Haré una instalación completamente limpia y lo intentaré de nuevo.

Por cierto, ¿cómo se cambia la variable MONO_GC_PARAMS?

[EDITAR]
Y otra pregunta, ¿deberíamos seguir usando el comando PROTON_NO_ESYNC = 1%% para iniciar el juego?
[/EDITAR]

Colocas MONO_GC_PARAMS = nursery-size = 32m, minor = simple-par% command% en tus opciones de lanzamiento de Steam para el juego. Haga clic derecho en Space Engineers, haga clic en propiedades, haga clic en SET LAUNCH OPTIONS ... luego péguelo en el cuadro.
No tengo PROTON_NO_ESYNC = 1 en mi línea de comando, y parece funcionar bien.

Gracias :)
Actualmente estoy descargando el juego después de eliminar todo.
Podré decir si esto hace alguna diferencia.

[EDITAR]
Para mí, el juego es muy inestable ... Incluso después de quitar / instalar el juego.
La mayoría de las veces no puedo iniciar el juego sin eliminar SpaceEngineers.cfg
E incluso si puedo iniciar el juego, no puedo iniciar ningún mapa / juego sin fallar ...
Haré más pruebas más tarde ... Para intentar encontrar alguna configuración que no se bloquee ...
[/EDITAR]

@ Linux74656 Aquí hay una documentación de muy alto nivel para esa magia que sugerí antes: stick_out_tongue: puede resultarle útil, aunque no espere maravillas
https://www.mono-project.com/docs/advanced/garbage-collector/sgen/working-with-sgen

@LtSich Por favor, envíenos el registro del juego para que sepamos qué está pasando

@InflexCZE ¡ Lo echaré un vistazo, gracias!

@InflexCZE : He encontrado el problema para iniciar el juego.
Tengo que deshabilitar el seguimiento anónimo.
Si lo habilito, no puedo reiniciar el juego.
Mientras diga que no (tengo que decir que no cada vez que empiezo el juego) puedo empezar el juego.

Ahora tengo que intentar iniciar un juego o intentar unirme a un servidor personalizado :)

¿Quieres algunos registros cuando me bloquee con el seguimiento anónimo activado?

Recuerdo haber visto en los registros que se queja de no poder obtener el consentimiento de GDPR y simplemente se agotó el tiempo cuando elegía no (eso debería ser visible en el registro que publiqué arriba). ¿Posiblemente algunas API web en Mono no están a la altura / no son 100% compatibles?

Entonces, probando el parche de Linux74656 parece funcionar, con algunas excepciones notables.

  1. La película de introducción no se reproduce (? Supongo, no ahora) y, como resultado, pasé los primeros 10 minutos mirando una pantalla en blanco porque pensé que estaba colgando. Hice clic y "omitió" la introducción y el mensaje de GDPR (presione no)
  2. Funcionará bien durante un tiempo, luego, de repente (es necesario probarlo más), el juego se bloquea en el escritorio, pero funciona bien.
  3. Un buen número de advertencias de "baja velocidad de la simulación"
    Ejecutando Arch Linux con un RTX 2070 y un 8750H (¿Debería ser suficiente, eh?)
    Cabe señalar que hace que la computadora portátil suene como un motor a reacción, aunque eso nunca es sorprendente: P

@StripedMonkey Si elimina o cambia el nombre del video ubicado en SpaceEngineers / Content / Videos / ksh.wmv, omitirá el video de introducción y lo llevará al menú principal.
He tenido un bloqueo ocasional, pero lo he tenido funcionando durante varias sesiones que duraron más de 4 horas sin problemas (una vez que comienza). La próxima vez que se bloquee, si puede dejar los registros aquí, es posible que podamos averiguar qué está sucediendo.
Se espera alguna pérdida de rendimiento cuando se ejecuta el juego a través de Proton y DXVK ... He visto algunos problemas de rendimiento en un gtx960 y un 4770K, aunque las ralentizaciones son menos notables en un rx580 y un R5 2500x. Un RTX2070 no debería tener problemas con los gráficos en configuraciones medias a altas, y un 8750H debería poder jugar con algunas modificaciones básicas.
Cuando presionas Shift + F1, ¿de qué se queja en particular?

Específicamente dice "Calidad reducida de deformaciones y cambios de Voxel debido a la calidad de simulación adaptativa". IIRC los registros de SE solo tienen un mensaje GC frecuente, pero no parece estar relacionado con el instante de un bloqueo. El próximo bloqueo que genere, publicaré el registro de.

Personalmente, creo que tiene algo que ver con el Sim, ya que el primer accidente con el que realmente asocié algo fue cuando intenté hacer un 180 a la velocidad máxima en el mundo del tutorial. casi tan pronto como lo di vuelta murió. Sin embargo, es necesario hacer más pruebas adecuadas para averiguarlo.

También recibo mucho ese mensaje. Menos en la computadora RX + R5, pero con bastante frecuencia. Dado que está ejecutando un procesador móvil ... no creo que haya mucho que pueda hacer para mejorar el rendimiento, aparte de asegurarse de que esté bien refrigerado y con el turbo adecuado hasta su velocidad de 4.10Ghz. También puedes intentar desmarcar algunas de las configuraciones del juego, como la hermeticidad, y ver si eso tiene un impacto.

SpaceEngineers.log <- Bloqueado
En general, el desempeño parece estar bien, ignorando los choques. Así que no me preocupa demasiado mejorar eso a corto plazo. Este accidente se generó específicamente después de que fui kamakazi en una nave enemiga NPC. Me estrellé casi inmediatamente después de morir (aunque tenga en cuenta que no siempre me estrello al morir) no estoy seguro de qué lo causa exactamente.

El registro termina cuando moriste. Parece que no registró el accidente.
Rápidamente intenté cargarme en un mundo y ver si podía hacer que se colapsara. Golpeé tres barcos contra el suelo y me maté otras cuatro veces sin problemas. He notado que mi hermana tiene más problemas con su sistema RX + R5. Si puedo averiguar por qué el de ella se bloquea con más frecuencia que el mío ... Veré qué puedo averiguar.

Creo que lo tengo. Intente instalar vcrun2005 con winetricks y vea si eso resuelve los problemas de bloqueo. También asegúrese de configurar su prefijo de la versión de Windows de nuevo a Windows 7.

Tenía muchas ganas de probar esto, pero parece que tengo un error de segmento al intentar cargar un mundo nuevo
https://pastebin.com/E7Ha8aCK - steam-244850.log

EDITAR//
Bastante tonto, probablemente debería dar algún tipo de detalles.
El registro se corta solo en los bits aparentemente interesantes, la mayor parte del registro posterior es solo mensajes de símbolo no encontrado mil millones de veces.
El sistema es Slackware64-current, Proton 4.11-6, se ejecutó a través de la guía publicada (¡gracias Linux74656!), Incluyendo vcrun2005 y configurando la versión de Windows para Windows 7, aunque también fallaría antes de eso.

Entonces, con esta solución, ¿se puede confirmar si las modificaciones y los juegos multijugador con usuarios de Windows funcionan?

@Aerol Intenta verificar la integridad de los archivos de tu juego y luego vuelve a aplicar los parches.

@jarrard Mods funcionará. El modo multijugador con otros usuarios de Linux funcionará. No he intentado jugar un juego con un usuario de Windows ... pero debería funcionar.

@ Linux74656 La instalación de vcrun2005 y Windows 7 resultó en una tartamudez realmente mala, ¿cambiar de nuevo a winXP pareció solucionarlo? En cualquier caso, logré jugar un poco más de lo que hice en el pasado, aunque al final aún logré caerme. ¿Quizás tenga algo que ver con viajar? Realmente no lo se. Estaba salvando una estación y tuve algunos casos en los que la velocidad de la simulación cayó por debajo de la norma, pero luego regresó. Tan pronto como salí de la estación y estaba a punto de abordar un barco abandonado, volví a estrellarme. Esta fue probablemente mi carrera más larga sin un accidente, pero, de nuevo, no me movía ni una tonelada, solo estaba moliendo cosas y tratando de reconstruir el barco.

Intenté seguir los pasos de la guía y las cargas del juego (el menú tiene un pequeño aumento de sonido de vez en cuando), sin embargo, comenzar un nuevo mundo basado en la Tierra hace que el juego no inicie el mundo y se bloquee el proceso.

Encogimiento de hombros. Seguí a la T, https://github.com/Linux74656/SpaceEngineersLinuxPatches

_Hubo un error al cargar el mundo, verifique el archivo de registro.

@StripedMonkey Tengo win7 en ambos y solo noté tartamudeo en mi computadora. Lo puse en winxp y el leve tartamudeo desapareció. Para uniformidad, cambié la guía para establecerla en WinXP.
Probemos una solución general e instale todo en su prefijo que está instalado en el mío: Creo que esto es todo lo que instalé en el prefijo a lo largo del tiempo: vcrun2003 vcrun2005 vcrun2015 vcrun2017 xact d3dcompiler_43 d3dcompiler_47 vea si instalar todos estos ayuda.

@jarrard Ese mensaje de error debería haber sido desactivado por los archivos de parche ... intente verificar la integridad de los archivos de su juego y vuelva a aplicar los parches.

Verifiqué antes de aplicar los parches, supongo que lo volveré a hacer (sí, los archivos se modificaron por fecha)

Lo descubrí, sus instrucciones tienen un pequeño problema que no distingue entre mayúsculas y minúsculas.

bspatch VRage.Scripting.dll Vrage.Scripting.dll $ INICIO / Documentos / SpaceEngineers / VRage.Scripting.dll.patch

Ver el problema :)

@jarrard ¡ Gracias! ¡Obtuve, y se ha corregido en la guía!

@Aerol Vea si esto está relacionado con su problema. Vuelva a aplicar VRage.Scripting.dll.patch con el comando corregido bspatch VRage.Scripting.dll VRage.Scripting.dll

Bueno, parece progresar, pero tiene un uso de memoria de 4-5GB y un uso de CPU de% 50 para siempre, ¿debo esperar media hora para que se cargue o algo así? o simplemente sigue intentándolo? ciertamente el juego tiene problemas de estabilidad.

Sí, este es un problema conocido. No se moleste en esperarlo, nunca se cargará. Solo fuerza a cerrarlo e intenta volver a cargarlo. Funcionará aproximadamente el 50% del tiempo. Estoy trabajando para averiguar qué está causando esto.

Ok, me las arreglé para cargar en un mundo ya salvado de cuando estaba jugando hace un tiempo. Eso pareció funcionar, tal vez el problema sea solo algunos obstáculos para crear un mundo nuevo, tal vez si sigo intentándolo funcionaría.

Sin embargo, ahora la velocidad de fotogramas es muy reproducible, el único problema es el bloqueo / estancamiento en la creación de mundos y, en mi caso, todavía hay un pequeño crujido de audio, podría haber algunas soluciones con pulseaudio que puedo probar allí.

El juego funciona bastante bien a 4k incluso con 10k tree's set, solo apaga fxaa (usa reshade smaa si es necesario), configura shader / shadows en medio, todo bien. Incluso podría ser más suave que las ventanas porque debajo de las ventanas tengo un corte de fps extraño, incluso a 80 fps más o menos. (podría ser una sincronización rápida o algo así).

Además, si alguien descubre cómo resolver el pequeño crujido de audio que ocurre, avíseme, he probado algunas configuraciones de audio de pulso hasta ahora sin mucha suerte.

ACTUALIZACIÓN: PULSE_LATENCY_MSEC = 90 en la línea de comando ayudó a asignar mi tarjeta de sonido USB OMNI, ahora realmente no hay ningún crujido, excepto por el sonido ocasional muy débil que no es molesto. HURRA

Desafortunadamente, la verificación de los datos del juego no solucionó nada más que descargar videos nuevamente, y ya había ejecutado los comandos bspatch adecuados. : /

Si ha verificado los datos del juego, deberá volver a aplicar los parches si aún no lo ha hecho.

Tengo el mismo bloqueo de pantalla de carga que otras personas y más allá de eso, también, el mismo bloqueo parece aparecer en el juego momentos después de cargar un mundo sin conexión. Ejecuta la CPU aproximadamente al 40%.
El renderizado no se detiene y las partículas aún se mueven, pero el motor de física se detiene en seco, informa una calidad de simulación baja y se detiene en el marco durante breves períodos mientras permanece sin hacer nada físicamente.

No se acepta ninguna entrada para los menús, no puedo mover el personaje pero todo lo demás se sigue procesando.

Recibo la misma pantalla de carga para detener a otras personas

Sí, esto parece suceder a menudo al generar un mundo nuevo, si sigues intentándolo, parece progresar de manera diferente en cada intento. Lo que encontré que funciona% 100 es cargar un mundo EXISTENTE que hiciste anteriormente, creo que incluso puedes descargarlos. Pero sí, el bloqueo parece estar relacionado en gran medida con la generación de un nuevo cajero automático mundial.

aplicó los parches en un prefijo de protón en steamplay,
logré llegar al menú, pero el juego se bloquea una vez que intento iniciar cualquier juego, tampoco tengo sonido y no puedo presionar la tecla Alt del juego.

¿Dónde se encuentran los archivos .log?

Arch lin4.19.69-1-lts
GTX-1070
Intel I5-7600K

Más que eso, cargar mundos existentes se congela en la pantalla muy, muy a menudo.

Si consigo entrar en el juego, todo el motor de física se detiene y no puedo probar ninguno de los menús, pero los marcos siguen apareciendo y los efectos siguen moviéndose.

Aquí hay un mundo que puede usar, va a la ubicación de su carpeta de guardado _ (no estoy seguro si el número es exclusivo para mí, pero las carpetas dentro pueden ir a cualquier carpeta existente que tenga) _. Esto ha funcionado el 100% de las 4 o 5 veces que he intentado cargarlo. El archivo es en realidad un archivo 7zip fyi.

spaceengineerssavedworld.zip

@StripedMonkey Hecho, por supuesto, lamentablemente todavía segfaults.

@EduardoGodoy ¿Puedes agregar PROTON_LOG = 1 a tus opciones de lanzamiento, ejecutar el juego y comprobar ~ / steam-244850.log? El registro del juego está en ~ / .local / share / Steam / steamapps / compatdata / 244850 / pfx / drive_c / users / steamuser / Application Data / SpaceEngineers / SpaceEngineers.log

Se las arregló para ingresar a su guardado igual que el mío, pero la misma congelación del motor de física en el juego antes de que la GUI del traje pudiera cargar. ¿Se está rompiendo el compilador?

Curioso qué lo detendría así ...

Hmm, bueno, puedes probar mis archivos compilados, pero no veo cómo podría salir mal o ser diferente.
compiledfilesfortesting.zip

Si eso no funciona, entonces algo más lo está fallando. ¿Quizás controladores de video? Estoy usando solo los de nvidia en pop_os plasma5 atm para mi 1080TI. (si usa AMD, intente forzar al proveedor de protones a NVIDIA)

"El compilador" no debería tener nada que ver con esto.

@EduardoGodoy Están ubicados en el prefijo Steam. ~/.local/share/Steam/steamapps/compatdata/244850/pfx/drive_c/users/steamuser/Application Data/SpaceEngineers/SpaceEngineers.log
Para instalar y ejecutar esta cosa, yo:

  1. Winetricks, wine-mono y bsdiff instalados (literalmente, nunca instaló Wine antes de esto)
  2. Antes incluso de ejecutar el juego por primera vez, corrió WINEPREFIX="$HOME/.local/share/Steam/steamapps/compatdata/244850/pfx" winetricks --force -q vcrun2015 xact
    y
    WINEPREFIX="$HOME/.local/share/Steam/steamapps/compatdata/244850/pfx" msiexec -i "Downloads/wine-mono-4.9.3.msi"
  3. Verifica los archivos del juego y ejecuta
bspatch Sandbox.Game.dll Sandbox.Game.dll $HOME/Downloads/Patches/Sandbox.Game.dll.patch
 ```
and

bspatch VRage.Scripting.dll Vrage.Scripting.dll $ INICIO / Descargas / Parches / VRage.Scripting.dll.patch
''

  1. (Opcional) Elimine SpaceEngineers/Content/Videos/ksh.wmv para evitar una pantalla negra al cargar.

Hasta donde yo sé, esto es todo lo que he hecho para que funcione en Arch.
Proton Versión 4.11
Wine Versión 4.16
vino-mono 4.9.2
winetricks 20190912-1
controlador nvidia 435.21

aquí está el registro:
https://pastebin.com/zZ7MzreW

"El compilador" no debería tener nada que ver con esto.

@EduardoGodoy Están ubicados en el prefijo Steam. ~/.local/share/Steam/steamapps/compatdata/244850/pfx/drive_c/users/steamuser/Application Data/SpaceEngineers/SpaceEngineers.log
Para instalar y ejecutar esta cosa, yo:

1. Installed winetricks, wine-mono, and bsdiff (Literally never installed Wine before this)

2. Before even running the game for the first time ran `WINEPREFIX="$HOME/.local/share/Steam/steamapps/compatdata/244850/pfx" winetricks --force -q vcrun2015 xact`
   and
   `WINEPREFIX="$HOME/.local/share/Steam/steamapps/compatdata/244850/pfx" msiexec -i "Downloads/wine-mono-4.9.3.msi"`

3. Verify the gamefiles and run
bspatch Sandbox.Game.dll Sandbox.Game.dll $HOME/Downloads/Patches/Sandbox.Game.dll.patch

y

bspatch VRage.Scripting.dll Vrage.Scripting.dll $HOME/Downloads/Patches/VRage.Scripting.dll.patch
1. (Optional) Delete `SpaceEngineers/Content/Videos/ksh.wmv` to prevent a black screen on loading.

Hasta donde yo sé, esto es todo lo que he hecho para que funcione en Arch.
Proton Versión 4.11
Wine Versión 4.16
vino-mono 4.9.2
winetricks 20190912-1
controlador nvidia 435.21

esto es lo que ejecuté para instalar el parche:
patch

Proton versión 4.11-6
NVIDIA-SMI 435.21
wine-4.15 (Puesta en escena) (aunque no usé vino)
winetricks 20190615 (yo tampoco usé winetricks)

Por lo que veo, la única diferencia entre mi sistema y el tuyo es que no ejecuté "vcrun2015 xact", lo haré y veré si obtengo este error.

INICIAR SESIÓN:
https://pastebin.com/zZ7MzreW

Intenté limpiar el prefijo varias veces y mi md5 coincide con los archivos parcheados.

Cargo en el juego y luego la misma congelación en la pantalla de carga se mantiene pero en el juego. A veces, la GUI en primera persona tiene la oportunidad de cargarse y otras veces no. No puedo presionar ninguna tecla, mirar a mi alrededor, la física se detiene si me desplazo en el lugar, se detiene en seco, no hay menús y la aplicación consume CPU.

Gentoo con AMDGPU.

Hmmm, ¿por casualidad no tienes una CPU Zen2? Ryzen 3xxx

Es un Intel de 4ª generación, que pronto volverá a ser de 3ª generación cuando saque mi portátil Coreboot. No tiene ninguno de los nuevos problemas de instrucción de la CPU.

Algún otro componente (software) de mi sistema debe estar jugando con esto.

Por lo que veo, la única diferencia entre mi sistema y el tuyo es que no ejecuté "vcrun2015 xact", lo haré y veré si obtengo este error.

El 110% necesita tener vcrun2015 et al. Instalado.

NVIDIA-SMI 435.21
wine-4.15 (Puesta en escena) (aunque no usé vino)
winetricks 20190615 (yo tampoco usé winetricks)

Su versión de Winetricks tiene 3 meses de antigüedad, aunque es posible que no tenga nada que ver con los problemas que estamos teniendo. Probablemente sea mejor tenerlos lo más idénticos posible, ¿eh? Tampoco mencionaste una versión mono, ¿supongo que también la instalaste?

@StripedMonkey corrí WINEPREFIX="$HOME/.local/share/Steam/steamapps/compatdata/244850/pfx" winetricks --force -q vcrun2015 xact
y entonces:
WINEPREFIX="$HOME/.local/share/Steam/steamapps/compatdata/244850/pfx" msiexec -i "Downloads/wine-mono-4.9.3.msi

esta vez, cuando comencé un juego, no se bloqueó de inmediato, sin embargo, me quedé atrapado en la pantalla de carga durante 15 minutos (comencé a generar el mundo a la 01:30 hora local), no hay bloqueos, pero supongo que el juego iba a ser atrapado en la pantalla de carga para siempre
todavía no tenía sonido y todavía no podía hacer alt-tab, tuve que dejar XFCE y matar el proceso en la terminal.

No mencioné mono porque se supone que debe instalarse de forma predeterminada, ¿no es así? tampoco tengo protontricks para verificar la versión mono en el prefijo de vapor (¿winetricks muestra la versión para vino, supongo?)

Actualizaré Winetricks a la última versión y comprobaré la versión mono.

aquí está el nuevo registro:
https://pastebin.com/YNLAK9We
actualizar:
la versión mono es "mono-6.0.0.319-1"

Prueba estos parches:
NEWPatches.tar.gz
Deberá colocar las DLL originales en el directorio SE antes de aplicar estos parches. IE verifique la integridad de los archivos del juego si no hizo copias de seguridad.

Si esto funciona, actualizaré el repositorio con estos parches por la mañana.

No mencioné mono porque se supone que debe instalarse de forma predeterminada, ¿no es así? tampoco tengo protontricks para verificar la versión mono en el prefijo de vapor (¿winetricks muestra la versión para vino, supongo?)

Mono! = Vino-mono. No necesita protontricks instalado para verificarlo, y (la guía de Linux74656 lo mencionó específicamente) solicitó 4.9.3

Puedo decirles con certeza que ese mono no es correcto simplemente porque el control de versiones no coincide con el lanzamiento actual de wine-mono, que lanzó 4.9.3 hace una semana.

No mencioné mono porque se supone que debe instalarse de forma predeterminada, ¿no es así? tampoco tengo protontricks para verificar la versión mono en el prefijo de vapor (¿winetricks muestra la versión para vino, supongo?)

Mono! = Vino-mono. No necesita protontricks instalado para verificarlo, y (la guía de Linux74656 lo mencionó específicamente) solicitó 4.9.3

Puedo decirles con certeza que ese mono no es correcto simplemente porque el control de versiones no coincide con el lanzamiento actual de wine-mono, que lanzó 4.9.3 hace una semana.

¿Cómo verifico el mono de vino? al buscar en Google, solo veo preguntas relacionadas con errores de "mono no encontrado".

Prueba estos parches:

Si esto funciona, actualizaré el repositorio con estos parches por la mañana.

¿Qué cambió?

@ Linux74656 Con este nuevo parche, nhttps: //support.microsoft.com/kb/3120241 \ n \ nEl juego no se ejecutará correctamente de lo contrario

ok, he probado muchas cosas, pero no puedo entrar en ningún juego :(
No puedo crear un juego nuevo, no puedo unirme a un juego en una computadora con Windows, no puedo intentar cargar un juego guardado (descargado aquí).

Aquí hay algunos registros cuando intento crear un nuevo juego: https://dl.cafe-philo.net/logsse.tar.gz
No encontré nada útil en esos registros, pero tal vez no busque el lugar correcto.

El prefijo está configurado como dice el documento, intente winxp o win7.
Intente agregar otro componente (crun2003 vcrun2005 vcrun2015 vcrun2017 xact d3dcompiler_43 d3dcompiler_47)

He notado el pequeño error en VRage y Vrage y vuelvo a aplicar el parche.

He intentado iniciar un juego con muchas opciones diferentes (experimental, sonido, guiones, etc.).

He instalado mono-devel, pero esto no cambia nada.

Volveré más tarde, quizás me haya perdido algo ...

He instalado mono-devel, pero esto no cambia nada.

como se mencionó anteriormente wine-mono! = mono-devel. ¿Lo instaló desde https://github.com/madewokherd/wine-mono/releases ?

He instalado mono-devel, pero esto no cambia nada.

como se mencionó anteriormente wine-mono! = mono-devel. ¿Lo instaló desde https://github.com/madewokherd/wine-mono/releases ?

Sí, sí, lo he instalado con wintetricks como se menciona en la documentación.
Pero para estar seguro de que he instalado mono-devel ya que mi juego sigue fallando cuando intento iniciar algo.

Pude comenzar un nuevo mundo alienígena esta vez, todo bien. Así que decidí intentar unirme a un servidor MP (local sin modificaciones) y parecía que se estaba cargando pero terminó fallando después de 20 segundos :(

SpaceEngineers.log

@jarrard ¿Ha intentado cargar en un servidor de Windows? El registro dice claramente, la mesa MP está apagada (el problema que mencioné antes)

En cuanto al juego se congela, si logras hacer un volcado del juego mientras está en este estado (o cualquier otra cosa que normalmente haces en Linux para inspeccionar el estado interno de un proceso), podría decirnos qué está pasando.

la mesa MP está apagada (el problema que mencioné antes)

Lo siento, no tengo idea de lo que estás hablando, fue el servidor 2 de Australia que funcionó bajo Windows.

[...] hay una tabla fija de consultas MP que tanto el cliente como el servidor crean al inicio. Si modifica su juego demasiado, puede tirar esta mesa de su lado y el servidor se negará a permitirle conectarse
https://github.com/ValveSoftware/Proton/issues/1792#issuecomment -536186685

O es solo otro problema con diferentes BCL que provienen de Mono. En cualquier caso, parece que no será tan trivial hacer que el juego cruzado funcione.

Bien. @EsqueletosEsqueletos

¿Qué cambió?

Los nuevos parches son de los binarios correctamente modificados. Digamos que yo era TheBigDumb tm y tomé un atajo al modificar el código descompilado, modificando los métodos del código C # y volviéndolo a compilar (sin la fuente completa ... ¡lo sé bien!). Esta vez solo usé el editor de idioma intermedio para modificar los binarios. Parece haber solucionado muchos de los problemas de inicio que se produjeron. He aprendido mi lección. ¡No más atajos si no sé exactamente lo que estoy haciendo!

@RayasMono

@ Linux74656 Con este nuevo parche, nhttps: //support.microsoft.com/kb/3120241 \ n \ nEl juego no se ejecutará correctamente de lo contrario
Puede intentar volver a aplicar el parche a Sandbox.Game.dll. Aunque simplemente volvería a aplicar ambos parches a las nuevas copias originales de los archivos dll.

@LtSich Los nuevos parches probablemente solucionarán sus problemas con la carga mundial. Además, no creo que la versión mono haga una diferencia (siempre que sea más nueva). Simplemente lo incluí en la guía para la uniformidad, para asegurarme de que todos ejecutarían la misma versión si ocurrieran errores.

@jarrard Desafortunadamente, parece que el modo multijugador con computadoras con Windows no estará disponible en este momento. Pero puedo confirmar que si juegas con otras computadoras Linux que tienen este parche, el juego funciona bastante bien.

He actualizado el repositorio de la guía aquí: https://github.com/Linux74656/SpaceEngineersLinuxPatches para incluir los nuevos parches. Todos deben volver a seguir la guía y aplicar los nuevos parches. Asegúrate de aplicar los parches a las DLL originales (IE verifica la integridad del juego o copia las copias de seguridad que hiciste nuevamente en el directorio Bin64)

Casi volteé mi escritorio hasta que me di cuenta de que los ingenieros espaciales acababan de tener una actualización: sonrisa: si tu juego se actualiza a la versión más reciente, los parches no funcionarán. ¡Compilaré uno nuevo CORRECTAMENTE! y ponerlos en el repositorio.
@InflexCZE, ¿hay alguna manera de saber qué versión del juego está en la computadora sin ejecutar el juego? Esto será útil para garantizar que las personas apliquen los parches correctos.

Desafortunadamente, se actualizó a mis espaldas: sweat_smile: Supongo que tengo que esperar esos nuevos parches.

Me temo que la versión del juego está integrada en el binario y no hay "Version.txt" adicional ni nada por el estilo.

@ Linux74656

cat $HOME/.local/share/Steam/steamapps/appmanifest_244850.acf | grep buildid | cut -f 4 | sed -e 's/"//g'

Un poco torpe, probablemente una mejor manera de hacerlo usando awk (¡realmente debería inclinarme awk !), Pero funciona para obtener el número de compilación instalado actual. El número de compilación más reciente se puede recuperar usando steamcmd si su plan es escribir un script de inicio para verificar en cada ejecución o algo, vea: https://steamcommunity.com/app/346110/discussions/0/530646715636738547 /

Sin embargo, recomendaría requerir algún tipo de analizador JSON si va por esa ruta, grepping a través de eso es demasiado complicado, al menos para mi gusto. Ahora que lo pienso, Python debería funcionar bien para esto, de todos modos está instalado en casi todas las distribuciones.

Muy bien, he subido los nuevos parches 1.192.103. Si tu juego se ha actualizado, debes aplicar estos parches en lugar de los demás.
@ Onyx47 , ¿crees que una simple verificación de suma de comprobación en los dll sería lo suficientemente eficaz? Podría intentar escribir un script para comparar las DLL de los usuarios con una lista de suma de comprobación pregenerada, que en teoría debería corresponder a la versión del juego instalada. Quizás entonces podría ejecutar automáticamente bspatch e instalar la versión correcta para el usuario.

@ Linux74656 funcionaría, supongo, pero honestamente pensaba que algo más simple podría funcionar:

  1. Un script para generar parches que:

    • Toma la DLL original, la DLL modificada, crea un parche y lo coloca en un archivo llamado algo así como SE_Linux_$buildnumber.tar.gz

    • Carga el archivo en algún lugar, ya sea GitHub o algún otro servidor

  2. Un script para el usuario que:

    • Lee la versión instalada actual y comprueba si existe un archivo llamado SE_Linux_$buildnumber.tar.gz en un servidor / GitHub.

    • Si es 404, el parche aún no existe

    • Si existe, descárguelo, aplíquelo, escriba un archivo en algún lugar (el directorio de datos SE probablemente sea el más seguro) que contenga el último número de parche que se descargó. Esto se puede usar en el futuro para verificar si es necesario descargar algo en la próxima ejecución.

    • Si todo está bien (o no se requieren parches), ejecuta el juego a través de Steam

Cierta verificación de los archivos sigue siendo una opción en algún lugar de todo el proceso, por supuesto, pero esto parece ser la menor cantidad de trabajo requerida en ambos lados de la ecuación una vez que se escriben los guiones. El único inconveniente de esto es que no manejaría las actualizaciones, por lo que tal vez la parte de inicio sea algo que sea mejor mantener en Steam, por lo que se actualiza allí y el usuario puede ejecutar el parche si llega una actualización.

Tengo un servidor con suficiente espacio libre y ancho de banda ilimitado que puedo proporcionar para la causa si decidimos no usar GH para ellos, solo necesito configurar una cuenta FTP para la parte de carga y debería estar bien.

Probablemente pueda sacar algo utilizable esta noche, tan pronto como vuelva a poner mi máquina en orden.

bueno, nuevo parche o no, mi juego sigue fallando ...
Usando Debian testing ... Bueno ... Eso es triste para mí ...

@LtSich Tengo una corazonada sobre los problemas de bloqueo. Intente eliminar su prefijo de vino. Reinstale la versión mono que aparece en la guía. Entonces solo instale vcrun2017 y xact.
Revisé la página de steamdb de los ingenieros espaciales y vcrun2017 es el único vcruntime en la lista. Lo tengo (y muchos otros) instalado en mi sistema y tengo bloqueos muy raros.

¿Existe ya una solución para los scripts? No puedo conectarme a ningún servidor donde se estén ejecutando scripts.
la actualización funciona muy bien. gracias

@LtSich Tengo una corazonada sobre los problemas de bloqueo. Intente eliminar su prefijo de vino. Reinstale la versión mono que aparece en la guía. Entonces solo instale vcrun2017 y xact.
Revisé la página de steamdb de los ingenieros espaciales y vcrun2017 es el único vcruntime en la lista. Lo tengo (y muchos otros) instalado en mi sistema y tengo bloqueos muy raros.

Gracias por los consejos, pero eso no cambia nada ... Bueno, simplemente me sentaré en la parte de atrás y esperaré la bendición de Dios, tal vez esto funcione :)

Espero que el modo multijugador con máquinas Windows pueda suceder en algún momento. Realmente parece un poco vergonzoso.

Compré e instalé Space Engineers para ver si finalmente funcionaba. Seguí las instrucciones para parchear el juego.

Pude llegar al menú principal como esperaba, pero no pude iniciar un escenario o un juego personalizado. El juego llegó a la pantalla de carga, se cargó durante unos 5 a 10 segundos y luego el proceso dejó de ejecutarse. No estoy seguro de dónde buscar el problema. Aquí hay algunos archivos de registro, pero realmente parece que no puedo aprender nada de ellos:

SpaceEngineers.log
steam-244850.log

@dsge hazme un favor. Verifica la integridad de los archivos de tu juego.
Guarde una copia de este archivo: https://github.com/Linux74656/SpaceEngineersLinuxPatches/blob/master/autopatcher.py en su escritorio o carpeta de descargas. Luego abra la terminal / Konsole en el mismo directorio y ejecute:
python3 autopatcher.py

No está completo, pero al menos debería poder parchear tu juego por ahora.
Hágame saber los resultados.

Estaré contribuyendo al parche automático en un momento si no le importa @ Linux74656. Al menos Python sé que puedo ayudar con: P

Bueno, resulta que una gran parte de lo que se corrompió en el antiguo disco duro fue material de Steam, así que volveré a descargar el juego por si acaso. Comencé a trabajar en cosas básicas en el parche mientras espero, averiguaremos las solicitudes de extracción y las fusiones a medida que avanzamos, ya que veo que @StripedMonkey también está ayudando.

@StripedMonkey , revisa mi bifurcación si no te importa, mira que no duplicamos el trabajo si no es necesario;) (Nota: Realmente no hago Python más que arreglos como este, por lo que es posible que algunas de mis cosas no ser las mejores prácticas). Probablemente deberíamos comenzar a rastrear esas cosas en ese proyecto también para no contaminar más este hilo de problemas.

Bueno, ciertamente tuvo algunos de los mismos problemas con él: P aunque lo hizo de una manera diferente. De hecho, crearé un problema en la página de parches para que podamos dejar aquí para ocuparnos de la resolución de problemas de SE.

¡Agradezco la ayuda de cualquiera cuando se trata de esto! Tengo muy poca experiencia en Python.

@ Linux74656 He verificado los archivos del juego y ejecuté el archivo py (versión 7f742ac1 ):

$ python3 autopatcher.py
Please insert your install location for Space Engineers. Should look somthing like this /home/USER/.local/share/Steam/steamapps/common/SpaceEngineers/ 
/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/
b6d168be7e38640817f8d7f1de523346
cf4b860b7917fa53d8c95e0c6a377451
VERSION FOUND: 1.192.103
https://raw.github.com/Linux74656/SpaceEngineersLinuxPatches/master/V1.192.103Patches.tar.gz
Program End!

No toqué mi prefijo de vino, todavía está en el mismo estado que estaba después de las instrucciones originales .

Esta vez el juego es realmente inestable. Anteriormente (cuando instalé los trucos manualmente) podía acceder al menú principal y a la pantalla de carga en cada intento y solo fallaba después de eso. Esta vez tuve varios lugares donde el juego se bloqueó (también conocido como la ventana del juego y el proceso simplemente desaparece) en ejecuciones posteriores:

  • después de la pantalla de bienvenida
  • después de presionar "No" en el cuadro de diálogo de recopilación de datos
  • y después de la pantalla de carga.

Hice unos 15 intentos y no pude pasar de la pantalla de carga. No he logrado entrar en el juego en absoluto, ni una vez.

Estos registros se realizaron cuando logré llegar a la pantalla de carga antes de que el juego se bloqueara:
SpaceEngineers.log
steam-244850.log
(¿Debería publicarlos? No tengo idea de qué publicar que me ayude)

Este es un problema conocido, cuando dices "No" a la recopilación de datos, el juego comienza a fallar (solo en Linux).
Elimine los datos de la aplicación del juego (para restablecer la decisión, haga una copia de seguridad de los mundos o BP si lo ha hecho), acepte la próxima vez que el juego solicite y debería estar listo para comenzar.

Tenía entendido que en realidad era lo contrario. Pulsar "sí" hace que se bloquee. : pensando: (como alguien que siempre ha dado "no")

@InflexCZE Si digo "sí", obtengo el mismo resultado después de eso (el proceso desaparece después de cargar la pantalla), sin embargo, en la siguiente ejecución, el juego se bloquea en la pantalla de inicio con el reportero de fallas real:

image

See the end of this message for details on invoking \njust-in-time (JIT) debugging instead of this dialog box.\n\n************** Exception Text **************\nSystem.ComponentModel.Win32Exception (0x80004005): Sikeres.

  at System.Diagnostics.Process.StartWithShellExecuteEx (System.Diagnostics.ProcessStartInfo startInfo) [0x00102] in <f508ff7dc2d3475abfc25b6b60600edf>:0 
  at System.Diagnostics.Process.Start () [0x00032] in <f508ff7dc2d3475abfc25b6b60600edf>:0 
  at (wrapper remoting-invoke-with-check) System.Diagnostics.Process.Start()
  at System.Diagnostics.Process.Start (System.Diagnostics.ProcessStartInfo startInfo) [0x0001b] in <f508ff7dc2d3475abfc25b6b60600edf>:0 
  at System.Diagnostics.Process.Start (System.String fileName) [0x00006] in <f508ff7dc2d3475abfc25b6b60600edf>:0 
  at VRage.Platform.Windows.Forms.MyMessageBoxCrashForm.linklblLog_LinkClicked (System.Object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e) [0x00010] in <6669c852ae2c4f45a64d6d2ce7411724>:0 
  at System.Windows.Forms.LinkLabel.OnLinkClicked (System.Windows.Forms.LinkLabelLinkClickedEventArgs e) [0x00020] in <2880ee803a384afc84fc95657b396772>:0 
  at System.Windows.Forms.LinkLabel.OnMouseUp (System.Windows.Forms.MouseEventArgs e) [0x000fb] in <2880ee803a384afc84fc95657b396772>:0 
  at System.Windows.Forms.Control.WmMouseUp (System.Windows.Forms.Message& m, System.Windows.Forms.MouseButtons button, System.Int32 clicks) [0x001c3] in <2880ee803a384afc84fc95657b396772>:0 
  at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) [0x005a0] in <2880ee803a384afc84fc95657b396772>:0 
  at System.Windows.Forms.Label.WndProc (System.Windows.Forms.Message& m) [0x0005d] in <2880ee803a384afc84fc95657b396772>:0 
  at System.Windows.Forms.LinkLabel.WndProc (System.Windows.Forms.Message& msg) [0x0001b] in <2880ee803a384afc84fc95657b396772>:0 
  at System.Windows.Forms.Control+ControlNativeWindow.OnMessage (System.Windows.Forms.Message& m) [0x00001] in <2880ee803a384afc84fc95657b396772>:0 
  at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) [0x000b3] in <2880ee803a384afc84fc95657b396772>:0 
  at System.Windows.Forms.NativeWindow.Callback (System.IntPtr hWnd, System.Int32 msg, System.IntPtr wparam, System.IntPtr lparam) [0x00030] in <2880ee803a384afc84fc95657b396772>:0 

\n************** Loaded Assemblies **************\nmscorlib\n    Assembly Version: 4.0.0.0\n    Win32 Version: 4.6.57.0\n    CodeBase: file:///C:/windows/mono/mono-2.0/lib/mono/4.5/mscorlib.dll\n----------------------------------------\nSpaceEngineers\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/SpaceEngineers.exe\n----------------------------------------\nSandbox.Game\n    Assembly Version: 0.1.1.0\n    Win32 Version: 0.1.1\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/Sandbox.Game.dll\n----------------------------------------\nnetstandard\n    Assembly Version: 2.0.0.0\n    Win32 Version: 4.6.26011.1\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/netstandard.dll\n----------------------------------------\nVRage.Render\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/VRage.Render.dll\n----------------------------------------\nVRage.Steam\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/VRage.Steam.dll\n----------------------------------------\nVRage\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/VRage.dll\n----------------------------------------\nSpaceEngineers.Game\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/SpaceEngineers.Game.dll\n----------------------------------------\nSystem\n    Assembly Version: 4.0.0.0\n    Win32 Version: 4.6.57.0\n    CodeBase: file:///C:/windows/mono/mono-2.0/lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll\n----------------------------------------\nVRage.Library\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/VRage.Library.dll\n----------------------------------------\nSystem.Xml\n    Assembly Version: 4.0.0.0\n    Win32 Version: 4.6.57.0\n    CodeBase: file:///C:/windows/mono/mono-2.0/lib/mono/gac/System.Xml/4.0.0.0__b77a5c561934e089/System.Xml.dll\n----------------------------------------\nVRage.Math\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/VRage.Math.dll\n----------------------------------------\nVRage.Game\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/VRage.Game.dll\n----------------------------------------\nVRage.NativeWrapper\n    Assembly Version: 0.1.1.0\n    Win32 Version: 0.1.1\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/VRage.NativeWrapper.dll\n----------------------------------------\nSandbox.Graphics\n    Assembly Version: 0.1.1.0\n    Win32 Version: 0.1.1\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/Sandbox.Graphics.dll\n----------------------------------------\nSandbox.Common\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/Sandbox.Common.dll\n----------------------------------------\nSystem.Core\n    Assembly Version: 4.0.0.0\n    Win32 Version: 4.6.57.0\n    CodeBase: file:///C:/windows/mono/mono-2.0/lib/mono/gac/System.Core/4.0.0.0__b77a5c561934e089/System.Core.dll\n----------------------------------------\nVRage.Platform.Windows\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/VRage.Platform.Windows.dll\n----------------------------------------\nSystem.Windows.Forms\n    Assembly Version: 4.0.0.0\n    Win32 Version: 4.6.57.0\n    CodeBase: file:///C:/windows/mono/mono-2.0/lib/mono/gac/System.Windows.Forms/4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll\n----------------------------------------\nSteamworks.NET\n    Assembly Version: 13.0.0.0\n    Win32 Version: 13.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/Steamworks.NET.dll\n----------------------------------------\nSharpDX\n    Assembly Version: 4.2.0.0\n    Win32 Version: 4.2.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/SharpDX.dll\n----------------------------------------\nSharpDX.DXGI\n    Assembly Version: 4.2.0.0\n    Win32 Version: 4.2.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/SharpDX.DXGI.dll\n----------------------------------------\nSystem.Runtime\n    Assembly Version: 4.1.2.0\n    Win32 Version: 4.6.25714.01\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/System.Runtime.dll\n----------------------------------------\nSharpDX.Direct3D11\n    Assembly Version: 4.2.0.0\n    Win32 Version: 4.2.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/SharpDX.Direct3D11.dll\n----------------------------------------\nVRage.Ansel\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/VRage.Ansel.dll\n----------------------------------------\nProtoBuf.Net\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/ProtoBuf.Net.dll\n----------------------------------------\nProtoBuf.Net.Core\n    Assembly Version: 1.0.0.0\n    Win32 Version: 1.0.0.0\n    CodeBase: file:///Z:/media/egyteras/SteamLibrary/steamapps/common/SpaceEngineers/Bin64/ProtoBuf.Net.Core.dll\n----------------------------------------\nSystem.Reflection.Emit.Lightweight\n    Assembly Version: 4.0.1.0\n    Win32 Version: 4.0.0.0\n    CodeBase: file:///C:/windows/mono/mono-2.0/lib/mono/4.5/Facades/System.Reflection.Emit.Lightweight.dll\n----------------------------------------\nSystem.Reflection.Emit.ILGeneration\n    Assembly Version: 4.0.1.0\n    Win32 Version: 4.0.0.0\n    CodeBase: file:///C:/windows/mono/mono-2.0/lib/mono/4.5/Facades/System.Reflection.Emit.ILGeneration.dll\n----------------------------------------\nAnonymously Hosted DynamicMethods Assembly\n    Assembly Version: 0.0.0.0\n    Win32 Version: n/a\n    CodeBase: \n----------------------------------------\nSystem.Drawing\n    Assembly Version: 4.0.0.0\n    Win32 Version: 4.6.57.0\n    CodeBase: file:///C:/windows/mono/mono-2.0/lib/mono/gac/System.Drawing/4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll\n----------------------------------------\nAccessibility\n    Assembly Version: 4.0.0.0\n    Win32 Version: \n    CodeBase: file:///C:/windows/mono/mono-2.0/lib/mono/gac/Accessibility/4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll\n----------------------------------------\nSystem.Configuration\n    Assembly Version: 4.0.0.0\n    Win32 Version: 4.6.57.0\n    CodeBase: file:///C:/windows/mono/mono-2.0/lib/mono/gac/System.Configuration/4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll\n----------------------------------------\n\n************** JIT Debugging **************\n

Tuve que modificar mi SpaceEngineers.cfg 's GDPRConsent volver ámbito de True a False a moverse más allá de esto.

O me falla la memoria. Ignórame, debería irme a dormir: upside_down_face:

EDITAR:
En cualquier caso, sería bueno realizar un seguimiento de los "problemas conocidos" en algún lugar junto con las "soluciones conocidas".

Actualización para aquellos que pueden ingresar al juego. instale vcrun2003 encima de su prefijo de trabajo. Esto puede resolver el bloqueo mientras estás en el juego. La mejor manera de probar esto es crear una versión creativa del mundo Alien planet world, entrar en el luchador disuasorio y comenzar a disparar misiles a las naves más pequeñas cercanas. Esto ha parecido causar un bloqueo confiable en la computadora de mi hermana hasta que instalé vcrun2003. Pon el juego bajo el mayor estrés posible y si no se bloquea, cárgalo en otro mundo e inténtalo de nuevo. Si todavía no se bloquea, creo que este es el problema.

En cuanto a las personas que aún no pueden ingresar al mundo del juego debido a bloqueos y congelación. Probemos una instalación general de todo en mi historial de winetricks, que estaría encima de la versión mono en la guía.
winetricks --force -q vcrun2003 vcrun2005 vcrun2015 vcrun2017 msxml6 xact d3dcompiler_47 corefonts dxvk winxp

¡Avísame si algo cambia!

@ Linux74656
Validé mis archivos nuevamente. Entonces lo hice:

$ rm -rf / media / egyteras / SteamLibrary / steamapps / compatdata / 244850 / pfx

$ WINEPREFIX = "/ media / egyteras / SteamLibrary / steamapps / compatdata / 244850 / pfx" winetricks --force -q vcrun2003 vcrun2005 vcrun2015 vcrun2017 msxml6 xact d3dcompiler_47 corefonts dxvk winxp

$ WINEPREFIX = "/ media / egyteras / SteamLibrary / steamapps / compatdata / 244850 / pfx" msiexec -i "./wine-mono-4.9.3.msi"

$ python3 autopatcher.py
¡bsdiff está instalado!
No se puede localizar el directorio de instalación. Ingrese la ubicación de la carpeta steamapps donde está instalado Space Engineers.
/ media / egyteras / SteamLibrary / steamapps /
BuildID: 4246126
checksum.json recuperado
Parches recuperados
Programa completo!

(la versión autopatcher.py es la de Linux74656 / SpaceEngineersLinuxPatches # 5)

Desafortunadamente, el comportamiento después de esto sigue siendo el mismo que en mis comentarios anteriores: el juego se bloquea de izquierda a derecha y no puedo pasar por la pantalla de carga.
Los archivos de registro no muestran cambios por lo que puedo decir:
SpaceEngineers.log
steam-244850.log

Entonces hice una prueba rápida y mi juego se bloqueó al cargarse, apliqué los nuevos parches para v103, pero tal vez lo verifique nuevamente y lo vuelva a intentar.

@dsge ¡ Gracias por la corrección del parche automático! ¿Podría decirme la versión de su sistema operativo, la versión del kernel?

@ Linux74656
image

steam_systeminfo.txt

Moví mi juego a NVMe, rehice el parche. Parece funcionar bien el segundo intento de todos modos.
Realmente espero que el desarrollador de Space Engineers pueda hacer que estos parches funcionen con servidores multijugador de Windows, creo que es un problema bastante importante que superar.

@dsge Intenta ejecutar el juego con este archivo de configuración:
No cambie ninguna configuración hasta después de intentar cargar un mundo vacío.

EDITAR: Use este en su lugar, el otro estaba en francés (en realidad no hablo francés, pero estaba viendo si el juego actuaba de manera diferente con otra localización ... no parece que lo haga).
SpaceEngineers.cfg.zip

Sí, me preguntaba por qué la configuración regional francesa sería más adecuada para ejecutar el juego: D

Entonces, el juego personalizado llamado "Mundo vacío" se carga :

image

(No sabía que había literalmente un juego personalizado con ese nombre, como dije, acabo de comprar el juego ayer).

Otros juegos personalizados no parecen funcionar, sin embargo, solo tuve 1 caída de los 8 intentos que hice en otros juegos personalizados. Las otras 7 veces me quedé atascado en la pantalla de carga. Por "atascado" quiero decir que pude ver en Gnome System Monitor que el juego en realidad no lee ni escribe nada en mi disco y usa el 50% de la CPU (es decir, usa completamente 2 de mis 4 núcleos).

Monitor del sistema que el juego en realidad no lee ni escribe nada de mi disco y usa 50% de cpu (también conocido como usa completamente 2 de mis 4 núcleos).

Sí, eso es típico de lo que experimenta cuando decide que no se va a cargar. Lo he tenido muchas veces, pero normalmente puedo entrar en el segundo intento. No estoy seguro de por qué siempre te falla. Se basa en mono para hacer el trabajo de compilación mundial, por lo que quizás mono se esté rompiendo en su sistema para cargas de trabajo más grandes.

Puede establecer diferentes parámetros para mono en la carga, cajero automático yo uso _MONO_GC_PARAMS = nursery-size = 32m, minor = simple-par% command% _

OK, estamos progresando.
He notado que la computadora de mi hermana tiene el mismo problema de carga de vez en cuando. Pero mi computadora no lo hace. No pensé mucho en eso, ya que era solo un inconveniente menor, pero puede estar relacionado, así que veré si puedo arreglarlo en el suyo.

Todavía tengo problemas para cargar algo. No logré lanzar un mundo una sola vez, a pesar de múltiples intentos y haciendo varias cosas.

Estaba siguiendo los registros de SE mientras lo intentaba, y parece que está conectado a la carga de definiciones la mayor parte del tiempo, no a las particulares de lo que veo, solo definiciones en general; a veces carga las definiciones de voxel bien, a veces no carga nada y luego simplemente se cuelga. Tuve una ejecución en la que realmente cargó todo e intenté iniciar una sesión, pero luego se bloqueó.

Estoy un poco perplejo en este momento, no tengo idea de si intentar adjuntar algún tipo de depurador mono nos daría algo útil, ya que esta compilación no tiene símbolos de depuración, pero en este momento parece ser tremendamente inconsistente, tanto entre cargas en un solo sistema y entre los propios sistemas.

Si bien estoy feliz de que todo esto nos haya dado al menos una idea, y espero que averigüemos si Mono es al menos una solución viable temporal, estoy medio tentado de intentar volver a dotnet y ver si sigo los registros de Wine. puede revelar qué está haciendo funcionar exactamente el GC y ver si podemos solucionarlo en Wine en su lugar ...

Puede establecer diferentes parámetros para mono en la carga, cajero automático yo uso _MONO_GC_PARAMS = nursery-size = 32m, minor = simple-par% command% _

@jarrard Lo intenté hace un momento. Desafortunadamente, la única diferencia que noté es que ahora el juego vuelve a fallar al 100% después de la pantalla de carga (lo que significa que no se atasca allí). "Empty World" todavía se carga bien, no hay cambios allí.

OK, estamos progresando.
He notado que la computadora de mi hermana tiene el mismo problema de carga de vez en cuando. Pero mi computadora no lo hace. No pensé mucho en eso, ya que era solo un inconveniente menor, pero puede estar relacionado, así que veré si puedo arreglarlo en el suyo.

@ Linux74656 Gracias a usted ya todos los que

@InflexCZE ¿Crees que la gente podría intentar instalar estos parches en sus versiones del juego para Windows? Eso permitiría a algunas personas jugar con usuarios de Windows, el que crea sus propios juegos personalizados.

EDITAR: ¿También hay alguna forma de deshabilitar temporalmente la recolección de basura mientras se ejecuta dotnet? Si deshabilitarlo elimina el tartamudeo, sabremos cuál es el problema.

@dsge Verifica los archivos de tu juego. No aplique el parche y en su lugar cree un nuevo prefijo para ejecutar el juego con el siguiente comando:
winetricks --force -q vcrun2015 xact dotnet472

Si puedes lanzar el juego a un mundo con esto, lo más probable es que tu problema esté relacionado con wine-mono y los parches.

@ Linux74656 Puede intentarlo, pero dudo que los cambios que haya realizado causen una diferencia tan grande en la tabla MP como he visto en los registros. Hay un montón de complementos y proyectos comunitarios para SE que realizan miles de pequeños parches o reemplazan directamente métodos y sistemas completos y funciona bien con clientes vanilla.

En mi humilde opinión, este es otro problema que proviene de las diferencias en Mono BCL. Desafortunadamente, arreglar este, a diferencia del compilador del script, sería mucho más complicado, principalmente debido a la serialización.

Con respecto al GC, es un sistema muy esencial que rastrea y recupera la memoria que ya no es utilizada por el juego para que pueda reciclarse y usarse nuevamente (Sí, un sistema de pensamiento muy ecológico, la madre naturaleza está orgullosa: pegado_al_tiempo :) hay una manera de indicarle a .NET FW GC que asigne nueva memoria desde el sistema operativo en lugar de intentar identificar y reclamar los bits que ya no se utilizan (también conocidos como en lugar de hacer todas las cosas intensivas en rendimiento) pero tenga en cuenta que está buscando RAM consumo en algún lugar en un vecindario de + 500GB solo para entrar en escena vacía. Entonces, a menos que tenga una PC realmente preparada para el futuro o Linux conozca algo de magia bastante buena con respecto al intercambio, no creo que sea una buena idea ir de esta manera. En cualquier caso, intentar configurarlo manualmente con los parámetros adecuados, al igual que hicimos con Mono GC antes, podría solucionarlo.

Alternativamente, puede probar .NET Core. Lo último que he oído es que funciona muy bien en Linux y debería ser muy compatible con .NET FW, incluso en BCL. La última vez que lo probamos fue capaz de ejecutar el servidor dedicado SE _casi_ listo para usar, así que quién sabe, tal vez funcione incluso mejor que Mono.

@InflexCZE Probaré dotnetcore y veré si coopera.
He investigado la documentación de cómo funciona dotnet GC. La imagen que se muestra en esta sección que habla de subprocesos: https://docs.microsoft.com/en-us/dotnet/standard/garbage-collection/fundamentals#what -happens-during-a-garbage-collection actúa de manera similar a la creación de perfiles tiros que traté de conseguir. Un solo núcleo salta al 100% de uso, mientras que el resto parece disminuir significativamente en uso o detenerse. ¿Podría ser esto una coincidencia?

@InflexCZE Estaba pensando más en verificar los registros para ver qué llamadas a las bibliotecas nativas de Windows no están completamente implementadas en Wine y ver si se pueden completar correctamente y si eso ayudaría. Un montón de cosas en la implementación de Wine de la API de Windows simplemente se apilan e implementan lo suficiente para que las cosas funcionen inicialmente, y se están completando lentamente con el tiempo.

En cuanto a .NET Core, aún necesitaríamos ejecutarlo en Wine (al menos partes de VRage). Quiero decir, VRage se basa en WINAPI, ¿verdad? Y también sospecho que ABI sea compatible, ya que después de todo es una aplicación de Windows. Además, todavía necesitamos traducir esas llamadas DirectX a OpenGL o, preferiblemente, Vulkan. Eso es quizás algo que se puede hacer independientemente de Wine, no lo leí.

Podría decirse que los errores de Wine que plagan .NET 4.7 también afectarían a Core, ya que de todos modos tendríamos que ejecutar la versión de Windows. Y tenga en cuenta que el uso actual de Mono para SE no es que ejecutemos Linux Mono nativo y solo le proporcionemos el ejecutable SE, en realidad es una compilación hecha específicamente para Wine, y en realidad es una aplicación de Windows.

Además, dado que uso .NET Core para el desarrollo de Linux (pero no trato con cosas de bajo nivel en .NET lo suficiente como para tener conocimiento sobre esa parte), puedo decirle que sí, el código se ejecutará en su mayoría bien. , pero hay muchas cosas que no funcionan multiplataforma: no hay Windows Forms, por supuesto, algunas cosas como System.Drawing ahora existen como un paquete nuget pero no son 100% compatibles ... ¿Ejecutaría en un servidor? Deberia trabajar. ¿Algo gráfico? Realmente no.

Estoy seguro de que hay una manera de indicarle a .NET FW GC que asigne nueva memoria desde el sistema operativo en lugar de intentar identificar y recuperar los bits que ya no se utilizan (también conocidos como en lugar de hacer todas las cosas intensivas en rendimiento), pero tenga en cuenta que usted ' Estamos mirando el consumo de RAM en algún lugar en un vecindario de + 500GB solo para entrar en una escena vacía.

Según mi experiencia (ciertamente limitada), creo que zram podría manejar la compresión de la escena vacía mientras deja GC apagado. Si se trata de datos similares (y supongo que lo sería para una escena vacía), entonces debería ser bastante fácil de comprimir. Obviamente no es una gran solución y puede afectar a las preferencias. Pero creo que en realidad sería interesante intentarlo.

Déjame aclarar. El juego no prealoja tanta memoria solo por si es necesario. Sería esa gran parte de los bits aleatorios de memoria utilizados durante la carga de una escena vacía, pero que ya no se necesitan. GC es capaz de encontrar estos bits y reciclarlos a lo largo de la vida útil del proceso (~ cada pocos fotogramas). Sin él, se quedarán allí y se comerán el espacio para siempre.

@ Onyx47 Tienes razón, no me di cuenta en este momento de que Core en realidad no nos protegerá de la necesidad de las API de Win y ejecutar Win build sobre Proton probablemente sufriría los mismos problemas que .NET FW.

@ Linux74656 Podría significar cualquier cosa. Podría ser GC o podría ser un render lleno de bolas mientras la simulación está bloqueada o algo así.

Hice una búsqueda rápida en línea, desafortunadamente parece que .NET FW GC no ofrece ninguna opción de configuración (al menos ninguna que valga la pena, tamaño de pila fijo, tamaño de Gen 0, asignación de subprocesos para trabajos de recopilación, ... .) así que a menos que tengas algunos trucos más bajo la manga sobre cómo perfilar / identificar los picos, supongo que no tenemos suerte aquí :(

@InflexCZE Si configuro el tamaño de pila fijo, yo Gen 0 en algo ridículo como 25 gb (uno de mis sistemas tiene 32 gb de RAM), ¿evitaría eso que el recolector de basura se ejecute durante al menos unos segundos?
Si es así, ¿cómo lo configuraría para hacer eso?

Sí, los montones fijos de un tamaño increíble deberían reducir la frecuencia de GC en gran medida (a cambio de un ligero aumento del tiempo de recopilación _cuando_ realmente sucede y un consumo de memoria ridículo de c), pero como dije, no parece que .NET GC admita tipo de configuración (manual), desafortunadamente.

Entiendo ahora. Perdón por toda la confusión.

@dsge Verifica los archivos de tu juego. No aplique el parche y en su lugar cree un nuevo prefijo para ejecutar el juego con el siguiente comando:
winetricks --force -q vcrun2015 xact dotnet472

Si puedes lanzar el juego a un mundo con esto, lo más probable es que tu problema esté relacionado con wine-mono y los parches.

@ Linux74656 Hice exactamente eso, aquí están los resultados.

Recibo esto dos veces antes de la pantalla de inicio y una vez si salgo del juego a través del menú (presionando "sí" me lleva aquí , gracias a Microsoft, supongo):

image

Aparte de eso, comienza el juego. Pude iniciar cualquier juego personalizado que haya probado.

image

image

El juego tartamudea a intervalos muy regulares (no muy visible en mis capturas de pantalla porque tomar una captura de pantalla momentáneamente interfiere con los tiempos de fotogramas y los fps reportados por dxvk hud) lo que también causa tartamudeo en cualquier sonido que se esté reproduciendo actualmente. En un mundo vacío era menos frecuente (aproximadamente una vez por segundo) y en un mundo más construido era al menos 2-3 veces por segundo. Aparte del tartamudeo, parece que tengo 120 fps (cada opción de gráficos se establece en el valor más bajo posible) sin mucho problema en mi sistema ( especificaciones ).

Mi impresión general es que técnicamente el juego funciona, pero ese tartamudeo hace que sea muy molesto jugarlo.

@dsge Sí ... el tartamudeo es la razón por la que comenzamos a usar wine-mono.
Al menos sabemos que los problemas con el lanzamiento al mundo están relacionados con wine-mono y los parches.

Sí, lo sé, también es por eso que se habla de la recolección de basura. Solo quería documentar que al menos con dotnet472 obtengo prácticamente el mismo resultado que todos los demás. A diferencia de los parches wine-mono + que, por alguna razón, parecen funcionar mucho mejor para ti que para mí.

Están sucediendo muchas cosas en este hilo, ¿cuál es la forma correcta de ejecutar esto en este momento? Instalé xact dotnet472 para que se ejecute, pero tartamudea bastante en mi equipo, ¿veo menciones de un parche?

El proceso actual se menciona aquí (aunque no es super limpio, trabajaré en el archivo Léame en un momento si Linux no lo hace). Básicamente, instale vcrun2005, xact, wine-mono y use la herramienta de parche para aplicar los parches de Linux o hágalo manualmente con bspatch. Actualmente no se puede hacer multijugador de Linux-Windows pero parece que linux-linux funciona.

@InflexCZE ¿Qué hace <gcServer enabled="true"> ? ¿Rompería el juego de alguna forma que yo no pudiera entender? Lo agregué a algunos archivos y parece haber resuelto el problema de la tartamudez de dotnet. No puede ser tan fácil ... sin embargo, dado que esto tiene algo que ver con la recolección de basura, siempre y cuando lo que cambié no rompa otras partes del juego intensivas en CPU, supongo que el tartamudeo en dotnet ha estado relacionado con GC todo el tiempo . A menos que haya algo más que me falte (considerando lo tarde que es, es muy posible: sonríe :),

¿Dónde está la configuración _gcServer enabled = "true" _? que en una configuración en alguna parte?

¿Lo probó contra servidores mp de Windows para ver si puede unirse a ellos (la mejor prueba en el servidor sin modificaciones para empezar)?

MS es bastante vago acerca de lo que realmente hace el preajuste de GC del servidor, pero por lo que puedo decir, intenta aprovechar más núcleos (que generalmente están presentes en las máquinas del servidor) y asigna segmentos de memoria más grandes, lo que daría como resultado disparos menos frecuentes de GC intercambiados. aumento del consumo total de mem del proceso.
https://docs.microsoft.com/en-us/dotnet/standard/garbage-collection/fundamentals#workstation -and-server-garbage-collection

Siéntete libre de experimentar con él, es muy improbable que rompas algo en el juego con la configuración de GC, en el peor de los casos, podría comenzar a fallar.

Este es realmente un hallazgo interesante. Leyendo un poco yo mismo (pegado de los documentos):


For single-processor computers, the default workstation garbage collection
should be the fastest option. Either workstation or server can be used for
two-processor computers. Server garbage collection should be the fastest
option for more than two processors.

Esto me hace pensar que, si bien GC podría verse afectado al ejecutarse en Wine, ¿es posible que la parte del problema también esté relacionada con el programador? IIRC, muchas personas han informado que el juego solo usa el 50% de la CPU a pesar de que está teniendo problemas (y creo que eso también me pasó a mí), mientras que estoy seguro de que vi que golpeó al menos el 80% en Windows en mi plataforma. Tal vez sea solo el problema de GC ejecutándose en el mismo núcleo que el resto del juego, mientras que no ocurre de forma nativa porque el programador de Windows maneja las cosas de manera diferente y / o el programador de Linux no sabe que es seguro para subprocesos (posiblemente porque hay varias cosas por separado en un sistema Windows real, todo podría estar ejecutándose bajo el proceso wineserver en Linux), por lo que se niega a moverlo a un núcleo diferente

Probaré esto esta noche por mi parte e informaré los resultados. Si funciona, sería una gran noticia. Especialmente porque no veo una razón para que esto no esté activado en el juego en sí, dados sus requisitos, creo que podemos contar con que todos los jugadores tengan un sistema multinúcleo, o al menos uno con hiperproceso que aún debería mejorar el rendimiento. Sí, sé que los documentos mencionan varios procesadores , pero con las CPU modernas esa línea es borrosa de todos modos, ¿no es así?

Hola yo tengo:
<Runtime> <gcServer enabled = "true" /> </Runtime>

insertado al final de mi SpaceEngineers.exe.config y el juego ahora se está ejecutando con .net ya 4 horas sin tartamudear.
También en multijugador en un servidor de Windows.

¿Alguien más puede intentar eso?

@ Onyx47 SE es capaz de aprovechar de manera efectiva solo ~ 2.5 hasta 4 hilos, dependiendo de la complejidad de la escena. Es un problema bien conocido que proviene de la arquitectura antigua del motor usado. Si no lo ve escalando bien con la cantidad de códigos proporcionados, no significa necesariamente que sea culpa de algo en su configuración de Linux. Más probablemente nuestra deuda técnica.

Mi suposición desde el principio es que el mecanismo de ajuste automático del GC está fallando debido a que se le han enviado algunos datos incorrectos desde el lado de Proton y es muy posible que este problema no se manifieste en el modo servidor. Sin embargo, sea cual sea el verdadero culpable, no importa, siempre y cuando funcione bien: sonríe:

Estoy muy contento de que incluso el juego cruzado con Windows funcione bien. Los scripts y mods también funcionan, ¿verdad?

Acabo de probar scripts.
funciona en multijugador y un jugador.
Incluso con mods sin problemas

mi carga de gpu es un poco más alta que en Windows

Veo un pico cada 10-20 segundos en mi dxvk hud, incluso una ligera caída de fps, 5-10 fps pero el promedio está entre 50-60 con vsync y configuraciones altas (GPU RX580 8GB)

Entonces, ¿acabas de instalar dotnet472, xact y realizas el cambio en la configuración?
Eso es todo ? ¿Puedes usar la última versión de protones?

paquetes instalados: protontricks 244850 -q --force vcrun2005 vcrun2015 dotnet472 xact
configuración de lanzamiento de Steam: DXVK_HUD = PROTON_NO_ESYNC completo = 1% COMMAND% -skipintro

Protón: 4.11-6
Kernel: Ubuntu 19.04 5.0.0-30-genérico

Actualización: sry olvidé dotnet472

ok, de mi lado aparentemente no puedo instalar vcrun2015, tengo este error:
Nota: el comando /home/sich/.steam/steam/steamapps/common/Proton 4.11 / dist / bin / wine vc_redist.x86.exe / q devolvió el estado 102. Abortando.

pero, instalé dotnet472 y agregué <gcServer enabled = "true" /> dentro del Runtime y ahora funciona muy bien :)

Probé 2/3 modificaciones y aparentemente está bien para eso.

Pero agregar esto al final del archivo .config no funciona. :

<Runtime>
  <gcServer enabled = "true" />
</Runtime>

He cambiado el archivo de configuración como este al final:

    </assemblyBinding>
  <gcServer enabled = "true" />
  </runtime>

Gracias por los consejos.
Si sabe cómo aumentar el uso de la memoria (tengo 32 GB), dígame, probablemente ayudará.

el final de mi configuración se ve así:

  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
  </startup>
  <runtime>  
    <gcServer enabled="true"/>
  </runtime>
</configuration>

bien, entonces está dentro de la configuración.
Probablemente sea lo mismo, siempre que permanezcamos dentro de la configuración.

Pero no pude hacer nada sin dotnet472.

@diKsens Parece que no necesito agregarlo a todos los archivos de configuración (Sandbox.Game.dll.config y VRage.Game.dll.Config). Solo SpaceEngineers.exe.config. Es bueno saber eso.

Puedo confirmar que los scripts funcionan de hecho y que la conexión a los servidores de Windows (keen na) funciona sin problemas.

¿Puedo solicitar un registro SE de .NET FW? Solo un registro regular después de que el juego comience con éxito.

@InflexCZE ¡ Aquí tienes!
SpaceEngineers.log

Todavía estoy convencido de que algo está sucediendo entre bastidores. Usé el mod de mejora de velocidad y tomé la nave roja que se estrella y la estrellé contra otro asteroide a 300 m / sy el juego prácticamente no tuvo problemas con él. Seguiré probando.

_El juego no tuvo problemas de rendimiento cuando hice algo para lo que fue diseñado.
¿Eso es algo malo o qué? 😛

Oh ... pensé que el juego limitaba la velocidad del barco a 100 m / s debido a problemas de rendimiento.

Depende. Lanza esto contra un planeta y espera un impacto mañana a esta hora. Acumulará la velocidad de la simulación muy fuerte incluso en plataformas decentes.
https://steamcommunity.com/sharedfiles/filedetails/?id=501767620

Noto una cosa aquí que también vi en Mono (pero pensé que podría ser solo una cosa Mono):

2019-10-03 09:27:06.247 - Thread:   1 ->  GC Memory: 1,857,883,240 B
2019-10-03 09:27:06.251 - Thread:   1 ->  Process Memory:  B

Quizás valga la pena investigar en el frente de Wine, ¿GC podría estar usando una llamada similar en WINAPI y no obtener datos?

Esta llamada consulta NtQuerySystemInformation ( SystemProcessInformation ):
https://docs.microsoft.com/en-us/windows/win32/api/winternl/nf-winternl-ntquerysysteminformation

Si sabe dónde, ¿puede comprobar si se ha implementado correctamente o simplemente se ha eliminado?

Bueno, con esa pequeña corrección del archivo de configuración, ahora funciona, de hecho bastante bien. Incluso se unió a un servidor MP, sin problemas.

vcrun2015 tampoco se instaló para mí, pero tal vez ya esté instalado por Steam. de cualquier manera esto es asombroso. Desde la clasificación de basura en protondb hasta el oro básicamente :)

https://source.winehq.org/git/wine.git/blob/a8745d1211033dd38682e2f4e8bc322d47a15e0f : /dlls/ntdll/nt.c#l2373

Parece estar implementado, pero también incluye un fixme, no tengo suficiente tiempo para analizar en profundidad lo que podría estar mal en él (si es que hay algo, aparte de cómo el uso de la memoria en primer lugar huele mal) .

@InflexCZE Para el lolz hice esto:

Depende. Lanza esto contra un planeta y espera un impacto mañana a esta hora. Acumulará la velocidad de la simulación muy fuerte incluso en plataformas decentes.

Y veo tu punto: sonríe:

Todavía estoy asombrado de cuánto ha mejorado el juego desde la última vez que lo jugué correctamente en Windows (aproximadamente un año y medio ahora). Usted y los otros ingenieros espaciales desarrolladores han llevado este juego más lejos de lo que nunca creí posible. Gracias por todo el arduo trabajo que pusieron en este juego.

Están saliendo algunos juegos nuevos del tipo de ingenieros espaciales que parecen solucionar los problemas de limitación física que tiene SE, como los límites de velocidad y las colisiones que hacen que se desate el infierno. Sería bueno si se hiciera algo para el motor VRage, pero sospecho que simplemente no es posible.

@InflexCZE Fui tonto y estaba mirando la parte incorrecta del código, supongo que esta es la parte relevante real:

https://source.winehq.org/git/wine.git/blob/a8745d1211033dd38682e2f4e8bc322d47a15e0f : /dlls/ntdll/nt.c#l2460

Mirando un poco los documentos, supongo que PrivatePageCount es la propiedad relevante. Que no parece estar en ninguna parte.

@jarrard Todo es posible con suficiente tiempo y recursos. Desafortunadamente, nuestro equipo es pequeño, así que tenemos que tomar una decisión. O entregamos contenido y jugabilidad nuevos, o hacemos cambios profundos en el motor e implementamos nuevas tecnologías de vanguardia que surgieron en los últimos años.

Creemos que nuestros jugadores apreciarán más actualmente si nos enfocamos en el primero y una vez que llegue el momento de mejorar significativamente la tecnología, probablemente vendrá de la mano con el anuncio de un nuevo juego para que no tengamos que mantener la compatibilidad con versiones anteriores para cada poca cosa que cambiamos (que suele consumir la mayor parte del tiempo).

(No, no vamos a abandonar SE ahora, todavía estamos trabajando en ello 😄)

@ Onyx47 Ya veo. Eso podria explicar algunas cosas

@InflexCZE : ese es un buen camino a seguir.

Solo si puedes pensar en nuestra pequeña comunidad de Linux cuando trabajes en tu nuevo juego, eso puede ser algo muy bueno :)
Solo que podemos jugar con Proton sin demasiados problemas, como parece que probablemente podamos hacer pronto con Space Engineers :)

Porque con Medieval Engineers ni siquiera podemos iniciar el juego ...
¡Espero que este no sea el caso con tu próximo juego!

Ahora que Space Engineers se puede reproducir en Linux, podré eliminar completamente Windows, justo antes del final de la vida de Win7, simplemente perfecto: D

Y por cierto, gracias a todas las personas que trabajan tan duro para encontrar una solución para los ingenieros espaciales.
Gracias a ti @InflexCZE por unirte a nosotros aquí y por toda la ayuda que nos has

Dado que esta parece ser una solución mucho más estable para hacer que los ingenieros espaciales se ejecuten, rehice el repositorio y léame todas las cosas mono en las que trabajamos es un subdirectorio en este repositorio, en caso de que alguna vez necesitemos volver a él.

Gracias de nuevo a todos por ayudarnos a resolver esto. Ha sido un viaje interesante: sonríe:

@LtSich La decisión de no prestar especial atención a Linux es muy simple, dinero. Esto se aplica a todos los estudios universalmente. O un juego de motor es compatible con Linux desde el primer momento, en ese caso el juego "es compatible con Linux" o el motor no lo admite, en ese caso a nadie realmente le importa y se centra solo en las principales plataformas. Los desarrolladores son costosos y la participación de mercado de <1% habla con claridad.

En cuanto al caso de VRage, ahora también admitimos XBox, por lo que tuvimos que reestructurar un poco el motor para que fuera independiente de la plataforma. Esto significa que al implementar una interfaz limitada, el juego podrá ejecutarse en cualquier plataforma que pueda ejecutar .NET, por lo tanto, si encuentra algún problema con nuestros juegos futuros, puede volver a implementar esta interfaz con las llamadas adecuadas de Linux y tener una buen rato con un nuevo juego.

Podemos ser <1%, pero creo que somos bastante ruidosos por ser un grupo tan pequeño: P

Podemos ser <1%, pero creo que somos bastante ruidosos por ser un grupo tan pequeño: P

¡Y decidido!

Sí, bueno, eso no pagará mi cena, ¿verdad? 😛

Sí, bueno, eso no pagará mi cena, ¿verdad? lengua_atascada

Estoy de acuerdo con una financiación colectiva para recolectar dinero y hacer algunos cambios en el juego para que funcione mejor en Linux ... Estoy seguro de que mucha gente estará bien para dar algo de dinero para que el juego funcione mejor en Linux ... .

Y el problema es que haces un juego para Windows y luego intentas hacerlo funcionar en Linux ...
Para crear un juego que ejecute múltiples plataformas, debes pensar en eso desde el principio ... Y no uses herramientas exclusivas de Windows.

Y no olvides que Google Stadia estará pronto aquí, y estará en servidores Linux ...
Poder ejecutar el juego en Proton / Linux da la posibilidad de vender el juego en Google Stadia ...

Y sobre Windows ... Win10 es una plaga ... A mucha gente le gustaría usar Linux para evitar eso ...
Trabajo con servidores Linux desde hace más de 10 años, pero solo lo uso en mi computadora durante 1 año ... Porque no quiero usar Win10 ...

Pero no se preocupe, entiendo completamente por qué KSH no es compatible con Linux.
Y estoy muy agradecido por la ayuda que brindan :)

Ah, y aquí hay una buena publicación de un desarrollador de Linux, es interesante leer :)
https://beardedgiant.games/benefits-of-supporting-linux-if-you-are-a-small-indie-developer/

Somos más del 1%. La encuesta de Steam está hecha. Estoy completamente libre de Windows durante 10 años y recibí la encuesta solo una vez. Una cosa más: no cuente con las estadísticas de Net Marketshare, etc. Muchos usuarios de Linux todavía tienen que usar el agente de usuario de Windows por varias razones.

Hola amigos, si bien es bueno ver que se ha descubierto una solución alternativa útil, intentemos mantener este informe de compatibilidad centrado en el juego. Siéntase libre de discutir el estado general de los juegos en Linux en los foros.

Si todavía está abierto a conversar sobre posibles consideraciones para el soporte de Linux para futuras versiones de Keen, ¿sería posible tener un canal de algún tipo sobre la discordia de Keen (recuerdo que existió hace un tiempo) para manejar este tipo de tema? ¿No descarrilamos este hilo de problemas de Proton demasiado del propósito previsto, como Kisak ha dicho que somos? Creo que podría haber discusiones interesantes en ese sentido, especialmente porque el panorama de la programación gráfica (vulkan) y dotnet está cambiando.

Después de seguir las instrucciones, el juego parece funcionar para mí como se esperaba y la gran mayoría de los molestos tartamudeos desaparecieron. Todavía quedan algunos problemas con el audio al menos, pero no es nada con lo que no pueda vivir.

Échale un vistazo: https://youtu.be/RBqQAkYWBGA?t=60 : tada:: tada:: tada:

¡Gracias de nuevo a todos los que ayudaron a encontrar esas soluciones!

¡Confirmo el éxito también! Algunos gráficos fallan actualmente, pero no estoy seguro de si es el juego o si se ejecuta en Proton, ya que eso sucede a veces incluso en Windows, lamentablemente ...

Puedo confirmar que la solución anterior funciona en mi extremo, agregando solo lo siguiente a mi archivo SpaceEngineers.exe.config resuelve las caídas frecuentes de rendimiento y el juego se ejecuta a 120 fps sólidos para mí en configuraciones altas en mi i7-7700k / GTX 1070. El modo multijugador también funciona bien.

También es necesario instalar dotnet472 y xact a través de winetricks o protontricks.

<runtime> <gcServer enabled="true"/> </runtime>

\ya existe para mí, así que solo tuve que poner el \

Después de volver a .NET FW con el servidor GC, ¿experimenta algún problema de inicio como en Mono, se bloquea en la pantalla de carga, se bloquea o algo?

Después de volver a .NET FW con el servidor GC, ¿experimenta algún problema de inicio como no Mono, se cuelga en la pantalla de carga o algo así?

dotnet472 no tiene ese problema para mí. Todo funciona como se esperaba hasta ahora en ese sentido. Puedo iniciar el juego de manera confiable y comenzar cualquier juego personalizado que haya probado.

Personalmente, tuve un bloqueo al comenzar un nuevo mundo una vez y dos bloqueos que arrojaron un cuadro de diálogo de bloqueo del controlador de gráficos (el controlador en realidad no se bloqueó en el sistema, podría haber sido DXVK rindiéndose), pero más allá de eso fue una experiencia bastante fluida.

Pasé unas horas jugando un juego de MP en un mundo modificado con 5-6 personas alrededor, me metí con las secuencias de comandos mientras estaba allí, y todo esto estaba alojado en una máquina con Windows (solo un mundo local en la máquina de un amigo, no en DS).

Hubo picos aquí y allá que aún podrían estar relacionados con GC, pero se estaba ejecutando a 120 FPS bastante estables en mi 3GB 1060 y Core i5 4460, todo mientras se ejecutaba en una ventana con la composición activada en mi entorno de escritorio. Bajó más tarde cuando comenzamos a construir mucho, no es sorprendente, no estoy seguro de cuánta pérdida de rendimiento se debió a qué factor en ese momento.

CDsvdlb

En general, lo llamaría completamente jugable: +1:

Sí, creo que esto lo califica para una calificación de oro en ProtonDB, que funciona bastante bien con pequeños ajustes.

Vaya, esto realmente ha explotado (mi correo electrónico). Felicitaciones por encontrar una solución / solución, pude iniciar y jugar con dotnet472 y xact, establecer la opción de configuración gc y terminé necesitando PROTON_NO_ESYNC para evitar fallas durante la carga.
Envié un informe a ProtonDB con una calificación de oro. ¡Gracias por su perseverancia Linux74656, y por el conocimiento InflexCZE!

Entonces, ¿vcrun es innecesario o algunas personas todavía lo necesitan?

No instalé vcrun2015, pero es posible que steamplay ya lo haya instalado, no lo comprobé.

El juego funcionó bien para mí.
Puedo crear un juego con mods, los scripts están bien.

No pude instalar vcrun2015, pero con dotnet472 y el cambio de configuración estuvo bien.

Creo que Steam instala vcrun2015 como un requisito previo cuando se inicia por primera vez. Probablemente también intente instalar dotnet, pero eso requiere algo de piratería en los prefijos de 64 bits que manejan winetricks, por lo que todavía necesitamos ejecutarlo por separado. En cuanto a xact, creo que podría estar preinstalado o viene como parte de DirectX o algo en Windows. Con el tiempo, es posible que también podamos omitir eso, pero FAudio aún no es compatible con el formato de archivo utilizado por SE, por lo que, por ahora, estamos atascados con las bibliotecas nativas de Windows.

FAudio está destinado a reemplazar a Xact, pero parece que no funciona en este caso.

@jarrard por lo que leí en su página de características, probablemente sea el formato de archivo XWM, la versión normal que instala Steam no lo admite.

Curiosamente, dado que sé que Skyrim usa el mismo formato de archivo, fui a buscar y encontré esto:

https://github.com/Kron4ek/FAudio-Builds

Parece que alguien lo construyó con soporte WMA y, según los informes, funciona en Skyrim. Podría valer la pena intentarlo también para SE, eso significa que nos desharíamos de un requisito nativo más.

Vale la pena intentarlo, lo intentaré en algún momento, no sé cuándo, es probable que 10 de ustedes me ganen, si es así, háganos saber cómo va. (Faudio con WMA).

Como atajo, escuché que proton-GE ya tiene faudio con wma, pero podría estar equivocado.

@ Onyx47 intente instalar d3dcompiler_47 en su prefijo. También tuve un bloqueo de gráficos ocasional, pero después de instalarlo parece haber desaparecido (por supuesto, para empezar, era tan poco frecuente que aún podría suceder).
Además, acabo de crear un nuevo prefijo usando winetricks para instalar faudio en lugar de xact. Parece haber resuelto el audio emergente. Modificaré la guía para incluir ambos si parece solucionar los problemas de las personas.

¿Qué se requiere para permitir que se reproduzcan los archivos de película que utiliza el juego?

Parece que la reproducción real de archivos .wmv no es probable por ahora. puede consultar el número 1464 para obtener más información.
He intentado instalar media foundation y usar / anular varios dll de una computadora portátil con Windows 7. No tuvo ningún impacto en la jugada.
No sé qué tipo de formatos de video puede cargar el juego, pero intenté convertir la intro en unas pocas docenas de tipos diferentes, cuando pensaba que el tartamudeo podría estar relacionado con el audio y los videos de fondo en el menú principal. realmente no salió nada de eso. Estoy seguro de que alguien se dará cuenta a tiempo ... pero por ahora, la mejor opción es deshabilitar el video de introducción.

Probé Proton-GE y se limitó a cargar un mundo para que no pareciera funcionar si alguien se preguntaba. Supongo que tendré que compilar mi propio faudio, también vale la pena señalar que el sonido del juego en sí funciona bien sin el soporte de faudio wma, el soporte de wma es lo que usa MUSIC.

https://github.com/Kron4ek/FAudio-Builds

Pasé por alto que hay versiones compiladas ... uy, sí, compilarlo usted mismo es un dolor de cabeza, tengo que establecer media docena de rutas de dependencia que no entiendo del todo. (Puedo compilar el faudio básico, pero el soporte de wma requiere 5 configuraciones de ruta adicionales)

@jarrard Instalé faudio a través de winetricks (en un prefijo nuevo sin xact) y pareció funcionar bien.

ok, quizás winetricks / protontricks use la versión compatible con wma, lo cual es bueno ya que sin el soporte de ffmpeg hace que faudio sea muy limitado.

Confirmar que faudio de winetricks me funciona: +1:

De acuerdo, faudio claramente funciona mejor, pero queda una cosa que realmente me está molestando.
Cada vez que un barco llega a su ubicación, por ejemplo, los sonidos de su motor persistirán y se repetirán una y otra vez hasta que cargue otra área o salga.
Todavía no he jugado a la supervivencia, pero esto al menos ocurrió en la campaña. Precisamente, recuerdo que sucedió en este preciso momento: https://youtu.be/6MihPOJUrQ4?t=2623
Por supuesto, los sonidos persistentes del motor se producían siempre que se apagaba un motor, si no recuerdo mal, pero esta escena debería permitir replicar el problema.

He tenido problemas con los sonidos "atascados" en Windows, aunque no con tanta frecuencia como usted lo hace sonar. Lo que significa, dos cosas:

  1. Antes de comenzar a solucionarlo como un problema de Proton, debemos establecer un escenario que produzca de manera confiable un sonido atascado en Proton pero no en Windows.
  2. En última instancia, puede que no sea estrictamente una deficiencia en Proton, sino ligeras diferencias en el tiempo que hacen que una condición de carrera se golpee con más frecuencia. Si es así, será prácticamente imposible solucionar el problema y desaparecerá de la noche a la mañana si Keen logra corregir el error original.

Cada vez que un barco llega a su ubicación, por ejemplo, los sonidos de su motor persistirán y se repetirán una y otra vez hasta que cargue otra área o salga.

Quizás rehaga su prefijo con XACT y pruebe ese escenario nuevamente varias veces y vea si ocurre allí. Si solo sucede con faudio, ¿podría ser necesario un informe de error en esa sección?

He tenido problemas similares con los bloques de sonido, el sonido no termina, sino que simplemente se hace eco del comienzo de la muestra. Por ejemplo, un sonido que debería reproducirse durante 2 segundos se reproduciría durante 1,5 segundos, y luego los primeros 0,5 segundos volverían a reproducirse, en lugar de los últimos 0,5 segundos (números con fines ilustrativos únicamente, no cronometraron). Y esto fue con xact, aún no pude probarlo con faudio. ¿Alguien puede confirmar?

Si esto también sucede con xact, podría ser solo un error de Wine o posiblemente un error de PulseAudio. Si alguien todavía ejecuta ALSA puro en un sistema, ¿podría intentar reproducir esto?

image
Recibo este mensaje de error cuando intento iniciar el juego o cuando ejecuto el comando WINEPREFIX.
¿Es posible que sea porque tengo --force ejecutar el comando varias veces en el mismo prefijo con xact y FAudio?
Recientemente me cambié a Linux y no estoy familiarizado con Wine ni con ningún programa relacionado como Proton o Winetricks. Tengo un amigo de Linux (que finalmente me hizo cambiar) que me ha ayudado hasta ahora.

Editar: Conseguí que el juego funcionara (por segunda vez, la primera vez también lo hice funcionar, pero con errores de sonido muy obvios y desagradables. El audio se retrasaría, como si el archivo de sonido tuviera que terminar de reproducirse por completo antes de reproducir el siguiente uno en un estilo de cola. Entonces, cuando construía mucho rápido, ponía en cola los sonidos y los reproducía uno a la vez, lo que significa que cuando dejaba de colocar / soldar, los sonidos de construcción continuarían hasta que todos los sonidos se hubieran reproducido). No sé qué hice para que el juego funcionara esta vez en particular, pero el juego funciona relativamente bien con un problema. El audio todavía tiene errores, pero no de la misma manera que antes. El sonido se amortigua en algunas partes y el archivo de sonido se corta al principio / final a veces y algunos sonidos no se reproducen al azar.
Sigo recibiendo el mensaje de error cuando inicio el juego.

Cuando agrego "PROTON_NO_ESYNC% command%" a los parámetros de inicio, no se inicia en absoluto. Solo dice "Ejecutando", luego "Sincronizando" y de nuevo a nada.

Intenté instalar xact y dotnet472 usando winetricks o protontricks. La instalación de dotNET está dañada y el juego necesita dx11. (ArchLinux amigo)

Probablemente trucos de vino obsoletos

@CrafterSvK Puedes intentar crear un prefijo usando dotnet48 (esto requerirá la última versión de winetricks, winetricks --self-update ) Lo he usado en lugar de dotnet472 y parece funcionar igual. Aunque todavía obtengo las ventanas emergentes rundll32 al inicio, simplemente presione no cuando aparezca y el juego debería comenzar bien.

¿Puedes decirle a Wine que desactive rundll32?

Intenté desactivarlo y pareció funcionar. El error ya no aparece y el juego parece funcionar bien con pruebas limitadas.

sí, creo que también recibí ese error algunas veces, no estoy seguro de por qué sucede.

Intenté winetricks --self-update nada cambió e instalé dotnet48 , la versión del sistema operativo ahora es Windows XP, lo cual es extraño primusrun %command% se bloquea instantáneamente, ENABLE_PRIMUS_LAYER=1 optirun %command% parece generar una ventana durante 1 segundo y los gráficos de Intel no hacen nada. : / (Tengo un prefijo de 64 bits, ¿es un problema?) Este parece ser un problema que realmente no puedo hacer funcionar Vulkan en mi computadora portátil. Logré ejecutarlo en gráficos integrados pero solo en menú. Después de cargar el juego, se bloquea.

Finalmente de vuelta en PC. @ thorsten-passfeld cuando reproduzca los sonidos en bucle infinito de nuevo, ¿puede revisar esta pantalla (Ctrl + F11) para ver si encuentra el sonido que lo molesta allí? El juego registra aquí todos los sonidos que se están reproduciendo actualmente, al menos desde su punto de vista.
image

Si el sonido está ahí, significa que hay un error en el juego. Si no, lo más probable es que esté en algún lugar de la reimplementación de XAudio y deberíamos rastrearlo allí.

Por supuesto, cuanto más simple sea la escena, mejor para la depuración.

@CrafterSvK ¿Puede comprimir y cargar los registros del bloqueo, tanto SpaceEngineers.log como VRageRender-DirectX11.log.? Deben estar ubicados en "INSERT / DIRECTORY / TO / SPACEENGINEERS / pfx /" + "/ drive_c / users / steamuser / Application Data / SpaceEngineers /"

Además, si pudiera publicar las especificaciones de su sistema desde Steam "Ayuda> Información del sistema", en un archivo txt y cargarlo, puede ser útil.

info.zip
Aqui tienes. Muchas gracias. (Actualmente estoy haciendo cosas para la escuela, pero hoy más tarde voy a probar nvidia-xrun opuesto a bumblebeed con primus_vk)

Parece un problema con el reproductor de video. Intente eliminar (o cambiar el nombre) de todos los videos en "SE_INSTALL_PATH / Content / Videos / *" y vea si llega más lejos.

@CrafterSvK ¿Qué tarjeta gráfica nvidia usa su computadora portátil? ¿Tiene instalados los controladores propietarios de Nvidia?
Ninguno de estos aparece en la información de Steam.
Además, el juego funciona con 64 bits, por lo que se requiere un prefijo de 64 bits, por lo que está bien que su prefijo sea de 64 bits. También parece que la mayoría de los usuarios tienen más estabilidad cuando la versión de Windows del prefijo está configurada en winxp, por lo que esto también es normal.

Bueno, Steam no debería ejecutarse en gráficos nvidia cuando se usa Bumblebee. Instalé nvidia-xrun, todo funciona bien y estable. 70 fps en la configuración más baja con 950M

@CrafterSvK ¡Es bueno escucharlo! ¡Me alegro de que funcione bien!

Todo funciona de forma agradable y fluida, visualmente, sin embargo, hay un crujido de audio muy perceptible y es bastante molesto: tanto la música como el sfx del juego tienen el problema.

Los problemas de audio se han discutido ampliamente en esta discusión y existen soluciones para reducir el problema. ¡Solo necesita leer arriba de su publicación! En su mayor parte, al usar faudio para muchos trabajos, a veces también necesita jugar con los tiempos de sincronización de audio por pulsos.

@ Linux74656 Prolly también debería agregarse a la guía

¡Entendido! ¡La sección de problemas de la guía ha sido actualizada!

Actualización: Lo de PULSE MSEC no funcionó para mí. Parece que tengo una tarjeta de sonido más antigua que no admite correctamente la reproducción de pulsos sin fallas (¡TIL!). Encontré instrucciones alternativas aquí: https://www.reddit.com/r/wine_gaming/comments/83j0mh/wine_and_pulse_audio_latency/dvk60mp/

Básicamente, cambiar la configuración de pulseaudio para cargar con tsched = 0 y fragmentos más pequeños (aparentes) hacen que el audio suene perfecto. Esto ahora obtiene una calificación de oro en protones. Materias brillantes. Hace 6 meses lo intenté y ni siquiera podía empezar. : +1:

Hay problemas con el enfoque del teclado cuando está en pantalla completa (incluso en "pantalla completa con ventana"). Si intento cambiar a otra ventana / aplicación, el juego recupera inmediatamente el foco del teclado. Esto es un poco problemático al copiar / pegar scripts dentro del juego desde un editor externo. La solución que encontré es cambiar temporalmente a una ventana cuando necesito salir del juego.

Sin embargo, el portapapeles SÍ funciona, y parece que los scripts del juego son 100%.

Como se solicitó anteriormente, ahora tenemos un canal especial dedicado a SE en Linux en nuestro KSH Discord oficial. No dude en unirse a nosotros allí:
https://discord.gg/keenswh

Solo para información, tengo un resultado mucho mejor con xact contra faudio.
En la última prueba, instalé xact y xact_64.
Y he realizado el cambio mencionado aquí: https://www.reddit.com/r/wine_gaming/comments/83j0mh/wine_and_pulse_audio_latency/dvk60mp/

Y, sinceramente, el juego funcionó muy, muy bien.
Pocos errores de audio cuando inicio el juego, y después de unos minutos todo está funcionando bien.

Con faudio tengo un retraso de audio extraño, es muy molesto.
Y parece afectar el rendimiento.

Quizás esto dependa del hardware o del sistema, no lo sé ...
Pero las personas que tienen problemas con faudio deberían probar con xact.

Hay problemas con el enfoque del teclado cuando está en pantalla completa (incluso en "pantalla completa con ventana"). Si intento cambiar a otra ventana / aplicación, el juego recupera inmediatamente el foco del teclado. Esto es un poco problemático al copiar / pegar scripts dentro del juego desde un editor externo. La solución que encontré es cambiar temporalmente a una ventana cuando necesito salir del juego.

Sin embargo, el portapapeles SÍ funciona, y parece que los scripts del juego son 100%.

Eso también es un problema en Windows, por lo que no hay nada específico de Wine / Proton / Linux.
Hay algunos informes de errores flotando en algún lugar sobre ese problema.
Es muy agradable cuando cambio al bloc de notas o discord para escribir algo, y el juego también comienza a activar un montón de acciones. / s

Hemos encontrado el problema en Windows y se enviará con el próximo parche del juego.
Con suerte, también solucionará el problema en Linux.

Modifiqué la guía y escribí un nuevo parche automático (muy modificado el anterior) para cumplir con un propósito diferente, ahora parcheará el archivo de configuración por usted, luego (intentará) crear el prefijo. Debería ser al menos en su mayor parte funcional. Con suerte, esto ayudará a reducir la confusión sobre la creación de prefijos para algunos de los usuarios más nuevos o sin experiencia.

Después de usar el parche automático, puedo iniciar y jugar, sin embargo, se engancha cada 2 segundos aproximadamente. Usando el hud DXVK completo, muestra una línea roja en el gráfico cada vez que se engancha. Aparte de eso, obtengo alrededor de 70-90 fps en la Tierra.

i7 6700k, 1080ti, 32 GB DDR4 3200 mhz

¿Se veía así ?

¿Se veía así ?

Sí lo hace, ¿dónde pones eso?

se menciona cómo, solo lea algunas publicaciones. usas el comando de lanzamiento de Steam.

se menciona cómo, solo lea algunas publicaciones. usas el comando de lanzamiento de Steam.

Sí, lo siento, estaba oculto (https://github.com/ValveSoftware/Proton/issues/1792#issuecomment-536643269)

Establecer mis opciones de lanzamiento a: MONO_GC_PARAMS = nursery-size = 32m, minor = simple-par DXVK_HUD = full PULSE_LATENCY_MSEC = 60% command%

Aún entiendo, así es como se ve el gráfico:

image

Creo que esto solo es útil con mono: MONO_GC_PARAMS = nursery-size = 32m, minor = simple-par
¿Intentaste crear tu prefijo con xact en lugar de faudio?
Tengo un rendimiento mucho mejor con xact ... Faudio Tengo exactamente el mismo problema que tú ...

Sí, es solo para mono.

@ matty-r por favor verifique si autopatcher ejecutó los pasos 3 y 4 correctamente (por ejemplo, el servidor GC está presente en su configuración) https://github.com/Linux74656/SpaceEngineersLinuxPatches/blob/master/README.md#step -3

Sí, es solo para mono.

@ matty-r por favor verifique si autopatcher ejecutó los pasos 3 y 4 correctamente (por ejemplo, el servidor GC está presente en su configuración) https://github.com/Linux74656/SpaceEngineersLinuxPatches/blob/master/README.md#step -3

Eso fue lo que hizo. Solo es necesario agregar gcServer enabled = "true" al archivo .config. Funciona perfectamente ahora. Asombroso.

Gracias.

@ matty-r Si el autopatcher falla por alguna razón, sería bueno saber por qué para que otros puedan solucionarlo. ¿Algún mensaje de error cuando lo aplicó? Además, ¿puede indicarnos la ruta completa al archivo de configuración en su sistema? Aparentemente, la ruta difiere en algunos sistemas.

@ matty-r Si el autopatcher falla por alguna razón, sería bueno saber por qué para que otros puedan solucionarlo. ¿Algún mensaje de error cuando lo aplicó? Además, ¿puede indicarnos la ruta completa al archivo de configuración en su sistema? Aparentemente, la ruta difiere en algunos sistemas.

Intenté volver a ejecutarlo, pero parece que ahora aplica la configuración de gcServer, un poco extraño. Sin embargo, dejó de funcionar por completo después de volver a ejecutarlo y solo mostraba el cuadro de diálogo del informe de bloqueo después de la pantalla de inicio. Tuve que volver a agregar manualmente gcServer y eliminé KSH.wmv.

Entonces, no estoy muy seguro de por qué se rompió la primera vez: la ruta coincide con la cadena concatenada en el archivo de script de Python.

Acabo de conseguir que los ingenieros espaciales trabajen con bastante facilidad en Linux, utilizando un pequeño script bash basado en el script Python de @ Linux74656 .

Estoy ejecutando Fedora 30 en un sistema con una GPU AMD RX 580.

Es de destacar que en realidad no pude hacer que funcione a menos que _didn't_ instalé vcrun2015 .

Esto es lo que haces:

  1. En su biblioteca de Steam, haga clic con el botón derecho en Space Engineers -> propiedades -> marque "Forzar el uso de una herramienta de compatibilidad Steam Play específica" y elija "Proton 4.11-7", luego haga clic en cerrar.
  2. Instale SE.
  3. Inicie SE, espere el error sobre una biblioteca desactualizada, haga clic en Aceptar. SE debería crear un prefijo de vino cuando haga esto.
  4. Vaya a un shell de Bash y ejecute el siguiente comando.
  5. Si todo en el paso 3 se realiza correctamente, inicie SE. Debería funcionar ahora.

Comando Bash para el paso 3:

export WINEPREFIX=~/.steam/steam/steamapps/compatdata/244850/pfx && winetricks --force -q d3dcompiler_47 && winetricks --force -q faudio && winetricks --force -q dotnet48 && winetricks --force -q winxp && sed -i 's/<runtime>\r\?$/<runtime> <gcServer enabled = "true"\/>/' ~/.local/share/Steam/steamapps/common/SpaceEngineers/Bin64/SpaceEngineers.exe.config && mv ~/.local/share/Steam/steamapps/common/SpaceEngineers/Content/Videos/KSH.wmv{,.bak}

Eso parece exagerado.

Es de destacar que esto no parecía funcionar con Proton 4.2, pero de todos modos quería usar 4.11 por defecto.

Espera, estás tratando específicamente de usar FAudio, ¿no? Me lo perdí. d3dcompiler_47 embargo, winxp no deberían ser necesarios. (Me sorprende que winxp no rompa el juego, para ser honesto).

Se requiere Windows XP para ejecutar el juego. No he podido hacer que funcione en Windows 7 o superior.

Hola @duckinator , me alegra que el juego funcione bien para ti.

Actualmente tenemos otro usuario en nuestro Discord que tiene problemas con winetricks en Fedora (línea 443):
https://pastebin.com/5Y1s7xjG

¿Puedes compartir con nosotros qué versión de winetricks usas?

@roothorick basándome en tu comentario,

Resulta que esto es suficiente para que funcione para mí:

WINEPREFIX=~/.steam/steam/steamapps/compatdata/244850/pfx winetricks -q dotnet48 xact && sed -i 's/<runtime>\r\?$/<runtime> <gcServer enabled = "true"\/>/' ~/.local/share/Steam/steamapps/common/SpaceEngineers/Bin64/SpaceEngineers.exe.config

No es necesario agregar la opción de lanzamiento -skipintro a Space Engineers, pero hace que se omita el video de inicio que no se reproduce. Si no configura esa opción, lo coloca en una pantalla negra y debe hacer clic o presionar una tecla para continuar.


@InflexCZE aquí está la información de la versión de wine + winetricks:

~$ wine --version
wine-4.17 (Staging)
~$ winetricks --version
20190912 - sha256sum: 31d37bf18f1503ec46cedf8889e447901e746454e9c3de465f9cc57193e0c90b
~$

Mi simplificado anterior puede funcionar mejor, solo por hacer menos cosas. Además, probablemente querrán ejecutar rm -rf ~/.steam/steam/steamapps/compatdata/244850/ y luego volver a ejecutar el juego una vez (para que regenere el prefijo de vino) antes de volver a intentarlo.

~ Usando sus soluciones alternativas, el juego solo funcionará durante aproximadamente un segundo después de cargar un mundo, donde luego se congelaría pero el audio seguirá reproduciéndose. ~

EDITAR: funciona bien después de relanzar.

Aquí hay información sobre mi sistema en caso de que sea relevante:


Alguien que conozco con hardware similar (Ryzen 7 1700, Radeon RX 580) logró que funcionara en ArchLinux usando mi último comentario, pero no estoy seguro de si necesitaban hacer algo adicional más allá de eso.

@duckinator Su única línea de arriba funcionó totalmente para mí en F30. El juego funciona casi sin problemas. Estoy en un 2700X con un RTX 2070

Problemas para copiar las coordenadas GPS al portapapeles. Puedo hacerlo una vez, pero en cualquier momento después de eso, cuando hago clic en el botón copiar al portapapeles, se bloquea durante un par de segundos y no copia las coordenadas en el portapapeles.

¿Es esto en Wayland Matty?

¿Es esto en Wayland Matty?

No, x11.

He tenido otros dos problemas:

  1. Después de salir del juego desde el menú principal, se cuelga en segundo plano y en realidad no se cierra. Steam continúa informando que Space Engineers se está ejecutando.

  2. Después de unos 30 minutos de juego, cualquier movimiento del ratón se vuelve nervioso. Puedo mover bien al personaje usando las teclas y no tengo problemas, pero tan pronto como miro a mi alrededor con el mouse, vuelve a estar nervioso. Salir del juego y reiniciar soluciona el problema temporalmente.

Hola @ matty-r, la segunda parte se lee como # 3316, consulte https://github.com/ValveSoftware/Proton/issues/3316#issuecomment -565734041 para obtener una solución.

Hola @ matty-r, la segunda parte se lee como # 3316, vea # 3316 (comentario) para una solución.

Gracias amigo, lo intentaré mañana y veré cómo te va.

Hola @ matty-r, la segunda parte se lee como # 3316, vea # 3316 (comentario) para una solución.

G'day @ kisak-valve, que parece haber resuelto los problemas de colgar en la salida y el movimiento del mouse en una máquina (aún para probar la otra, pero estoy seguro de que también funcionará allí), gracias por eso.

El único problema que he visto ahora es https://github.com/ValveSoftware/Proton/issues/1792#issuecomment -565758685 - No se pueden copiar los códigos de gps al portapapeles después del primer intento.

Después de salir de Space Engineers, un proceso permanece abierto en segundo plano y Steam informa que el juego aún se está ejecutando.
Protón 4.11-11

Después de salir de Space Engineers, un proceso permanece abierto en segundo plano y Steam informa que el juego aún se está ejecutando.
Protón 4.11-11

Lo mismo aquí, el juego funciona bien, pero necesito matar manualmente muchos procesos después de jugar (vino, ingenieros espaciales, ..).

Lo mismo aquí, y matar los procesos no es suficiente para que Steam diga que ya no lo estoy jugando, también tengo que matar a Steam. Tan raro.

Para todos los que sigan jugando, busque y elimine el proceso SteamChildMonit, que tampoco se cierra correctamente y hará que Steam deje de mostrar que está jugando.

Matar los procesos no es el problema.
pero vino con la actualización 4.11-10 y todavía está ahí.

Matar un proceso va a resolver el problema. Algo, ya sea SE
sí mismo o uno de los diversos procesos ficticios, está colgando.

Eso sí, eso no resuelve la causa raíz, pero funciona.

El jueves 2 de enero de 2020 a las 10:32 a.m., diKsens [email protected] escribió:

Matar los procesos no es el problema.
pero vino con la actualización 4.11-10 y todavía está ahí.

-
Estás recibiendo esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/ValveSoftware/Proton/issues/1792?email_source=notifications&email_token=AB5DMRGXZSSVUSETAH4RG6LQ3YCHTA5CNFSM4F6IMNRKYY3PNVWWK3TUL52HS4DFVDVREXWJWK3TUL52HS4DFVDVREXWG43V2
o darse de baja
https://github.com/notifications/unsubscribe-auth/AB5DMRAEVHS5P3XPDP2QZN3Q3YCHTANCNFSM4F6IMNRA
.

No pude iniciar el juego inicialmente, para que funcionara con la versión 4.11-11 de Proton tuve que instalar la última versión de winetricks con el comando wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks && chmod +x winetricks && sudo mv -v winetricks /usr/local/bin luego ejecutar el script wget https://raw.githubusercontent.com/Linux74656/SpaceEngineersLinuxPatches/master/autoprefix-patcher.py && python3 autoprefix-patcher.py

Información del sistema:

System:    Host: asimov-MacBookPro Kernel: 5.4.6-050406-generic x86_64 bits: 64 compiler: gcc 
           v: 9.2.1 Desktop: Cinnamon 4.4.6 wm: muffin dm: LightDM Distro: Linux Mint 19.3 Tricia 
           base: Ubuntu 18.04 bionic 
Machine:   Type: Laptop System: Apple product: MacBookPro13,3 v: 1.0 serial: <filter> Chassis: 
           type: 9 v: Mac-A5C67F76ED83108C serial: <filter> 
           Mobo: Apple model: Mac-A5C67F76ED83108C v: MacBookPro13,3 serial: <filter> UEFI: Apple 
           v: 263.0.0.0.0 date: 10/30/2019 
Battery:   ID-1: BAT0 charge: 52.4 Wh condition: 53.3/76.7 Wh (70%) volts: 12.7/11.5 
           model: SMP bq20z451 serial: N/A status: Full 
           Device-1: hidpp_battery_0 model: Logitech Wireless Keyboard serial: <filter> 
           charge: 55% status: Discharging 
CPU:       Topology: Quad Core model: Intel Core i7-6920HQ bits: 64 type: MT MCP arch: Skylake-S 
           rev: 3 L2 cache: 8192 KiB 
           flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 46398 
           Speed: 3363 MHz min/max: 800/3800 MHz Core speeds (MHz): 1: 900 2: 900 3: 900 4: 900 
           5: 900 6: 900 7: 900 8: 900 
Graphics:  Device-1: AMD Baffin [Radeon RX 460/560D / Pro 450/455/460/555/560] vendor: Apple 
           driver: amdgpu v: kernel bus ID: 01:00.0 chip ID: 1002:67ef 
           Display: x11 server: X.Org 1.20.4 driver: amdgpu,ati unloaded: fbdev,modesetting,vesa 
           resolution: 1920x1080~60Hz, 1920x1080~60Hz 
           OpenGL: 
           renderer: AMD Radeon RX Graphics (POLARIS11 DRM 3.35.0 5.4.6-050406-generic LLVM 7.1.0) 
           v: 4.5 Mesa 18.3.0-rc4 direct render: Yes 
Audio:     Device-1: Intel 100 Series/C230 Series Family HD Audio driver: snd_hda_intel v: kernel 
           bus ID: 00:1f.3 chip ID: 8086:a170 
           Device-2: AMD driver: snd_hda_intel v: kernel bus ID: 01:00.1 chip ID: 1002:aae0 
           Sound Server: ALSA v: k5.4.6-050406-generic 
Network:   Device-1: Broadcom and subsidiaries BCM43602 802.11ac Wireless LAN SoC vendor: Apple 
           driver: brcmfmac v: kernel port: 3000 bus ID: 03:00.0 chip ID: 14e4:43ba 
           IF: wlp3s0 state: up mac: <filter> 
           IF-ID-1: docker0 state: down mac: <filter> 
Drives:    Local Storage: total: 465.92 GiB used: 104.53 GiB (22.4%) 
           ID-1: /dev/nvme0n1 vendor: Apple model: SSD SM0512L size: 465.92 GiB speed: 31.6 Gb/s 
           lanes: 4 serial: <filter> 
Partition: ID-1: / size: 455.46 GiB used: 52.10 GiB (11.4%) fs: ext4 dev: /dev/dm-1 
           ID-2: /boot size: 704.5 MiB used: 319.2 MiB (45.3%) fs: ext4 dev: /dev/nvme0n1p2 
           ID-3: swap-1 size: 979.5 MiB used: 25.0 MiB (2.6%) fs: swap dev: /dev/dm-3 
Sensors:   System Temperatures: cpu: 76.0 C mobo: N/A 
           Fan Speeds (RPM): N/A 
Repos:     No active apt repos in: /etc/apt/sources.list 
           Active apt repos in: /etc/apt/sources.list.d/additional-repositories.list 
           1: deb [arch=amd64] https: //download.docker.com/linux/ubuntu bionic stable
           Active apt repos in: /etc/apt/sources.list.d/amdgpu-pro-local.list 
           1: deb [ trusted=yes ] file: /var/opt/amdgpu-pro-local/ ./
           Active apt repos in: /etc/apt/sources.list.d/graphics-drivers-ppa-bionic.list 
           1: deb http: //ppa.launchpad.net/graphics-drivers/ppa/ubuntu bionic main
           Active apt repos in: /etc/apt/sources.list.d/kubernetes.list 
           1: deb https: //apt.kubernetes.io/ kubernetes-xenial main
           Active apt repos in: /etc/apt/sources.list.d/lutris-team-lutris-bionic.list 
           1: deb http: //ppa.launchpad.net/lutris-team/lutris/ubuntu bionic main
           Active apt repos in: /etc/apt/sources.list.d/nodesource.list 
           1: deb https: //deb.nodesource.com/node_10.x bionic main
           2: deb-src https: //deb.nodesource.com/node_10.x bionic main
           Active apt repos in: /etc/apt/sources.list.d/official-package-repositories.list 
           1: deb http: //ftp.acc.umu.se/mirror/linuxmint.com/packages tricia main upstream import backport
           2: deb http: //archive.ubuntu.com/ubuntu bionic main restricted universe multiverse
           3: deb http: //archive.ubuntu.com/ubuntu bionic-updates main restricted universe multiverse
           4: deb http: //archive.ubuntu.com/ubuntu bionic-backports main restricted universe multiverse
           5: deb http: //security.ubuntu.com/ubuntu/ bionic-security main restricted universe multiverse
           6: deb http: //archive.canonical.com/ubuntu/ bionic partner
           Active apt repos in: /etc/apt/sources.list.d/skype-stable.list 
           1: deb [arch=amd64] https: //repo.skype.com/deb stable main
Info:      Processes: 307 Uptime: 2h 31m Memory: 15.54 GiB used: 2.85 GiB (18.4%) Init: systemd 
           v: 237 runlevel: 5 Compilers: gcc: 7.4.0 alt: 7 Client: Unknown python3.6 client 
           inxi: 3.0.32 

El juego no comenzará con la GPU NVIDIA usando controladores propietarios (probados en 435 y 440), pero lo hace usando la GPU AMD integrada (mal).
Sigo recibiendo el cuadro de diálogo "Actualizar Windows o los controladores de su gpu".

  • wine versión 5.0-rc3 (probado con 4.0.3 también)
  • winetricks versión 20191224-next
  • proton versión 4.11.11

Registros:
SpaceEngineers.log
VRageRender-DirectX11.log
steam-244850.log

Pruebe una liberación de protón-tkg y vea qué sucede. Creo que las tarjetas NVIDIA generalmente se falsifican como tarjetas AMD, pero tal vez eso ya no suceda, puede suplantar manualmente su GPU a AMD.

No estoy seguro de si este método todavía funciona para protones, pero estos son para AMD (solo busque los valores).

dxvk.conf en el directorio del juego:
dxgi.customDeviceId = E366
dxgi.customVendorId = 1002

Intenté usar proton_tkg_5.0rc5.r0 , pero no funciona ni siquiera con el archivo dxvk.conf.

Lo haré una prueba de manejo pronto en tkg.

El uso de Proton GloriousEggrolls 4.15-ge-1 parece hacer que el juego reconozca mi GPU real, pero VRageRender sigue fallando:
VRageRender-DirectX11.log
SpaceEngineers.log

ACTUALIZACIÓN: Mi problema se solucionó gracias a @ Linux74656 :

  • Wineprefix contiene faudio vcrun2015 dotnet48 y d3dcompiler_47.
  • Protón 4.11.12
  • Parámetros del juego Steam: DXVK_FILTER_DEVICE_NAME = "GeForce"

Parece que no puedo comenzar con todos los parches y recomendaciones, y no puedo decir por qué, incluso con la información de registro:
steam-244850.log

¿Puede alguien ayudarme?
Información del sistema

Hola @MajorLunaC , err:module:fixup_imports_ilonly mscoree.dll not found, IL-only binary L"SpaceEngineers.exe" cannot be loaded parece la línea de interés de tu registro. Parece que el soporte de .NET se rompió en algún lugar de sus retoques.

Sistema:
AMD 2700X refrigerado por agua
32 GB DDR4 3200 MHz CL18 RAM
RX VEGA64 refrigerado por agua
Juego en SSD

OS Manjaro kernel 5.5 Mesa 20 git (con RADV_PERTEST = aco en el lanzamiento del juego), Wine 5 RC4
en comparación con Win10 1909

Los juegos se están ejecutando, pero se bloquean aleatoriamente, el registro de protones genera 50-150 + MB cada ejecución, el renderizado del juego se siente entrecortado hasta que no se ejecuta a 120 FPS. y en la misma configuración, el juego se está ejecutando considerablemente más lento (70+ FPS stabel en Win, 28 en Linux. 4k de configuración alta preestablecida. En la misma ubicación en el mismo mundo guardado). (Después de cargarlo nuevamente, me dio en el contador de fps 60 fps, pero el juego se sintió tartamudeante, como antes. Si lo desea, el renderizado funcionaría bien, pero el motor del juego está en un estado de rendimiento de mierda.)
Windows-VRageRender-DirectX11.log
Windows-SpaceEngineers.log
LINUX-VRageRender-DirectX11.log
Linux-SpaceEngineers.log

registro de protones (50 MB)
Google Drive

Sí, recuerdo la sensación de tartamudeo incluso aunque el FPS era alto. No puedo recordar con seguridad si lo arreglé o no, pero es posible que desee intentar habilitar vsync.

Hola @ kisak-valve, en realidad no he modificado nada más allá de SpaceEngineersLinuxPatches . Probé las correcciones predeterminadas de Steam que fallan exactamente de la misma manera, luego los comandos enumerados en esta conversación de problemas, así como SpaceEngineersLinuxPatches. Por lo que he recopilado, parece probable que .NET no se esté instalando correctamente: consulte Cómo instalar .NET 4.5 en prefijos de 64 bits , y ni siquiera tengo claro cuándo se debe habilitar el modo WinXP o el modo Win7 durante la instalación y correr (aparentemente hace la diferencia). Creo que el problema podría deberse a diferentes versiones de Winetricks que obtienen instaladores de diferentes fuentes.
Tengo Winetricks 20191224-next, y borré /HOME/.cache/winetricks/ para que se descarguen nuevas versiones. Supuestamente .NET debería proporcionar una nueva versión de mscoree.dll de más de 100 kb si se instaló correctamente, pero parece que nunca cambia. Una semi-solución es que descargo la versión más reciente de mscoree.dll (versión 10 algo) de <Link removed by moderator> y la coloco directamente dentro de SpaceEngineers / Bin64 / (así como ucrtbase_clr0400.dll y vcruntime140_clr0400.dll que pregunta para después), el juego comienza y puedo navegar por los menús del juego. Se bloquea el juego en algún momento mientras se carga un nuevo juego con lo siguiente en SpaceEngineer.log:
2020-01-23 15:28:50.210 - Thread: 1 -> ERROR Entity init!: System.IO.IOException: Too many open files.

¿Puedo conseguir que alguien me diga su versión de winetricks que funciona? ¿O eventualmente incluso todo su directorio pfx que funciona?

Mientras estoy en eso, @ plasticbomb1986 , para posibles aumentos de rendimiento, puede intentar ajustar el registro (haga una copia de seguridad del directorio pfx antes de hacerlo), en particular cambiando la clave VideoMemorySize a la clave actual, GLSL y DirectDrawRenderer, también cualquier cosa en Direct3D y que tiene que ver con texturas o sombreadores. Pruebe uno a la vez, revirtiendo los cambios antes de probar uno nuevo, luego puede intentar combinar.

@MajorLunaC , aunque no voy a comentar sobre las soluciones alternativas que está intentando, puede valer la pena comprobar que ulimit -Hn genera un valor alto y no 4096.

Además, uno de los enlaces en su comentario es legalmente problemático y ha sido eliminado.

@ kisak-valve Vaya, lo siento por el enlace, no me di cuenta. Estoy demasiado acostumbrado a tratar de averiguar qué está mal y qué se requiere por cualquier medio necesario.

La salida de ulimit -Hn es 4096. ¿Hay algo que pueda hacer al respecto? ¿Puedo aumentarlo de forma segura y en cuánto?

Proton usa esync (o fsync con kernels capaces) de forma predeterminada, por lo que es probable que eso contribuya a lo que encontró. La primera sección de https://github.com/zfigura/wine/blob/esync/README.esync debería ser útil.

@ kisak-valve ¡Vaya, funcionó, puedo jugar perfectamente! ¡Gracias por toda tu ayuda!
Todavía me gustaría descubrir cómo asegurarme de que todo se instale correctamente con los instaladores proporcionados a través de winetricks para obtener cierta coherencia, ya que los instaladores no parecen verificar realmente si hicieron el trabajo bien. Creo que la herramienta de reparación de .NET Framework podría funcionar con vino. No es práctico para todo el mundo copiar archivos DLL de una versión de Windows que poseen o la forma "legalmente problemática" de encontrar archivos DLL en línea.

simplemente use protontricks para facilitar la instalación de dotnet.

Dotnet se puede instalar hasta 472, creo (¿o es 492 ahora?), Pero muchas de sus funciones pueden no funcionar correctamente. Windows Mono es una alternativa pero, nuevamente, muchas funciones pueden no coincidir bien.

Jarrad

Sí, recuerdo la sensación de tartamudeo incluso aunque el FPS era alto. No puedo recordar con seguridad si lo arreglé o no, pero es posible que desee intentar habilitar vsync.

Cheque. Se siente un poco mejor, menos tartamudeo, pero los fps aún no están cerca de donde debería estar. ADEMÁS, a veces sigue chocando.

MajorLunaC

Mientras estoy en eso, @ plasticbomb1986 , para posibles aumentos de rendimiento, puede intentar ajustar el registro (haga una copia de seguridad del directorio pfx antes de hacerlo), en particular cambiando la clave VideoMemorySize a la clave actual, GLSL y DirectDrawRenderer, también cualquier cosa en Direct3D y que tiene que ver con texturas o sombreadores. Pruebe uno a la vez, revirtiendo los cambios antes de probar uno nuevo, luego puede intentar combinar.

¡Voy a comprobarlo! ¡Gracias por el consejo!

Ohh, y una cosa más. ¿Alguno de ustedes puede usar Alt + F10?

¿Alguien recibe un error file not found al iniciar?

Screenshot from 2020-01-26 15-28-13

@BeauBouchard ¿Estás usando una versión personalizada de protón? Recibo este mensaje cuando uso la última versión de Glorious Eggrolls custom proton.
Si es así, inténtelo con la última versión oficial de protones. Nota: es posible que deba eliminar y volver a crear su prefijo, ya que GE destruyó mi prefijo de ingenieros espaciales, incluso después de cambiar a 4.11-12.

Hoy, proton recibió una actualización en mi PC (¿de proton 5 a 5.0.2?), Y después de eso, el juego se cerró con un error de memoria insuficiente, incluso cuando estaba en el menú principal.
SpaceEngineers.log
VRageRender-DirectX11.log
steam-244850.log

Hay un montón de cosas sucediendo, con una sesión de juego promedio de 2-3 horas, el registro de protones hace un registro de 400-500 MB, fácilmente.

Hoy, proton recibió una actualización en mi PC (¿de proton 5 a 5.0.2?), Y después de eso, el juego se cerró con un error de memoria insuficiente, incluso cuando estaba en el menú principal.
SpaceEngineers.log
VRageRender-DirectX11.log
steam-244850.log

Hay un montón de cosas sucediendo, con una sesión de juego promedio de 2-3 horas, el registro de protones hace un registro de 400-500 MB, fácilmente.

Después de recrear el prefijo, sigue haciendo lo mismo.

SpaceEngineers.log
VRageRender-DirectX11.log
steam-244850.log
Screenshot from 2020-02-15 15-14-39cut

Olvidé la especificación del sistema: Ryzen 2700X 32GB DDR4 VEGA64 y múltiples ssds (intercambio en nvme ssd).

kernel 5.5 mesa 20git Manjaro Gnome DE

igual que aquí.
SpaceEngineers.log

steam-244850.log
Aquí está mi último registro en caso de que ayude, no he pasado de la pantalla de inicio.

El mismo error, pero no estoy ejecutando Proton (lutris-5.0) y mi juego se bloqueó hoy repentinamente después de jugar un mes sin problemas.
Reinstalé el prefijo / juego de vino, desactivé la nube de vapor, sin efecto.
Arranqué Windows 10 y veo una notificación por primera vez: Default Radeon WattMan settings restored due to unexpected system failure .

Puede jugar en Windows, pero después de reiniciar / arranque en frío, el mismo error en Linux.

Configuración: Ryzen 5 2600, AMD RX470, 16 Gb de RAM, SSD / Lutris-5.0 / ArchLinux

Este es un error realmente extraño. Está completamente fuera de SE en algún lugar profundo de la biblioteca .NET.
Desde el seguimiento de la pila, parece una comunicación de red, tal vez análisis o algo así.

¿Puede intentar desconectar su Internet por un segundo y ejecutar SE sin ninguna conexión para que podamos descartar la posibilidad de una respuesta loca del servidor remoto?

Este es un error realmente extraño. Está completamente fuera de SE en algún lugar profundo de la biblioteca .NET.
Desde el seguimiento de la pila, parece una comunicación de red, tal vez análisis o algo así.

¿Puede intentar desconectar su Internet por un segundo y ejecutar SE sin ninguna conexión para que podamos descartar la posibilidad de una respuesta loca del servidor remoto?

Intente el proceso de reinstalación ahora. El script Linux74656 se atascó aquí: 01a0: err: ole : ifproxy_release_public_refs IRemUnknown_RemRelease falló con el error 0x800706be

Sin una conexión a Internet, SE puede iniciarse como antes.
Tan pronto como se establece la conexión a Internet y se consultan los servidores, se bloquea inmediatamente.
SpaceEngineers.log

Lo tengo con Proton 5.0-2 y dontnet472 así como dotnet48.
También probé con Proton 4.11-12 y dotnet472.

@ plasticbomb1986 Para la instalación, todavía necesita una conexión a Internet para poder descargar los instaladores.

@ plasticbomb1986 Para la instalación, todavía necesita una conexión a Internet para poder descargar los instaladores.

Ese habría sido un momento de facepalm, pero no, la red estaba encendida en ese momento.

Acabo de llegar a casa del cine, en las últimas 4 horas parece que terminó al final, pero lo volveré a ejecutar, solo para comprobarlo.

También puedo confirmar que la desactivación de la conexión a Internet evita el error.

También puedo confirmar que la desactivación de la conexión a Internet evita el error.

Sí, si después de que Se inicia y aparece la primera "pantalla" de carga, apago la red, se está cargando y funcionando bien, si no apago la red, se está cargando, pero el audio se rompe, y después unos segundos está dando el error de memoria insuficiente.

Los chicos de Keen SWH Discord (https://discord.gg/keenswh) encontraron una solución mientras tanto.
El juego envía análisis a 81.0.234.196 y 88.146.207.227 (servidores de análisis Keen SWH) que aparentemente devuelve algo de basura que causa el problema (sin querer).

La solución es bloquear este servicio a través de:
sudo iptables -A INPUT -s 88.146.207.227 -j DROP

Todo el crédito es para Rölli: +1:

La solución es bloquear este servicio a través de:
sudo iptables -A INPUT -s 88.146.207.227 -j DROP

¡Bien, gracias! ¡Esto funciona bien!

Parece que algunas personas diferentes obtienen algunos errores diferentes aquí, y ninguno de ellos parece coincidir con el mío. También aparece la pantalla de bienvenida durante un tiempo breve y luego se bloquea, pero mi registro se ve diferente de los más recientes cargados por otros. La línea más interesante para mí es
[000000000000003C:] EXCEPTION handling: System.TypeInitializationException: The type initializer for 'GameAnalyticsSDK.Net.Logging.GALogger' threw an exception.

Esto está en un prefijo limpio (eliminado steamapps/compatdata/244850 ), probado con y sin los cambios de archivo desde aquí .

El comando iptables no me ayuda.

steam-244850.log

@captaincrutches ¿ Por casualidad aceptó el diálogo de información del acuerdo GDPR cuando se inicia el juego? Puede estar activo y ser el origen del problema.
Puede consultar aquí: ... / 244850 / pfx / drive_c / users / steamuser / Application Data / SpaceEngineers / SpaceEngineers.cfg

y cambio:

<item>
        <Key>GDPRConsent</Key>
        <Value>
          <Value xsi:type="xsd:string">True</Value>
        </Value>
</item>

A:

<item>
        <Key>GDPRConsent</Key>
        <Value>
          <Value xsi:type="xsd:string">False</Value>
        </Value>
</item>

@ Linux74656 Nunca recibí un cuadro de diálogo GDPR, y no tengo ese archivo en absoluto. De hecho, no puedo encontrar un SpaceEngineers.cfg ninguna parte de mi sistema.

Esa carpeta contiene un SpaceEngineers.log que subiré aquí para que esté completo; parece tener una excepción de puntero nulo.

SpaceEngineers.log

Estás ejecutando el juego a través de Mono en lugar de .NET framework. Probablemente prefijo instalado incorrectamente.

¿Qué versión de distro y winetricks estás usando?

Estoy en Gentoo, usando los últimos winetricks (20191224) y protontricks (1.4.1) en portage.

Elimina el prefijo del juego y vuelve a crearlo. Mientras lo hace, guarde el registro de salida para que podamos ver si hay algo interesante.

Ah, bueno, ¿adivinen qué? Anteriormente había intentado hacer el parche a través de la línea de comandos usando protontricks / winetricks ... pero lo intenté con PatcherGUI.jar y he aquí, ¡el juego ahora comienza! Gracias por el codazo ~

No estoy seguro de si debería publicar en este hilo o no, pero cuando le digo a Space Engineers que salga, en realidad no cierra los hilos correctamente. Además, presionar "Detener" en STEAM tampoco lo mata. Necesito matar los procesos manualmente.

He tenido el mismo problema. Lo que me deja perplejo es que incluso si mato todos los procesos relacionados con SE, Wine o Proton, todavía se niega a ver SE como salido en Steam. De hecho, tengo que matar el vapor para poder reiniciar SE después. Bastante molesto. No he investigado demasiado el problema más allá de eliminar todos los procesos relacionados con SE / Proton en Steam, pero es algo que probablemente deba ser analizado.

He estado teniendo el mismo problema. Lo que me deja perplejo es que incluso si elimino todos los procesos relacionados con SE, Wine o Proton, todavía se niega a ver SE como salido en Steam. De hecho, tengo que matar el vapor para poder reiniciar SE después. Bastante molesto. No he investigado demasiado el problema más allá de eliminar todos los procesos relacionados con SE / Proton en Steam, pero es algo que probablemente deba ser analizado.

Tengo un consejo para ti. Estoy en Ubuntu, por lo que esto puede traducirse o no en su situación.

Después de que exista Space Engineers, abro "System Monitor". Mientras estoy en la pestaña "Procesos", hago clic en el menú de hamburguesas apiladas (tres líneas horizontales) para habilitar "Mostrar dependencias". Esto convierte la sección "Procesos" en árboles.

Luego voy y busco las áreas con "Steam" ejecutándose, y busco específicamente "SteamChildMonit" y el árbol de eso. Si hay múltiples (probablemente solo haya uno) busque el que tiene el niño "SpaceZEngineers". y un montón de cosas de vino.

Luego primero hago clic en "SteamChildMonit" para resaltarlo, mantengo presionada la tecla Mayús y hago clic en el último niño en ese árbol (a menudo "winedevice.exe"). Luego haga clic derecho en la selección, vaya a matar y los matará a todos.

Esto me permite relanzar el juego (o puedo lanzar otros juegos) sin tener que matar todo STEAM.

De hecho, descubrí que si salgo de SE "normalmente", necesito matar manualmente un montón de procesos como se describe anteriormente ... pero si kill -9 $(pgrep SpaceEngineers) desde la terminal en lugar de salir del juego normalmente, todos los procesos relevantes morir como se desee.

El problema del proceso zombie no es un problema de Wine / Proton, también ocurre en Windows para mí.

Vea esto: https://github.com/Linux74656/SpaceEngineersLinuxPatches#issue -8

Por primera vez desde que tengo el juego, puedo hacer que pase de la pantalla de inicio con Proton 5.0-8rc, no tengo ni idea de lo que estoy haciendo en el juego, pero al menos finalmente puedo jugarlo. :)

Me estoy enfrentando a un accidente después de sesiones lo suficientemente largas. Steam-244850.log tiene 900 MB, pero el registro del juego es más pequeño. Tendré que esperar un rato antes de que finalice la carga.

El registro del juego:
SpaceEngineers_20200626_220158938.log

Registro de Steam (comprimido): https://mega.nz/file/gxxAnKzS#gunhdGQRfYJLIbnEGadOWQ6PNC2j4eMYgssjh -IJHPg

Especificaciones del sistema: https://gist.github.com/FurretUber/e105309ff4c58e197c3b2f65318cd8e1

Sí, Space Engineers se bloquea para mí después de un período de tiempo aleatorio, y al mirar los registros no veo que surja nada, así que no estoy seguro de qué hacer al respecto :( Sucede con bastante frecuencia.

¿Podemos obtener una solución para el protón para los ingenieros espaciales que no abandonan realmente al salir del juego, por favor?

"El juego no se inicia en Proton sandbox y puede ver la estructura de directorios normal de Linux", resumen de una de las muchas personas con conocimientos de programación que me han ayudado hoy. Desde mi perspectiva, veo una pantalla de bienvenida durante uno o dos segundos, luego todo vuelve a un estado como si nunca hubiera hecho clic en reproducir. Se adjunta el registro.
SpaceEngineers_20200708_180142615.log

Información del sistema

  • GPU: X.Org Radeon RX 570 Series (POLARIS10, DRM 3.33.0, 5.3.0-62-genérico, LLVM 9.0.0)
  • Versión del controlador / LLVM: 4.5 (perfil de compatibilidad) Mesa 19.2.8
  • Versión de Kernel: 5.3.0-62-generic
  • Enlace al informe completo de información del sistema: https://gist.github.com/HalberdGuard/c623a4f14676e77e6f401b3c62a2e9b7
  • Versión de protones: 5.0-9

¿Probaste el archivo jar de instalación? He descubierto que eso es bastante confiable, pero sí, esas cosas deben hornearse en protones con seguridad.

En realidad, esto fue el resultado de haber utilizado tanto la versión automatizada como luego la versión manual, con la ayuda de las personas amables y conocedoras (¡y pacientes!) Antes mencionadas ... Supongamos que debería haber mencionado eso. : pags
Debido a otras circunstancias probablemente no relacionadas, es probable que tenga que volver a instalar Steam pronto, ¿tal vez ya no sea extraño? ¡Ya veremos!

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

shanefagan picture shanefagan  ·  3Comentarios

Elkasitu picture Elkasitu  ·  3Comentarios

AwesamLinux picture AwesamLinux  ·  3Comentarios

kforney picture kforney  ·  3Comentarios

ghost picture ghost  ·  3Comentarios