Skip to content

Repository files navigation

Icono de Regression

Regression

Juegos de Windows en macOS, con perfiles aislados, reparación automática y evidencia real.

Última releasemacOS 14 o posteriorApple SiliconLicencia LGPL 2.1 o posterior

Descargar · Compatibilidad · Documentación · Desarrollo


Regression es una aplicación nativa de barra de menús que ejecuta Steam para Windows mediante su propio motor de compatibilidad. Detecta el juego, prepara únicamente lo que necesita y mantiene cada corrección aislada para no alterar los títulos que ya funcionan.

Una instalación nueva selecciona Regression por defecto. No requiere comprar, instalar ni configurar otro producto de compatibilidad.

Important

Regression está en desarrollo activo y es un proyecto personal y educativo. La compatibilidad se certifica juego a juego mediante render, entrada, opciones y gameplay reales; un proceso que termina correctamente no se marca como compatible por sí solo.

Instalación

curl --proto '=https' --tlsv1.2 -fsSL \
https://github.com/SwonDev/regression/releases/latest/download/install_regression.sh | bash

El instalador es auditable, transaccional y conserva rollback. Antes de sustituir una instalación comprueba la firma, el SHA-256 y el contenido del runtime descargado.

Después de la primera instalación, Regression detecta nuevas releases estables al arrancar y cada seis horas. La actualización automática está activada por defecto: espera a que Steam de Regression quede en reposo, descarga y verifica el instalador oficial, conserva botella y perfiles, reemplaza la app de forma transaccional y la reinicia. Todo el flujo se controla desde Mantenimiento; no hace falta volver a GitHub. Detalles y garantías.

Requisitos

  • Mac con Apple Silicon.
  • macOS 14 o posterior.
  • Rosetta 2; el instalador la prepara si falta.
  • Cuenta gratuita de Apple Developer solo para los perfiles que necesiten GPTK/D3DMetal.
Qué prepara automáticamente
CapaComportamiento
RuntimeWine, DXMT, DXVK, MoltenVK, VC++/UCRT x86 y x64
SteamInstalación oficial de Valve y botella propia recuperable
MediosWindows Media WMA/WMV/ASF cuando el contenido del juego lo exige
EntradaSDL y Switch2Bridge para mandos compatibles
FuentesSource Han Sans y recursos redistribuibles permitidos
Apple GPTKVerificación y reparación desde una copia autorizada del usuario; nunca se redistribuye

Modos disponibles: --check, --verify-release, --yes, --launch y --help.

Diseñado para reparar sin romper

🧭 Autodetección

Identifica ejecutable, motor, contenido multimedia y requisitos antes de lanzar.

🛠️ Autorreparación

Verifica manifiestos y reconstruye componentes permitidos de forma transaccional.

🧩 Aislamiento

Las recetas se activan por juego y proceso. No se convierten en variables globales.

✅ Evidencia real

Render, entrada, opciones y gameplay deben confirmarse visualmente.

↩️ Rollback

Los cambios protegidos generan backup y se revierten si falla una puerta.

🔒 Privacidad local

Perfiles, logs saneados y verificaciones permanecen en el Mac del usuario.

Una utilidad nativa de macOS

Estados visuales de Regression en la barra de menús

Regression vive en la barra de menús, no en el Dock. La R comunica cuatro estados legibles: preparado, trabajando, Steam activo y error. El popover reúne motor, biblioteca, juegos, certificaciones, aprendizaje local y mantenimiento sin convertir la experiencia en un gestor de botellas.

Compatibilidad certificada

La siguiente lista procede del catálogo local versionado y de ejecuciones perfectas confirmadas. Los expedientes públicos explican causa, receta, evidencia y regla de no regresión.

JuegoEstadoExpediente
Cube WorldVerificado perfectoCatálogo integrado
FINAL FANTASY TACTICS — The Ivalice ChroniclesVerificado perfectoCatálogo integrado
Grim DawnVerificado perfectoVer expediente
Clair Obscur: Expedition 33Verificado perfectoVer expediente
DragonSword: AwakeningVerificado perfectoVer expediente
Hell ClockVerificado perfectoVer expediente
Heroes of Hammerwatch IIVerificado perfectoVer expediente
Secrets of GrindeaVerificado perfectoVer expediente
Fields of MistriaVerificado perfectoVer expediente
Titan Quest IIVerificado perfectoVer expediente
Forsaken IsleVerificado perfectoVer expediente
RuneScape: DragonwildsVerificado perfectoVer expediente
TinkerlandsVerificado perfectoVer expediente
Moonlighter 2: The Endless VaultVerificado perfectoVer expediente
Cross BlitzVerificado perfectoVer expediente
Luminary DemoVerificado perfectoVer expediente
Borderlands® 4Verificado perfectoVer expediente

También forman parte de la matriz de regresión Steam/CEF, Palworld y la ruta D3D9. Moonlighter 2 es a la vez un juego certificado y el control Unity obligatorio para cambios comunes de Wine.

Validados con incidencia conocida

  • Dragon's Dogma 2: letterbox 16:9 compartido por la referencia.
  • Rotwood: superficie 1512×870 dentro de la pantalla disponible.

Investigación abierta

  • FANTASY LIFE i: bloqueado por la política oficial de EAC en entornos virtualizados; no se elude ni se presenta como compatible.

Cómo funciona

flowchart LR
A["Juego de Steam"] --> B["Preflight de solo lectura"]
B --> C["Router por ejecutable y contenido"]
C --> D["Runtime general protegido"]
C --> E["Perfil aislado"]
C --> F["Componente autorreparable"]
D --> G["Ejecución observada"]
E --> G
F --> G
G --> H["Verificación visual"]
H --> I["Perfil blindado"]
Loading

El runtime general permanece fijado. Una corrección solo se promociona cuando supera la matriz del juego objetivo, Steam y los perfiles afectados. Las recetas se compilan y versionan; la base de aprendizaje nunca ejecuta comandos almacenados.

Componentes

ÁreaImplementación
AplicaciónSwift 6, SwiftUI, Observation y AppKit donde macOS lo requiere
CompatibilidadWine x86-64 sobre Rosetta 2
D3D11DXMT v0.72 con parche cross-process protegido
D3D9DXVK 1.10.3
D3D12Perfil D3DMetal autorizado por juego cuando corresponde
Presentaciónwinemac, MoltenVK y perfiles OpenGL aislados
DatosSQLite local con huellas de configuración, motor y evidencia
DistribuciónRuntime recompilado para la ruta pública y asset verificado tras extraer

Documentación

Quiero…Documento
Entender el proyectoÍndice de documentación
Conocer el protocolo de compatibilidadInvestigación reproducible
Revisar arquitectura, datos y privacidadPlataforma de compatibilidad
Entender autorreparación y evolución de runtimesEvolución tecnológica
Preparar una prueba seguraPreflight y evidencia
Revisar la app nativaAuditoría nativa
Consultar un juegoExpedientes de juegos

Las reglas operativas para agentes y mantenedores viven en AGENTS.md. El contrato visual está en DESIGN.md.

Desarrollo

# Validación Swift
swift test
swift build -c release
# Estado protegido y botella
bash build/verify-protected-state.sh --include-bottle
# Empaquetado nativo
bash Scripts/package_regression.sh
codesign --verify --deep --strict Regression.app
# Verificación del asset que recibiría un Mac limpio
bash build/verify-release-asset.sh ASSET CHECKSUM VERSION

El verificador extrae el mismo tar que recibirá el usuario, audita dependencias, firmas, redistribuibles y rutas, y ejecuta además un arranque mínimo de Wine. Un asset cuyo wrapper no pueda localizar y cargar su ntdll.so se rechaza antes de poder publicarse o instalarse.

Regression.app/ es el artefacto local de desarrollo y no debe aparecer como instalación. La única app canónica es el bundle físico /Applications/Regression.app; el Wine público se recompila para /Applications/Regression.app/Contents/SharedSupport/wine-root. Mover el bundle sin recompilar rompe sus rutas horneadas. Antes de entregar una build, ejecuta bash build/verify-canonical-installation.sh para comprobar firma, Spotlight y LaunchServices.

Licencia y límites

El código propio se distribuye bajo LGPL-2.1 o posterior. Las atribuciones y límites de redistribución están documentados en NOTICE.md.

  • No se publican credenciales, botellas, saves ni datos locales.
  • No se copian binarios propietarios de productos de comparación.
  • GPTK/D3DMetal pertenece a Apple y solo se usa desde una instalación autorizada del usuario.
  • Regression no está afiliado con Valve, Apple, CodeWeavers ni los estudios de los juegos.


Regression
Compatibilidad medible. Reparaciones aisladas. Cero certificaciones por intuición.

About

Native macOS compatibility layer for Windows Steam games with isolated profiles, self-repair and evidence-backed verification.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages