mirror of
https://github.com/dscalzi/HeliosLauncher.git
synced 2024-12-22 11:42:14 -08:00
211 lines
6.7 KiB
Markdown
211 lines
6.7 KiB
Markdown
<p align="center"><img src="./app/assets/images/SealCircle.png" width="150px" height="150px" alt="aventium softworks"></p>
|
|
|
|
<h1 align="center">Electron Launcher</h1>
|
|
|
|
[<p align="center"><img src="https://img.shields.io/travis/dscalzi/ElectronLauncher.svg?style=for-the-badge" alt="travis">](https://travis-ci.org/dscalzi/ElectronLauncher) [<img src="https://img.shields.io/github/downloads/dscalzi/ElectronLauncher/total.svg?style=for-the-badge" alt="downloads">](https://github.com/dscalzi/ElectronLauncher/releases) <img src="https://forthebadge.com/images/badges/winter-is-coming.svg" height="28px" alt="stark"></p>
|
|
|
|
<p align="center">Join modded servers without worrying about installing Java, Forge, or other mods. We'll handle that for you.</p>
|
|
|
|
![Screenshot 1](https://i.imgur.com/M8HVW9H.jpg)
|
|
![Screenshot 2](https://i.imgur.com/zDiSoq4.jpg)
|
|
|
|
## 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!
|
|
|
|
#### Need Help? [Check the wiki.][wiki]
|
|
|
|
#### Like the project? Leave a ⭐ star on the repository!
|
|
|
|
## Downloads
|
|
|
|
You can download from [GitHub Releases](https://github.com/dscalzi/ElectronLauncher/releases)
|
|
|
|
#### Latest Release
|
|
|
|
[![](https://img.shields.io/github/release/dscalzi/ElectronLauncher.svg?style=flat-square)](https://github.com/dscalzi/ElectronLauncher/releases/latest)
|
|
|
|
#### Latest Pre-Release
|
|
[![](https://img.shields.io/github/release/dscalzi/ElectronLauncher/all.svg?style=flat-square)](https://github.com/dscalzi/ElectronLauncher/releases)
|
|
|
|
**Supported Platforms**
|
|
|
|
If you download from the [Releases](https://github.com/dscalzi/ElectronLauncher/releases) tab, select the installer for your system.
|
|
|
|
| Platform | File |
|
|
| -------- | ---- |
|
|
| Windows x64 | `electronlauncher-setup-VERSION.exe` |
|
|
| macOS | `electronlauncher-VERSION.dmg` |
|
|
| Linux x64 | `electronlauncher-VERSION-x86_64.AppImage` |
|
|
|
|
## Console
|
|
|
|
To open the console, use the following keybind.
|
|
|
|
```console
|
|
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](https://i.imgur.com/HazXrgT.png)
|
|
|
|
|
|
## Development
|
|
|
|
### Getting Started
|
|
|
|
**System Requirements**
|
|
|
|
* [Node.js][nodejs] v10.x.x
|
|
|
|
---
|
|
|
|
**Clone and Install Dependencies**
|
|
|
|
```console
|
|
> git clone https://github.com/dscalzi/ElectronLauncher.git
|
|
> cd ElectronLauncher
|
|
> npm install
|
|
```
|
|
|
|
---
|
|
|
|
**Launch Application**
|
|
|
|
```console
|
|
> npm start
|
|
```
|
|
|
|
---
|
|
|
|
**Build Installers**
|
|
|
|
To build for your current platform.
|
|
|
|
```console
|
|
> 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][vscode].
|
|
|
|
Paste the following into `.vscode/launch.json`
|
|
|
|
```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][mainprocess]. You can debug scripts in the [renderer process][rendererprocess] by opening the DevTools Window.
|
|
|
|
#### Debug Renderer Process
|
|
|
|
This allows you to debug Electron's [renderer process][rendererprocess]. This requires you to install the [Debugger for Chrome][chromedebugger] 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.
|
|
|
|
---
|
|
|
|
### Note on Third-Party Usage
|
|
|
|
You may use this software in your own project so long as the following conditions are met.
|
|
|
|
* Credit is expressly given to the original authors (Daniel Scalzi).
|
|
* Include a link to the original source on the launcher's About page.
|
|
* Credit the authors and provide a link to the original source in any publications or download pages.
|
|
* The source code remain **public** as a fork of this repository.
|
|
|
|
We reserve the right to update these conditions at any time, please check back periodically.
|
|
|
|
---
|
|
|
|
## Resources
|
|
|
|
* [Wiki][wiki]
|
|
|
|
The best way to contact the developers is on Discord.
|
|
|
|
[![discord](https://discordapp.com/api/guilds/211524927831015424/embed.png?style=banner3)][discord]
|
|
|
|
---
|
|
|
|
### See you ingame.
|
|
|
|
|
|
[nodejs]: https://nodejs.org/en/ 'Node.js'
|
|
[vscode]: https://code.visualstudio.com/ 'Visual Studio Code'
|
|
[mainprocess]: https://electronjs.org/docs/tutorial/application-architecture#main-and-renderer-processes 'Main Process'
|
|
[rendererprocess]: https://electronjs.org/docs/tutorial/application-architecture#main-and-renderer-processes 'Renderer Process'
|
|
[chromedebugger]: https://marketplace.visualstudio.com/items?itemName=msjsdiag.debugger-for-chrome 'Debugger for Chrome'
|
|
[discord]: https://discord.gg/zNWUXdt 'Discord'
|
|
[wiki]: https://github.com/dscalzi/ElectronLauncher/wiki 'wiki'
|