Commit Graph

85 Commits

Author SHA1 Message Date
Sandro642
2fc9c3ec35 Add mod verification logic using Athena's Shield
Integrated Athena's Shield for mod verification, including mod identity extraction and validation against expected identities. Added exclusion list for mods, and implemented fallbacks for missing mod identities using MD5 hashes. Adjusted logging and error reporting to provide clearer feedback.
2024-10-24 16:27:37 +02:00
Sandro642
5f3e229360 Add new dlAsync function and mod validation messages
Implemented a new `dlAsync.js` file and updated the `en_US.toml` with new mod validation messages. This includes the logic for mod verification and error handling, ensuring the integrity of mods before launching the game.

Ajout prochainement de l'utilitaire npm run athshield
2024-10-23 19:17:23 +02:00
jebibot
fb1cb7b415
feat: support Fabric (#313)
* feat: support Fabric

* fix: GAME_LAUNCH_REGEX for Fabric

* Small refactor.

* Update documentation.

* Upgrade helios-distribution-types, helios-core.

---------

Co-authored-by: Daniel Scalzi <d_scalzi@yahoo.com>
2023-12-03 18:02:57 -05:00
jebibot
3d470d9a32
feat: localize discord RPC, window title, button (#314)
* feat: localize discord RPC, window title, button

* fix: settings.dropinMods.okButton key
2023-11-25 18:31:41 -05:00
jebibot
16790ca416
fix: Discord RPC check (#315) 2023-11-25 18:28:21 -05:00
Daniel Scalzi
7e95771957
Remove dependence on node crypto module in landing.js 2023-11-11 23:37:59 -05:00
Kamesuta
9d80d3b1d5
Localize HeliosLauncher UI using lang files (#301)
* First step to use Language .json file in ejs

* i18n for landing.ejs

* i18n for login.ejs

* i18n for loginOptions.ejs

* i18n for overlay.ejs

* i18n for settings.ejs

* i18n for waiting.ejs

* i18n for welcome.ejs

* langloader.js placeholder support

* i18n for landing.js

* i18n for login.js

* i18n for overlay.js

* i18n for settings.js

* i18n for uibinder.js

* i18n for uicore.js

* remove html language replacement

* use toml for i18n

* Fix mojang/microsoft status icon is undefined

* cascadable langloader

* separate lang file for customization

* move some placeholder text to _placeholder.toml

* Update

* Reduce package lock diff.

* Remove another placeholder.

* Checkbox does not require translation.

* Icons don't need translation.

* Leave placeholders inline.

* Fix translation for news pages.

* Remove more unneeded translations.

---------

Co-authored-by: Daniel Scalzi <d_scalzi@yahoo.com>
2023-10-05 15:26:32 -04:00
Daniel Scalzi
776c46d7e1
Set download progress to zero immediately, don't wait for progress event. 2023-03-24 15:46:37 -04:00
Daniel Scalzi
e639061fa8
Hopefully catch all errors during launch process. 2023-03-19 19:34:35 -04:00
Daniel Scalzi
e3af7669d8
cleanup. 2023-03-18 22:07:22 -04:00
Daniel Scalzi
a1837aa20e
bugfix. 2023-03-18 03:05:37 -04:00
Daniel Scalzi
16ad59685e
Integrate java download with AG2, remove AG1. 2023-03-18 02:49:10 -04:00
Daniel Scalzi
15f7560916
Replace all javaguard logic, logic in landing.js needs to be rewritten to integrate. 2023-03-13 02:06:58 -04:00
Daniel Scalzi
9a4129c11a
Inject common/instance dir. 2023-03-07 21:10:47 -05:00
Daniel Scalzi
b32857e7de
Progress checkin, mostly works. 2023-03-07 21:10:47 -05:00
Daniel Scalzi
a22bd32cb1
Replace distromanager, assetguard is probably broken. 2023-03-07 21:10:47 -05:00
Daniel Scalzi
248937c22d
Improve logging. 2022-12-24 22:17:54 -05:00
Daniel Scalzi
e3ee03ef73
1.17+ Support / Java Settings by Instance (#261)
* Patches to get 1.17 working, need to revise into real solutions.

* Add version.jar to cp until 1.17.

* Add server selection button to Java settings tab in preparation for by-instance java settings.

* Java settings by instance

* Use classpath flag instead of hardcode.

* Support 1.19.

* Fix refresh of java exec details.

* Add doc.

* Fix auto download of jdk 17.

* Dependency upgrade.
2022-11-27 18:13:50 -05:00
Daniel Scalzi
190bb4cf85
Electron 21, replace status api, dependency upgrade. 2022-11-06 22:39:07 -05:00
Daniel Scalzi
58e68c116c
Microsoft Authentication (#216) 2022-02-11 19:51:28 -05:00
Daniel Scalzi
ad47617cd0
Replace mojang.js with helios-core implementation.
Updated: Mojang Auth, status check (pending rework).
2022-02-06 18:23:44 -05:00
Daniel Scalzi
9c6d75f812
Implement helios-core and use Server List Ping protocol. 2021-10-31 02:20:03 -04:00
Daniel Scalzi
430e840514
Update JDK handling to account for AdoptOpenJDK migration to Adoptium.
Fix bug with AdmZip by replacing it for the jdk extraction task. It will have to eventually be replaced for everything else.
Remove disclaimer about Oracle JDK, as it is no longer used.
2021-10-14 23:17:40 -04:00
Peter
54e6572754
Use MCHeads instead of Crafatar (#181)
* Update landing.js

This changes the Skin/Avatar server displayed on the landing page to one that displays the hat layer which then features the skin correctly.

* Create landing.js

This changes the Skin/Avatar server displayed on the landing page to one that displays the hat layer which then features the skin correctly.

* Updated remaining Crafatar URLS

Changed Crafatar URLS to matching mc-heads url.
2021-07-19 11:08:55 -04:00
Daniel Scalzi
2743585b12
Dependency upgrade, fix status (#138). 2021-02-01 18:05:45 -05:00
Daniel Scalzi
8723a192b4
Minecraft.net status works again, dependency upgrade. 2020-12-09 20:06:10 -05:00
Daniel Scalzi
c0776dcf61
Set broken mojang services to green until their API is fixed. 2020-09-13 13:35:49 -04:00
Daniel Scalzi
bd19b16530
Include user's displayName in server joined regex. 2020-08-25 17:11:40 -04:00
Daniel Scalzi
eeaa2e98d0
Update RPC game joined regex. (closes #80) 2020-06-29 11:28:55 -04:00
Daniel Scalzi
71b25d3e5c
Minor fixes and improvements.
Fixed issue with passing fullscreen argment to 1.13+, although it doesnt seem to be working well clientside.
Improved the forge version check logic.
Fixed launch area toggling and added a min linger time so that the transition doesnt look abrupt.
Upgraded dependencies.
2020-06-08 14:00:07 -04:00
Daniel Scalzi
141a753893
Electron 8. 2020-03-18 19:54:46 -04:00
Daniel Scalzi
cbc8b07467 Rebrand to Helios Launcher. 2019-09-05 16:08:47 -04:00
Daniel Scalzi
d94365f535
Use OpenJDK downloads instead of Oracle (no longer possible).
Makes use of https://adoptopenjdk.net/, star them on GitHub, great product.
2019-06-02 18:11:39 -04:00
Daniel Scalzi
c141475404
Initial work on localization. 2019-04-07 23:33:40 -04:00
Daniel Scalzi
644a32de37
Start removing specific branding. 2019-03-06 00:37:31 -05:00
Daniel Scalzi
5c0a293390
Break up assetguard. 2019-03-05 23:05:01 -05:00
Daniel Scalzi
81367bc619
1.13 Update Phase 1
Mojang has changed its manifest format for 1.13.
Forge is no longer a universal jar, it requires more hosted files, all of which are generated by the installer.
We can no longer extract the version manifest from forge's jar and have to include it in the distribution.
This commit adds support for launching forge only, mods are currently not supported from the distribution.
Handling of 1.13 launches are subject to change as we move forward.
2019-02-18 06:31:01 -05:00
Daniel Scalzi
8c0bf8faac
Improve error handling during launch (#21)
If anything happens to the forked process, the main should now pick up on it and alert the user.
Should no longer get 'stuck at 100%' issues when the forked process fails, for whatever reason.
2019-01-20 06:55:13 -05:00
Daniel Scalzi
de15440e6d
Added option to change data folder location. (#17)
Removed commonDirectory.
Removed instanceDirectory.
Added dataDirectory. The common and instance directories are now resolved from this.
The config.json and distribution.json are now stored in Electron's data folder (app.getPath('userData')).
Users can edit the dataDirectory under launcher settings.
2019-01-04 14:25:27 -05:00
Daniel Scalzi
d7fe519923
Preliminary Java 9+ Support (#20).
We will still not allow these versions to be used until they have been fully verified on our far-future 1.13 test server.
2018-12-31 10:39:27 -05:00
Daniel Scalzi
684e884d9c
Mod config bug fixes, electron upgrade.
If the instance mods directory does not exist when the 'Add Drop-In Mod' button is clicked, it will be created.
The update selected server code has been modified. Previously, the server would be updated before the mod config was saved. This has been fixed so that the mod config is saved before the server is switched.
Updated electron to v3.0.10.
2018-11-20 05:19:59 -05:00
Daniel Scalzi
e6b9728fe5
Updated electron-builder, electron-updater. 2018-11-09 01:03:28 -05:00
Daniel Scalzi
b2e9223b10
Updated to Electron v3.0.0, renderer to node v10.
Fixed deprecation of Buffer constructor in node v10.
Set flag to print the stack trace of node warnings in the renderer.
2018-09-22 05:07:18 -04:00
Daniel Scalzi
2a9db6c646
Various fixes to New UI.
Add proper styling for spoiler blocks. (#6)
Fixed minor issue with relative url replacement regex.
Upgraded eslint@5.5.0
2018-09-05 02:30:26 -04:00
Daniel Scalzi
0346597afe
Wrap calls to console.log through LoggerUtil (prefixes). 2018-08-22 14:21:49 -04:00
Daniel Scalzi
37606dc8d2
Improvements to overlay keybinds.
Added dynamic keybinder for overlays. If dismissable, the Escape key will dismiss the overlay. If not dismissable, Enter & Escape will trigger the main button.
If the selected account is not valid and you have more than one other account, you may cancel logging in to return to the original error overlay.
Updated electron-builder@20.28.2.
Fixed minor bug where the background of the settings UI was set to transparent. This occurred if the validation error overlay was shown on the settings UI, and you chose the login option.
2018-08-22 10:54:09 -04:00
Daniel Scalzi
afe69a21c6
Small changes and cleanup to Java related UI.
The manual installation overlay now links to the Java Management wiki article.
The Available Options for Java 8 href now links to the os-specific page (/windows for windows, /unix for macOS and Linux).
The default config now uses the same value as max ram for min ram.
2018-08-20 04:02:27 -04:00
Daniel Scalzi
58a8215b05
v1.0.0-beta.3 - Added error handling for LaunchWrapper failure.
Fixes #5.
2018-08-19 03:16:08 -04:00
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
Daniel Scalzi
ff3f2bfb8d
Added server status bar to the top of the mods tab.
The user is also given the option to switch servers from this status bar.
2018-08-07 00:58:32 -04:00