Commit Graph

60 Commits (fc81016dc695ce2593b97ae88d20edd488b64fdb)

Author SHA1 Message Date
Daniel Scalzi fc81016dc6
More updates for Java validations on darwin.
Also, now require version 8u52+, as pack200 algo changed after 8u45.
2018-04-12 21:38:27 -04:00
Daniel Scalzi 2a551f18ba
Fixing default zoom level (darwin). 2018-04-12 18:39:31 -04:00
Daniel Scalzi f257208e2f
Disable zoom on UI (darwin). 2018-04-12 18:13:09 -04:00
Daniel Scalzi 05ebb80f19
Fixing variable rename typo. 2018-04-12 16:42:26 -04:00
Daniel Scalzi 4eb9d267eb
First attempt at Java validations for darwin (osx). 2018-04-12 16:12:45 -04:00
Daniel Scalzi 8d682b15b3
Added remove account function to config manager. 2018-04-08 20:56:44 -04:00
Daniel Scalzi 5a8ae0485a
Minor fixes for the Java download error overlay. 2018-04-07 18:24:13 -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 9b63d9bb58
Integrating new overlay mechanics with login view.
Removed login.ejs-specific overlay. Removed blur transition and reduced overlay fade from 500ms to 250ms. Minor modification to the overlay css.
2018-04-07 13:29:40 -04:00
Daniel Scalzi 5335e0124b
Further work on overlay mechanism. 2018-04-06 12:33:20 -04:00
Daniel Scalzi 92cb88a23a
Removing deprecated files (javaguard.js, index.ejs). 2018-04-04 15:46:19 -04:00
Daniel Scalzi 5c7e0c3c8a
Various additions and fixes to the launch controller.
Fixed an issue with concurrency when there are no downloads queued on launch. Added support for static function execution in AssetExec. Fixed a binding issue in uicore.js caused by delayed div loading. For now the solution is just hard coding in the value, will probably switch these two a css file later on. Included the launcher's x64 runtime directory in Java scans.
2018-04-02 18:40:32 -04:00
Daniel Scalzi ec9e95c130
Working on binding each view together.
Separate views are stored in an ejs file. When the app starts, each file will be loaded, with the DOM elements hidden. Based on the state of the application, a specific view will be fadded in. Switching between views will use this principle.

Moved contents of index.ejs to landing.ejs to make it compatible with the new format. As a result, index.ejs is deprecated and will be removed once it is no longer needed for reference.
2018-04-02 16:05:48 -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 13cc555afd
Game now saves to OS-specific data directory. Fixed issue where logs folder did not save to correct location. Fixed issue with authentication code. Continuing work on Java validation code. 2018-03-31 13:05:05 -04:00
Daniel Scalzi f8131d9322
First phase of moving Java validation code to assetguard.js
Static utility functions have been moved. Functions which handle Java downloads will be moved next. AssetGuard is becoming a lengthy file, to cope with this I've added region comments so that specific sections can be collapsed and expanded when needed.
2018-03-30 08:31:54 -04:00
Daniel Scalzi aacf15efc5
Using object for JavaGuard. May move java downloading processes to AssetGuard as a non-default category. Very much a WIP. 2018-03-29 19:45:05 -04:00
Daniel Scalzi 2062865e7f
Got Java download working, just need to integrate it into the program and add some safeguards to the code. 2018-03-28 21:19:56 -04:00
Daniel Scalzi 4b2cac1eff
Completed Java validation for windows.
Possible paths are pulled from the registry and JAVA_HOME. These are sorted by version and whether they point to a JRE or JDK. Each path will be validated using an experimental option which yields the arch of the binary. The first one to  be validated will be selected and returned.
2018-03-28 17:13:11 -04:00
Daniel Scalzi 4fd202d180
Cleaning up jsdocs to be more aligned with the standard. 2018-03-28 16:42:10 -04:00
Daniel Scalzi d3c5997baa
Initial work on Java detection/validation system. 2018-03-28 16:13:57 -04:00
Daniel Scalzi 8ea4ae8ec2 Adding login functionality to login view (connection with authmanager). 2018-01-29 01:23:20 -05:00
Daniel Scalzi e7785fa603 Updating dependencies. 2018-01-19 00:33:05 -05:00
Daniel Scalzi d4d7be7c47 Rewrote frontend download download function to make use of forked processes. This means that the download runs in full async (essentially in a separate thread). Updated the discord wrapper to be more dynamic. Updated auth manager to use async/await. 2018-01-18 23:45:50 -05:00
Daniel Scalzi 1d10b0209a Minor fix to mojang api wrapper, removing default option on client token configuration, updating logo to scaled version. 2018-01-18 23:41:03 -05:00
Daniel Scalzi 6d6d876aa5 Changed devtools keybind from 'wcdev' in sequence to 'ctrl + shift + i'. 2018-01-18 23:37:59 -05:00
Daniel Scalzi 45998a2239 Bug fixes for discord rich presence.. all appears to work now. 2017-12-03 08:54:10 -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 3c7d7d79af Added mojang functions, most of which are pending testing. Once testing is complete, the external 'mojang' module will be removed. The 'Mojang Status' are on the landing page is now displaying the actual statuses of mojang's services. This will be refreshed once every 5 minutes. Enhancements will be made to the UI of this down the line. 2017-12-03 07:05:13 -05:00
Daniel Scalzi a4012458be Further work on discord rich presence. Current implementation is untested. 2017-12-03 02:13:42 -05:00
Daniel Scalzi 98684a9c1f Removed enumerator, converting to static Config Manager (fixes so many issues), constants will now be stored by config manager in an internal object. 2017-12-03 00:38:22 -05:00
Daniel Scalzi 0dde4bce42 Changes to prevent cyclic dependencies. 2017-12-02 22:41:47 -05:00
Daniel Scalzi 086bfc8593 Added dynamic detection of default server. 2017-12-02 02:59:25 -05:00
Daniel Scalzi 52ab270ce3 Large update to AssetGuard to make the module purely object based. This fixed several issues which were present with the static implementation and seems to have increased performance. Several other bugs related to the front-end scripts have been fixed. 2017-11-30 03:00:06 -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 aac789bf2c Added new progress bar UI, massive improvement. 2017-11-27 20:49:50 -05:00
Daniel Scalzi dd9e1418c8 Added progress tracking to landing page. Fixed exclusions when extracting native files, fixed minor issue with config manager, optimizations and improvements to assetguard. 2017-11-27 04:31:54 -05:00
Daniel Scalzi 5352239f91 Minor fixes, beginning work on configuration system. 2017-11-22 05:48:40 -05:00
Daniel Scalzi c74006357e Minor modification to allow for base module library detection. 2017-11-19 04:12:41 -05:00
Daniel Scalzi dd7ae6bf56 Massive progress on implementing the new forge modlist format. I have been able to rewrite much of the launch process code to use this new method, and was able to successfully log into the game. Several bugs need to be worked on, however everything is in a good state so far. 2017-11-19 03:48:21 -05:00
Daniel Scalzi abbfb52c1b Fixed bug with hashless assets, updating distro index. 2017-11-19 00:41:36 -05:00
Daniel Scalzi 246def86d8 Upgrading Node.js Engine to v8.9.0 2017-11-07 14:51:43 -05:00
Daniel Scalzi 6eb6177d4b Beginning work on new UI for landing page and the modlist resolver/process builder. 2017-09-12 00:50:41 -04:00
Daniel Scalzi 0d013f7d6f Added home page structure 2017-08-29 16:40:42 -04:00
Daniel Scalzi 455f199457 Updating paths broken by refactoring, added temp debug button, updated production file index. 2017-08-27 03:49:03 -04:00
Daniel Scalzi 700a5c50cf Added handlers to the frame buttons. 2017-08-27 02:24:04 -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 6a44694a32 Removing old and deprecated assets in preparation for the new design. 2017-08-26 14:43:24 -04:00
Daniel Scalzi f8a0805c8c Working on concepts for login UI. 2017-05-23 01:45:20 -04:00