☀ Custom launcher for modded minecraft written in Electron and Node.js
Go to file
Daniel Scalzi f1d89c0e6b
Fixed game status monitoring.
Switched to version-safe regex for monitoring game launch progress.
Game output is now encoded in utf-8 to avoid multiple conversions from Uint8Array to String.
Note that game output has line breaks. Trim any content before testing it against regular expressions.
2018-08-13 08:25:25 -04:00
app Fixed game status monitoring. 2018-08-13 08:25:25 -04:00
build Begining to transition over to electron-builder for building the app. Currently in a testing phase for this, gradually refining the build options. Once electron-builder has been fully implemented, the electron-packager scripts will be removed. Also updated electron to address a security issue. 2018-01-24 01:08:29 -05:00
docs Cleaned up distribution.json for mod toggle UI. 2018-07-26 04:44:36 +02:00
libraries/java Various optimizations related to library extraction. 2018-04-28 23:34:23 -04:00
.eslintrc.json Added eslint. To lint, npm run lint. 2018-07-22 13:31:15 -04:00
.eslintrc.scripts.json Added eslint. To lint, npm run lint. 2018-07-22 13:31:15 -04:00
.gitignore Begining to transition over to electron-builder for building the app. Currently in a testing phase for this, gradually refining the build options. Once electron-builder has been fully implemented, the electron-packager scripts will be removed. Also updated electron to address a security issue. 2018-01-24 01:08:29 -05:00
.nvmrc Upgraded dependencies, pinned Node.js version. 2018-07-05 21:06:06 +02:00
.travis.yml Updated Distribution Index spec and impl. 2018-07-22 11:40:15 -04:00
dev-app-update.yml Added basic auto update implementation. 2018-04-28 16:26:38 -04:00
index.js Added eslint. To lint, npm run lint. 2018-07-22 13:31:15 -04:00
package-lock.json Updated deps. 2018-08-11 04:34:42 -04:00
package.json Updated deps. 2018-08-11 04:34:42 -04:00
README.md Added relevant links to readme. 2018-08-08 22:37:37 -04:00

westeroscraft

WesterosCraft Launcher

travis downloads stark

Join WesterosCraft without worrying about installing Java, Forge, or other mods. We'll handle that for you.

Screenshot 1 Screenshot 2

Features

  • 🔒 Full account management.
    • Add multiple accounts and easily switch between them.
    • Credentials are never stored and transmitted directly to Mojang.
  • 📂 Efficient asset management.
    • Receive client updates as soon as we release them.
    • Files are validated before launch. Corrupt or incorrect files will be redownloaded.
  • Automatic Java validation.
    • If you have an incompatible version of Java installed, we'll install the right one for you.
    • You do not need to have Java installed to run the launcher.
  • 📰 News feed natively built into the launcher.
  • ⚙️ Intuitive settings management, including a Java control panel.
  • Supports all of our servers.
    • Switch between server configurations with ease.
    • View the player count of the selected server.
  • Automatic updates. That's right, the launcher updates itself.
  • View the status of Mojang's services.

This is not an exhaustive list. Download and install the launcher to gauge all it can do!

Alpha Tests

The launcher is currently in alpha. It's very usable, however we are still putting in a lot of work. A lot can change, at this point. For more information and instructions on how to officially sign up, check out the Alpha Thread.

Downloads

Latest Release

Latest Prerelease

Supported Platforms

Go to the Releases tab and download the installer for the latest release.

Platform File
Windows x64 westeroscraftlauncher-setup-VERSION.exe
macOS westeroscraftlauncher-VERSION.dmg
Linux x64 westeroscraftlauncher-VERSION-x86_64.AppImage

Console

To open the console, use the following keybind.

ctrl + shift + i

Ensure that you have the console tab selected. Do not paste anything into the console unless you are 100% sure of what it will do. Pasting the wrong thing can expose sensitive information.

Export Output to a File

If you want to export the console output, simply right click anywhere on the console and click Save as..

console example

Development

Getting Started

System Requirements


Clone and Install Dependencies

> git clone https://github.com/WesterosCraftCode/ElectronLauncher.git
> cd ElectronLauncher
> npm install

Launch Application

> npm start

Build Installers

To build for your current platform.

> npm run dist

Build for a specific platform.

Platform Command
Windows x64 npm run dist:win
macOS npm run dist:mac
Linux x64 npm run dist:linux

Builds for macOS may not work on Windows/Linux and vice-versa.


Visual Studio Code

All development of the launcher should be done using Visual Studio Code.

Paste the following into .vscode/launch.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"
      },
      "args": ["."],
      "console": "integratedTerminal",
      "protocol": "inspector"
    },
    {
      "name": "Debug Renderer Process",
      "type": "chrome",
      "request": "launch",
      "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron",
      "windows": {
        "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron.cmd"
      },
      "runtimeArgs": [
        "${workspaceRoot}/.",
        "--remote-debugging-port=9222"
      ],
      "webRoot": "${workspaceRoot}"
    }
  ]
}

This adds two debug configurations.

Debug Main Process

This allows you to debug Electron's main process. You can debug scripts in the renderer process by opening the DevTools Window.

Debug Renderer Process

This allows you to debug Electron's renderer process. This requires you to install the Debugger for Chrome extension.

Note that you cannot open the DevTools window while using this debug configuration. Chromium only allows one debugger, opening another will crash the program.


Resources

The best way to contact the developers is on Discord.

discord


See you in Westeros.