Giter Club home page Giter Club logo

vortex's Introduction

Vortex Mod Manager

Last Commit Build Status Release Pre-release Contributors Forks Stars Watchers License

Discord X (formally Twitter) YouTube Instagram Reddit Facebook

Introduction

Vortex is the current mod manager from Nexus Mods. It is designed to make modding your game as simple as possible for new users, while still providing enough control for more experienced veterans of the modding scene.

Our approach with Vortex aims to take complex tasks such as sorting your load order or managing your mod files and automates as much of the process as possible with the goal of having you achieve a stable modded game with minimal effort. We want to help you spend less time modding and more time playing your games.

Features

  • Multi-game Support - with mod support for over 250 different games and counting, Vortex is the most versatile mod manager available. This includes games such as 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 Days to Die.

  • Close integration with Nexus Mods - Vortex is designed to seamlessly interact with Nexus Mods allowing you to easily find, install, and play mods from our site, learn about new files and catch the latest news.

  • Modding made easy - The built-in auto-sorting system manages your load order and helps you to resolve mod conflicts with powerful, yet easy to use plugin management features.

  • Mod Profiles - Easily set up, switch between, and manage independent mod profiles enabling you to use exactly the combination of mods that you want for a particular playthrough.

  • Modern, Easy-to-use UI - Featuring a fully customisable interface, Vortex allows you to quickly and easily access tools and manage your games, plugins, downloads and save games.

  • Extensions and Plugins - Vortex is released under a GPL-3 License giving our community the ability to write extensions and frameworks which can then interact with Vortex, continually adding to its functionality.

Getting Started

To get started, Vortex can be downloaded from Nexus Mods or from GitHub. After the installer has been downloaded, just run it and follow the instructions.

Additional information on Vortex and guides can be found in the Vortex Wiki.

Development

To start development on Vortex, please use this mostly automated method to download and install all dependencies, clone the Vortex repo from GitHub and then build it so it can be run from source. Most dependencies are installed using Scoop.

  • Start a powershell by clicking the Start button and typing powershell.
  • Run Invoke-WebRequest "https://raw.githubusercontent.com/Nexus-Mods/Vortex/master/bootstrap.ps1" -OutFile bootstrap.ps1 to fetch the bootstrap script
  • By default, this script will build Vortex in C:\build\vortex. If you wish for it to be located somewhere else, edit the script to change the build directory before running it.
  • You will more than likely need to allow scripts to be run. This can be set using Set-ExecutionPolicy Unrestricted but a powershell with admin access is required.
  • Run the script (.\bootstrap.ps1)

Decisions

The following section aims to clarify and explain a few development decisions.

Development vs Release builds

The toolchain for development builds and release builds is quite different.

In dev builds, the typescript compiler (tsc) is used directly to transliterate each .ts file to .js individually, electron runs those files directly, dependencies are loaded from node_modules.

In release builds we use webpack and ts-loader to bake all .ts files and dependencies into two javascript files (one for the main/browser process, one for the renderer). electron-builder is used to bundle code & assets, generate an nsis installer, build it into an exe installer and sign them (and all the executables and dlls we ship). There are mulitple electron-builder configuration files for multiple variants, only "oneclick" and "advanced" are used for release builds, the others may be in different states of disrepair (though ci should work as well)

As a result, dev builds are easier to work with and building is much quicker but runtime is slower.

Further, we use a two-package structure, meaning the /package.json file is used for all development and the build environment for releases (e.g. this file always controls the electron version being used/bundled) whereas /app/package.json decides settings (name, version, dependencies) for the release builds only. We use a custom script (checkPackages.js) to ensure that the dependencies for release are a subset of the build env dependencies and that they use the same version to avoid problems that didn't occur during testing because of differing dependencies.

Bundled extensions on the other hand are built the same between dev and release: they are always built with webpack and each have their own build setup - with the exception of simple game extensions which are already single js files, those simply get copied over.

Yarn 1 vs Yarn 3 vs NPM vs PNPM

This codebase still use yarn 1 (classic). Any attempt to use yarn 2 or 3 ended up with nonsensical errors (missing dependencies that are clearly listed, successive installs leading to missing packages) with no reasonable way to investigate why. npm and pnpm are quite slow in comparison. We don't really use any yarn-specific features (workspaces?) so switching shouldn't be too difficult but for now yarn "classic" works.

ESM vs CommonJS

At the time of writing, electron doesn't support ES modules so everything is transpiled to commonjs. This has the consequence that some updated libraries supporting only esm can't be used (e.g. new versions of d3). It also means that asynchronous imports (const foo = await import('bar')) are actually synchronous at runtime. Doesn't really matter though since everything is baked into a single file on release builds anyway and code splitting isn't really needed.

Reporting Bugs

Please report issues on GitHub and include at the very least the following information:

  • The exact version of Vortex you're using
  • Your OS
  • What you were doing when the bug happened
  • What exactly the bug is (crash? error messages? unexpected behaviour?)
  • If you get any error message, include the full and exact error message. Do not paraphrase, do not leave out information that looks cryptic or unimportant to you
  • The log file (see below)
  • Ideally also the application state (see below)

All data the client generates (including settings and logs) are stored at:

Build Type Location Common Path
Release %AppData%\Vortex C:\Users\<USERNAME>\AppData\Roaming\Vortex
Dev %AppData%\vortex_devel C:\Users\<USERNAME>\AppData\Roaming\vortex_devel

If you need to report a bug, the following paths inside that directory may be useful in addition to the error message displayed on screen:

  • \vortex.log (logs are rotated at a certain size, this is the latest one)
  • \state\ except global_account (that one contains keys and passwords so sensitive information)
  • \<game>\state\ (if the bug pertains to a specific game)

Troubleshooting

TODO: Manual steps with dependencies and versions

Resources

Contributing

The majority of Vortex code is open-source. We are committed to a transparent development process and highly appreciate any contributions. Whether you are helping us fix bugs, proposing new features, improving our documentation or spreading the word - we would love to have you as a part of the Vortex community.

  • Bug Report: If you see an error message or encounter an issue while using Amplication, please create a bug report.

  • Feature Request: If you have an idea or if there is a capability that is missing and would make development easier and more robust, please submit a feature request.

  • Review Extension: If you're creating a game extension and need us to review it, please submit a review extension request.

License

A this project is licensed under the GPL-3.0 license.

vortex's People

Contributors

adrianraer avatar agc93 avatar alexkoala avatar aodkitje avatar basxto avatar dependabot[bot] avatar duskdweller avatar erri120 avatar idcs avatar insomnious avatar lostdragonist avatar luco81 avatar mxswat avatar nicbomb avatar oabdellatif avatar peterkwkwan avatar pickysaurus avatar rummskartoffel avatar tanninone avatar themagickoala avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vortex's Issues

0.5.2 - Plugins issue

I'm getting 2 issues with the plugin management:

1> The program reports that the plugins.txt is set to read-only and asks whether I want to fix this, if I click "FIX" nothing really happens since that write protected pop-up keeps appearing.

2> The base game plugins (including DLCs) are reported as missing both in the welcome screen and when clicking on specific plugins in the plugins tab.

plugins

The console reports:

error: failed to write plugin list errno=-4048, code=EPERM, syscall=open, path=C:\Users\fabio\AppData\Local\Fallout4\plugins.txt, isOperational=true, errno=-4048, code=EPERM, syscall=open, path=C:\Users\fabio\AppData\Local\Fallout4\plugins.txt, constructor=function (...args) {

      if (!sender.isDestroyed() && webContentsId === sender.getId()) {

        sender.send('ELECTRON_RENDERER_CALLBACK', meta.id, valueToMeta(sender, args))

      } else {

        throw new Error(`Attempting to call a function in a renderer window that has been closed or released. Function provided here: ${meta.location}.`)

      }

    }, constructor$=function (...args) {

      if (!sender.isDestroyed() && webContentsId === sender.getId()) {

        sender.send('ELECTRON_RENDERER_CALLBACK', meta.id, valueToMeta(sender, args))

      } else {

        throw new Error(`Attempting to call a function in a renderer window that has been closed or released. Function provided here: ${meta.location}.`)

      }

    }

Crash: Cannot read property 'props' of undefined

Application Crash

System

Platform win32
Architecture x64
Application Version 0.0.1

Message

Cannot read property 'props' of undefined

Details

TypeError: Cannot read property 'props' of undefined
    at AddGameButton (C:\Vortex\Vortex-Private\src\extensions\gamemode_management\views\GamePicker.tsx:99:21)
    at C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactCompositeComponent.js:306:16
    at measureLifeCyclePerf (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactCompositeComponent.js:75:12)
    at ReactCompositeComponentWrapper._constructComponentWithoutOwner (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactCompositeComponent.js:305:14)
    at ReactCompositeComponentWrapper._constructComponent (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactCompositeComponent.js:280:21)
    at ReactCompositeComponentWrapper.mountComponent (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactCompositeComponent.js:188:21)
    at Object.mountComponent (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactReconciler.js:46:35)
    at ReactCompositeComponentWrapper.performInitialMount (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactCompositeComponent.js:371:34)
    at ReactCompositeComponentWrapper.mountComponent (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactCompositeComponent.js:258:21)
    at Object.mountComponent (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactReconciler.js:46:35)
    at ReactDOMComponent.mountChildren (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactMultiChild.js:238:44)
    at ReactDOMComponent._createInitialChildren (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactDOMComponent.js:697:32)
    at ReactDOMComponent.mountComponent (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactDOMComponent.js:516:12)
    at Object.mountComponent (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactReconciler.js:46:35)
    at ReactCompositeComponentWrapper.performInitialMount (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactCompositeComponent.js:371:34)
    at ReactCompositeComponentWrapper.mountComponent (C:\Vortex\Vortex-Private\node_modules\react-dom\lib\ReactCompositeComponent.js:258:21)

Steps to reproduce

If you click on Mods, then go back to Games. It doesn't matter if the Advanced option is checked or not.

Error: Installation failed

Application Error

System

Platform win32
Architecture x64
Application Version 0.6.1

Message

Installation failed

Details

The installer SMIM 2-04-8655-2-04.7z (md5: b633054d9c166b3d08491fb0900a2331) failed: stdout maxBuffer exceeded
Error: stdout maxBuffer exceeded
    at Socket.onChildStdout (child_process.js:276:14)
    at emitOne (events.js:101:20)
    at Socket.emit (events.js:188:7)
    at readableAddChunk (_stream_readable.js:176:18)
    at Socket.Readable.push (_stream_readable.js:134:10)
    at Pipe.onread (net.js:551:20)

Steps to reproduce

Trying to install SMIM for Skyrim

0.5.2 Build - Stuck (XML or unscripted) Installer

Trying to add this mod (2.2 version with the installer):
http://www.nexusmods.com/fallout4/mods/6994/?tab=2&navtag=http%3A%2F%2Fwww.nexusmods.com%2Ffallout4%2Fajax%2Fmodfiles%2F%3Fid%3D6994&pUp=1

The Installer gets stuck (it never starts) the blue pop-up icon keeps spinning on and on and nothing happens
stuck xml install

As of now I can replicate this behaviour only with this mod, and only on the 0.5.2 package build, trying to install it with the dev build works as intended.

Crash: Cannot read property 'sort' of undefined

Please paste the cont### Application Crash

System

Platform win32
Architecture x64
Application Version 0.5.3

Message

Cannot read property 'sort' of undefined

Details

TypeError: Cannot read property 'sort' of undefined
    at Object.render (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\extensions\firststeps_dashlet\Dashlet.tsx:107:76)
    at React.createElement.visibleSteps.map (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\extensions\firststeps_dashlet\Dashlet.tsx:160:17)
    at Array.map (native)
    at Dashlet.render (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\extensions\firststeps_dashlet\Dashlet.tsx:158:21)
    at C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:796:21
    at measureLifeCyclePerf (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:75:12)
    at ReactCompositeComponentWrapper._renderValidatedComponentWithoutOwnerOrContext (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:795:25)
    at ReactCompositeComponentWrapper._renderValidatedComponent (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:822:32)
    at ReactCompositeComponentWrapper.performInitialMount (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:362:30)
    at ReactCompositeComponentWrapper.mountComponent (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:258:21)
    at Object.mountComponent (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactReconciler.js:46:35)
    at ReactCompositeComponentWrapper.performInitialMount (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:371:34)
    at ReactCompositeComponentWrapper.mountComponent (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:258:21)
    at Object.mountComponent (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactReconciler.js:46:35)
    at ReactCompositeComponentWrapper._updateRenderedComponent (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:765:40)
    at ReactCompositeComponentWrapper._performComponentUpdate (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:724:10)

Steps to reproduce

Installed on yet another machine and still not starting... Hmmmm...

Crash: invalid picker layout undefined

Application Crash

System

Platform win32
Architecture x64
Application Version 0.0.1

Message

invalid picker layout undefined

Details

Error: invalid picker layout undefined
    at GamePicker.renderGames (D:\NMM2\src\extensions\gamemode_management\views\GamePicker.tsx:306:22)
    at GamePicker.render (D:\NMM2\src\extensions\gamemode_management\views\GamePicker.tsx:213:23)
    at D:\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:796:21
    at measureLifeCyclePerf (D:\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:75:12)
    at ReactCompositeComponentWrapper._renderValidatedComponentWithoutOwnerOrContext (D:\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:795:25)
    at ReactCompositeComponentWrapper._renderValidatedComponent (D:\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:822:32)
    at ReactCompositeComponentWrapper.performInitialMount (D:\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:362:30)
    at ReactCompositeComponentWrapper.mountComponent (D:\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:258:21)
    at Object.mountComponent (D:\NMM2\node_modules\react-dom\lib\ReactReconciler.js:46:35)
    at ReactCompositeComponentWrapper.performInitialMount (D:\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:371:34)
    at ReactCompositeComponentWrapper.mountComponent (D:\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:258:21)
    at Object.mountComponent (D:\NMM2\node_modules\react-dom\lib\ReactReconciler.js:46:35)
    at ReactCompositeComponentWrapper.performInitialMount (D:\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:371:34)
    at ReactCompositeComponentWrapper.mountComponent (D:\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:258:21)
    at Object.mountComponent (D:\NMM2\node_modules\react-dom\lib\ReactReconciler.js:46:35)
    at ReactCompositeComponentWrapper.performInitialMount (D:\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:371:34)

Steps to reproduce

Just launched the manager and clicked on the Games tab.

Settings -> Mods: Unable to change folders

I tried to change my download path from: C:\Users\fabio\AppData\Roaming\Vortex\downloads
to a new path on my Games' HD, and I got this error when trying to apply the changes:

ENOENT: no such file or directory, stat 'C:\Users\fabio\AppData\Roaming\Vortex\downloads'
Error: ENOENT: no such file or directory, stat 'C:\Users\fabio\AppData\Roaming\Vortex\downloads'

"local-gamesettings" logs errors when managing unsupported games

The "local-gamesettings" extension seems to be completely oblivious to the fact the managed game may not be supported (even though it has a gameSupport structure):

Thu, 20 Apr 2017 16:49:49 GMT - error: state change handler failed message=Cannot read property 'mygamesPath' of undefined, stack=TypeError: Cannot read property 'mygamesPath' of undefined
at Object.mygamesPath (C:\Users\Tannin\AppData\Local\Programs\nmm2\resources\app.asar\bundledPlugins\local-gamesettings\webpack:\out\util\gameSupport.js:32:1)
at checkGlobalFiles (C:\Users\Tannin\AppData\Local\Programs\nmm2\resources\app.asar\bundledPlugins\local-gamesettings\webpack:\out\index.js:24:1)
at context.api.onStateChange (C:\Users\Tannin\AppData\Local\Programs\nmm2\resources\app.asar\bundledPlugins\local-gamesettings\webpack:\out\index.js:64:1)
at mReduxWatcher.watch (C:\Users\Tannin\AppData\Local\Programs\nmm2\resources\src\util\ExtensionManager.ts:456:38)
at C:\source\index.js:22:36
at Array.forEach (native)
at C:\source\index.js:22:16
at Array.forEach (native)
at C:\source\index.js:12:27
at C:\Users\Tannin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\redux-electron-store\lib\getSubscribeFuncs.js:45:16
at Array.forEach (native)
at Object.callListeners (C:\Users\Tannin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\redux-electron-store\lib\getSubscribeFuncs.js:44:17)
at store.dispatch (C:\Users\Tannin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\redux-electron-store\lib\electronRendererEnhancer.js:169:24)
at Object.dispatch (C:\Users\Tannin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\redux-thunk\lib\index.js:14:16)
at refreshProfile.then (C:\Users\Tannin\AppData\Local\Programs\nmm2\resources\src\extensions\profile_management\index.ts:198:23)
at tryCatcher (C:\Users\Tannin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\bluebird\js\release\util.js:16:23)

Bonus-Bug: It produces error messages in the log file while not notifying the user that anything is wrong.

Error: failed to sync from profile

Application Error

System

Platform win32
Architecture x64
Application Version 0.6.0

Message

failed to sync from profile

Details

cleanup is not a function
TypeError: cleanup is not a function
    at Promise.then.then.then.catch.then.catch (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\util\util.ts:115:5)
    at tryCatcher (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\util.js:16:23)
    at Promise._settlePromiseFromHandler (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\promise.js:512:31)
    at Promise._settlePromise (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\promise.js:569:18)
    at Promise._settlePromise0 (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\promise.js:614:10)
    at Promise._settlePromises (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\promise.js:689:18)
    at Async._drainQueue (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\async.js:133:16)
    at Async._drainQueues (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\async.js:143:10)
    at Async.drainQueues (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\async.js:17:14)

Steps to reproduce

Application Error

System

Platform win32
Architecture x64
Application Version 0.6.0

Message

failed to sync from profile

Details

cleanup is not a function
TypeError: cleanup is not a function
    at Promise.then.then.then.catch.then.catch (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\util\util.ts:115:5)
    at tryCatcher (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\util.js:16:23)
    at Promise._settlePromiseFromHandler (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\promise.js:512:31)
    at Promise._settlePromise (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\promise.js:569:18)
    at Promise._settlePromise0 (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\promise.js:614:10)
    at Promise._settlePromises (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\promise.js:689:18)
    at Async._drainQueue (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\async.js:133:16)
    at Async._drainQueues (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\async.js:143:10)
    at Async.drainQueues (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\async.js:17:14)

Steps to reproduce

Clicked to Manage the Skyrim Special Edition,

Autosorting not applied if the plugins.txt file is set to read-only

NMM used to set the plugins.txt file as read-only to prevent earlier Fallout 4 releases from overwriting it at launch (not really sure it's still required).
This means that if someone is coming from a NMM mod install he won't be able to see the plugin edits reflected on the real file.
a - should the manager handle the read-only like the current NMM does: removing the flag if present, making the edits, restoring the flag.
b - or should we ask at launch (program launch, on game selection) whether the user wants the new program to definitely remove that read-only flag.

Crash: The specified module could not be found.\\?\C:\Users\Paul Buttle\AppData\Local\Programs\nmm2\resources\app\node_modules\electron-edge\build\Release\edge_nativeclr.node

Please paste the content of your clipboard here and describe what you did when ### Application Crash

System

Platform win32
Architecture x64
Application Version 0.5.3

Message

The specified module could not be found.
\?\C:\Users\Paul Buttle\AppData\Local\Programs\nmm2\resources\app\node_modules\electron-edge\build\Release\edge_nativeclr.node

Details

Error: The specified module could not be found.
\\?\C:\Users\Paul Buttle\AppData\Local\Programs\nmm2\resources\app\node_modules\electron-edge\build\Release\edge_nativeclr.node
    at Error (native)
    at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:173:20)
    at Object.Module._extensions..node (module.js:583:18)
    at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:173:20)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12)
    at Function.Module._load (module.js:424:3)
    at Module.require (module.js:483:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (C:\Users\Paul Buttle\AppData\Local\Programs\nmm2\resources\app\node_modules\electron-edge\lib\edge.js:50:10)
    at Module._compile (module.js:556:32)
    at Object.Module._extensions..js (module.js:565:10)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12)
    at Function.Module._load (module.js:424:3)
    at Module.require (module.js:483:17)

Steps to reproduce

Trying to install to VM...

Error: Failed to initialize LOOT

Application Error

System

Platform win32
Architecture x64
Application Version 0.6.0

Message

Failed to initialize LOOT

Details

Given game path "C:\Users\paulb\AppData\Local\Skyrim Special Edition" does not resolve to a valid directory.
Error: Given game path "C:\Users\paulb\AppData\Local\Skyrim Special Edition" does not resolve to a valid directory.
    at LootInterface.init (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\bundledPlugins\gamebryo-plugin-management\webpack:\out\autosort.js:94:1)
    at EventEmitter.LootInterface.context.api.events.on (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\bundledPlugins\gamebryo-plugin-management\webpack:\out\autosort.js:38:1)
    at emitOne (events.js:101:20)
    at EventEmitter.emit (events.js:188:7)
    at GameModeManagerImpl [as mOnGameModeActivated] (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\extensions\gamemode_management\index.ts:47:16)
    at GameModeManager.setGameMode (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\extensions\gamemode_management\GameModeManager.ts:84:10)
    at gameModeManager.setupGameMode.then (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\extensions\gamemode_management\index.ts:80:27)
    at tryCatcher (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\util.js:16:23)
    at Promise._settlePromiseFromHandler (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\promise.js:512:31)
    at Promise._settlePromise (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\promise.js:569:18)
    at Promise._settlePromiseCtx (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\promise.js:606:10)
    at Async._drainQueue (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\async.js:138:12)
    at Async._drainQueues (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\async.js:143:10)
    at Async.drainQueues (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\node_modules\bluebird\js\release\async.js:17:14)

Steps to reproduce

Clicked to manage the game Skyrim Special Edition

Crash: Failed to change game mode

Application Crash

System

Platform win32
Architecture x64
Application Version 0.4.2

Message

Failed to change game mode

Details

[Window Title]
An unrecoverable error occured

[Main Instruction]
Failed to change game mode

[Content]
TypeError: filename must be a string or Buffer
    at TypeError (native)
    at FSWatcher.start (fs.js:1433:26)
    at Object.fs.watch (fs.js:1466:11)
    at EventEmitter.context.api.events.on (C:\Users\Luco\AppData\Local\nmm2\app-0.4.2\resources\app\bundledPlugins\gamebryo-plugin-management\webpack:\out\index.js:116:1)
    at emitOne (events.js:101:20)
    at EventEmitter.emit (events.js:188:7)
    at GameModeManagerImpl [as mOnGameModeActivated] (C:\Users\Luco\AppData\Local\nmm2\app-0.4.2\resources\src\extensions\gamemode_management\index.ts:41:18)
    at Promise.then.then (C:\Users\Luco\AppData\Local\nmm2\app-0.4.2\resources\src\extensions\gamemode_management\GameModeManager.ts:104:16)
    at tryCatcher (C:\Users\Luco\AppData\Local\nmm2\app-0.4.2\resources\app\node_modules\bluebird\js\release\util.js:16:23)
    at Promise._settlePromiseFromHandler (C:\Users\Luco\AppData\Local\nmm2\app-0.4.2\resources\app\node_modules\bluebird\js\release\promise.js:510:31)
    at Promise._settlePromise (C:\Users\Luco\AppData\Local\nmm2\app-0.4.2\resources\app\node_modules\bluebird\js\release\promise.js:567:18)
    at Promise._settlePromise0 (C:\Users\Luco\AppData\Local\nmm2\app-0.4.2\resources\app\node_modules\bluebird\js\release\promise.js:612:10)
    at Promise._settlePromises (C:\Users\Luco\AppData\Local\nmm2\app-0.4.2\resources\app\node_modules\bluebird\js\release\promise.js:691:18)
    at Promise._fulfill (C:\Users\Luco\AppData\Local\nmm2\app-0.4.2\resources\app\node_modules\bluebird\js\release\promise.js:636:18)
    at Promise._resolveCallback (C:\Users\Luco\AppData\Local\nmm2\app-0.4.2\resources\app\node_modules\bluebird\js\release\promise.js:431:57)
    at Promise._settlePromiseFromHandler (C:\Users\Luco\AppData\Local\nmm2\app-0.4.2\resources\app\node_modules\bluebird\js\release\promise.js:522:17)

Description

Crashed selecting a discovered game.

Game scan won't start

When clicking on the lens icon nothing happens and this is what I get in debug:

info: searching for games & tools searchPaths=[E:\Games, undefined]
info: searching for games & tools searchPaths=[E:\Games, undefined]
warn: walk failed msg=Cannot read property 'progress' of undefined

Could be caused by a broken state file.

Savegame - Plugin Restore Issue

I noticed the function to restore the plugin list as it was when using the current savegame just blocks when a plugin is missing, I find this behaviour broken:
9 out of 10 a plugin is missing cause it changed name, a patch was incorporated into a new version, you just no longer want that plugin adding a palm tree in Sanctuary.

I feel like this functionality should just warn the user about the issue and then ask whether he wants to go on or not.

Error: failed to initialize localization

Please paste the content of your clipboard here### Application Error

System

Platform win32
Architecture x64
Application Version 0.6.0

Message

failed to initialize localization

Details

0:	Error: ENOENT: no such file or directory, open 'C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\locales\en-GB\common.json'
1:	Error: ENOENT: no such file or directory, open 'C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app\locales\en\common.json'

Steps to reproduce

Opened up the application and this error popped up telling me that is failed to initialise localisation.

Crash: Cannot read property 'A Quality World Map - Classic with All Roads-5804-8-4CA' of undefined (hash: c7e8646e838a718fc40d1f3b3090cdca)

Application Crash

System

Platform win32
Architecture x64
Application Version 0.7.0

Message

Cannot read property 'A Quality World Map - Classic with All Roads-5804-8-4CA' of undefined

Details

TypeError: Cannot read property 'A Quality World Map - Classic with All Roads-5804-8-4CA' of undefined
    at Object.keys.forEach.modId (C:\Users\Robin\AppData\Local\Programs\vortex\resources\src\extensions\nexus_integration\index.tsx:570:42)
    at Array.forEach (native)
    at Debouncer_1.default.newModTable [as mFunc] (C:\Users\Robin\AppData\Local\Programs\vortex\resources\src\extensions\nexus_integration\index.tsx:569:44)
    at Debouncer.run (C:\Users\Robin\AppData\Local\Programs\vortex\resources\src\util\Debouncer.ts:123:46)
    at mTimer.setTimeout (C:\Users\Robin\AppData\Local\Programs\vortex\resources\src\util\Debouncer.ts:150:41)

Steps to reproduce

Tried to install A Quality World Map - http://www.nexusmods.com/skyrimspecialedition/mods/5804/?tab=2&navtag=http%3A%2F%2Fwww.nexusmods.com%2Fskyrimspecialedition%2Fajax%2Fmodfiles%2F%3Fid%3D5804&pUp=1

First file.

Error: Installation failed (hash: fac5f4d9d430e77699ec114d346c9bb2)

Application Error

System

Platform win32
Architecture x64
Application Version 0.7.0

Message

Installation failed

Details

The installer FNIS Behavior SE V7_0 Beta-3038-7-0-Beta.zip (md5: b3e2db23f6cca2e355a16bda3050a91f) failed: ENOENT: no such file or directory, rename 'E:\Games\Vortex\skyrimse\mods\FNIS Behavior SE V7_0 Beta-3038-7-0-Beta\FNIS BEHAVIOR SE 7.0\DATA\TOOLS\GENERATEFNIS_FOR_USERS\LANGUAGES\ESPA�OL.TXT' -> 'E:\Games\Vortex\skyrimse\mods\FNIS Behavior SE V7_0 Beta-3038-7-0-Beta\tools\GenerateFNIS_for_Users\languages\Espa�ol.txt'
Error: ENOENT: no such file or directory, rename 'E:\Games\Vortex\skyrimse\mods\FNIS Behavior SE V7_0 Beta-3038-7-0-Beta\FNIS BEHAVIOR SE 7.0\DATA\TOOLS\GENERATEFNIS_FOR_USERS\LANGUAGES\ESPA�OL.TXT' -> 'E:\Games\Vortex\skyrimse\mods\FNIS Behavior SE V7_0 Beta-3038-7-0-Beta\tools\GenerateFNIS_for_Users\languages\Espa�ol.txt'

Steps to reproduce

Trying to install this mod: http://www.nexusmods.com/skyrimspecialedition/mods/3038/

Installation fails because of the special character in the filenames, the weird "n" (español)

Crash: Cannot read property 'Dynamic Dungeon Loot (DDL) - Random Loot System - Special Edition-10308-v1-0-1' of undefined (hash: df08a284b1aac6d19ffced4e64bb26c6)

I downloaded and installed this mod: http://www.nexusmods.com/skyrimspecialedition/mods/10308/?
When the install completed (reporting as succesfully completed), I got this crash report.
I then checked the game's folder and the mod was not activated.
I reopened the program and the mod was still reported as enabled, I disabled it, re-enabled it, and it finally worked.

Application Crash

System

Platform win32
Architecture x64
Application Version 0.7.0

Message

Cannot read property 'Dynamic Dungeon Loot (DDL) - Random Loot System - Special Edition-10308-v1-0-1' of undefined

Details

TypeError: Cannot read property 'Dynamic Dungeon Loot (DDL) - Random Loot System - Special Edition-10308-v1-0-1' of undefined
    at Object.keys.forEach.modId (C:\Users\fabio\AppData\Local\Programs\vortex\resources\src\extensions\nexus_integration\index.tsx:570:42)
    at Array.forEach (native)
    at Debouncer_1.default.newModTable [as mFunc] (C:\Users\fabio\AppData\Local\Programs\vortex\resources\src\extensions\nexus_integration\index.tsx:569:44)
    at Debouncer.run (C:\Users\fabio\AppData\Local\Programs\vortex\resources\src\util\Debouncer.ts:123:46)
    at mTimer.setTimeout (C:\Users\fabio\AppData\Local\Programs\vortex\resources\src\util\Debouncer.ts:150:41)

Steps to reproduce

Stuck when removing mods

Automatic mod deploying is disabled in the settings.
When removing an installed mod using the X symbol on the mod's row, the system gets stuck "Deploying..." .

Setting -> Interface minor issue

When opening the Settings -> Interface element for the first time, and if you don't change it, "Font Size" will report NaN as its value.

Crash: Minified React error #119; visit http://facebook.github.io/react/docs/error-decoder.html?invariant=119 for the full message or use the non-minified dev environment for full errors and additional helpful warnings.

Application Crash

System

Platform win32
Architecture x64
Application Version 0.6.1

Message

Minified React error #119; visit http://facebook.github.io/react/docs/error-decoder.html?invariant=119 for the full message or use the non-minified dev environment for full errors and additional helpful warnings.

Details

Invariant Violation: Minified React error #119; visit http://facebook.github.io/react/docs/error-decoder.html?invariant=119 for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
    at reactProdInvariant (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\reactProdInvariant.js:31:15)
    at Object.addComponentAsRefTo (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactOwner.js:68:347)
    at attachRef (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactRef.js:23:16)
    at Object.ReactRef.attachRefs (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactRef.js:42:5)
    at ReactCompositeComponentWrapper.attachRefs (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactReconciler.js:23:12)
    at CallbackQueue.notifyAll (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\CallbackQueue.js:76:22)
    at ReactReconcileTransaction.close (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactReconcileTransaction.js:80:26)
    at ReactReconcileTransaction.closeAll (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\Transaction.js:206:25)
    at ReactReconcileTransaction.perform (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\Transaction.js:153:16)
    at ReactUpdatesFlushTransaction.perform (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\Transaction.js:140:20)
    at ReactUpdatesFlushTransaction.perform (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactUpdates.js:89:32)
    at Object.flushBatchedUpdates (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactUpdates.js:172:19)
    at ReactDefaultBatchingStrategyTransaction.closeAll (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\Transaction.js:206:25)
    at ReactDefaultBatchingStrategyTransaction.perform (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\Transaction.js:153:16)
    at Object.batchedUpdates (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactDefaultBatchingStrategy.js:62:26)
    at Object.batchedUpdates (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactUpdates.js:97:27)

Steps to reproduce

Trying to change games using the drop down in the top-left

Crash: Cannot convert undefined or null to object

This happens any time I try and add a mod.

Application Crash

System

Platform win32
Architecture x64
Application Version 0.6.0

Message

Cannot convert undefined or null to object

Details

TypeError: Cannot convert undefined or null to object
    at Function.keys (<anonymous>)
    at Object.SET_DOWNLOAD_HASH_BY_FILE (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\src\extensions\download_management\reducers\state.ts:55:33)
    at reduce (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app\node_modules\redux-act\lib\createReducer.js:72:37)
    at combination (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app\node_modules\redux\lib\combineReducers.js:132:29)
    at combination (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app\node_modules\redux\lib\combineReducers.js:132:29)
    at C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app\node_modules\redux-persist\lib\autoRehydrate.js:43:16
    at dispatch (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app\node_modules\redux\lib\createStore.js:179:22)
    at doDispatch (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app\node_modules\redux-electron-store\lib\electronBrowserEnhancer.js:83:11)
    at Object.store.dispatch (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app\node_modules\redux-electron-store\lib\electronBrowserEnhancer.js:146:11)
    at EventEmitter.<anonymous> (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app\node_modules\redux-electron-store\lib\electronBrowserEnhancer.js:129:15)
    at emitTwo (events.js:106:13)
    at EventEmitter.emit (events.js:191:7)
    at WebContents.<anonymous> (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\electron.asar\browser\api\web-contents.js:240:37)
    at emitTwo (events.js:106:13)
    at WebContents.emit (events.js:191:7)

Steps to reproduce

our clipboard here and describe what you did when the error happened.

ToolButtons rerender

It appears the ToolButtons on the Welcome page rerender several times.
This is caused by the translation library that updates its i18nLoadedAt prop several times during load.

Crash: Cannot read property 'externalChanges' of undefined

Please paste the content of your clipboard here and describe what you did when the error happened.

Application Crash

System

Platform win32
Architecture x64
Application Version 0.6.1

Message

Cannot read property 'externalChanges' of undefined

Details

TypeError: Cannot read property 'externalChanges' of undefined
    at updateModActivation (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\extensions\mod_management\index.ts:104:19)
    at Debouncer_1.default [as mFunc] (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\extensions\mod_management\index.ts:242:14)
    at Debouncer.run (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\util\Debouncer.ts:123:44)
    at mTimer.setTimeout (C:\Users\paulb\AppData\Local\Programs\nmm2\resources\src\util\Debouncer.ts:150:41)

Steps to reproduce

Enabling a mod file - Realistic Crippled Limbs (Basic)

Error: Failed to run executable (hash: 1b419166040872296f8f56c4caa1cbfd)

Application Error

System

Platform win32
Architecture x64
Application Version 0.7.0

Message

Failed to run executable

Details

Command failed: E:\Games\Steam\steamapps\common\Skyrim Special Edition\SkyrimSE.exe

Error: Command failed: E:\Games\Steam\steamapps\common\Skyrim Special Edition\SkyrimSE.exe

    at ChildProcess.exithandler (child_process.js:223:12)
    at emitTwo (events.js:106:13)
    at ChildProcess.emit (events.js:191:7)
    at maybeClose (internal/child_process.js:885:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)

Steps to reproduce

When launching the SkyrimSE executable from within Vortex I get this error prompt (not a crash. red bar report at the top), but the executable is being launched as intended so I don't know what's that about.

Crash: Cannot read property '__reactInternalInstance$1t5h5kcaktvbvt15ztoodbcsor' of null

Application Crash

System

Platform win32
Architecture x64
Application Version 0.6.1

Message

Cannot read property '__reactInternalInstance$1t5h5kcaktvbvt15ztoodbcsor' of null

Details

TypeError: Cannot read property '__reactInternalInstance$1t5h5kcaktvbvt15ztoodbcsor' of null
    at Object.getClosestInstanceFromNode (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactDOMComponentTree.js:113:11)
    at findParent (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactEventListener.js:38:32)
    at handleTopLevelImpl (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactEventListener.js:67:28)
    at ReactDefaultBatchingStrategyTransaction.perform (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\Transaction.js:140:20)
    at Object.batchedUpdates (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactDefaultBatchingStrategy.js:62:26)
    at Object.batchedUpdates (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactUpdates.js:97:27)
    at dispatchEvent (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactEventListener.js:147:20)

Steps to reproduce

"category_management" throws errors when user is not logged in

Another case of not handling errors:
If the user isn't logged in, the "category_management" extension still tries to retrieve categories and then throws an error notification at the user.

Bonus bug: The error message is very oddly worded:
Title: "An error occured retrieving the Game Info"
Content: "error: Error: "value" required in setHeader("APIKEY", value)"

The Title is worded as if "the Game Info" was a title and the user is expected to know what that means
Nowhere does it say where the error is coming from (I only found it is related to categories by searching through the code)

The Content says "error" twice and the rest of the error message is completely cryptic to a user.
It should say somewhere that this is because the user isn't logged in.
And ff course that shouldn't be reported as an error in the first place.

Error: An error occurred retrieving the Game Info

Application Error

System

Platform win32
Architecture x64
Application Version 0.6.0

Message

An error occurred retrieving the Game Info

Details

error:	Error: "value" required in setHeader("APIKEY", value)

Steps to reproduce

Clicked to manage the game Skyrim Special Edition

Cancelling installation doesn't work

When the installation of an archive would replace an existing mod, a dialog asks the user how to deal with this.
If this dialog is canceled, the old mod has already been removed from the database and the notification still says installation was successful.
Since the mod was removed from the database (but not from disk) another attempt to install it doesn't prompt the dialog but the installation fails (since the mod dir on disk can't be replaced by a rename, permission error).

Game scan unable to retrieve games

The program successfully retrieves games from the registry (SSE and FO4), yet when I launch the game scan on my games dedicated drive, the program fails to retrieve any supported game that is currently present on my HD (in my case Skyrim and XCOM 2).

It takes 9 seconds to scan a 3TB drive (80% full), it seems to just check in the Steam root folder and not in any of the subfolders.

Could this be a permission issue? Perhaps something goes wrong while scanning a file/folder and forces the program to skip it all together?

Crash: Cannot read property '_currentElement' of null

Application Crash

System

Platform win32
Architecture x64
Application Version 0.6.1

Message

Cannot read property '_currentElement' of null

Details

TypeError: Cannot read property '_currentElement' of null
    at ReactCompositeComponentWrapper._updateRenderedComponent (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactCompositeComponent.js:745:52)
    at ReactCompositeComponentWrapper._performComponentUpdate (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactCompositeComponent.js:724:10)
    at ReactCompositeComponentWrapper.updateComponent (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactCompositeComponent.js:645:12)
    at ReactCompositeComponentWrapper.receiveComponent (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactCompositeComponent.js:547:10)
    at Object.receiveComponent (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactReconciler.js:125:22)
    at Object.updateChildren (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactChildReconciler.js:109:25)
    at ReactDOMComponent._reconcilerUpdateChildren (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactMultiChild.js:208:32)
    at ReactDOMComponent._updateChildren (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactMultiChild.js:312:31)
    at ReactDOMComponent.updateChildren (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactMultiChild.js:299:12)
    at ReactDOMComponent._updateDOMChildren (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactDOMComponent.js:936:12)
    at ReactDOMComponent.updateComponent (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactDOMComponent.js:754:10)
    at ReactDOMComponent.receiveComponent (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactDOMComponent.js:716:10)
    at Object.receiveComponent (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactReconciler.js:125:22)
    at ReactCompositeComponentWrapper._updateRenderedComponent (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactCompositeComponent.js:754:23)
    at ReactCompositeComponentWrapper._performComponentUpdate (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactCompositeComponent.js:724:10)
    at ReactCompositeComponentWrapper.updateComponent (C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app.asar\node_modules\react-dom\lib\ReactCompositeComponent.js:645:12)

Steps to reproduce

All I did was run it of the first time. I even uninstalled the original "Retribution" installation first.

Crash: Cannot have two HTML5 backends at the same time.

Application Crash

System

Platform win32
Architecture x64
Application Version 0.0.1

Message

Cannot have two HTML5 backends at the same time.

Details

Error: Cannot have two HTML5 backends at the same time.
    at HTML5Backend.setup (C:\Work\NMM2\node_modules\react-dnd-html5-backend\lib\HTML5Backend.js:69:13)
    at DragDropManager.handleRefCountChange (C:\Work\NMM2\node_modules\dnd-core\lib\DragDropManager.js:48:20)
    at Object.dispatch (C:\Work\NMM2\node_modules\redux\lib\createStore.js:186:19)
    at HandlerRegistry.addTarget (C:\Work\NMM2\node_modules\dnd-core\lib\HandlerRegistry.js:107:16)
    at registerTarget (C:\Work\NMM2\node_modules\react-dnd\lib\registerTarget.js:8:27)
    at DragDropContainer.receiveType (C:\Work\NMM2\node_modules\react-dnd\lib\decorateHandler.js:137:30)
    at DragDropContainer.receiveProps (C:\Work\NMM2\node_modules\react-dnd\lib\decorateHandler.js:127:12)
    at new DragDropContainer (C:\Work\NMM2\node_modules\react-dnd\lib\decorateHandler.js:100:12)
    at C:\Work\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:295:18
    at measureLifeCyclePerf (C:\Work\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:75:12)
    at ReactCompositeComponentWrapper._constructComponentWithoutOwner (C:\Work\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:294:16)
    at ReactCompositeComponentWrapper._constructComponent (C:\Work\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:280:21)
    at ReactCompositeComponentWrapper.mountComponent (C:\Work\NMM2\node_modules\react-dom\lib\ReactCompositeComponent.js:188:21)
    at Object.mountComponent (C:\Work\NMM2\node_modules\react-dom\lib\ReactReconciler.js:46:35)
    at ReactDOMComponent.mountChildren (C:\Work\NMM2\node_modules\react-dom\lib\ReactMultiChild.js:238:44)
    at ReactDOMComponent._createInitialChildren (C:\Work\NMM2\node_modules\react-dom\lib\ReactDOMComponent.js:697:32)

Description

Crashes when opening Settings while categories are open.

small memory leak

Right now we're leaking approx. 500kb every time an xml fomod is installed.
The leaked memory is c# objects containing functions that are passed from c# to js (startDialog call).

As far as I can tell all references to these functions are released on the js side so this may be a bug in the edge library and may disappear in a future release.
For now, the amount of leaked memory is not that significant so this is low priority.

Crash: forced crash (hash: 794c4848aa65bf397995892258f03d01)

Application Crash

System

Platform win32
Architecture x64
Application Version 0.0.1

Message

forced crash

Details

Error: forced crash
    at context.registerAction (C:\Users\Tannin\AppData\Roaming\nmm2_devel\plugins\crash\index.js:3:11)
    at ToolbarIcon.invokeAction (C:\Work\NMM2\src\views\ToolbarIcon.tsx:55:7)
    at Object.ReactErrorUtils.invokeGuardedCallback (C:\Work\NMM2\node_modules\react-dom\lib\ReactErrorUtils.js:69:16)
    at executeDispatch (C:\Work\NMM2\node_modules\react-dom\lib\EventPluginUtils.js:85:21)
    at Object.executeDispatchesInOrder (C:\Work\NMM2\node_modules\react-dom\lib\EventPluginUtils.js:108:5)
    at executeDispatchesAndRelease (C:\Work\NMM2\node_modules\react-dom\lib\EventPluginHub.js:43:22)
    at executeDispatchesAndReleaseTopLevel (C:\Work\NMM2\node_modules\react-dom\lib\EventPluginHub.js:54:10)
    at Array.forEach (native)
    at forEachAccumulated (C:\Work\NMM2\node_modules\react-dom\lib\forEachAccumulated.js:24:9)
    at Object.processEventQueue (C:\Work\NMM2\node_modules\react-dom\lib\EventPluginHub.js:257:7)
    at runEventQueueInBatch (C:\Work\NMM2\node_modules\react-dom\lib\ReactEventEmitterMixin.js:17:18)
    at Object.handleTopLevel [as _handleTopLevel] (C:\Work\NMM2\node_modules\react-dom\lib\ReactEventEmitterMixin.js:28:5)
    at handleTopLevelImpl (C:\Work\NMM2\node_modules\react-dom\lib\ReactEventListener.js:72:24)
    at ReactDefaultBatchingStrategyTransaction.perform (C:\Work\NMM2\node_modules\react-dom\lib\Transaction.js:140:20)
    at Object.batchedUpdates (C:\Work\NMM2\node_modules\react-dom\lib\ReactDefaultBatchingStrategy.js:62:26)
    at Object.batchedUpdates (C:\Work\NMM2\node_modules\react-dom\lib\ReactUpdates.js:97:27)
    at dispatchEvent (C:\Work\NMM2\node_modules\react-dom\lib\ReactEventListener.js:147:20)

Steps to reproduce

This is a test

Error: failed to initialize localization

Application Error

System

Platform win32
Architecture x64
Application Version 0.6.0

Message

failed to initialize localization

Details

0:	Error: ENOENT: no such file or directory, open 'C:\Users\Robin\AppData\Local\Programs\nmm2\resources\app\locales\en\common.json'

Steps to reproduce

I see this in the bottom right corner of NMM when I first load it up

registerStyle doesn't work with asar

when packaging a release as an asar, the styles registered with registerStyle don't get compiled.
Likely the node-sass compiler can't access the required includes.

Crash: Cannot read property 'sort' of undefined

Please paste the content of your clipboard here and ### Application Crash

System

Platform win32
Architecture x64
Application Version 0.5.3

Message

Cannot read property 'sort' of undefined

Details

TypeError: Cannot read property 'sort' of undefined
    at Object.render (C:\Users\natal\AppData\Local\Programs\nmm2\resources\src\extensions\firststeps_dashlet\Dashlet.tsx:107:76)
    at React.createElement.visibleSteps.map (C:\Users\natal\AppData\Local\Programs\nmm2\resources\src\extensions\firststeps_dashlet\Dashlet.tsx:160:17)
    at Array.map (native)
    at Dashlet.render (C:\Users\natal\AppData\Local\Programs\nmm2\resources\src\extensions\firststeps_dashlet\Dashlet.tsx:158:21)
    at C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:796:21
    at measureLifeCyclePerf (C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:75:12)
    at ReactCompositeComponentWrapper._renderValidatedComponentWithoutOwnerOrContext (C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:795:25)
    at ReactCompositeComponentWrapper._renderValidatedComponent (C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:822:32)
    at ReactCompositeComponentWrapper.performInitialMount (C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:362:30)
    at ReactCompositeComponentWrapper.mountComponent (C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:258:21)
    at Object.mountComponent (C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactReconciler.js:46:35)
    at ReactCompositeComponentWrapper.performInitialMount (C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:371:34)
    at ReactCompositeComponentWrapper.mountComponent (C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:258:21)
    at Object.mountComponent (C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactReconciler.js:46:35)
    at ReactCompositeComponentWrapper._updateRenderedComponent (C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:765:40)
    at ReactCompositeComponentWrapper._performComponentUpdate (C:\Users\natal\AppData\Local\Programs\nmm2\resources\app\node_modules\react-dom\lib\ReactCompositeComponent.js:724:10)

Steps to reproduce

Just trying to install on other machine.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.