Here's (hopefully) the last update before 3.0.
New features
- Added support for HTTP proxies, this might fix issues with VPNs getting ignored (courtesy of @GlodBlock)
- Added an option to ignore the HTTPS certificate check, for launchers which may break the certificates list somehow (courtesy of @DrParadox7)
Feature changes and fixes
- Reworked the retry system for failed downloads, now allows a configurable amount of retries.
Technical changes
- A few changes and cleanups in the codebase
- Bumped version number to 2.7
Here is a small update before 3.0 to fix compatibility issues with custom main menus from mods.
Feature changes and fixes
- Fixed the mod not working with certain mods loaded
- Rewrote the main menu GUI detection code to be cleaner and more stable
- Removed the gui class path config (since it's no longer needed)
Technical changes
- Refactored some code internally to prepare for 3.0
- Bumped the version number to 2.6
- Updated the Zip4J library to 2.11.5
Here is a surprise update before christmas :D Most of the additions were done by @DrParadox7 on Github via a pull request.
Feature changes and fixes
- Added sided overrides, you can now create a
client-overrides
or aserver-overrides
folder that contains files to override only when on a specific side. (This feature was initially planned for 3.0) - The server will now shutdown correctly after the mcinstance file has been installed or when the installation has failed.
- Fixed the mod deleting subfolders in the mods folder, as it thought those were always empty.
- Reworked the logs when on a server, servers now clearly see when a mod gets downloaded and that the server restarts and doesn't crash.
Technical changes
- Bumped the version number to 2.5
- IOExceptions from the WebHelper class will also print their stack trace
- IOExceptions from the FileHelper class won't get printed twice anymore
Feature changes and fixes
- The info screen no longer can be exited of by pressing escape (the timer would've caused issues anyways)
- Fixed the mod overwriting folders (and deleting the files it could)
- Fixed the mod adding resources from the wrong side to the download list
- Fixed the mod not using the URL given by the curseforge API if the generated URL is invalid.
- Fixed the mod not ignoring invalid properties in the optional.packconfig file.
Technical changes
- The FileHelper.copy method will now overwrite an existing file with a 0-byte file instead of trying to delete it
- The FileHelper class will now try to use its own methods in more places.
- The PackConfigParser.parseResources method will not return resources that shouldn't be downloaded on the current side anymore
- The parsing of the side property for resources has been redone to accomodate the change above.
- Bumped the version number to 2.4
Feature changes and fixes
- Fixed a crash that happened when the config directory wasn't created.
- Fixed an infinite recursion that happened when an IOException occured when downloading a file.
Technical changes
- IOExceptions that happen from a method in the FileHelper class will now print their stacktrace in the game's logs
- Bumped the version number to 2.3
Feature changes and fixes
- Made the confirm button display a downloading text on the optional resources page (untested).
- Added the translation for the previous text.
- Fixed the version number being incorrect in the previous build (which broke the update checker)
- Made IOExceptions try again once, after 1 second. This should fix (or at least negate) the Curseforge launcher breaking the mod by doing weird stuff with the jar files.
Technical changes
- Reorganized certain functions
- Rewrote some function comments to be javadocs instead.
- Cleaned up the code base a little
- Bumped the version number to 2.2
Feature changes and fixes
- Fixed a crash on servers caused by the missing Apache HTTP library. (Why Mojang, why only include a common web library on clients? )
- Fixed an error that could happen when trying to follow a link with a full URL in it and not just a file name
- Removed the empty follow URL error (It was useless anyways)
Technical changes
- Rewrote the WebHelper class again to not use the Apache HTTP library. (Performance should be more or less the same)
- Removed forgotten debug prints while loading the config file.
New features
- Added the
pack
folder system, to automatically build thepack.mcinstance
file if it's missing. - Added a template layout in this folder by default.
- Added the hash-based cache system, to not have to re-download the same file everytime there's a pack update (can be disabled).
- Added the optional resources system. Supports grouping, menus, multiple options to check at once and much more (Check out the wiki) [Currently only for the
client
side] - Added an update checker with multiple modes, including automatic installation.
- Added a zero-byte files deleting system for the
mods
folder. It will delete any empty file in there.
Feature changes and fixes
- Changed the overrides/carryover to only merge and not replace folders (they can can still overwrite files though). This is to make the code more coherent and fix a lot of issues.
- Changed the config file's organisation to be better and more readable (you will have to re-create your configs).
- Updated and fixed the Curseforge integration (now with config settings)
- Updated to Modrinth API v2.
- Updated how the mod grabs data from those two platforms
- The mod's version is now present in the logs.
- Fixed the logo not getting displayed in the mod info page for Windows systems.
- Fixed the mod crashing on servers.
- Rewrote the wiki to be much better and easier to understand
- Removed the StopModReposts error when the blacklist couldn't be downloaded, and made the integration optional.
- Replaced the amount of web redirections config with a connection timeout setting instead.
Technical changes
- Rewrote the entire web system to use Apache's
HttpClient
. It should be more stable, sometimes faster and provides a way cleaner code. - Refactored a good portion of the code base to be more organized, with smaller functions and an overall cleaner code (i hope).
- Reworked some GUI code to be easier to use
- Separated the main code into multiple phases, allowing to only do a certain portion at some specific point. Used by the update GUI.
- Bumped the version number to 2.0