From 2442587cff2e8568d70385c59e633b84432503d8 Mon Sep 17 00:00:00 2001 From: erri120 Date: Tue, 24 Sep 2019 17:51:47 +0200 Subject: [PATCH 1/9] Added omod as a supported archive --- Wabbajack.Common/Consts.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Wabbajack.Common/Consts.cs b/Wabbajack.Common/Consts.cs index e2931bb9..a2e128c7 100644 --- a/Wabbajack.Common/Consts.cs +++ b/Wabbajack.Common/Consts.cs @@ -11,9 +11,9 @@ namespace Wabbajack.Common public static string LOOTFolderFilesDir = "LOOT Config Files"; public static string ModListMagic = "Celebration!, Cheese for Everyone!"; public static string BSACreationDir = "TEMP_BSA_FILES"; - public static string MegaPrefix = "https://mega.nz/#!"; - public static HashSet SupportedArchives = new HashSet {".zip", ".rar", ".7z", ".7zip", ".fomod"}; + public static HashSet SupportedArchives = new HashSet {".zip", ".rar", ".7z", ".7zip", ".fomod", ".omod"}; + public static HashSet SupportedBSAs = new HashSet {".bsa"}; public static HashSet ConfigFileExtensions = new HashSet {".json", ".ini", ".yml"}; From a266e79655c19dbdf38bc94ce31f78981339840d Mon Sep 17 00:00:00 2001 From: erri120 Date: Tue, 24 Sep 2019 17:53:15 +0200 Subject: [PATCH 2/9] Added OMODExtractorDLL as reference --- Wabbajack.Common/Wabbajack.Common.csproj | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Wabbajack.Common/Wabbajack.Common.csproj b/Wabbajack.Common/Wabbajack.Common.csproj index d69725c8..a90fd62d 100644 --- a/Wabbajack.Common/Wabbajack.Common.csproj +++ b/Wabbajack.Common/Wabbajack.Common.csproj @@ -68,6 +68,9 @@ ..\packages\Newtonsoft.Json.Bson.1.0.2\lib\net45\Newtonsoft.Json.Bson.dll + + ..\..\OMOD-Extractor\OMODExtractorDLL\bin\Debug\OMODExtractorDLL.dll + ..\packages\protobuf-net.2.4.0\lib\net40\protobuf-net.dll From e8b0c3b29f2331f2901b5a9fac8550143791c17e Mon Sep 17 00:00:00 2001 From: erri120 Date: Tue, 24 Sep 2019 18:03:50 +0200 Subject: [PATCH 3/9] Added omod extraction via dll --- Wabbajack.Common/FileExtractor.cs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Wabbajack.Common/FileExtractor.cs b/Wabbajack.Common/FileExtractor.cs index 17beb91a..3e0b07cf 100644 --- a/Wabbajack.Common/FileExtractor.cs +++ b/Wabbajack.Common/FileExtractor.cs @@ -38,6 +38,8 @@ namespace Wabbajack.Common ExtractAllWithBSA(source, dest); else if (source.EndsWith(".exe")) ExtractAllWithInno(source, dest); + else if (source.EndsWith(".omod")) + ExtractAllWithOMOD(source, dest); else ExtractAllWith7Zip(source, dest); } @@ -48,6 +50,17 @@ namespace Wabbajack.Common } } + private static void ExtractAllWithOMOD(string source, string dest) + { + Utils.Log($"Extracting {Path.GetFileName(source)}"); + OMODExtractorDLL.OMOD omod = new OMODExtractorDLL.OMOD(source, dest+"//", "temp"); + omod.SaveConfig(); + omod.SaveFile("script"); + omod.SaveFile("readme"); + omod.ExtractData(); + omod.ExtractPlugins(); + } + private static void ExtractAllWithBSA(string source, string dest) { try From 2c1adf33893de72f2c633b0f665c6da7e1b10221 Mon Sep 17 00:00:00 2001 From: erri120 Date: Tue, 24 Sep 2019 18:46:05 +0200 Subject: [PATCH 4/9] Added OMODExtractor as a submodule and changed the reference to shared project --- .gitmodules | 3 +++ OMOD-Extractor | 1 + Wabbajack.Common/Wabbajack.Common.csproj | 7 ++++--- Wabbajack.sln | 14 ++++++++++++++ 4 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 .gitmodules create mode 160000 OMOD-Extractor diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 00000000..fbafa822 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "OMOD-Extractor"] + path = OMOD-Extractor + url = https://github.com/erri120/OMOD-Extractor diff --git a/OMOD-Extractor b/OMOD-Extractor new file mode 160000 index 00000000..91a0e7d8 --- /dev/null +++ b/OMOD-Extractor @@ -0,0 +1 @@ +Subproject commit 91a0e7d8ee2794c6f41804cd3fed24a9b8abe890 diff --git a/Wabbajack.Common/Wabbajack.Common.csproj b/Wabbajack.Common/Wabbajack.Common.csproj index a90fd62d..78939328 100644 --- a/Wabbajack.Common/Wabbajack.Common.csproj +++ b/Wabbajack.Common/Wabbajack.Common.csproj @@ -68,9 +68,6 @@ ..\packages\Newtonsoft.Json.Bson.1.0.2\lib\net45\Newtonsoft.Json.Bson.dll - - ..\..\OMOD-Extractor\OMODExtractorDLL\bin\Debug\OMODExtractorDLL.dll - ..\packages\protobuf-net.2.4.0\lib\net40\protobuf-net.dll @@ -106,6 +103,10 @@ + + {eb003d18-dffb-49c7-b054-fb375345ae26} + OMODExtractorDLL + {ff5d892f-8ff4-44fc-8f7f-cd58f307ad1b} Compression.BSA diff --git a/Wabbajack.sln b/Wabbajack.sln index 307f4027..77a4f69e 100644 --- a/Wabbajack.sln +++ b/Wabbajack.sln @@ -29,6 +29,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Wabbajack.WebAutomation.Tes EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Wabbajack.Test", "Wabbajack.Test\Wabbajack.Test.csproj", "{A47FFF32-782B-4D9F-8704-C98FB32FA8CC}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OMODExtractorDLL", "..\OMOD-Extractor\OMODExtractorDLL\OMODExtractorDLL.csproj", "{EB003D18-DFFB-49C7-B054-FB375345AE26}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug (no commandargs)|Any CPU = Debug (no commandargs)|Any CPU @@ -147,6 +149,18 @@ Global {A47FFF32-782B-4D9F-8704-C98FB32FA8CC}.Release|Any CPU.Build.0 = Release|Any CPU {A47FFF32-782B-4D9F-8704-C98FB32FA8CC}.Release|x64.ActiveCfg = Release|Any CPU {A47FFF32-782B-4D9F-8704-C98FB32FA8CC}.Release|x64.Build.0 = Release|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug (no commandargs)|Any CPU.ActiveCfg = Debug|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug (no commandargs)|Any CPU.Build.0 = Debug|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug (no commandargs)|x64.ActiveCfg = Debug|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug (no commandargs)|x64.Build.0 = Debug|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug|Any CPU.Build.0 = Debug|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug|x64.ActiveCfg = Debug|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug|x64.Build.0 = Debug|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Release|Any CPU.ActiveCfg = Release|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Release|Any CPU.Build.0 = Release|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Release|x64.ActiveCfg = Release|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Release|x64.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE From f82b9490820a190646e63d86c044bd2383d61b1d Mon Sep 17 00:00:00 2001 From: erri120 Date: Tue, 24 Sep 2019 19:29:33 +0200 Subject: [PATCH 5/9] Added step for initializing and downloading the submodules --- CONTRIBUTING.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f13d0d7a..ef03d10e 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -42,8 +42,9 @@ The installer may have selected other options as well but these are the most imp ### Starting development 1) **Fork and clone the project:** go to the Github repo page, click the fork button, copy the url from the forked repo, navigate to your project folder, open Git Bash or normal command prompt and type `git clone url name` and replace url with the copied url and name with the folder name -2) **Open Wabbajack.sln** in Visual Studio 2019 -3) **Download NuGet Packages** by selecting the solution and *Right Click*->*Restore NuGet Packages* +2) **Initialize the submodules** using `git submodule init` and `git submodule update` +3) **Open Wabbajack.sln** in Visual Studio 2019 +4) **Download NuGet Packages** by selecting the solution and *Right Click*->*Restore NuGet Packages* It may take a while for Visual Studio to download all packages and update all References so be patience. Once all packages are downloaded go and try building Wabbajack. If the build is successful than good job, if not head over to the *#wabbajack-development* channel on the discord and talk about your build error. From e465a2c9fdb59533ee573c26d57add7e7d516ce4 Mon Sep 17 00:00:00 2001 From: erri120 Date: Wed, 25 Sep 2019 14:57:56 +0200 Subject: [PATCH 6/9] Fixed wrong project path --- Wabbajack.sln | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Wabbajack.sln b/Wabbajack.sln index 77a4f69e..109df2a1 100644 --- a/Wabbajack.sln +++ b/Wabbajack.sln @@ -29,7 +29,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Wabbajack.WebAutomation.Tes EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Wabbajack.Test", "Wabbajack.Test\Wabbajack.Test.csproj", "{A47FFF32-782B-4D9F-8704-C98FB32FA8CC}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OMODExtractorDLL", "..\OMOD-Extractor\OMODExtractorDLL\OMODExtractorDLL.csproj", "{EB003D18-DFFB-49C7-B054-FB375345AE26}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OMODExtractorDLL", "OMOD-Extractor\OMODExtractorDLL\OMODExtractorDLL.csproj", "{EB003D18-DFFB-49C7-B054-FB375345AE26}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution From 57cb7d6b06eb04653b07c04f89b5d8533c6cf7db Mon Sep 17 00:00:00 2001 From: erri120 Date: Wed, 25 Sep 2019 14:59:55 +0200 Subject: [PATCH 7/9] Updated submodule to latest commit --- OMOD-Extractor | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OMOD-Extractor b/OMOD-Extractor index 91a0e7d8..a3eb3584 160000 --- a/OMOD-Extractor +++ b/OMOD-Extractor @@ -1 +1 @@ -Subproject commit 91a0e7d8ee2794c6f41804cd3fed24a9b8abe890 +Subproject commit a3eb3584527e4363a02607d38e91c646316b1cea From a7e0f78b99e51f4f55c595a6509552de9f00703e Mon Sep 17 00:00:00 2001 From: Timothy Baldridge Date: Wed, 25 Sep 2019 21:55:42 -0600 Subject: [PATCH 8/9] fix omod integration --- .../VirtualFileSystem.Test.csproj | 20 +++++++++++++++++++ VirtualFileSystem/VirtualFileSystem.csproj | 18 +++++++++++++++++ Wabbajack.Common/Wabbajack.Common.csproj | 8 ++++---- Wabbajack.sln | 12 +++++------ 4 files changed, 48 insertions(+), 10 deletions(-) diff --git a/VirtualFileSystem.Test/VirtualFileSystem.Test.csproj b/VirtualFileSystem.Test/VirtualFileSystem.Test.csproj index 218b1aae..504b9a88 100644 --- a/VirtualFileSystem.Test/VirtualFileSystem.Test.csproj +++ b/VirtualFileSystem.Test/VirtualFileSystem.Test.csproj @@ -32,6 +32,26 @@ prompt 4 + + true + bin\x64\Debug\ + DEBUG;TRACE + full + x64 + prompt + MinimumRecommendedRules.ruleset + true + + + bin\x64\Release\ + TRACE + true + pdbonly + x64 + prompt + MinimumRecommendedRules.ruleset + true + diff --git a/VirtualFileSystem/VirtualFileSystem.csproj b/VirtualFileSystem/VirtualFileSystem.csproj index 42ceba52..957155e6 100644 --- a/VirtualFileSystem/VirtualFileSystem.csproj +++ b/VirtualFileSystem/VirtualFileSystem.csproj @@ -31,6 +31,24 @@ prompt 4 + + true + bin\x64\Debug\ + DEBUG;TRACE + full + x64 + prompt + MinimumRecommendedRules.ruleset + + + bin\x64\Release\ + TRACE + true + pdbonly + x64 + prompt + MinimumRecommendedRules.ruleset + ..\packages\AlphaFS.2.2.6\lib\net452\AlphaFS.dll diff --git a/Wabbajack.Common/Wabbajack.Common.csproj b/Wabbajack.Common/Wabbajack.Common.csproj index 78939328..a794bb72 100644 --- a/Wabbajack.Common/Wabbajack.Common.csproj +++ b/Wabbajack.Common/Wabbajack.Common.csproj @@ -103,14 +103,14 @@ - - {eb003d18-dffb-49c7-b054-fb375345ae26} - OMODExtractorDLL - {ff5d892f-8ff4-44fc-8f7f-cd58f307ad1b} Compression.BSA + + {eb003d18-dffb-49c7-b054-fb375345ae26} + OMODExtractorDLL + diff --git a/Wabbajack.sln b/Wabbajack.sln index 109df2a1..6b83520a 100644 --- a/Wabbajack.sln +++ b/Wabbajack.sln @@ -91,8 +91,8 @@ Global {BA2CFEA1-072B-42D6-822A-8C6D0E3AE5D9}.Release|x64.Build.0 = Release|x64 {5128B489-BC28-4F66-9F0B-B4565AF36CBC}.Debug (no commandargs)|Any CPU.ActiveCfg = Debug|Any CPU {5128B489-BC28-4F66-9F0B-B4565AF36CBC}.Debug (no commandargs)|Any CPU.Build.0 = Debug|Any CPU - {5128B489-BC28-4F66-9F0B-B4565AF36CBC}.Debug (no commandargs)|x64.ActiveCfg = Debug|Any CPU - {5128B489-BC28-4F66-9F0B-B4565AF36CBC}.Debug (no commandargs)|x64.Build.0 = Debug|Any CPU + {5128B489-BC28-4F66-9F0B-B4565AF36CBC}.Debug (no commandargs)|x64.ActiveCfg = Debug|x64 + {5128B489-BC28-4F66-9F0B-B4565AF36CBC}.Debug (no commandargs)|x64.Build.0 = Debug|x64 {5128B489-BC28-4F66-9F0B-B4565AF36CBC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {5128B489-BC28-4F66-9F0B-B4565AF36CBC}.Debug|Any CPU.Build.0 = Debug|Any CPU {5128B489-BC28-4F66-9F0B-B4565AF36CBC}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -103,8 +103,8 @@ Global {5128B489-BC28-4F66-9F0B-B4565AF36CBC}.Release|x64.Build.0 = Release|Any CPU {A2913DFE-18FF-468B-A6C1-55F7C0CC0CE8}.Debug (no commandargs)|Any CPU.ActiveCfg = Debug|Any CPU {A2913DFE-18FF-468B-A6C1-55F7C0CC0CE8}.Debug (no commandargs)|Any CPU.Build.0 = Debug|Any CPU - {A2913DFE-18FF-468B-A6C1-55F7C0CC0CE8}.Debug (no commandargs)|x64.ActiveCfg = Debug|Any CPU - {A2913DFE-18FF-468B-A6C1-55F7C0CC0CE8}.Debug (no commandargs)|x64.Build.0 = Debug|Any CPU + {A2913DFE-18FF-468B-A6C1-55F7C0CC0CE8}.Debug (no commandargs)|x64.ActiveCfg = Debug|x64 + {A2913DFE-18FF-468B-A6C1-55F7C0CC0CE8}.Debug (no commandargs)|x64.Build.0 = Debug|x64 {A2913DFE-18FF-468B-A6C1-55F7C0CC0CE8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A2913DFE-18FF-468B-A6C1-55F7C0CC0CE8}.Debug|Any CPU.Build.0 = Debug|Any CPU {A2913DFE-18FF-468B-A6C1-55F7C0CC0CE8}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -151,8 +151,8 @@ Global {A47FFF32-782B-4D9F-8704-C98FB32FA8CC}.Release|x64.Build.0 = Release|Any CPU {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug (no commandargs)|Any CPU.ActiveCfg = Debug|Any CPU {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug (no commandargs)|Any CPU.Build.0 = Debug|Any CPU - {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug (no commandargs)|x64.ActiveCfg = Debug|Any CPU - {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug (no commandargs)|x64.Build.0 = Debug|Any CPU + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug (no commandargs)|x64.ActiveCfg = Debug|x64 + {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug (no commandargs)|x64.Build.0 = Debug|x64 {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug|Any CPU.Build.0 = Debug|Any CPU {EB003D18-DFFB-49C7-B054-FB375345AE26}.Debug|x64.ActiveCfg = Debug|Any CPU From d894ac733e8ad1d5c4091f1957b5894d6f9d5c1e Mon Sep 17 00:00:00 2001 From: Timothy Baldridge Date: Wed, 25 Sep 2019 22:14:15 -0600 Subject: [PATCH 9/9] fix bad edit --- Wabbajack.Common/Consts.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/Wabbajack.Common/Consts.cs b/Wabbajack.Common/Consts.cs index a2e128c7..90c99800 100644 --- a/Wabbajack.Common/Consts.cs +++ b/Wabbajack.Common/Consts.cs @@ -11,6 +11,7 @@ namespace Wabbajack.Common public static string LOOTFolderFilesDir = "LOOT Config Files"; public static string ModListMagic = "Celebration!, Cheese for Everyone!"; public static string BSACreationDir = "TEMP_BSA_FILES"; + public static string MegaPrefix = "https://mega.nz/#!"; public static HashSet SupportedArchives = new HashSet {".zip", ".rar", ".7z", ".7zip", ".fomod", ".omod"};