Skip to content

Releases: dscalzi/HeliosLauncher

Release v1.0.0

31 Aug 17:34
7851fdb
Compare
Choose a tag to compare

The Kingsroad Starts Here

Join WesterosCraft without worrying about installing Java, Forge, or other mods.

image teaser

I'm proud to announce the release of our new launcher. Developed using the latest technologies with a heavy emphasis on usability, the launcher aims to provide users with a seamless and downright elegant way to join WesterosCraft.

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.
  • Powerful mod management.
  • ☕ 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.

Resources

Note to Alpha/Beta Testers

This is the first Stable Release for the launcher. If you wish to continue to recieve Pre-Release updates, please enable Allow Pre-Release Updates under launcher settings. More information on the wiki.

Changes Since Beta 6

  • 7851fdb Cleaned up some text.
  • e53b92c Fixed styling error when logging out of last account.

Pre-Release v1.0.0-beta.6

29 Aug 17:33
cf7e9ad
Compare
Choose a tag to compare
Pre-release

Beta 1.0.0 Update 6

Minor update which reverts a previous change and updates all client dependencies.

Reverted

  • cf7e9ad Do not save user UUIDs with dashes as the vanilla client does not. (reverts db5653a)

Dependency Upgrades

Pre-Release v1.0.0-beta.5

24 Aug 20:34
db5653a
Compare
Choose a tag to compare
Pre-release

Beta 1.0.0 Update 5

This update fixes the login error Failed to verify username. This error was caused randomly by either of the following two factors.

  • The displayName field returned by Mojang contained extraneous spaces.
  • The uuid field did not contain dashes.

Fixes

  • 70b83a6 Trimmed extraneous spaces from displayName.
  • db5653a Ensure that we are saving proper UUIDs (with dashes).

Pre-Release v1.0.0-beta.4

22 Aug 22:07
29a8f2a
Compare
Choose a tag to compare
Pre-release

Beta 1.0.0 Update 4

This update includes several minor changes and fixes.

Additions

  • 37606dc Added a new system for handling overlay keybinds. This adds functionality to standard overlays and replaces the old implementation for the server and account selection overlays.
    • If the overlay is not dismissible, you may use the Enter or Escape keys to click the main button.
    • If the overlay is dismissible, you may use Enter to click the main button and Escape to dismiss.

Changes

  • afe69a2 Several changes related to Java UI.
    • Minimum RAM is now equal to the maximum ram by default. This will not override existing settings.
    • The manual installation overlay now links to the Java Management wiki article.
    • The Available Options for Java 8 link now points to the os-specific page (/windows for Windows, /unix for macOS and Linux).
  • 37606dc You can now cancel the login process initiated when your account's access token failed to validate. Cancelling will return you to the error overlay. You can only cancel if you have one or more other accounts added.
  • 0346597 All calls to console.log (and equivalent functions) are now wrapped through LoggerUtil.js. This adds colored prefixes to logged messages and improves console readability.

Fixes

  • 37606dc Fixed a minor bug where the background of the settings UI was set to transparent. This occurred if the account validation error overlay was shown on the settings UI, and you chose the login option.

Dependency Upgrades

Pre-Release v1.0.0-beta.3

19 Aug 07:24
58a8215
Compare
Choose a tag to compare
Pre-release

Beta 1.0.0 Update 3

This update adds an error handler for the age old problem, Could not find or load main class net.minecraft.launchwrapper.Launch. The handler displays an overlay which instructs users on how to resolve the issue.

Additions

  • 58a8215 Added error overlay which listens for Could not find or load main class net.minecraft.launchwrapper.Launch on stderr. This happens when the user's antivirus software lists the download url for launch-wrapper as malware (false-positive) and prevents it from being downloaded. The overlay instructs the user to temporarily disable their antivirus and launch again. It also asks the user to submit an issue letting us know the name of their antivirus so that we can reach out to them and correct the issue.
    • Some more information on this in #5.

Fixes

  • 845721a Encode the game process's stderr stream in utf-8. Recolored the stderr prefix to be red instead of green.

Dependency Upgrades

Pre-Release v1.0.0-beta.2

15 Aug 13:26
50317c3
Compare
Choose a tag to compare
Pre-release

Beta 1.0.0 Update 2

This update includes a fix for an issue which prevented mods with declared extensions in their identifiers from being loaded. Notably, this bug prevent Macro/Keybind Mod from being loaded on beta 1.

Fixes

  • 50317c3 Fixed bug which prevented mods with declared extensions in their identifiers from being loaded.

Dependency Upgrades

Pre-Release v1.0.0-beta.1

14 Aug 10:54
d581a28
Compare
Choose a tag to compare
Pre-release

Beta 1.0.0 Update 1

This is the first beta release for the launcher. The beta release line is feature-locked. New features will only be added if highly requested or required for optimal performance. Bug fixes and optimizations of existing features are the primary focus.

Beta should not last very long, as there should not be many bugs in the application at this point. That being said, we're looking at a full release in two weeks or less.

In addition to finalizing version 1.0.0 of the launcher, we will be setting up some infrastructure to support the launcher's full release. This will involve updating content on the wiki and site. So far, we've added a brand new launcher page to the site. The page is still recieveing content and style updates, so consider it in beta as well.

New Launcher Page


Information for Post-Release Updates.

The launcher will have two types of releases, Stable Releases (Releases) and Pre-Releases.

  • Releases are updates which have been fully tested and are ready for general consumption.
  • Pre-Releases include new features which may have not been fully tested or integrated. They are considered to be experimental.

By default, the launcher's autoupdater only downloads releases. The autoupdater only looks for pre-releases when one of the following is true.

  • You are currently running a pre-release build.
  • You have Allow prerelease updates enabled under Launcher Settings.

All alpha and beta builds have been classified as pre-releases, therefore users using these builds automatically get the latest pre-releases as soon as they are available. Once beta ends, all users will be upgraded to Release 1.0.0. From that point onward, if you wish to receive pre-releases, you will need to enable the allow prerelease updates option.

image

If you enjoy testing bleeding-edge updates, consider enabling this option. The more testers we have, the quicker we can push out full releases.


Dependency Upgrades

Alpha v0.0.1-alpha.18

13 Aug 12:51
4d2f50b
Compare
Choose a tag to compare
Alpha v0.0.1-alpha.18 Pre-release
Pre-release

Alpha Update 18

This update completes the Updates tab on the Settings UI, and by extension, the reform of the auto-update UI.

The Updates tab reuses some UI elements from the About tab. This was done in an interest to save time, as it takes quite a while to come up with a UI which is both unique and feasable. In the future, the UI may be changed, however for now it works.

The layout of the Updates tab changes based on the status of the auto-updater.

  • When no update is available, the user is given the option to initiate an update check.
  • The UI indicates whenever an update check is being performed.
  • When an update is available, the UI changes accordingly, and pulls the changelog from Github.
  • The UI indicates when the update is downloading (this happens automatically whenever a new update is found).
  • When downloading is complete, the user may install the update.

The update UI on the landing page is largely unchanged, and behaves as follows.

  • When an update is downloaded and ready to install there will be a green pulse around the logo.
  • Clicking the logo while in this state will open the Updates tab rather than an overlay.

The auto-updater behavior is also largely unchanged.

  • Update checks are performed on startup and every five minutes thereafter.
  • Updates are downloaded automatically once they are found.
  • Updates are only installed when a user clicks the Install Now button.

New Features

  • 1566ff4 Completed the Updates tab on the Settings UI.

Fixes

  • 4f41622 Added failsafe to configuration loading. In the past, failure to load the config file would prevent the app from starting. If the configuration is malformed or corrupt, a fresh copy will be saved to prevent ant startup issues.
  • f1d89c0 Fixed game startup monitoring for the 1.12.2 test server.
    • The startup monitor now uses a version-safe regular expression.
    • Game output is now automatically encoded in utf-8. This eliminates the need for multiple conversions from Uint8Array to String.
    • Minecraft output in the console now has a colored prefix.

Dependency Upgrades

Images

image
Updates tab while an update is downloading.


View from the landing page when an update is ready to install.

image
Updates tab when no update is available.

Alpha v0.0.1-alpha.17

07 Aug 09:32
2ec91a6
Compare
Choose a tag to compare
Alpha v0.0.1-alpha.17 Pre-release
Pre-release

Alpha Update 17

This update completes the Mods tab on the Settings UI. The UI has four major sections, which will be detailed below.

Server Status Bar

The server status bar displays information about the selected server. All of the loaded mod configurations will be for this specific server. For ease of access, a switch server button is included. This button will open the same selection UI used to switch servers on the landing page. Once the server is switched, its corresponding mod configuration will be loaded. Switching the server on the mods tab has the same effect as switching it on the landing view. The server that was selected will be the selected server for the launcher.

Required Mods Container

The required mods container contains all of the mods listed as required on the distribution index. These mods are untoggleable, however they may declare optional submods. Those, by nature, will be toggleable.

Optional Mods Container

The optional mods container contains all of the mods listed as optional on the distribution index. These mods are toggleable, and may declare submods. The submods will only be enabled if the parent mod is also enabled. Optional mods may also declare required submods. These will be always enabled if the parent mod is enabled.

Drop-in Mods Container

The drop-in mods container lists all mods which have been dropped into the mods folder for the selected server instance. Mods in both the /mods and /mods/version folders are listed. The following operations can be performed on drop-in mods from the UI.

  • Toggle - Toggling off a drop-in mod will add the .disabled file extension to it. Enabling it will do the opposite.
  • Remove - Removing a mod moves it to the recycling bin.

In addition, a button is provided which will open the system file explorer directly to the mods directory for the selected server instance. Users may further modify drop-in mods there. To refresh the UI after making changes in the system explorer, press F5 while the mods tab is active.

Drop-in mods are not verified or validated in any way by the launcher. The UI supporting them is essentially a convenience interface to perform common IO operations through the launcher.


In addition to the new UI elements, the mod configuration system has been enhanced to add support for optional submods of required mods.

The configuration entry of a required mod simply does not contain the value property. Ex.

"my.required:mod": {
    "mods": {
        "my.optional:submod": false
    },
}

New Features

  • Completed the Mods tab on the Settings UI.
    • e583133 Initial work on the Mods tab.
    • 60ba7b4 Added basic functionality to the Mods tab.
    • ff3f2bf Added server status bar to the Mods tab.
    • 556199a Added support for drop-in mods.
    • b46ac97 General code cleanup of Mods tab related additions.

Changes

  • 40506c4 Cleaned up distribution index to render in a more logical order (WesterosCraft mods first, followed by most used mods).
  • 0c98cc2 Updated mod configuration system to support optional submods of required mods.

Dependency Upgrades

Images

image
The top of the Mods tab including the server status bar, required mods container, and the top of the optional mods container.

image
The bottom of the Mods tab, including the bottom of the optional mods container and the drop-in mods container. One drop-in mod is included to demonstration.


Switching servers through the Mods tab.


You can sync the UI to the file system by pressing F5.


As always, let us know what you think about these new features and report any issues you find. We are close to beta!

Alpha v0.0.1-alpha.16

26 Jul 02:39
6e71cd6
Compare
Choose a tag to compare
Alpha v0.0.1-alpha.16 Pre-release
Pre-release

Alpha Update 16

This update contains a hotfix for users affected by download issues. If you have an overly protective piece of antivirus software installed (Kaspersky), downloads for Mojang assets would be blocked. This update corrects that issue.

Special thanks to Bled#5399 on Discord for helping debug this issue!

If you are having any other problems with files not downloading please report them.

Fixes

  • 6e71cd6 Fixed download issues related to self signed certificate in certificate chain.
    • Disabled reject unauthorized in assetexec process.
    • Fixed error messages from assetexec to renderer.

Dependency Upgrades