Releases: cmkushnir/NMSModBuilder
Releases · cmkushnir/NMSModBuilder
5.58.0.3
.NET 8, libmbin.dll & mapping.json >= 5.58.0.2 (included)
BETA
- most deadlock and perf issues should be fixed.
- report any issues in nmsmb-csharp channel on NMS Modding discord.
5.20.0.0
.NET 8, libmbin.dll & mapping.json >= 5.20.0.1
- add:
- App.config and App.manifest to make per monitor dpi aware, was system dpi aware.
- change:
- search text tab now has a start button to initiate a search.
- refactor diagnostic filtering code.
- diagnostic indicator icon reflects worst diagnostic severity: error, warn, info, [none]
- util/(Global).cs ModelViewsEnum updated with new class name.
- cmk/Starcharts.cs updated to only explode STARCHART_A to STARCHART_D e.g. not STARCHART_NPC or STARCHART_FRE.
- update:
- ClosedXML NuGet package from 0.102.3 to 0.104.1.
5.12.0.0
.NET 8, libmbin.dll & mapping.json >= 5.10.0.1
- add:
- cmkNMSConfig.json supports list of compiler warnings to suppress.
- these must be set before starting app.
- Application tab has UI font family and size comboboxes.
- all listed families are monospaced.
- conflicts tab now shows out of date mod mbin's i.e. game mbinc version != mod mbin mbinc version.
- cmkNMSConfig.json supports list of compiler warnings to suppress.
- change:
- script log now shows hidden diagnostics as info e.g. unneeded using statements.
- fix:
- apparent deadlock if user cancels libmbin download when prompted.
- now just downloads without prompting user.
- if no_github command-line used then won't download and will just fail call.
- apparent deadlock if user cancels libmbin download when prompted.
5.12.0.1
.NET 8, libmbin.dll & mapping.json >= 5.12.0.1
- change:
- move out of date checker into its own tab.
- can specify other folders to check in config file.
- has it's own pak item display below the tree of ood items.
- like the conflicts tab, the ood tab is only display if there are ood items.
- it can take a long time to gen the diff for some ood mbin's, the app is not hung.
- move out of date checker into its own tab.
5.11.0.0
.NET 8, libmbin.dll & mapping.json >= 5.10.0.1
- add:
- cmkNMSConfig.json supports list of compiler warnings to suppress.
- these must be set before starting app.
- cmkNMSConfig.json supports list of compiler warnings to suppress.
- change:
- script log now shows hidden diagnostics as info e.g. unneeded using statements.
- fix:
- apparent deadlock if user cancels libmbin download when prompted.
- now just downloads without prompting user.
- if no_github command-line used then won't download and will just fail call.
- apparent deadlock if user cancels libmbin download when prompted.
5.10.0.0
.NET 8, libmbin.dll & mapping.json >= 5.10.0.1
- add:
- script LogViewer now shows errors & warnings for current script as you type.
- script editor now shows underlines for script errors & warnings as you type.
- script list shows error icon for any scripts with warnings or errors as you type.
- cmkNMSConfig.json supports ScriptDiagnostic{*Color} to set underline color for script errors and warnings.
- cmkNMSConfig.json supports TextFontFamily and TextFontSize.
- group category text is fixed to config font size * 1.4 when app starts.
- does not change tooltip size.
- DDS search tab has filters for BC compression type and mipmap count.
- since search may be done in parallel you may be missing some in the displayed result sequence
if the results count == specified max results i.e. truncated results may not be at end of list.
- since search may be done in parallel you may be missing some in the displayed result sequence
- subtitle added to items in substances, products, technologies tabs.
- change:
- dds format now includes both the 4 character code and the mapped BC compression type.
- no longer maintaining support for game pass
- if curent game pass specific code breaks it will not be fixed going forward.
- fix:
- EBIN missing support for new mbinc string types.
- wrap mbin data SaveFileDialog call in dispatcher invoke call.
- loading mbinc enum types didn't handle case of dup enum names in diff classes.
- regex for ebin enum value matching; used to require enum value to be at least 2 char.
- update:
- Pfim NuGet package from 0.11.2 to 0.11.3.
- Roslyn NuGet package from 4.10.0 to 4.11.0.
5.2.0.2
.NET 8, libmbin.dll & mapping.json >= 5.1.0.1 (5.1.1.1 included)
- change:
- header IsValid check no longer requires libmbin, which allows libmbin's used for viewing to be lazy loaded again.
- headers now check if first 4 bytes of header timestamp have pre field (4th byte) set,
if so then uses first 4 bytes for mbinc version, else uses last 4 bytes for mbinc version.
5.2.0.1
4.65.0.0
.NET 8, libmbin.dll & mapping.json >= 4.65.0.4 (included)
- change:
- add support for new mbin version 3250 in header, both reading and writing.
- remove Log GUID Mismatch option from Application tab.
- update:
- Octokit NuGet package from 11.0.0 to 11.0.1.
4.64.0.0
NOTE: first release that requires .NET 8
libmbin.dll & mapping.json >= 4.64.0.2 (included)
- add:
- cmkNMSConfig.json ... finally broke down and added a config file.
Currently only holds diff colors used when view text diffs in Pak Item tab.
e.g. change highlight colors to increase contrast or for color blindness.
- cmkNMSConfig.json ... finally broke down and added a config file.
- change:
- .NET 8 required.
This removes some of the .NET 8 System.*.dll's that were being added to the nmsmb folder
by 3rd party API's e.g. Roslyn. - Ebin moved top-level class guid from first line to 3rd line beside class name.
- Tech tab list changed back to virtual, initial load time was too long when not virtual.
- Conflicts tab no longer shows conflicts due to _SCRIPTS folder.
- .NET 8 required.
- fix:
- Reworked CompilerAssemblies.txt to not load from both the .NET core folder
and overrides in the app folder e.g. System.Text.Json.dll. Now first loads unique names from
app folder then adds unique names from .NET core folder, so only version in app folder will be loaded. - cmk.NMS.Script.ModFiles:ReleaseModCollection was calling DispatcherBeginInvoke instead of DispatcherInvoke
which resulted in a race that could prevent the script assemblies from unloading from the AssemblyLoadContext.
Using the Newtonsoft or System.Text.Json classes in a script can also cause this, possibly because of the static's in:
https://source.dot.net/#System.Text.Json/System/Text/Json/Serialization/JsonSerializer.Write.HandleMetadata.cs,2ca342a99419a245
... other .NET or 3rd party classes may cause the same issue.
- Reworked CompilerAssemblies.txt to not load from both the .NET core folder
- update:
- Octokit NuGet package from 10.0.0 to 11.0.0.