Daniel Scalzi
5475ac0c69
Added function to remove an authenticated account to authmanager.js.
2018-04-14 22:43:58 -04:00
Daniel Scalzi
631c3cd6d4
Added option to dismiss Java download prompt.
...
You will be given an option to install Java manually. Selecting this will bring you to a final prompt which gives some useful information about installing Java and where you can find help. You have two options on this prompt. The first is to simply aknowledge it, which will dismiss it. The second is to go back to the first prompt.
2018-04-14 22:20:59 -04:00
Daniel Scalzi
66a3854a24
Better error handling with Mojang REST api.
...
Added handling for when there is no internet connection or Mojang's auth server is unreachable to both the login and status modules.
2018-04-14 18:42:45 -04:00
Daniel Scalzi
b5386c0257
Added dynamic frames for darwin + win32.
...
The darwin frame is the same as the original, however the button behavior is corrected. The win32 frame uses the traditional buttons found on windows. Also added a small logo image to the windows frame. Each frame is dynamically loaded on startup via ejs.
Also disabled the server selection test UI.
2018-04-14 16:54:10 -04:00
Daniel Scalzi
28cd147ca0
Fixing some syntax issues.
...
It was late, I was tired, this was the result.
2018-04-12 22:40:48 -04:00
Daniel Scalzi
12aa9f9c5b
Removing '/Contents/Home' from Java root on darwin to have the code rely on the resolve executable method.
2018-04-12 22:13:26 -04:00
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
40a02726ad
Updated welcome text, testing a potential server selection UI.
2018-04-10 16:35:31 -04:00
Daniel Scalzi
8d682b15b3
Added remove account function to config manager.
2018-04-08 20:56:44 -04:00
Daniel Scalzi
07946714cc
Adding form behavior to login.ejs.
...
Basic desired behavior which is now supported is submission when the enter key is pressed.
2018-04-07 20:41:09 -04:00
Daniel Scalzi
a16a22e2e1
Modifications to welcome view, smoothing welcome transitions.
...
Disabled clouds on welcome.ejs. Added some welcome text to replace the lorem ipsum. The alignment was also changed from center to justify, to make the UI look sharper. Transitions between each view was changed from 250ms to 500ms.
Removed some testing code from login.ejs.
2018-04-07 19:58:23 -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
c6f9121806
Making error overlay more generic, WIP
2018-04-02 22:43:11 -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
454964ce0b
Initial work on welcome view, upgraded dependencies.
2018-02-19 20:27:42 -05:00
Daniel Scalzi
8ea4ae8ec2
Adding login functionality to login view (connection with authmanager).
2018-01-29 01:23:20 -05:00
Daniel Scalzi
52aea274a7
Adding UI functionality to the login view.
2018-01-28 22:33:18 -05:00
Daniel Scalzi
d50b3d2d41
Improving styles for error spans.
2018-01-27 22:51:12 -05:00
Daniel Scalzi
1284c54525
Continuing work on login view, still a ways off from completion.
2018-01-27 22:29:15 -05:00
Daniel Scalzi
a3e7dfc570
Added styles for active elements on the login view. Made the frame buttons unfocusable by tabbing. Changed the login form from a form to a div, the form element is not what we want to use.
2018-01-24 17:35:06 -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
d7aa79f7d3
Unpacked Avenir.ttc to its several ttf components due to compatibility issues on older operating systems.
2018-01-23 21:16:10 -05:00
Daniel Scalzi
2e4a2be8b4
Adding focus and hover elements to the login view, minor change to svg style locations.
2018-01-23 18:07:18 -05:00
Daniel Scalzi
45997c17f5
Fixed transition error with login arrow button.
2018-01-23 15:41:01 -05:00
Daniel Scalzi
e236a38757
Cleaning up login code a bit, next stage is completing login responsiveness.
2018-01-23 02:41:46 -05:00
Daniel Scalzi
e555dd747f
Initial work on login UI. Will continue to experiment with the layout and tweak colors and sizing.
2018-01-22 19:51:14 -05:00
Daniel Scalzi
965b56c6bd
Switched to correct news icon.
2018-01-22 15:30:51 -05:00
Daniel Scalzi
d96766528e
Added an edit overlay to the user avatar.
2018-01-22 01:17:56 -05:00
Daniel Scalzi
aee8f016bf
Updated instagram logo, removed incorrect news logo (the one on the UI is temporary until the correct one is obtained), add responsiveness to the social media icons.
2018-01-21 23:26:51 -05:00
Daniel Scalzi
a6184c81d5
Added social media icons (tweaking/changes still needed). Initial work on organization of main css file.
2018-01-21 20:30:55 -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
2c7dc16247
Optimizations for dynamic background, pinned background to image 0 for development of the UI, tweaked menu button css.
2017-11-19 15:08:52 -05:00
Daniel Scalzi
0ec64e6ded
Added dynamic background, fixing menu button css
2017-11-19 14:16:07 -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
5ed660d3ab
Added all icons, working on implementing them into UI
2017-09-12 16:52:20 -04: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
02758b27b2
Added more UI elements.
2017-08-30 01:27:16 -04:00
Daniel Scalzi
0d013f7d6f
Added home page structure
2017-08-29 16:40:42 -04:00
Daniel Scalzi
8bb6df921c
Disable selection on the frame.
2017-08-28 21:14:05 -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
Matan Rak
caccf8db37
working on the new login concept.
2017-06-21 19:57:38 +03:00
Daniel Scalzi
f8a0805c8c
Working on concepts for login UI.
2017-05-23 01:45:20 -04:00
Daniel Scalzi
bb566471b8
Working on launch process code with forge. Pending cleanup and optimizations.
2017-05-21 18:06:48 -04:00
Daniel Scalzi
d00f09aaf0
Added hash validation for distro index, updated hashes.
2017-05-21 16:27:11 -04:00
Daniel Scalzi
daa5abd5bd
More progress on forge downloads. Added check for missing resources in the download stream.
2017-05-21 04:56:39 -04:00
Daniel Scalzi
247f63d64d
Starting work on forge downloads
2017-05-21 01:06:01 -04:00
Daniel Scalzi
bd503f71c8
Filled in version.json, added utility function.
2017-05-18 13:03:25 -04:00
Daniel Scalzi
a3c9130d7a
Added functionality to extract .pack.xz files. The npm modules available to do this were a mess, being either outdated or refusing to build on windows. In order to achieve this, I wrote up a small java library which will extract these files. We simply pass the files we want to extract to the command line using a corresponding argument and it does the rest. This should be no issue as we will always have a JRE present on this launcher, whether that be bundled or already installed.
2017-05-18 01:49:28 -04:00
Daniel Scalzi
cc25f2c2e0
Beginning work on launcher.
2017-05-17 17:44:46 -04:00
Daniel Scalzi
771b0984f1
Adding login box
2017-05-17 14:51:49 -04:00
Daniel Scalzi
c83809b0dc
Damage control pass 2
2017-05-17 05:03:09 -04:00
Daniel Scalzi
75af2726db
Damage control pass 1
2017-05-17 03:31:42 -04:00
Matan Rak
33a4e49401
Removing old index.html page
2017-05-17 10:06:52 +03:00
Matan Rak
77461fdac4
Matan merge try 2
2017-05-17 10:04:40 +03:00
Matan Rak
ab74dd39c5
Matan merge
2017-05-17 09:26:46 +03:00
Daniel Scalzi
51e75a610d
Added forge checksum validations.
2017-05-16 02:12:28 -04:00
Daniel Scalzi
1a403f34a3
Completed assetguard documentation
2017-05-14 13:42:16 -04:00
Daniel Scalzi
9fc1b1e40a
A few more jsdocs, will finish the rest tomorrow.
2017-05-14 04:57:29 -04:00
Daniel Scalzi
460c6c19fa
AssetGuard module being finalized, documentation in progress.
2017-05-14 04:37:38 -04:00
Daniel Scalzi
0dfb26f8fa
Progress towards final asset downloading system (assetguard).
2017-05-13 04:24:15 -04:00
Daniel Scalzi
f5702f62a6
Working on experimental features, optimizing downloads.
2017-05-12 04:30:55 -04:00
Daniel Scalzi
8173f85df0
Begining work on the UI, header is complete.
2017-05-09 00:56:08 -04:00
Daniel Scalzi
c41f74f478
Added more dynamic values for game launch, hotfix for electron installation bug.
2017-04-30 18:28:43 -04:00
Daniel Scalzi
d4caf1ad22
Successfully launched vanilla minecraft, however much code cleanup is pending.
2017-04-29 20:33:32 -04:00
Daniel Scalzi
b01f652d8c
Addes sha1 hash validation for all download processes - code is pending a final review/cleanup
2017-04-28 14:52:24 -04:00
Daniel Scalzi
cf0afeb957
Began working on launching minecraft process. Implementing hash validation for asset downloads. Full integration for the latter will be complete soon.
2017-04-28 03:59:28 -04:00
Daniel Scalzi
ef420d4ba6
Native lib retrieval complete, proper rule implementation added.
2017-04-25 03:08:44 -04:00
Daniel Scalzi
a36ca5ba26
Working on full support for retrieval of vanilla game files (libs, assets, client, etc)
2017-04-24 18:48:02 -04:00
Daniel Scalzi
1e37ee005d
Implemented async queue for asset downloads.
2017-04-24 02:20:38 -04:00
Daniel Scalzi
d37857a979
Beginning work on asset downloads
2017-04-23 15:24:07 -04:00
Daniel Scalzi
b30707e535
Updated readme
2017-04-22 22:02:16 -04:00
Daniel Scalzi
9aa9ba7b1a
Added app icon - platform independent.
2017-04-22 20:59:26 -04:00
Daniel Scalzi
acffbec100
Initial commit
2017-04-22 17:20:23 -04:00