From 58a8215b05d194cb21d1a965c2b0006a686c9e56 Mon Sep 17 00:00:00 2001 From: Daniel Scalzi Date: Sun, 19 Aug 2018 03:16:08 -0400 Subject: [PATCH] v1.0.0-beta.3 - Added error handling for LaunchWrapper failure. Fixes #5. --- app/assets/js/scripts/landing.js | 17 +++++++++++++++++ package-lock.json | 2 +- package.json | 2 +- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/app/assets/js/scripts/landing.js b/app/assets/js/scripts/landing.js index 1465e9b..a4f88b2 100644 --- a/app/assets/js/scripts/landing.js +++ b/app/assets/js/scripts/landing.js @@ -598,6 +598,7 @@ function dlAsync(login = true){ } proc.stdout.on('data', gameStateChange) proc.stdout.removeListener('data', tempListener) + proc.stderr.removeListener('data', gameErrorListener) } } @@ -611,12 +612,28 @@ function dlAsync(login = true){ } } + const gameErrorListener = function(data){ + data = data.trim() + if(data.indexOf('Could not find or load main class net.minecraft.launchwrapper.Launch') > -1){ + console.error('Game launch failed, LaunchWrapper was not downloaded properly.') + setOverlayContent( + 'Error During Launch', + 'The main file, LaunchWrapper, failed to download properly. As a result, the game cannot launch.

To fix this issue, temporarily turn off your antivirus software and launch the game again.

If you have time, please submit an issue and let us know what antivirus software you use. We\'ll contact them and try to straighten things out.', + 'Okay' + ) + setOverlayHandler(null) + toggleOverlay(true) + toggleLaunchArea(false) + } + } + try { // Build Minecraft process. proc = pb.build() // Bind listeners to stdout. proc.stdout.on('data', tempListener) + proc.stderr.on('data', gameErrorListener) setLaunchDetails('Done. Enjoy the server!') diff --git a/package-lock.json b/package-lock.json index 7dda0a9..6976c97 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "westeroscraftlauncher", - "version": "1.0.0-beta.2", + "version": "1.0.0-beta.3", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 2110e06..4acbb1d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "westeroscraftlauncher", - "version": "1.0.0-beta.2", + "version": "1.0.0-beta.3", "description": "Custom modded launcher for Westeroscraft", "productName": "WesterosCraft Launcher", "main": "index.js",