diff --git a/Mutagen.Bethesda.Core/Plugins/Binary/Parameters/BinaryWriteParameters.cs b/Mutagen.Bethesda.Core/Plugins/Binary/Parameters/BinaryWriteParameters.cs
index eb1a5e72d..f82bc5dd2 100644
--- a/Mutagen.Bethesda.Core/Plugins/Binary/Parameters/BinaryWriteParameters.cs
+++ b/Mutagen.Bethesda.Core/Plugins/Binary/Parameters/BinaryWriteParameters.cs
@@ -101,7 +101,7 @@ public sealed record BinaryWriteParameters
///
/// Load order. Required for games with Separated Load Order lists per master type
///
- public ILoadOrderGetter? LoadOrder { get; init; }
+ public ILoadOrderGetter? LoadOrder { get; init; }
///
/// Whether to use multithreading when possible
diff --git a/Mutagen.Bethesda.Core/Plugins/Binary/Translations/ModHeaderWriteLogic.cs b/Mutagen.Bethesda.Core/Plugins/Binary/Translations/ModHeaderWriteLogic.cs
index 8d2835b9a..cee39c1d1 100644
--- a/Mutagen.Bethesda.Core/Plugins/Binary/Translations/ModHeaderWriteLogic.cs
+++ b/Mutagen.Bethesda.Core/Plugins/Binary/Translations/ModHeaderWriteLogic.cs
@@ -155,7 +155,7 @@ private void PostProcessAdjustments(
MutagenWriter writer,
IModGetter mod,
IModHeaderCommon modHeader,
- ILoadOrderGetter? loadOrder)
+ ILoadOrderGetter? loadOrder)
{
HandleDisallowedLowerFormIDs();
writer.MetaData.MasterReferences = ConstructWriteMasters(mod);
diff --git a/Mutagen.Bethesda.Core/Plugins/Masters/SeparatedMasterPackage.cs b/Mutagen.Bethesda.Core/Plugins/Masters/SeparatedMasterPackage.cs
index b81d6b06d..4585d600b 100644
--- a/Mutagen.Bethesda.Core/Plugins/Masters/SeparatedMasterPackage.cs
+++ b/Mutagen.Bethesda.Core/Plugins/Masters/SeparatedMasterPackage.cs
@@ -51,7 +51,7 @@ public static IReadOnlySeparatedMasterPackage Factory(
ModKey currentModKey,
MasterStyle style,
IReadOnlyMasterReferenceCollection masters,
- ILoadOrderGetter? loadOrder)
+ ILoadOrderGetter? loadOrder)
{
var constants = GameConstants.Get(release);
if (constants.SeparateMasterLoadOrders)
@@ -151,13 +151,13 @@ internal static IReadOnlySeparatedMasterPackage Separate(
ModKey currentModKey,
MasterStyle style,
IReadOnlyMasterReferenceCollection masters,
- ILoadOrderGetter? loadOrder)
+ ILoadOrderGetter? loadOrder)
{
var normal = new List();
var medium = new List();
var light = new List();
- void AddToList(IModFlagsGetter mod, ModKey modKey)
+ void AddToList(IModMasterFlagsGetter mod, ModKey modKey)
{
if (mod.IsMediumMaster)
{
diff --git a/Mutagen.Bethesda.Core/Plugins/Records/AMod.cs b/Mutagen.Bethesda.Core/Plugins/Records/AMod.cs
index 215053299..396faec97 100644
--- a/Mutagen.Bethesda.Core/Plugins/Records/AMod.cs
+++ b/Mutagen.Bethesda.Core/Plugins/Records/AMod.cs
@@ -50,13 +50,13 @@ public AMod(ModKey modKey)
public abstract bool UsingLocalization { get; set; }
bool IModFlagsGetter.UsingLocalization => throw new NotImplementedException();
public abstract bool IsMaster { get; set; }
- bool IModFlagsGetter.IsMaster => throw new NotImplementedException();
+ bool IModMasterFlagsGetter.IsMaster => throw new NotImplementedException();
public abstract bool CanBeSmallMaster { get; }
public abstract bool IsSmallMaster { get; set; }
- bool IModFlagsGetter.IsSmallMaster => throw new NotImplementedException();
+ bool IModMasterFlagsGetter.IsSmallMaster => throw new NotImplementedException();
public abstract bool CanBeMediumMaster { get; }
public abstract bool IsMediumMaster { get; set; }
- bool IModFlagsGetter.IsMediumMaster => throw new NotImplementedException();
+ bool IModMasterFlagsGetter.IsMediumMaster => throw new NotImplementedException();
public abstract bool ListsOverriddenForms { get; }
IGroup? IMod.TryGetTopLevelGroup() => throw new NotImplementedException();
IGroup? IMod.TryGetTopLevelGroup(Type t) => throw new NotImplementedException();
diff --git a/Mutagen.Bethesda.Core/Plugins/Records/ModFlags.cs b/Mutagen.Bethesda.Core/Plugins/Records/ModFlags.cs
index 4134bdbf1..d344b017e 100644
--- a/Mutagen.Bethesda.Core/Plugins/Records/ModFlags.cs
+++ b/Mutagen.Bethesda.Core/Plugins/Records/ModFlags.cs
@@ -1,6 +1,6 @@
namespace Mutagen.Bethesda.Plugins.Records;
-public interface IModFlagsGetter : IModKeyed
+public interface IModFlagsGetter : IModMasterFlagsGetter, IModKeyed
{
///
/// Whether a mod supports localization features
@@ -12,6 +12,14 @@ public interface IModFlagsGetter : IModKeyed
///
bool UsingLocalization { get; }
+ ///
+ /// Whether a mod lists overridden forms in its header
+ ///
+ bool ListsOverriddenForms { get; }
+}
+
+public interface IModMasterFlagsGetter : IModKeyed
+{
///
/// Whether a mod supports Small Master features
///
@@ -36,11 +44,6 @@ public interface IModFlagsGetter : IModKeyed
/// Whether a mod has Master flag enabled
///
bool IsMaster { get; }
-
- ///
- /// Whether a mod lists overridden forms in its header
- ///
- bool ListsOverriddenForms { get; }
}
public record ModFlags : IModFlagsGetter