|
|
@@ -0,0 +1,91 @@
|
|
|
+# Getting Started #
|
|
|
+
|
|
|
+System Requirements:
|
|
|
+* [Node.js](https://nodejs.org/en/) v7.9.0+
|
|
|
+
|
|
|
+This repository is dedicated to the development of the new custom launcher for the [WesterosCraft](http://www.westeroscraft.com/) server. This project is developed primarily with [Node.js](https://nodejs.org/en/) and the [Electron](https://electron.atom.io/) framework. For further reference you may view [the repository of the new launcher written in JavaFX/Java](https://gitlab.com/westeroscraft/WesteroscraftNewLauncher) which was discontinued. You may also view the repository of the [current launcher](https://gitlab.com/westeroscraft/westeroscraftlaunchercore), a modified fork of MCUpdater.
|
|
|
+
|
|
|
+For authentication with Mojang, we are currently planning on using [node-mojang](https://github.com/jamen/node-mojang). This will automatically be downloaded if you follow the simple installation instructions below.
|
|
|
+
|
|
|
+### Recommended IDE ###
|
|
|
+
|
|
|
+The recommended IDE for this project is [VS Code](https://code.visualstudio.com/), an open source code editor by Microsoft. This editor is available on nearly every major platform (Windows, macOS, Linux). If you choose to use another editor, such as [Atom](https://atom.io/), please gitignore the IDE specific settings directory, if it hasn't been already.
|
|
|
+
|
|
|
+### Installation ###
|
|
|
+
|
|
|
+To begin working on this project clone the repository and open run the following command on the command line. This will download all of the required dependencies.
|
|
|
+
|
|
|
+```shell
|
|
|
+npm install
|
|
|
+```
|
|
|
+
|
|
|
+# Launching #
|
|
|
+
|
|
|
+### Command Line ###
|
|
|
+
|
|
|
+There are several different ways to launch this project. One way is simply to run the following command on the command line.
|
|
|
+
|
|
|
+```shell
|
|
|
+npm start
|
|
|
+```
|
|
|
+
|
|
|
+### Visual Studio Code ###
|
|
|
+
|
|
|
+If you use VS Code, you can run this directly from the IDE. Copy the following code into your launch.json file. This will require you to also install [Debugger for Chrome](https://marketplace.visualstudio.com/items?itemName=msjsdiag.debugger-for-chrome).
|
|
|
+
|
|
|
+```json
|
|
|
+{
|
|
|
+ "version": "0.2.0",
|
|
|
+ "configurations": [
|
|
|
+ {
|
|
|
+ "name": "Debug Main Process",
|
|
|
+ "type": "node",
|
|
|
+ "request": "launch",
|
|
|
+ "cwd": "${workspaceRoot}",
|
|
|
+ "runtimeExecutable": "${workspaceRoot}\\node_modules\\.bin\\electron",
|
|
|
+ "windows": {
|
|
|
+ "runtimeExecutable": "${workspaceRoot}\\node_modules\\.bin\\electron.cmd"
|
|
|
+ },
|
|
|
+ "program": "${workspaceRoot}\\index.js",
|
|
|
+ "console": "integratedTerminal",
|
|
|
+ "protocol": "legacy"
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "name": "Debug Renderer Process",
|
|
|
+ "type": "chrome",
|
|
|
+ "request": "launch",
|
|
|
+ "runtimeExecutable": "${workspaceRoot}\\node_modules\\.bin\\electron",
|
|
|
+ "windows": {
|
|
|
+ "runtimeExecutable": "${workspaceRoot}\\node_modules\\.bin\\electron.cmd"
|
|
|
+ },
|
|
|
+ "runtimeArgs": [
|
|
|
+ "${workspaceRoot}\\index.js",
|
|
|
+ "--remote-debugging-port=9222"
|
|
|
+ ],
|
|
|
+ "webRoot": "${workspaceRoot}"
|
|
|
+ }
|
|
|
+ ]
|
|
|
+}
|
|
|
+```
|
|
|
+
|
|
|
+This will create two launch configurations from which you can debug the launcher. The first configuration, **Debug Main Process**, will allow you to debug the main Electron process. The second configuration, **Debug Renderer Process**, will allow you to debug the rendering of web pages (ie the UI).
|
|
|
+
|
|
|
+You can find more information [here](http://code.matsu.io/1).
|
|
|
+
|
|
|
+### Notes on DevTools Window ###
|
|
|
+
|
|
|
+Once you run the program, you can open the DevTools window by typing the following keys in sequence on the main window.
|
|
|
+
|
|
|
+```shell
|
|
|
+wcdev
|
|
|
+```
|
|
|
+
|
|
|
+Please note that if you are debugging the application with VS Code and have launched the program using the **Debug Renderer Process** configuration you cannot open the DevTools window. If you attempt to do so, the program will crash. Remote debugging cannot be done with multiple DevTools clients.
|
|
|
+
|
|
|
+# Issues / Further Support #
|
|
|
+
|
|
|
+If you run into any issue which cannot be resolved via a quick google search, create an issue using the tab above.
|
|
|
+
|
|
|
+Much of the discussion regarding this launcher is done on Discord, feel free to join us there. Click the image below to connect to our server.
|
|
|
+
|
|
|
+[](https://discord.gg/UACCjTK)
|