Commit Graph

235 Commits

Author SHA1 Message Date
Daniel Scalzi
590cefc5d4 Electron 6, dependency upgrade. 2019-08-26 17:57:27 -04:00
Daniel Scalzi
0194c2b6f1 Node v12, Dependency Upgrade. 2019-07-11 20:51:58 -04:00
Daniel Scalzi
555cb0125c
Electron@5 2019-06-02 16:15:57 -04:00
Daniel Scalzi
68362021f5
Dependency upgrade. 2019-05-28 21:34:19 -04:00
Daniel Scalzi
b54b206b9a
Use programmatic API from Electron-Builder.
It seems that the package-json based configuration is deprecated.
See https://github.com/electron-userland/electron-builder/issues/3751
2019-04-23 17:35:07 -04:00
Daniel Scalzi
ef112cef3a
Updated dependencies. 2019-04-23 17:06:05 -04:00
Daniel Scalzi
a0520a9458
Updated dependencies. 2019-03-17 23:11:31 -04:00
Daniel Scalzi
448440a604
VersionJar is not needed. (#26) 2019-03-06 22:47:45 -05:00
Daniel Scalzi
644a32de37
Start removing specific branding. 2019-03-06 00:37:31 -05:00
Daniel Scalzi
1fc118ee8c
Updated forge 1.13 configuration, updated dependencies. 2019-02-28 19:40:38 -05:00
Daniel Scalzi
e08c3a903a
Add support for mod loading on Forge 1.13. 2019-02-18 18:17:31 -05:00
Daniel Scalzi
e8e7f85c64
Updated deps. 2019-02-17 19:21:23 -05:00
Daniel Scalzi
6b96770c98
Update dependencies (clean install). 2019-02-12 19:20:54 -05:00
Daniel Scalzi
46f8b195d6
v1.5.2 2019-02-05 17:35:31 -05:00
Daniel Scalzi
c74e3f0676
Updated dependencies. 2019-02-05 17:06:45 -05:00
Daniel Scalzi
8bd040aece
v1.5.1 2019-01-20 22:32:23 -05:00
Daniel Scalzi
3e20b1f63a
Updated dependencies. 2019-01-20 06:59:56 -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
e12197526d
Allow users to change install directory on windows. 2019-01-02 18:48:00 -05:00
Daniel Scalzi
d2982ca387
v1.4.1 - Forge 1.12.2 (4/10) + requires absolute: prefix. 2018-12-31 11:27:40 -05:00
Daniel Scalzi
a4d4b69791
Initial work on shader options, electron@4. 2018-12-21 06:51:08 -05:00
Daniel Scalzi
f5b1418d18
Reduced size of background 7. Removed some unused images.
7.jpg : 24MB -> 5MB
Updated electron, electron-builder.
2018-12-21 02:29:33 -05:00
Daniel Scalzi
f65793c0fb
Previous commit should have been v1.3.0.
A new feature is included in this version, requiring a minor bump.
2018-12-17 00:36:19 -05:00
Daniel Scalzi
001a2cbe81
v1.2.1 - Fixed issue w/ native lib parsing.
In 1.12.2, some natives do not provide a rules
object and instead just omit the classifier
from the natives object. We now check for that.

Updated electron to v3.0.12.
2018-12-17 00:11:23 -05:00
Daniel Scalzi
f613bdba4d
Updated dependencies. 2018-12-14 00:27:15 -05:00
Daniel Scalzi
f5ce7734b8
Ensure mods dir exists on file drop. 2018-12-01 10:06:23 -05:00
Daniel Scalzi
d779eacf61
Added drag/drop functionality to the add mods button.
You can now drag one or more files onto the add mods button in order to add them to the mods directory. Only jar, litemod, and zip files will be moved.
Changed eslint to use a single configuration file, with overrides for the UI scripts.
Now using fs-extra, replace usages of rimraf and mkdirp with fs-extra functions.
2018-12-01 08:20:42 -05:00
Daniel Scalzi
d9c9b32446
v1.2.0 2018-11-25 22:48:23 -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
79d1d59451
v1.1.0 2018-11-18 22:17:18 -05:00
Daniel Scalzi
c6051f9942
v1.1.0-pre.2 2018-11-18 22:03:17 -05:00
Daniel Scalzi
acd6143d30
Modify AutoUpdater behavior on macOS.
The AutoUpdater requires that macOS builds be code signed. That is currently not possible.
As a workaround, the autoupdater on mac will now alert users that an update is available and give the option to download the file directly from GitHub.
Closes #16.
2018-11-18 21:51:48 -05:00
Daniel Scalzi
11cb9e6c28
v1.0.6-pre.2 2018-11-18 17:08:50 -05:00
Daniel Scalzi
37d35a6938
Updated electron-updater to v4 2018-11-17 23:30:44 -05:00
Daniel Scalzi
affacbf56e
Cleanup 2018-11-11 18:28:58 -05:00
Daniel Scalzi
e6b9728fe5
Updated electron-builder, electron-updater. 2018-11-09 01:03:28 -05:00
Daniel Scalzi
ee2a4a9319
v1.0.5 2018-11-06 02:46:36 -05:00
Daniel Scalzi
a9f12ee329
Fixed 'Failed to verify username.'
Send first request without clientToken, store the returned clientToken, use that for subsequent requests. Dont generate random UUID for clientToken, it can sometimes be 'bad'.
Removed dependency 'uuid'.
Updated 'electron-builder'.
2018-11-04 02:03:55 -05:00
Daniel Scalzi
eb946d6a2a
v1.0.5-pre.2 - Further work on investigating mac issue.
Upgraded xcode image to v10.
Added proper handler for auto-update errors.
Upgraded dependencies.
2018-11-01 17:37:05 -04:00
Daniel Scalzi
b7f03fa778
v1.0.5-pre.1 - Investigating dmg auto-update issue. 2018-10-31 20:44:35 -04:00
Daniel Scalzi
ce86840a87
v1.0.4 - Logic cleanup, minor bug fixes.
Removed the old workaround logic for queueing archives for extraction.
Removed the old forge callback (this was replaced a while ago).
Fixed a typo in _parseDistroModules (getType).
Use discordrpc straight from the repository. The author has refused to push the bugfix for nearly a month.
Fix timestamp issue on discord rich presence.
Dependency upgrades.
2018-10-31 01:25:38 -04:00
Daniel Scalzi
96d08955a4
v1.0.3 - Moved from deprecated mojang endpoint, dep upgrade. 2018-10-28 17:19:41 -04:00
Daniel Scalzi
2b10133f88
v1.0.3-pre.2 - Updated dependencies. 2018-10-28 16:46:53 -04:00
Daniel Scalzi
92a8b431d6
Electron-updater should be at ^3.1.3 2018-10-25 13:39:36 -04:00
Daniel Scalzi
1a3acec994
v1.0.3-pre.1 2018-10-25 12:53:52 -04:00
Daniel Scalzi
8a7b947500
Move back to electron-updater (fix included), dep upgrade. 2018-10-25 12:51:51 -04:00
Daniel Scalzi
23cb2b8164
v1.0.2 2018-10-14 23:16:14 -04:00
Daniel Scalzi
d54a20a002
v1.0.2-pre.4 2018-10-14 19:44:40 -04:00
Daniel Scalzi
e6874b50bb
Rename electron-updater to electron-updater-bin for now. 2018-10-14 19:08:47 -04:00
Daniel Scalzi
b93ecf29e3
v1.0.2-pre.3 2018-10-14 18:42:13 -04:00
Daniel Scalzi
2da80c2047
Upgraded deps. 2018-10-05 22:24:55 -04:00
Daniel Scalzi
5c9b5d9398
v1.0.2 - Updated Electron to v3.0.0, more 2018-09-26 13:04:46 -04:00
Daniel Scalzi
2090021b30
v1.0.2-pre.1 2018-09-23 02:20:51 -04:00
Daniel Scalzi
3acc213544
electron-is-dev is now useless, use our own copy. 2018-09-23 02:19:16 -04: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
53fcf6773a
Upgraded dependencies. Unpinned Node.js minor version. 2018-09-18 00:06:20 -04:00
Daniel Scalzi
514b952cf4
v1.0.1
Fixes #6
2018-09-05 13:55:17 -04:00
Daniel Scalzi
8fc2ebf831
Upgraded Node.js to v10.9.0 2018-09-05 13:47:59 -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
7851fdbefb
v1.0.0 2018-08-31 12:42:18 -04:00
Daniel Scalzi
cf7e9adb89
v1.0.0-beta.6 - Revert UUID related change, updated deps. 2018-08-29 13:24:48 -04:00
Daniel Scalzi
70b83a6397
v1.0.0-beta.5 - Fixed Mojang issue resulting in "Failed to verify username" for specific users.
The Mojang API may randomly return extraneous spaces around the displayName and username fields. Launching the game with these values will result in the aforementioned error. The launcher now trims these values as a precautionary measure.
2018-08-24 15:17:32 -04:00
Daniel Scalzi
29a8f2a345
v1.0.0-beta.4 - Updated electron to v2.0.8 2018-08-22 17:59:38 -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
58a8215b05
v1.0.0-beta.3 - Added error handling for LaunchWrapper failure.
Fixes #5.
2018-08-19 03:16:08 -04:00
Daniel Scalzi
845721a830
Encode game stderr stream in utf-8. Updated deps.
semver@5.5.1
esline@5.4.0
2018-08-19 00:42:52 -04:00
Daniel Scalzi
50317c3fc2
v1.0.0-beta.2
Fixed bug which prevented mods with declared extensions in their identifiers from being loaded.
Synced distribution.json with remote.
Updated electron-builder.
Updated readme to include information on beta testing.
2018-08-15 09:17:59 -04:00
Daniel Scalzi
d581a2896a
v1.0.0-beta.1 2018-08-14 01:00:47 -04:00
Daniel Scalzi
e602848f9c
Upgraded Node.js to v10.8.x.
Switched npm to use UNLICENSED (All Rights Reserved).
Added option to build debian (.deb) binary. (#3)
2018-08-14 00:53:32 -04:00
Daniel Scalzi
4d2f50b136
v0.0.1-alpha.18 2018-08-13 08:28:51 -04:00
Daniel Scalzi
96d393696d Updated deps.
electron@2.0.7
electron-builder@20.27.1
electron-updater@3.1.1
2018-08-11 04:34:42 -04:00
Daniel Scalzi
2ec91a633b
v0.0.1-alpha.17 2018-08-07 04:55:25 -04:00
Daniel Scalzi
7301dfc71a
Updated deps. 2018-08-07 00:01:26 -04:00
Daniel Scalzi
6e71cd6b46
v0.0.1-alpha.16 - Fixed download errors.
Fixed error 'self signed certificate in certificate chain'.
Disabled reject unauthorized in assetexec process.
Fixed error messages from assetexec to renderer.
Updated elctron-builder to v20.25.0.
2018-07-26 04:30:47 +02:00
Daniel Scalzi
5bceaa92d0
Updated electron-builder to v20.24.5 2018-07-23 17:20:42 -04:00
Daniel Scalzi
372a76b0f2
v0.0.1-alpha.15 2018-07-22 23:40:45 -04:00
Daniel Scalzi
810e81521c
Added eslint. To lint, npm run lint.
Linted the entire project. Using different rules for the script files
as there are a lot of undefined variables just because of the way the
DOM's global scope works.

Mostly just code cleanup, however the linter did catch a minor bug with
a settings regex. That has been corrected.
2018-07-22 13:31:15 -04:00
Daniel Scalzi
ededf85892
Update deps: electron-builder@20.24.4 electron-updater@3.0.3 2018-07-22 12:02:43 -04:00
Daniel Scalzi
7dcce68455
Updated Distribution Index spec and impl.
Added distromanager.js to represent distro elements.
Moved all distro refresh code to distromanager.js.
Overhauled assetexec.js.
Overhauled handling of assetexec.js output in landing.js.
Overhauled events emitted by assetguard.js.
Improved doenload processing in assetguard.
Updated discord-rpc to v3.0.0.
Replaced westeroscraft.json with distribution.json.
Use npm in travis for windows + linux.
Remove file extension from imports.
Added liteloader + macromod + shaders to distribution.json.
2018-07-22 11:40:15 -04:00
Daniel Scalzi
5b0b1924cf
Updated dependencies. 2018-07-14 14:00:37 -04:00
Daniel Scalzi
97979df431
Upgraded dependencies, pinned Node.js version. 2018-07-05 21:06:06 +02:00
Daniel Scalzi
651c2d6f35
Updated electron-builder to v20.19.1. 2018-06-30 15:32:37 -04:00
Daniel Scalzi
52d90276bf
Added styling for github syntax highlighting. 2018-06-30 14:23:42 -04:00
Daniel Scalzi
13a6dcea63
v0.0.1-alpha.14 2018-06-30 04:00:04 -04:00
Daniel Scalzi
dab195a996
Fixed travis build script.
Upgraded from xcode 9.2 to 9.4.
Use yarn instead of npm for windows and linux builds.
Unpin minor version of node in package.json.
2018-06-30 00:28:45 -04:00
Daniel Scalzi
aa48a756c5
Updated dependencies. 2018-06-29 18:44:36 -04:00
Daniel Scalzi
f44d3b69d3
v0.0.1-alpha.13 - Updated tar-fs. 2018-06-20 09:18:09 -04:00
Daniel Scalzi
109c24bc79
Added option to change the Java exec to the settings UI. 2018-06-14 03:49:55 -04:00
Daniel Scalzi
7cf0e1f049
Various CSS updates.
Most of the UI is now unselectable.
The account selecton styles now conform with the auth account styles.
2018-06-12 04:12:22 -04:00
Daniel Scalzi
1fd69207c0
Added .nvmrc file (#1) 2018-06-11 22:16:01 -04:00
Daniel Scalzi
05fe516249
v0.0.1-alpha.10 - Hotfix for startup error. 2018-06-04 20:06:34 -04:00
Daniel Scalzi
50d85d30cc
v0.0.1-alpha.9 - Added option to enable/disable prereleases.
Added option to enable/disable prerelease updates.
Implemented launcher tab on the settings UI, as this is the only current value.
Added semver dependency.
2018-06-04 19:34:47 -04:00
Daniel Scalzi
790a3e0e8b
v0.0.1-alpha.8 - Implemented Minecraft Settings Tab.
Implemented minecraft settings tab.
Updated distro index documentation to reflext the file system overhaul.
2018-06-04 16:28:17 -04:00
Daniel Scalzi
97e9c15baf
Updated discord-rpc, changed ad hoc fix to api fix. 2018-06-03 15:35:39 -04:00
Daniel Scalzi
74a60a61c2
v0.0.1-alpha.6 - Finalizing the settings account tab.
Added a done button which closes the settings UI.
Displays a warning before the user logs out of the last saved account. If they proceed with the logout, they will be redirected to the login UI.
Added startup handling for when the user has 0 saved accounts. They will be brought directly to the login UI.
Accounts are now validated each time they are switched.
2018-05-30 23:32:51 -04:00
Daniel Scalzi
daa6faac86
v0.0.1-alpha.6
Fixed AuthManager sending incorrect client token to the auth endpoint.
Fixed minor issues with the validate selected function.
Fixed minor issue related to UI transitions.
Added account validations on startup and when account is switched.
Updated dependencies.
2018-05-29 21:47:55 -04:00
Daniel Scalzi
e9e2ec162a
Added settings container, updated dependencies. 2018-05-22 22:34:35 -04:00
Daniel Scalzi
a67dac23cf
Fixes related to offline startup.
Fixed incorrect function name for local distro index loading.
Fixed mojang tooltip not showing statuses when offline.
Added timeout of 2500ms to news loading, remote distro index retrieval, and mojang status loading.
Updates async to fix lodash vulnerability.
2018-05-22 08:41:22 -04:00
Daniel Scalzi
ba916aa953
v0.0.1-alpha.5
Added tooltip UI which shows the status of each Mojang service.
Updated dependencies.
2018-05-17 03:11:44 -04:00
Daniel Scalzi
f5f5b72bed
Fixed nsis installer opening application twice.
Updated electronupdater, should fix the nsis issue.
2018-05-15 07:53:37 -04:00
Daniel Scalzi
f4abbef58c
Increasing version, various small fixes.
Fixed launcher.js not checking the correct return value when verifying the configured Java executable.
Removed debug logging from configmanager.js.
Updated dependencies.
2018-05-15 06:07:28 -04:00
Daniel Scalzi
49bad485f6
Upgrading ejs-electron to fix startup error. 2018-05-10 21:06:59 -04:00
Daniel Scalzi
0d11749ad4
Updating dependencies to fix mime vulnerability. 2018-05-10 19:20:58 -04:00
Daniel Scalzi
e3890b2057
v0.0.1-alpha.3 - Updated dependencies. 2018-05-10 05:56:19 -04:00
Daniel Scalzi
f0b21330a0
v0.0.1-alpha.2 Fixed console.debug error. 2018-05-10 00:22:00 -04:00
Daniel Scalzi
f1a98f2d45
Added mojang account validation UI.
Other minor fixes included. Bumped version from dev to alpha. Testing to begin soon.
2018-05-09 22:23:37 -04:00
Daniel Scalzi
0c1ebd0ce0
Distribution data is now pulled from our servers. 2018-05-07 01:34:57 -04:00
Daniel Scalzi
40de1e3cd3
Added News UI.
Added News UI and implemented functionality.
Removed westeroscraft.xml as we don't need to cache it.
Updated westeroscraft.json.
Updated Electron to v2.0.0
2018-05-06 21:45:20 -04:00
Daniel Scalzi
f1cf433ca8
Fixed issue where extraction library could not be run from asar. 2018-04-28 18:07:39 -04:00
Daniel Scalzi
95afe5c63a
Added basic auto update implementation. 2018-04-28 16:26:38 -04:00
Daniel Scalzi
5b74ecef21
Experimental changes in preparation for auto-update support. 2018-04-28 04:16:09 -04:00
Daniel Scalzi
1a7c8fd70f
Fixing request dependency. 2018-04-27 00:33:30 -04:00
Daniel Scalzi
ae3c8854f4
Upgrading Node.js from 8.11.x to 10.0.x. 2018-04-26 19:44:30 -04:00
Daniel Scalzi
5fe43ac8e9
Added basic functionality to server selection UI.
Basic selection and updating of the selected server has been added. There are a few subtle mechanics which need to be added still, such as keybind shortcuts (enter to submit, etc). In addition, functionality still needs to be added to generate the list of servers from the manifest file.

Fixed a minor issue with the login view.
Updated play button styles.
Updated dependencies.
2018-04-26 18:41:26 -04:00
Daniel Scalzi
be39d60705
Native files are now stored in the OS temp directory.
Temp folder is deleted when minecraft is closed. If the Node.js process ends abruptly, the folder will not delete. As a dirty way to counter this, the directory we extract native files to is cleaned in the preloader. Maybe we'll come up with a more elegant solution in the future.
2018-04-15 00:00:08 -04:00
Daniel Scalzi
8d682b15b3
Added remove account function to config manager. 2018-04-08 20:56:44 -04:00
Daniel Scalzi
9b4a2d4ef9
Added travis build script. 2018-04-08 13:32:27 -04:00
Daniel Scalzi
0a79634b8a
Implemented Java validations within the UI.
When a user attemps to launch, the configured Java executable will be validated. If it is invalid, we will look for a valid installation. If no valid installation is found, the user will be prompted with an option to install Java. An option to decline needs to be added. If they choose to install, it will download, extract, and update the executable in the config. The game will then be launched.

Also added progress tracking for asset validations, as they can potentially take a bit longer. Showing progress assures the user that the program isn't stuck or broken.
2018-04-07 18:06:49 -04:00
Daniel Scalzi
7fb33c6813
Rough completion of JRE downloads from oracle.
Mojang fallback cannot be implemented due to limitations of decompressing large lzma files in node.js. This can probably be worked around by packaging with some command line binary, but it honestly it not worth it.
2018-03-31 20:45:24 -04:00
Daniel Scalzi
ae387757bc
Discord-rpc has resolved the issue with the timeout function, updating to beta 10. Updating to node.js 8.11.x. 2018-03-31 13:46:52 -04:00
Daniel Scalzi
d3c5997baa
Initial work on Java detection/validation system. 2018-03-28 16:13:57 -04:00
Daniel Scalzi
5e8342aec9
Updating dependencies. 2018-03-28 09:45:08 -04:00
Daniel Scalzi
454964ce0b Initial work on welcome view, upgraded dependencies. 2018-02-19 20:27:42 -05:00
Daniel Scalzi
6c5e9303b4 Added more configuration options for electron-builder, removed electron-packager scripts and dependency. Investigating ways to run multi-platform builds efficiently. 2018-01-24 16:23:44 -05:00
Daniel Scalzi
69f9d297d0 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
Daniel Scalzi
e7785fa603 Updating dependencies. 2018-01-19 00:33:05 -05:00
Daniel Scalzi
5afd9815a5 Switches to use internal mojang accessors and removed 'mojang' as a dependency. First attempt at authentication storage, system will be refinded as UI is implemented further. All auth interactions should be made throught authmanager.js 2017-12-03 08:12:55 -05:00
Daniel Scalzi
4c2c46f535 Beginning work on configuration management, updates to UI to prevent unresponsive behavior, bug fixes.. 2017-11-30 01:40:56 -05:00
Daniel Scalzi
dbf024cce6 Added buildscripts to npm package.json 2017-11-27 16:56:26 -05:00
Daniel Scalzi
2df6c82177 Updating modules (npm update), adding package-lock.json 2017-11-18 23:25:52 -05:00
Daniel Scalzi
246def86d8 Upgrading Node.js Engine to v8.9.0 2017-11-07 14:51:43 -05:00
Daniel Scalzi
1654e7a2c4 Added node engine to package.json, bumped node version to 8.6.x 2017-10-04 22:38:05 -04:00
Daniel Scalzi
582ea96dfe Updated dependencies (delete node_modules, npm install), included windows page script, changed to ejs (for now), initial work on the new design. 2017-08-27 01:13:48 -04:00
Daniel Scalzi
75af2726db Damage control pass 1 2017-05-17 03:31:42 -04:00
Matan Rak
ab74dd39c5 Matan merge 2017-05-17 09:26:46 +03:00