This repository has been archived by the owner on Apr 25, 2022. It is now read-only.
Releases: Willster419/RelhaxModpack
Releases · Willster419/RelhaxModpack
Beta Application version 1.3.2.14 (2021-07-14)
Beta Application version 1.3.2.14 (2021-07-14)
Automation adds and edits
- Added a cancellation framework so you can cancel run-away automation tasks.
- Cleaned up and updated tooltip explanations for the settings options in the settings tab.
- Added a save settings button to the settings tab.
- Added tasks: CreateDirectoryTask, MacroStringSplitFilenameTask (and parents), MacroSubstringFilenameTask (and parents).
- Updated/fixed tasks: LoadDatabaseTask, SaveDatabaseTask, EndCompareTask, MacroImportTask (and parents), TaskImportTask (and parents).
- This list does not include adding the cancellation framework to other tasks.
- Fixed location of dumping shell environment variables to the logfile when running multiple sequences.
- Other misc fixes and improvements.
Database Editor changes
- Changed the packageUID display property from a textBlock to a TextBox set as read-only, so you can copy-paste the value
Beta Application version 1.3.2.11 (2021-07-11)
Beta Application version 1.3.2.11 (2021-07-11)
- Added the
Cmd
argument of the automation taskShellExecuteTask
the ability to pass a macro syntax "{macro}" by having escape characters for the brackets. - Added an automation task to compare file hashes, and if they aren't equal, then the sequence ends prematurely. This target usage is for if a file has changed (like a configuration file) and the package must be updated by hand.
Beta Application version 1.3.2.10 (2021-07-09)
Beta Application version 1.3.2.10 (2021-07-09)
- Added text wrapping to tooltip messages so they don't go off the screen or look weird.
- Fixed bugs with the automation system not reloading sequences and tasks properly.
Beta Application version 1.3.2.9 (2021-07-03)
Beta Application version 1.3.2.9 (2021-07-03)
- Fixed crashes in the package selection list when right clicking on a disabled package for preview.
- Fixed crashes when selecting the category root checkbox in the package selection list.
- Added a bunch of missing translations that managed to get lost in a migration to a different process of loading them into the application on startup.
- Added the option in the automation runner gui to load the automation database from a local/cloned repository on the pc rather then always getting the online version.
Developer Preview application version 1.3.2.8 (2021-06-28)
Developer Preview application version 1.3.2.8 (2021-06-28)
Initial development of the new automation system
- Xml based programming of automatically updating the database rather then relying on manual work.
- An automation runner window runs the
AutomationSequencer
. - An
AutomationSequencer
runs a list ofAutomationSequence
objects, called sequences for short. - Each sequence has a list of tasks that it will run. The types of tasks can be downloading, file IO, zipfile processing, file comparison via md5 hash, and more.
Other fixes
- Fixed a bug with the first time load of the application distribution not being set on startup. It was causing a loop (or weird update track, at least).
- Moved several static methods and copy-paste code into a single
DatabaseManager
class to handle loading and saving of the database. - Fixed a bug where custom database feature windows (like the editor, patch designer, etc.) would crash on launch if a custom font was requested.
- Fixed a bug that would not correctly detect the version of windows above windows 8.0.
- Fixed the bug of the database editor not saving to the correct file location.
- fixed the bug of the database editor crashing when removing or adding, or moving a package at the top most level of a category.
Beta Application version 1.3.2.2 (2021-06-24)
Beta Application version 1.3.2.2 (2021-06-24)
- Fixed a bug where custom database feature windows (like the editor, patch designer, etc.) would crash on launch if a custom font was requested.
- Fixed a bug that would not correctly detect the version of windows above windows 8.0
Beta Application version 1.3.2.1 (2021-06-24)
Beta Application version 1.3.2.1 (2021-06-24)
- Fixed a bug with the first time load of the application distribution not being set on startup. It was causing a loop (or weird update track, at least).
- Moved several static methods and copy-paste code into a single
DatabaseManager
class to handle loading and saving of the database. - Initial development of the new automation system.
Beta Application version 1.3.1.2 (2021-05-31)
Beta Application version 1.3.1.2 (2021-05-31)
- Fixed wrong translation key entry for Minimalist mode description.
- Fixed not showing beta application release notes in application news viewer and version information windows.
- Fixed code merge issues with custom scaling and font settings.
Beta Application version 1.3.1.1 (2021-05-22)
Beta Application version 1.3.1.1 (2021-05-22)
- Fixed locations of database version and language selection text so it is aligned and doesn't wrap to a new line
- Updated and added new translations for Russian (DrWeb7_1)
Application version 1.3.1.0 (2021-05-15)
Application version 1.3.1.0 (2021-05-15)
The application update you didn't know was needed, and if I did it right, will hardly notice
A complete re-structure of the application from the bottom-up
- There was a lot of spaghetti code, or at least potential for some (more). It was cleaned up by implementing class structure into several areas:
- A lot of static properties and settings were moved into class objects. This helps with trying to find where things are randomly set within different points of the code and allows for potential modification of settings to be used in a sub-function.
- Windows that provide a separate function (like Patch Designer or Database Editor) now all derive from RelhaxCustomFeatureWindow, which ensures they all have a ModpackSettings and CommandLineSettings configuration class objects.
- Application logging and startup was changed so that modpack settings are loaded for all 'feature windows'. This means that the order for application launch is now:
- Logging setup
- Settings loading
- .Net framework version verification
- Command line parsing
- Feature window selection
- Several static methods and functions were moved into class structure objects. This allows for two things: Reuse-ability, and more reliable and extensive unit testing. Specifically:
- Settings object loading/saving to/from custom feature Windows.
- Local database cache management.
- Downloading of packages from our servers.
New feature: Ability to select download mirrors!
- Starting with 1.3.1.0, you have the ability to select a download mirror for downloading the zip packages! This is a huge benefit for our EU, RU, (basically not NA) users! As of now, you have two options:
- relhaxmodpack.com, Dallas, USA
- clanverwaltung.de, Frankfurt, Germany
- Additionally, we've integrated our mirror solution to use rsync for hourly synchronization, with the option to manually sync from the database editor. As soon as a package is updated to the main server, it will be on the mirror(s) in seconds!
Less 'incomplete download' messages
- The new download manager has integrated md5 hash calculation right into downloading, so as soon as the file is downloaded, the hash is already calculated. This allows two things:
- The hash is saved immediately to the download cache database so you don't need to wait for it when you are loading the selection list.
- The hash is compared to the server hash, and if not equal, it will automatically try a could times to re-download. NOTE: with the beta database, packages 'in-testing' will still be re-downloaded every time until published into the stable database.
Other big changes you'll notice
- The preview window was not only optimized internally, but now will display the next preview elements you right click on without re-opening the window.
- The thread synchronization was re-worked with the introduction of the download manager component
- Now in the 'download while installing' step, if an extraction thread is waiting for a package to download, it will use synchronization mechanisms instead of low frequency polling. It's all about parallel computing and optimization.
- This also fixed issues with progress reporting, especially in the Advanced Progress reporting window: When 'download while installing' enabled, the progress will report downloading, rather then reporting nothing and giving the idea it is stuck.
- The escape key can be used to close several dialog-like windows now (diagnostics, install done, and release notes windows to name a few).
- Added a
Deprecated
field to the database for internal tracking. This can be used by us to track, investigate and determine action on packages that look old and obsolete. - Added a
Minimalist Mode
as requested by some users, so that only the minimum amount of packages are installed for mod operation. For example, it won't change the background or loading theme to be the Relhax logo. - Improved the behavior of the Diagnostic Tools window so that it will try to auto-fill the selected WoT directory info by the following methods:
- If an installation was just done, it will use that path.
- Else, it will auto search (like the main installation process) and select the most recent installation path.
- In the main installation process, and when selecting a client in the Diagnostic Tools, instead of a window prompting you to find a folder, it will first provide you with a list of auto-detected WoT install paths. You can still manually select one from that window.
Miscellaneous improvements
- Re-work top of ModSelectionList layout to allow for dynamic expansion of text (it will wrap and fill down, those below it will move down).
- Add label to ModSelectionList to show the version of the database you'll be installing.
- Updated the instruction parsing code (Atlas files, Patch files, etc) to be using a reflective and dynamic method, rather that a static method that required manual entry and maintenance.
- Change default selection view to legacy.
- Fixed a crash when canceling the scaling option after preview that occurred after the time expired.
- Fixed the code to validate a selection structure after loading it from a file. It will now check to make sure only 1 option is selected in options that should only have one, rather then only checking if it had 1 or more.
- Also fixed the scenario where a parent package would still be selected and technically be an invalid selection when the child was determined to be an invalid selection.
- Added editor option that if set, will auto delete a zip from the disk after a successful upload. Honors the "delete is actually move" setting.
- Removed useless package properties: StartAddress and EndAddress. They were only used once, and never afterwards.
- Fixed alignment of language selection text box.
- Moved all downloads from http to https.
- Remove separate text box informing the user he can search, and put it into the search combobox.
- Improve exception logging for CommonUtils.SetListEntries().
- Beta and Alpha application distributions now will have debug logging enabled always.
- More refactoring of enums and EventArgs into the Enums and CustomEventArgs namespace/folder.
- Removed UI options for custom theme. Any custom theme options found will re-direct to default.
- Updated and added new translations for English, Spanish(LordFelix), French (Tolrod22), German (Elektrosmoker), Polish (Nullmaruzero)