How Windows 11 Triggered A 25 Year Old Bug
Summary
TLDREste video explora un error interesante en el juego Sid Meier's Alpha Centauri, que afecta a la expansión Alien Crossfire en Windows 11. El error causa bloqueos debido a un comportamiento indefinido en el código del juego, exacerbado por un cambio en la implementación interna de Windows 11. El creador del video realiza una investigación exhaustiva, identificando y solucionando el problema mediante un parche. Sin embargo, también se da cuenta de que ya existe una solución comunitaria. El video concluye con un análisis de otros problemas similares en juegos y un llamado a la colaboración para mejorar la preservación de juegos antiguos.
Takeaways
- 😀 Sid Meier's Alpha Centauri es un popular juego de estrategia de los años 90 que aún se puede comprar en GOG y Steam.
- 😀 GOG ofrece una versión DRM-free del juego como parte de su programa de preservación, garantizando la compatibilidad con futuras versiones de Windows.
- 😀 Una actualización reciente de Windows 11 (24H2) provoca fallos en el juego y otros similares, especialmente en la expansión Alien Crossfire.
- 😀 Al intentar ejecutar el juego en una máquina con Windows 11 24H2, el juego se bloquea casi inmediatamente, mientras que en Windows 10 funciona sin problemas.
- 😀 El fallo parece estar relacionado con la corrupción de archivos de guardado, específicamente al intentar escribir el archivo de autosave en Windows 11.
- 😀 Tras realizar un análisis con un depurador, se descubre que el juego depende de un comportamiento no definido en su código, lo que causa el error en Windows 11.
- 😀 En el código del juego, la asignación de memoria en el stack no está completamente inicializada, lo que genera corrupción en los archivos de guardado en Windows 11.
- 😀 A diferencia de Windows 10, Windows 11 cambia cómo se maneja el `leave critical section`, lo que provoca que los valores del stack sean alterados y cause un error.
- 😀 El análisis muestra que la corrupción de memoria se origina en la expansión Alien Crossfire, ya que el juego base no presenta este fallo.
- 😀 Como solución provisional, se desarrolló una herramienta para parchear el binario y evitar que el fallo se repita, permitiendo que el juego funcione en Windows 11.
- 😀 A pesar de la solución propuesta, la comunidad ya tiene un mod para el juego que soluciona el fallo de manera más confiable, aunque no todos los jugadores lo prefieren.
- 😀 El autor también menciona otro juego, GTA San Andreas, que sufrió un problema similar debido a la actualización de Windows 11 24H2, y sugiere leer sobre ello.
- 😀 El autor reportó el error a GOG, quienes indicaron que lo transmitirían al equipo correspondiente y marcarían el ticket como resuelto.
Q & A
¿Qué tipo de error se analiza en este video?
-El video analiza un error relacionado con un fallo en el juego *Sid Meier's Alpha Centauri* y su expansión *Alien Crossfire* al ejecutarse en Windows 11 versión 24H2, que causa corrupción de memoria y crashes durante la partida.
¿Por qué el juego falla específicamente en Windows 11 y no en Windows 10?
-El juego falla en Windows 11 debido a un cambio en la implementación interna de la función 'leave critical section', lo que afecta el manejo de la memoria en la pila. En Windows 11, la memoria de la pila se maneja de manera diferente, lo que provoca que el juego se comporte de forma inesperada y se corrompa.
¿Qué herramienta se utiliza para depurar el juego y analizar el fallo?
-Se utiliza un depurador (debugger) y Gedra, una herramienta de descompilación, para analizar el código y rastrear el origen del fallo en la memoria.
¿Cómo se identificó el problema subyacente en el código del juego?
-El problema se identificó cuando se descubrió que el juego estaba utilizando memoria no inicializada, lo que causaba comportamientos indefinidos. Este comportamiento no era problemático en versiones anteriores de Windows, pero con la actualización de Windows 11, los cambios en el manejo de la pila hicieron que el error se manifestara.
¿Cuál fue el primer indicio de que la corrupción de memoria se relacionaba con los archivos de guardado?
-El primer indicio fue cuando se observó que en Windows 11, al intentar escribir el archivo de autosave, la longitud del archivo era anormalmente grande y contenía bytes repetidos, lo que sugería corrupción de datos.
¿Cómo se solucionó temporalmente el problema del crash en el juego?
-Como solución temporal, se aplicó un parche al juego que modificaba el valor de la pila en Windows 11 para que coincidiera con el valor en Windows 10, lo que evitaba el crash y permitía que el juego se ejecutara correctamente.
¿Por qué el parche original no resolvía completamente el problema?
-El parche original solo restauraba un único valor relacionado con la función 'leave critical section'. Sin embargo, existían otras rutas hacia esta función que también estaban utilizando valores incorrectos en la pila, lo que causaba un fallo al final del juego.
¿Qué otros juegos también experimentaron problemas similares con Windows 11?
-Otro juego mencionado que experimentó problemas similares fue *GTA San Andreas*, que también presentó un fallo relacionado con la actualización de Windows 11 24H2.
¿Qué alternativa al parche propuesto por el creador existe para solucionar el problema?
-Existe una solución alternativa proporcionada por la comunidad a través de un mod que reemplaza las funciones de reescritura de archivos del juego, lo cual es probablemente una solución más estable y menos propensa a fallos que el parche improvisado.
¿Cuál es la conclusión final del creador sobre el origen del problema?
-El creador concluye que el problema no es un error de Windows, sino un error en el código del juego, que dependía de comportamientos indefinidos y memoria no inicializada. La actualización de Windows 11 simplemente reveló un defecto preexistente en el juego.
Outlines

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。
今すぐアップグレードMindmap

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。
今すぐアップグレードKeywords

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。
今すぐアップグレードHighlights

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。
今すぐアップグレードTranscripts

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。
今すぐアップグレード関連動画をさらに表示

WINDOWS 11 ACABA de SUPERAR AL 10 EN "TODO"

El 70% de los USUARIOS de WINDOWS está EN RIESGO

我們發現了Win11操作總是不跟手的深層原因!| Win11 | Windows11 | Win10 | 微軟 | UI | XAML | 交互 | 界面 | 邊亮

Is The Herta Actually Bait? - Community Comments Answered (Honkai Star Rail)

HISTORIA DEL VOLEIBOL🏐 ¿Quién inventó el Voleibol? 🤔

Solución al error EMP.DLL en Hogwarts Legacy | GTA | Red Dead Redemption 2 ✅✅✅
5.0 / 5 (0 votes)