Skip to content

Commit

Permalink
* Fixed Chain Bug
Browse files Browse the repository at this point in the history
* Updated noesis script to 2.9993
* Updated error log handling
  • Loading branch information
keegars committed Jun 30, 2022
1 parent f61bf2b commit 85154a8
Show file tree
Hide file tree
Showing 7 changed files with 4,913 additions and 7 deletions.
9 changes: 6 additions & 3 deletions MHR-Model-Converter/Chain/Chain.cs
Original file line number Diff line number Diff line change
Expand Up @@ -394,10 +394,13 @@ private void PopulateChainGroups()
var nameSections = (endOffset - _Position) / 8;

chainGroup.TerminalNodeNameList = new List<ulong>();
for (var j = 0; j < nameSections; j++)
if (chainGroup.TerminalNodeNameOffset != 0)
{
var terminalNodeNamePart = TakeBytes<ulong>();
chainGroup.TerminalNodeNameList.Add(terminalNodeNamePart);
for (var j = 0; j < nameSections; j++)
{
var terminalNodeNamePart = TakeBytes<ulong>();
chainGroup.TerminalNodeNameList.Add(terminalNodeNamePart);
}
}

chainGroup.ChainNodesData = new List<ChainNodeData>();
Expand Down
11 changes: 9 additions & 2 deletions MHR-Model-Converter/Helpers/ErrorHelper.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using System.IO;
using System;
using System.IO;

namespace MHR_Model_Converter.Helpers
{
Expand All @@ -8,7 +9,13 @@ public static class ErrorHelper

public static void Log(string error)
{
File.AppendAllText(Path.Combine(ConversionFolder, "errorlog.txt"), error);
File.AppendAllText(GetErrorLog(), error);
File.AppendAllText(GetErrorLog(), Environment.NewLine);
}

private static string GetErrorLog()
{
return Path.Combine(ConversionFolder, "errorlog.txt");
}
}
}
12 changes: 12 additions & 0 deletions MHR-Model-Converter/Helpers/NoesisHelper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -99,10 +99,12 @@ private static void CopyVersionFiles(NoesisVersions version)

var v2_9999_modified = Path.Combine(scriptsDirectory, "Modified");
var v2_9999 = Path.Combine(scriptsDirectory, "Originals", "2.999");
var v2_99993 = Path.Combine(scriptsDirectory, "Originals", "2.9993");
var v2_6 = Path.Combine(scriptsDirectory, "Originals", "2.6");

var v2_9999_modified_Files = Directory.GetFiles(v2_9999_modified, "*", SearchOption.AllDirectories);
var v2_9999_Files = Directory.GetFiles(v2_9999, "*", SearchOption.AllDirectories);
var v2_99993_Files = Directory.GetFiles(v2_99993, "*", SearchOption.AllDirectories);
var v2_6_Files = Directory.GetFiles(v2_6, "*", SearchOption.AllDirectories);

var pythonFolder = Path.Combine(_NoesisFolder, "plugins", "python");
Expand All @@ -111,24 +113,34 @@ private static void CopyVersionFiles(NoesisVersions version)
{
case NoesisVersions.v2_9999_modified:
RemoveFiles(v2_9999_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
RemoveFiles(v2_99993_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
RemoveFiles(v2_6_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
CloneDirectory(v2_9999_modified, pythonFolder);
break;
case NoesisVersions.v2_9999:
RemoveFiles(v2_9999_modified_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
RemoveFiles(v2_99993_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
RemoveFiles(v2_6_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
CloneDirectory(v2_9999, pythonFolder);
break;
case NoesisVersions.v2_99993:
RemoveFiles(v2_9999_modified_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
RemoveFiles(v2_9999_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
RemoveFiles(v2_6_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
CloneDirectory(v2_99993, pythonFolder);
break;
case NoesisVersions.v2_6:
RemoveFiles(v2_9999_modified_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
RemoveFiles(v2_9999_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
RemoveFiles(v2_99993_Files.Select(z => Path.GetFileName(z)).ToArray(), pythonFolder, maxscriptFolder);
CloneDirectory(v2_6, pythonFolder);
break;
}
}

public enum NoesisVersions
{
v2_99993,
v2_9999,
v2_9999_modified,
v2_6,
Expand Down
6 changes: 6 additions & 0 deletions MHR-Model-Converter/MHR-Model-Converter.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -732,6 +732,12 @@
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<None Include="packages.config" />
<Content Include="Scripts\Originals\2.9993\fmt_RE_MESH.py">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="Scripts\Originals\2.9993\REEM_NOESIS_CMD.ms">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<Content Include="Noesis\noegl_opengl.dll">
Expand Down
4 changes: 2 additions & 2 deletions MHR-Model-Converter/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,9 @@ private static void Main()
var mhRiseBaseMesh = ".2008058288";
var re7Mesh = ".2109108288";

//Convert with v2.999 from base to re7 format
//Convert with v2.9993 from base to re7 format
var baseMeshes = GetFiles(conversionFolder.FullName, $"*{mhRiseBaseMesh}");
var failedConversions = ConvertWithNoesis(baseMeshes, mhRiseBaseMesh, re7Mesh, NoesisVersions.v2_9999, false, "-rewrite");
var failedConversions = ConvertWithNoesis(baseMeshes, mhRiseBaseMesh, re7Mesh, NoesisVersions.v2_99993, false, "-rewrite");

//Any failed conversions export base to re7 format with v2.999 modified
ConvertWithNoesis(failedConversions, mhRiseBaseMesh, re7Mesh, NoesisVersions.v2_9999_modified, false, "-rewrite");
Expand Down
Loading

0 comments on commit 85154a8

Please sign in to comment.