Commit Graph

923 Commits

Author SHA1 Message Date
erri120
8de6c9d239 Fixed bad steam lib paths 2019-11-14 15:34:10 -07:00
erri120
2044a6728a Created SteamHandler 2019-11-14 15:34:10 -07:00
erri120
2497d5ba88 Added Steam ids 2019-11-14 15:34:10 -07:00
erri120
18a36437bc Added supported mod manager and Darkest Dungeon 2019-11-14 15:34:10 -07:00
erri120
dae96640d8 Created ModManager enum, moved enums to Wabbajack.Common 2019-11-14 15:34:10 -07:00
Timothy Baldridge
133fa2febd
Async VFS Implementation (#171)
* New VFS implementation can load/save/analyze files. All in a immutable, lock free (mostly) async parallel manner.

* VFS indexing is complete

* Can stage files

* Can extract VirtualFiles into PortableFiles and create contexts from PortableFiles

* Code cleanup
2019-11-14 15:22:53 -07:00
Timothy Baldridge
0cb6f2fa69 Make File Extractor async 2019-11-11 22:33:32 -07:00
Timothy Baldridge
d9ca38cdff
Make BSA Routines async (#168)
* Make BSA routines async
2019-11-11 21:35:07 -07:00
Timothy Baldridge
1ad74b450e
Merge pull request #166 from wabbajack-tools/bsa-tests
Add unit tests for BSAs
2019-11-11 06:17:48 -07:00
Timothy Baldridge
c6953bb42d
Merge pull request #165 from wabbajack-tools/async-work-queue
Async work queue
2019-11-11 06:17:36 -07:00
Timothy Baldridge
c3daf2b1bc Add unit tests for BSAs 2019-11-10 23:15:52 -07:00
Timothy Baldridge
35897bbf92 cleanup 2019-11-10 21:10:26 -07:00
Timothy Baldridge
e61b203d4c Final bits for CSP backend 2019-11-10 20:47:25 -07:00
Timothy Baldridge
e164d7a8bf Change exception printing, and unset read-only during move. 2019-11-10 16:03:10 -07:00
Timothy Baldridge
6639e9946b Other variants of pipelines 2019-11-10 15:36:04 -07:00
Timothy Baldridge
f66427c2ea Add a bunch of unit tests fixed a nasty race condition in the put/take handlers 2019-11-10 15:15:52 -07:00
Justin Swanson
bf9c315a2f RxExt.Invert 2019-11-09 19:26:58 -06:00
Justin Swanson
5b4cb1fa89 CompilerVM: Modlist file picker shows errors if not in MO2 directory 2019-11-09 19:20:30 -06:00
Timothy Baldridge
e9c2ababec More deadlock bugfixes 2019-11-09 17:22:28 -07:00
Timothy Baldridge
081dea2368 Fix channel closing, add unordered pipeline 2019-11-09 14:29:55 -07:00
Timothy Baldridge
f8c7144071
Merge pull request #159 from erri120/game-handler
Better Game Handlers
2019-11-09 14:07:30 -07:00
Timothy Baldridge
67dfaa3581 Refactored to use ValueTask and lazy task creation 2019-11-09 07:49:00 -07:00
erri120
83807a56b8
Added null check to GetByMO2ArchiveName 2019-11-09 15:40:50 +01:00
erri120
467cfc47a0
Removed Morrowind from the Games list 2019-11-09 15:40:14 +01:00
erri120
36867a4806
MO2ArchiveName will be lowercase when comparing in GetByMO2ArchiveName 2019-11-09 15:25:29 +01:00
erri120
7f0129e83b
Changed Oblivion MO2ArchiveName to lowercase 2019-11-09 15:21:31 +01:00
erri120
9060c6a947
Created SteamHandler 2019-11-09 14:49:57 +01:00
erri120
662315a7bb
Created GOGHandler 2019-11-09 14:49:33 +01:00
Timothy Baldridge
a59e39deaa WIP channels 2019-11-08 23:37:05 -07:00
Timothy Baldridge
2fb857a093 Unify caching to reduce the number of Nexus calls on the build server 2019-11-07 18:36:01 -07:00
Timothy Baldridge
e518f31a71 Enable guidence for users to download manual files. 2019-11-06 16:52:48 -07:00
Justin Swanson
fa504a1b16 DictionaryExt. Other Ext files migrated to Common 2019-11-05 19:39:18 -06:00
Timothy Baldridge
2d497c4c7d Fix tests 2019-11-05 15:30:05 -07:00
Timothy Baldridge
3d9cf4cc65 Rework Nexus API caching logic to use build server cache 2019-11-05 15:21:07 -07:00
Timothy Baldridge
c43bcc7d89 wip 2019-11-05 15:21:07 -07:00
Timothy Baldridge
6ab49e380c Add modlist validation tests. 2019-11-05 15:21:07 -07:00
Timothy Baldridge
6a93e4eca7
Merge pull request #149 from Noggog/WorkQueue-Utils-Rx
WorkQueue and Utils Rx instead of callbacks
2019-11-04 22:30:05 -07:00
Justin Swanson
9051d28822 WorkQueue and Utils Rx instead of callbacks
Swapped the callback registration systems for Rx subjects exposing observables
2019-11-04 22:17:43 -06:00
erri120
df74b34754
Merge pull request #147 from erri120/ignore-case-esm
Made string comparisons for GameESMs case insenitive
2019-11-04 19:14:42 +01:00
erri120
557e443685
Made string comparisons for GameESMs case insenitive 2019-11-04 19:12:53 +01:00
LivelyDismay
46bdc63e46
Update Consts.cs
Change uppercase to lowercase on two esm names to match vanilla file names.
2019-11-04 12:57:19 -05:00
Justin Swanson
d872823d7a Utils.Is(File/Directory)PathValid 2019-11-02 21:23:59 -06:00
Justin Swanson
2dc47d5ec8 Ported some Error/Hash systems from Noggog/CSharpExt 2019-11-02 21:13:14 -06:00
Justin Swanson
ecb789d088 Merge remote-tracking branch 'wabbajack-tools/master' into VM-split-and-styling 2019-11-02 18:41:37 -05:00
Justin Swanson
422fde257b Merge remote-tracking branch 'wabbajack-tools/master' into XAML-IDE-Featureset 2019-11-02 18:31:21 -05:00
Justin Swanson
12daa32d4e All projects migrated to PackageReferences nuget systems 2019-11-02 17:57:51 -05:00
Timothy Baldridge
51d1b32077 finish up zedit integration 2019-11-02 09:38:03 -06:00
erri120
750dd6f7aa
Fixed bad LINQ expression 2019-11-01 12:06:12 +01:00
erri120
fa51cd4d69
Moved IsMO2Running to Utils.cs, added check for MO2 inside the selected profile folder 2019-11-01 11:56:29 +01:00
erri120
ee2ea4acc0
ExtensionManager: Removed unused argument 2019-10-31 12:14:14 +01:00
Timothy Baldridge
610fea9d7f use xxHash64 hasing 2019-10-30 21:40:33 -06:00
Timothy Baldridge
6c79d0a9d2 Merge branch 'master' of https://github.com/halgari/wabbajack into programmable-stack 2019-10-30 20:25:14 -06:00
Timothy Baldridge
0151b219bf dump stack info to disk and load it during compilation 2019-10-30 20:24:42 -06:00
Timothy Baldridge
82bedf0807 fix boolean logic 2019-10-30 14:27:44 -06:00
erri120
a12faee21e
ExtensionManager: Added NeedsUpating function 2019-10-30 18:19:37 +01:00
erri120
7c3f92ecc9
ExtensionManager: Cleanup and refactoring 2019-10-30 17:49:46 +01:00
erri120
39fc9eba9d
ExtensionManager: Changed PerceivedType to Compresed instead of Archive 2019-10-30 17:49:46 +01:00
erri120
cd9e11045e
Fixed win8FileReg key not being updated 2019-10-30 17:49:46 +01:00
erri120
c676aed591
ËxtensionManager: Added IsAssociationOutdated function 2019-10-30 17:49:45 +01:00
erri120
746837cf26
ExtensionManager: Made path static readonly strings in class 2019-10-30 17:49:45 +01:00
erri120
593902f191
Code cleanup and added nullcheck 2019-10-30 17:49:45 +01:00
erri120
4cfbd14002
Added iconPath and appPath as arguemnts for AssociateExtension 2019-10-30 17:49:45 +01:00
erri120
be4b15378f
Made AssociateExtension static 2019-10-30 17:49:44 +01:00
erri120
a1fa2a5c6d
Added IsAssociated and Associate functions 2019-10-30 17:49:44 +01:00
erri120
49ba23affe
Created ExtensionManager 2019-10-30 17:49:44 +01:00
Timothy Baldridge
ae011ee7e4 add some validation to the installed modlist 2019-10-29 15:30:27 -06:00
erri120
4c694eafc9
Added Compression to Ceras serialization 2019-10-27 14:55:31 +01:00
erri120
6fd9d49c9e
Added BZip2 Compression to modlist info file 2019-10-27 14:55:31 +01:00
erri120
56daeb069a
Created To/From CERAS functions 2019-10-27 14:55:30 +01:00
erri120
63574f9934
Added Ceras NuGet Package 2019-10-27 14:55:30 +01:00
erri120
13cc4785b0
Reenabled OMOD extraction 2019-10-23 18:14:34 +02:00
Timothy Baldridge
3d5d2e0da9
Merge pull request #110 from wabbajack-tools/modlist-selection-ui
Modlist selection ui
2019-10-22 18:17:48 -06:00
Timothy Baldridge
1882b9227b fixup some google download links so they properly download 2019-10-21 13:05:03 -06:00
Timothy Baldridge
f1e316f544 fixup some modlist definition mappings 2019-10-20 13:30:39 -06:00
Timothy Baldridge
f851432d51 add modlist selection ui, still WIP 2019-10-20 05:26:42 -06:00
Timothy Baldridge
c7f04f52e1
Merge pull request #109 from wabbajack-tools/fallout-esms
add FO4 EMS to ESM cleaning whitelist
2019-10-19 09:15:27 -06:00
Timothy Baldridge
99cbb1b878 add FO4 EMS to ESM cleaning whitelist 2019-10-19 04:59:43 -06:00
Timothy Baldridge
7a0ef2a380 rework modlist metadata code to use static site json 2019-10-19 04:55:05 -06:00
Timothy Baldridge
12cffd20cd fix typeo in FromYaml 2019-10-16 15:49:20 -06:00
Timothy Baldridge
65af535487 code cleanup 2019-10-16 15:36:14 -06:00
Timothy Baldridge
f06d3102ef fix sanity tests 2019-10-15 21:17:27 -06:00
Timothy Baldridge
ac14aad955 add modlist metadata files 2019-10-15 17:23:14 -06:00
Timothy Baldridge
e4c1e264cd fixes #95 2019-10-14 15:04:12 -06:00
Justin Swanson
a4d6feae42 Added 32bit compilation option 2019-10-13 15:56:40 -05:00
Timothy Baldridge
fadb0e6381
Merge pull request #85 from erri120/slideshow-logging
Added logging to file for slideshow
2019-10-12 21:20:06 -06:00
Timothy Baldridge
7cb39695bf update readmes and modlist ver number 2019-10-12 21:15:14 -06:00
Timothy Baldridge
bf11273c15 integrated the new download framework into the app 2019-10-12 20:54:13 -06:00
Timothy Baldridge
1e64544783 created downloaders for dropbox, http, google, and nexus 2019-10-12 20:54:13 -06:00
Timothy Baldridge
bd885477a1 start of rework of download routines 2019-10-12 20:54:13 -06:00
erri120
514c6b9510
Added logging to file for slideshow 2019-10-12 21:15:19 +02:00
Timothy Baldridge
31b764204f finish ba2 integration 2019-10-11 17:31:36 -06:00
Timothy Baldridge
29943aab87 merge master 2019-10-11 15:23:20 -06:00
Timothy Baldridge
473ffbd806 a bunch of integration work, and ba2 fixes 2019-10-09 23:04:28 -06:00
erri120
1a04c9578b
Removed OMOD-Framework as a project and added as a NuGet package 2019-10-07 12:53:51 +02:00
Timothy Baldridge
dd490a00a0
Merge pull request #65 from erri120/omod-update
OMOD Update
2019-10-03 16:31:51 -06:00
Timothy Baldridge
a186411e0b add headless mode for checking archives 2019-10-02 22:35:29 -06:00
Timothy Baldridge
14eb3e697e put the tests back, I think it was a message box error 2019-10-02 21:23:11 -06:00
Timothy Baldridge
192dfa1331 Change oblivion's game name to Oblivion 2019-10-02 16:45:42 -06:00
Timothy Baldridge
4597135de5 modlists are now .zip files, several bug fixes found in testing 2019-10-01 16:39:25 -06:00
erri120
1ede321f65
Added OMOD-Framework as new submodule 2019-10-01 20:55:13 +02:00
Timothy Baldridge
c98991010f remove .exe extractor resource 2019-09-30 20:47:46 -06:00
Timothy Baldridge
ea95c78b26 updated the README fixed validation and game folder path detection 2019-09-30 17:39:41 -06:00
Timothy Baldridge
eb9e6500c9 integrate content rights validation into the main program 2019-09-29 16:21:18 -06:00
Timothy Baldridge
6c24e4fdbb implement framework for content rights management 2019-09-28 22:41:47 -06:00
Timothy Baldridge
1418634dbb add missing file 2019-09-28 18:22:25 -06:00
Timothy Baldridge
c9d12c7904 fix deadlock with singleton NexusAPI client. We can look into this in the future, but it's still causing problems so removing the singleton for now 2019-09-28 18:18:42 -06:00
Timothy Baldridge
d894ac733e fix bad edit 2019-09-25 22:14:15 -06:00
Timothy Baldridge
a7e0f78b99 fix omod integration 2019-09-25 22:10:28 -06:00
erri120
2c1adf3389 Added OMODExtractor as a submodule and changed the reference to shared project 2019-09-25 22:10:28 -06:00
erri120
e8b0c3b29f Added omod extraction via dll 2019-09-25 22:10:28 -06:00
erri120
a266e79655 Added OMODExtractorDLL as reference 2019-09-25 22:10:28 -06:00
erri120
2442587cff Added omod as a supported archive 2019-09-25 22:10:28 -06:00
Timothy Baldridge
de373ca9e2
Merge pull request #48 from tr4wzified/typofixes
Fix typos in various files
2019-09-25 21:36:29 -06:00
Timothy Baldridge
b09bf20761 remove support for extracting .exe files 2019-09-25 21:20:14 -06:00
trawzified
2512212d38 Fix typos in various files 2019-09-24 17:26:44 +02:00
Timothy Baldridge
30b592f16e fix a fall through 2019-09-24 05:46:12 -06:00
Timothy Baldridge
24c948f138 support auto extraction exes as archive sources 2019-09-24 05:27:43 -06:00
Timothy Baldridge
a21edfd2f1 add unit tests. It's about time! 2019-09-23 22:20:24 -06:00
Timothy Baldridge
c471a817d2 start of zEdit integration 2019-09-23 15:37:10 -06:00
Timothy Baldridge
2b263db815 Add start of web remote framework, and implementation for MediaFire 2019-09-20 22:48:59 -06:00
Timothy Baldridge
f90260fed0 update report information and add WABBAJACK_NOMATCH_INCLUDE 2019-09-20 16:49:32 -06:00
Timothy Baldridge
53d7c5c83a Merge branch 'master' of https://github.com/halgari/wabbajack 2019-09-16 14:40:19 -06:00
Timothy Baldridge
a254f0d99a consider .fomod a .7z few other compilation tweaks 2019-09-16 14:40:06 -06:00
erri120
a615ba7b95
Merge branch 'master' into patch-2 2019-09-14 13:37:43 +00:00
Timothy Baldridge
454cff052e code reformatting 2019-09-13 22:35:42 -06:00
Timothy Baldridge
1a7dec86c1 few fixes and improvements 2019-09-13 21:44:07 -06:00
erri120
36203f9223
Merge branch 'master' into patch-2 2019-09-13 13:41:14 +00:00
Timothy Baldridge
6c7d1759bc more perf improvements to compilation and storage 2019-09-12 18:18:50 -06:00
Timothy Baldridge
3e6dd46803 many improvements to accelerate compilation times 2019-09-12 17:44:35 -06:00
erri120
b41902815d Changed all modpack references to modlist 2019-09-12 17:32:13 +02:00
Timothy Baldridge
9347b99363 add missing ChildProcessTracker.cs 2019-09-10 14:10:53 -06:00
Timothy Baldridge
ebc548ee04 bit of code cleanup and additions to the report 2019-09-10 07:02:25 -06:00
Timothy Baldridge
b1c2f17784 fixed issue with bsa files of 0 length 2019-09-08 16:44:15 -06:00
Timothy Baldridge
064cef8e5f removed endorsing option, include version/sha in install report, link sha to virustotal 2019-09-05 16:18:54 -06:00
Timothy Baldridge
4cfd2f245f fixes #25 2019-09-04 14:49:13 -06:00
Timothy Baldridge
5edf454e16 fixes #6 - users can now have a download folder outside of MO2 2019-09-03 16:12:39 -06:00
Timothy Baldridge
7acd964f48 fixes #16 - multiple profiles are now supported 2019-09-03 15:17:00 -06:00
Timothy Baldridge
d21a11b005 fixes #14, fixes #17 2019-09-02 16:36:57 -06:00
Timothy Baldridge
ab3c87975c fixes #19 - Add installation summary 2019-08-30 17:57:56 -06:00
Timothy Baldridge
b72a64ff8b bunch of fixes to file extraction 2019-08-29 16:49:48 -06:00
Timothy Baldridge
5ddbd832f6 fix for long file names 2019-08-27 21:22:57 -06:00
Timothy Baldridge
d33c1a358d ask to endorse mods, fixes to broken installers 2019-08-26 17:02:49 -06:00
Timothy Baldridge
42864ac12b rework extractor routines 2019-08-25 17:52:03 -06:00
Timothy Baldridge
bf181cdc2d add support for ESM cleaning 2019-08-24 21:46:32 -06:00
Timothy Baldridge
40950b442c Lock down 7zip a bit until it learns to behave 2019-08-24 20:26:24 -06:00
Timothy Baldridge
dc6b4b9ef7 We now copy custom LOOT rules 2019-08-24 17:59:22 -06:00
Timothy Baldridge
5c7acc5e18 We now remap ModOrganizer.ini files 2019-08-24 17:20:54 -06:00
Timothy Baldridge
7be81d9a98 cache nexus info when validating mod links 2019-08-24 14:23:16 -06:00
Timothy Baldridge
114fefb38d Fixes for supporting Fallout New Vegas 2019-08-22 17:29:44 -06:00
Timothy Baldridge
07df55383e small bug fixes that came up during testing for a 0.7 release 2019-08-22 16:05:16 -06:00
Timothy Baldridge
c343a74359 massive refactoring, it compiles, but it's surely broken 2019-08-19 22:57:08 -06:00
Timothy Baldridge
fa8f038f70 new VFS impl, should make maintaining Wabbajack a bit simpler 2019-08-19 16:08:34 -06:00
Timothy Baldridge
1a7836ec2a started work on VFS should simplify and greatly speed up really complex modlists 2019-08-14 22:30:37 -06:00
Timothy Baldridge
a6d90ccc3f fix the BSA encoder, add support for hand built patches 2019-08-11 16:57:32 -06:00
Timothy Baldridge
fff5e8dddf issue-8 - Fix PMap thread starvation 2019-08-10 09:21:50 -06:00
Timothy Baldridge
d236bfd225 issue-4 - Remove one old file 2019-08-08 22:08:01 -06:00
Timothy Baldridge
5cf03540f7 issue-4 - Implement deep archive handling for compiler/installer 2019-08-08 22:07:23 -06:00
Timothy Baldridge
4b036221b9 issue-4 - Can index nested archives 2019-08-08 16:36:09 -06:00
Timothy Baldridge
8513441afd Upgrade SevenZipExtractor, fix for bad zips, add Ignore Missing Files button 2019-08-07 17:06:38 -06:00
Timothy Baldridge
e8f2ad2f16 crash log fixes, bug fixes, and more info during failures 2019-08-04 16:08:03 -06:00
Timothy Baldridge
873bb47e35 added an overall progress bar 2019-08-02 17:04:04 -06:00
Timothy Baldridge
81a51265b0 bunch of bug fixes with mods that get updated, prepping for Alpha 2019-08-02 16:31:13 -06:00
Timothy Baldridge
2529e77036 few tweaks 2019-07-31 15:11:07 -06:00
Timothy Baldridge
12a6b12a65 Tons of GUI work 2019-07-30 21:59:19 -06:00
Timothy Baldridge
5811380241 switched the compiler/installer over to the new BSA libs 2019-07-29 21:32:52 -06:00
Timothy Baldridge
099021d890 first commit of new BSA reader/writer 2019-07-28 17:04:23 -06:00
Timothy Baldridge
e63e3be3b7 working on BSA compression support 2019-07-26 14:59:14 -06:00
Timothy Baldridge
61862ae7dd support for ModDB, and more testing fixes 2019-07-23 22:31:08 -06:00
Timothy Baldridge
dffe2a68de Can install loose files as well 2019-07-22 22:27:26 -06:00
Timothy Baldridge
752478f185 Switch to a WPF app 2019-07-22 16:17:46 -06:00
Timothy Baldridge
1466be47c0 added patching support 2019-07-21 21:36:25 -06:00
Timothy Baldridge
e4ca3cd01e Can create self-installing modlists 2019-07-21 16:47:17 -06:00
Timothy Baldridge
2d061bc1e4 Initial commit 2019-07-20 22:40:54 -06:00