Vortex es el administrador de mods actual de Nexus Mods. Está diseñado para hacer que modificar tu juego sea lo más simple posible para los nuevos usuarios, y al mismo tiempo proporciona suficiente control para los veteranos más experimentados en la escena del modding.
Nuestro enfoque con Vortex tiene como objetivo realizar tareas complejas, como ordenar el orden de carga o administrar los archivos mod, y automatiza la mayor parte del proceso posible con el objetivo de que puedas lograr un juego modificado estable con el mínimo esfuerzo. Queremos ayudarte a pasar menos tiempo modificando y más tiempo jugando tus juegos.
Compatibilidad con múltiples juegos : con compatibilidad con mods para más de 250 juegos diferentes y contando, Vortex es el administrador de mods más versátil disponible. Esto incluye juegos como Skyrim, Fallout 3, Fallout 4, Fallout: New Vegas, Cyberpunk 2077, Baldur's Gate 3, Starfield, Stardew Valley, Bannerlord, Witcher 3, Elden Ring, The Sims 4, Monster Hunter: World, Oblivion, Palworld. , Blade & Sorcery, Valheim, Hogwarts Legacy, 7 días para morir.
Estrecha integración con Nexus Mods : Vortex está diseñado para interactuar perfectamente con Nexus Mods, lo que le permite encontrar, instalar y reproducir mods fácilmente desde nuestro sitio, conocer nuevos archivos y enterarse de las últimas noticias.
Modificar es fácil : el sistema de clasificación automática incorporado administra su orden de carga y lo ayuda a resolver conflictos de modificación con funciones de administración de complementos potentes pero fáciles de usar.
Perfiles de mods : configura, cambia y administra fácilmente perfiles de mods independientes, lo que te permite usar exactamente la combinación de mods que deseas para una partida en particular.
Interfaz de usuario moderna y fácil de usar : con una interfaz totalmente personalizable, Vortex le permite acceder rápida y fácilmente a herramientas y administrar sus juegos, complementos, descargas y guardar juegos.
Extensiones y complementos : Vortex se lanza bajo una licencia GPL-3, lo que brinda a nuestra comunidad la capacidad de escribir extensiones y marcos que luego pueden interactuar con Vortex, agregando continuamente a su funcionalidad.
Para comenzar, Vortex se puede descargar desde Nexus Mods o desde GitHub. Una vez descargado el instalador, simplemente ejecútelo y siga las instrucciones.
Puede encontrar información adicional sobre Vortex y guías en Vortex Wiki.
Para comenzar el desarrollo en Vortex, utilice este método mayoritariamente automatizado para descargar e instalar todas las dependencias, clonar el repositorio de Vortex desde GitHub y luego compilarlo para que pueda ejecutarse desde el código fuente. La mayoría de las dependencias se instalan mediante Scoop.
Inicie un powershell haciendo clic en el botón Inicio y escribiendo powershell
.
Ejecute Invoke-WebRequest "https://raw.githubusercontent.com/Nexus-Mods/Vortex/master/bootstrap.ps1" -OutFile bootstrap.ps1
para recuperar el script de arranque
De forma predeterminada, este script compilará Vortex en C:buildvortex
. Si desea que esté ubicado en otro lugar, edite el script para cambiar el directorio de compilación antes de ejecutarlo.
Lo más probable es que necesites permitir la ejecución de scripts. Esto se puede configurar usando Set-ExecutionPolicy Unrestricted
pero se requiere un PowerShell con acceso de administrador.
Ejecute el script ( .bootstrap.ps1
)
La siguiente sección tiene como objetivo aclarar y explicar algunas decisiones de desarrollo.
La cadena de herramientas para las versiones de desarrollo y las versiones de lanzamiento es bastante diferente.
En las compilaciones de desarrollo, el compilador mecanografiado (tsc) se usa directamente para transliterar cada archivo .ts
a .js
individualmente, electron ejecuta esos archivos directamente, las dependencias se cargan desde node_modules
.
En las versiones de lanzamiento utilizamos webpack y ts-loader para convertir todos los archivos .ts
y las dependencias en dos archivos javascript (uno para el proceso principal/navegador, otro para el renderizador). electron-builder
se utiliza para agrupar código y activos, generar un instalador nsis, integrarlo en un instalador exe y firmarlos (y todos los ejecutables y dlls que enviamos). Hay varios archivos de configuración del generador de electrones para múltiples variantes, solo se usan "oneclick" y "advanced" para las versiones de lanzamiento, los demás pueden estar en diferentes estados de deterioro (aunque ci también debería funcionar)
Como resultado, es más fácil trabajar con las compilaciones de desarrollo y la compilación es mucho más rápida, pero el tiempo de ejecución es más lento.
Además, utilizamos una estructura de dos paquetes, lo que significa que el archivo /package.json
se utiliza para todo el desarrollo y el entorno de compilación para las versiones (por ejemplo, este archivo siempre controla la versión electrónica que se utiliza/agrupa) mientras que /app/package.json
decide configuraciones (nombre, versión, dependencias) solo para las versiones de lanzamiento. Usamos un script personalizado ( checkPackages.js
) para garantizar que las dependencias para el lanzamiento sean un subconjunto de las dependencias del env
compilación y que usen la misma versión para evitar problemas que no ocurrieron durante las pruebas debido a diferentes dependencias.
Por otro lado, las extensiones empaquetadas se crean de la misma manera entre el desarrollo y el lanzamiento: siempre se crean con el paquete web y cada una tiene su propia configuración de compilación, con la excepción de las extensiones de juegos simples que ya son archivos js únicos, que simplemente se copian.
Este código base todavía usa hilo 1 (clásico). Cualquier intento de utilizar hilo 2 o 3 terminó con errores sin sentido (faltan dependencias que están claramente enumeradas, instalaciones sucesivas que conducen a paquetes faltantes) sin una forma razonable de investigar el motivo. npm y pnpm son bastante lentos en comparación. Realmente no utilizamos ninguna característica específica del hilo (¿espacios de trabajo?), por lo que cambiar no debería ser demasiado difícil, pero por ahora el hilo "clásico" funciona.
Al momento de escribir este artículo, electron no admite módulos ES, por lo que todo se transpila a commonjs. Esto tiene la consecuencia de que algunas bibliotecas actualizadas que sólo soportan esm no se pueden utilizar (por ejemplo, nuevas versiones de d3). También significa que las importaciones asincrónicas ( const foo = await import('bar')
) son en realidad sincrónicas en tiempo de ejecución. Sin embargo, realmente no importa, ya que de todos modos todo se integra en un solo archivo en las versiones de lanzamiento y la división del código no es realmente necesaria.
Informe los problemas en GitHub e incluya al menos la siguiente información:
La versión exacta de Vortex que estás usando
Tu sistema operativo
Qué estabas haciendo cuando ocurrió el error
¿Cuál es exactamente el error (bloqueo? ¿mensajes de error? ¿comportamiento inesperado?)
Si recibe algún mensaje de error, incluya el mensaje de error completo y exacto. No parafrasee ni omita información que le parezca críptica o sin importancia.
El archivo de registro (ver más abajo)
Idealmente también el estado de la aplicación (ver más abajo)
Todos los datos que genera el cliente (incluidas configuraciones y registros) se almacenan en:
Tipo de construcción | Ubicación | Camino común |
---|---|---|
Liberar | %AppData%Vortex | C:Users |
desarrollador | %AppData%vortex_devel | C:Users |
Si necesita informar un error, las siguientes rutas dentro de ese directorio pueden resultar útiles además del mensaje de error que se muestra en la pantalla:
vortex.log
(los registros se rotan a un tamaño determinado, este es el último)
state
excepto global_account (ese contiene claves y contraseñas, por lo que es información confidencial)
(si el error pertenece a un juego específico)
TODO: Pasos manuales con dependencias y versiones.
Descargar Vortex de Nexus Mods
GitHub para código fuente, problemas y solicitudes de extracción.
Vortex Forum o Discord para apoyo y debates con la comunidad y el equipo.
Vortex Wiki para base de conocimientos, artículos y solución de problemas
Estructura del proyecto para obtener una descripción general de cómo está organizada la base del código.
La mayor parte del código de Vortex es de código abierto. Estamos comprometidos con un proceso de desarrollo transparente y apreciamos mucho cualquier contribución. Ya sea que nos esté ayudando a corregir errores, proponiendo nuevas funciones, mejorando nuestra documentación o haciendo correr la voz, nos encantaría tenerlo como parte de la comunidad Vortex.
Informe de error: si ve un mensaje de error o encuentra un problema al usar Amplication, cree un informe de error.
Solicitud de función: si tiene una idea o si falta una capacidad que haría que el desarrollo sea más fácil y sólido, envíe una solicitud de función.
Extensión de revisión: si está creando una extensión de juego y necesita que la revisemos, envíe una solicitud de extensión de revisión.
Este proyecto tiene la licencia GPL-3.0.