Skip to content

Commit

Permalink
SFBGS004 added and Starfield regenerated
Browse files Browse the repository at this point in the history
  • Loading branch information
Noggog committed Sep 27, 2024
1 parent 2b98583 commit 3fcc39b
Show file tree
Hide file tree
Showing 56 changed files with 919 additions and 15 deletions.
14 changes: 7 additions & 7 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@
<ItemGroup>
<PackageVersion Include="CommandLineParser" Version="2.9.1" />
<PackageVersion Include="Loqui.Generation">
<Version>2.64.0-nightly-20240520-062594</Version>
<Version>2.64.1</Version>
</PackageVersion>
<PackageVersion Include="Mutagen.Bethesda" Version="0.45.1.1-nightly-20240723-054229" />
<PackageVersion Include="Mutagen.Bethesda.Core" Version="0.45.1.1-nightly-20240723-054229" />
<PackageVersion Include="Mutagen.Bethesda.Fallout4" Version="0.45.1.1-nightly-20240723-054229" />
<PackageVersion Include="Mutagen.Bethesda.Oblivion" Version="0.45.1.1-nightly-20240723-054229" />
<PackageVersion Include="Mutagen.Bethesda.Skyrim" Version="0.45.1.1-nightly-20240723-054229" />
<PackageVersion Include="Mutagen.Bethesda.Starfield" Version="0.45.1.1-nightly-20240723-054229" />
<PackageVersion Include="Mutagen.Bethesda" Version="0.46.1" />
<PackageVersion Include="Mutagen.Bethesda.Core" Version="0.46.1" />
<PackageVersion Include="Mutagen.Bethesda.Fallout4" Version="0.46.1" />
<PackageVersion Include="Mutagen.Bethesda.Oblivion" Version="0.46.1" />
<PackageVersion Include="Mutagen.Bethesda.Skyrim" Version="0.46.1" />
<PackageVersion Include="Mutagen.Bethesda.Starfield" Version="0.46.1" />
</ItemGroup>
</Project>
1 change: 1 addition & 0 deletions Mutagen.Bethesda.FormKeys.Generator/InputConfig.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ Starfield "D:\SteamLibrary\steamapps\common\Starfield\Data\Constellation.esm"
Starfield "D:\SteamLibrary\steamapps\common\Starfield\Data\OldMars.esm"
Starfield "D:\SteamLibrary\steamapps\common\Starfield\Data\BlueprintShips-Starfield.esm"
Starfield "D:\SteamLibrary\steamapps\common\Starfield\Data\SFBGS003.esm"
Starfield "D:\SteamLibrary\steamapps\common\Starfield\Data\SFBGS004.esm"
Starfield "D:\SteamLibrary\steamapps\common\Starfield\Data\SFBGS006.esm"
Starfield "D:\SteamLibrary\steamapps\common\Starfield\Data\SFBGS007.esm"
Starfield "D:\SteamLibrary\steamapps\common\Starfield\Data\SFBGS008.esm"
27 changes: 26 additions & 1 deletion Mutagen.Bethesda.FormKeys.Generator/Program.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
using CommandLine;
using Loqui;
using Mutagen.Bethesda.Environments;
using Mutagen.Bethesda.Plugins;
using Mutagen.Bethesda.Plugins.Binary.Headers;
using Mutagen.Bethesda.Plugins.Binary.Parameters;
using Mutagen.Bethesda.Plugins.Meta;
using Mutagen.Bethesda.Plugins.Records;
using Noggog;
using Noggog.IO;
Expand Down Expand Up @@ -117,7 +121,28 @@ private static string KnownEdidSwaps(string str)
public static void Generate(GenerateFromMod gen)
{
ExportStringToFile exportStringToFile = new();
var mod = ModInstantiator.Importer(gen.Path, gen.Release);

// ToDo
// Eventually use generic read builder
var modPath = new ModPath(gen.Path);
using var env = GameEnvironment.Typical.Construct(gen.Release);
Cache<IModMasterStyledGetter, ModKey>? masterFlagsLookup = null;
if (GameConstants.Get(gen.Release).SeparateMasterLoadOrders)
{
var header = ModHeaderFrame.FromPath(gen.Path, gen.Release);
masterFlagsLookup = new Cache<IModMasterStyledGetter, ModKey>(x => x.ModKey);
foreach (var master in header.Masters(gen.Path).Select(x => x.Master))
{
var otherPath = Path.Combine(env.DataFolderPath, master.FileName);
var otherHeader = ModHeaderFrame.FromPath(otherPath, gen.Release);
masterFlagsLookup.Add(new KeyedMasterStyle(master, otherHeader.MasterStyle));
}
}

var mod = ModInstantiator.ImportGetter(gen.Path, gen.Release, new BinaryReadParameters()
{
MasterFlagsLookup = masterFlagsLookup
});
var list = new List<RecordItem>();
foreach (var rec in mod.EnumerateMajorRecords())
{
Expand Down
12 changes: 6 additions & 6 deletions Mutagen.Bethesda.FormKeys.Starfield/SFBGS003/Armor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ public static partial class Armor
public static FormLink<IArmorGetter> SFBGS003_AgentNo1_SpaceSuit_Diver_Helmet_01_NOTPLAYABLE => Construct(0x66b0);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_ETES_Helmet => Construct(0x676d);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_ETES => Construct(0x676e);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_Explorer_Celia => Construct(0x6b99);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_Explorer_Backpack_Celia => Construct(0x6b9a);
public static FormLink<IArmorGetter> SFBGS003_SpaceSuit_BountyHunter_Helmet_Celia => Construct(0x6b9b);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_Navigator_Backpack_Booker => Construct(0x6bc5);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_Navigator_SpaceSuit_Booker => Construct(0x6bc6);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_Ranger_Helmet_Booker => Construct(0x6bc7);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_Explorer_Bold => Construct(0x6b99);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_Explorer_Backpack_Bold => Construct(0x6b9a);
public static FormLink<IArmorGetter> SFBGS003_SpaceSuit_BountyHunter_Helmet_Bold => Construct(0x6b9b);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_Navigator_Backpack_Vibrant => Construct(0x6bc5);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_Navigator_SpaceSuit_Vibrant => Construct(0x6bc6);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_Ranger_Helmet_Vibrant => Construct(0x6bc7);
public static FormLink<IArmorGetter> SFBGS003_Spacesuit_ETES_Backpack => Construct(0xf9ca);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -41,5 +41,6 @@ public static partial class LeveledItem
public static FormLink<ILeveledItemGetter> LL_Spacesuit_ETES_Helmet_Quality_03 => Construct(0xff9b);
public static FormLink<ILeveledItemGetter> LL_Spacesuit_ETES_Helmet_Quality_04 => Construct(0xff9c);
public static FormLink<ILeveledItemGetter> LL_Weapon_PlasmaCutter => Construct(0xffd8);
public static FormLink<ILeveledItemGetter> SFBGS003_LL_Astras_Aspirational_Armor => Construct(0xffda);
}
}
1 change: 1 addition & 0 deletions Mutagen.Bethesda.FormKeys.Starfield/SFBGS003/Quest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -34,5 +34,6 @@ public static partial class Quest
public static FormLink<IQuestGetter> SFBGS003_Bounty_SpeechChallenge => Construct(0xb919);
public static FormLink<IQuestGetter> SFBGS003_TAHQ_Convo_TankInevitable01 => Construct(0xf57e);
public static FormLink<IQuestGetter> Patch_Update05_Hotfix01 => Construct(0xffd9);
public static FormLink<IQuestGetter> SQ_SFBGS003_Patch => Construct(0xffdb);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
// Autogenerated by https://github.com/Mutagen-Modding/Mutagen.Bethesda.FormKeys

using Mutagen.Bethesda.Starfield;
using Mutagen.Bethesda.Plugins;

namespace Mutagen.Bethesda.FormKeys.Starfield;

public static partial class SFBGS004
{
public static partial class ActorValueInformation
{
private static FormLink<IActorValueInformationGetter> Construct(uint id) => new FormLink<IActorValueInformationGetter>(ModKey.MakeFormKey(id));
public static FormLink<IActorValueInformationGetter> VehicleDriverDamageReductionFactor_AV => Construct(0x328);
}
}
15 changes: 15 additions & 0 deletions Mutagen.Bethesda.FormKeys.Starfield/SFBGS004/AimAssistModel.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
// Autogenerated by https://github.com/Mutagen-Modding/Mutagen.Bethesda.FormKeys

using Mutagen.Bethesda.Starfield;
using Mutagen.Bethesda.Plugins;

namespace Mutagen.Bethesda.FormKeys.Starfield;

public static partial class SFBGS004
{
public static partial class AimAssistModel
{
private static FormLink<IAimAssistModelGetter> Construct(uint id) => new FormLink<IAimAssistModelGetter>(ModKey.MakeFormKey(id));
public static FormLink<IAimAssistModelGetter> Rev8_MountedLaser_AAM => Construct(0x34e);
}
}
16 changes: 16 additions & 0 deletions Mutagen.Bethesda.FormKeys.Starfield/SFBGS004/ArtObject.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// Autogenerated by https://github.com/Mutagen-Modding/Mutagen.Bethesda.FormKeys

using Mutagen.Bethesda.Starfield;
using Mutagen.Bethesda.Plugins;

namespace Mutagen.Bethesda.FormKeys.Starfield;

public static partial class SFBGS004
{
public static partial class ArtObject
{
private static FormLink<IArtObjectGetter> Construct(uint id) => new FormLink<IArtObjectGetter>(ModKey.MakeFormKey(id));
public static FormLink<IArtObjectGetter> SFBGS004_BuggyFX_AO => Construct(0x5e);
public static FormLink<IArtObjectGetter> SFBGS004_BuggyDustFX_AO => Construct(0x28b);
}
}
26 changes: 26 additions & 0 deletions Mutagen.Bethesda.FormKeys.Starfield/SFBGS004/BoneModifier.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
// Autogenerated by https://github.com/Mutagen-Modding/Mutagen.Bethesda.FormKeys

using Mutagen.Bethesda.Starfield;
using Mutagen.Bethesda.Plugins;

namespace Mutagen.Bethesda.FormKeys.Starfield;

public static partial class SFBGS004
{
public static partial class BoneModifier
{
private static FormLink<IBoneModifierGetter> Construct(uint id) => new FormLink<IBoneModifierGetter>(ModKey.MakeFormKey(id));
public static FormLink<IBoneModifierGetter> BM_RoverA_FrontRightPistonBaseDriver => Construct(0x4);
public static FormLink<IBoneModifierGetter> BM_RoverA_FrontLeftPistonBaseDriver => Construct(0x5);
public static FormLink<IBoneModifierGetter> BM_RoverA_FrontLeftLowerAxelDriver => Construct(0x6);
public static FormLink<IBoneModifierGetter> BM_RoverA_FrontLeftAxelDriver => Construct(0x7);
public static FormLink<IBoneModifierGetter> BM_RoverA_FrontRightLowerAxelDriver => Construct(0x8);
public static FormLink<IBoneModifierGetter> BM_RoverA_FrontRightAxelDriver => Construct(0x9);
public static FormLink<IBoneModifierGetter> BM_RoverA_RearLeftUpperPistonDriver => Construct(0xa);
public static FormLink<IBoneModifierGetter> BM_RoverA_RearLeftLowerAxelDriver => Construct(0xc);
public static FormLink<IBoneModifierGetter> BM_RoverA_RearLeftUpperAxelDriver => Construct(0xd);
public static FormLink<IBoneModifierGetter> BM_RoverA_RearRightLowerAxelDriver => Construct(0xf);
public static FormLink<IBoneModifierGetter> BM_RoverA_RearRightUpperAxelDriver => Construct(0x10);
public static FormLink<IBoneModifierGetter> BM_RoverA_RearRightUpperPistonDriver => Construct(0x11);
}
}
15 changes: 15 additions & 0 deletions Mutagen.Bethesda.FormKeys.Starfield/SFBGS004/Cell.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
// Autogenerated by https://github.com/Mutagen-Modding/Mutagen.Bethesda.FormKeys

using Mutagen.Bethesda.Starfield;
using Mutagen.Bethesda.Plugins;

namespace Mutagen.Bethesda.FormKeys.Starfield;

public static partial class SFBGS004
{
public static partial class Cell
{
private static FormLink<ICellGetter> Construct(uint id) => new FormLink<ICellGetter>(ModKey.MakeFormKey(id));
public static FormLink<ICellGetter> PackInShipPISMODVehicleNovaREV8TopStorageCell => Construct(0x41);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
// Autogenerated by https://github.com/Mutagen-Modding/Mutagen.Bethesda.FormKeys

using Mutagen.Bethesda.Starfield;
using Mutagen.Bethesda.Plugins;

namespace Mutagen.Bethesda.FormKeys.Starfield;

public static partial class SFBGS004
{
public static partial class ConstructibleObject
{
private static FormLink<IConstructibleObjectGetter> Construct(uint id) => new FormLink<IConstructibleObjectGetter>(ModKey.MakeFormKey(id));
public static FormLink<IConstructibleObjectGetter> co_SMS_Vehicle_Nova_REV8_Set => Construct(0x44);
}
}
15 changes: 15 additions & 0 deletions Mutagen.Bethesda.FormKeys.Starfield/SFBGS004/CurveTable.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
// Autogenerated by https://github.com/Mutagen-Modding/Mutagen.Bethesda.FormKeys

using Mutagen.Bethesda.Starfield;
using Mutagen.Bethesda.Plugins;

namespace Mutagen.Bethesda.FormKeys.Starfield;

public static partial class SFBGS004
{
public static partial class CurveTable
{
private static FormLink<ICurveTableGetter> Construct(uint id) => new FormLink<ICurveTableGetter>(ModKey.MakeFormKey(id));
public static FormLink<ICurveTableGetter> VehicleThrottleStickInputCurve => Construct(0x2f);
}
}
27 changes: 27 additions & 0 deletions Mutagen.Bethesda.FormKeys.Starfield/SFBGS004/DefaultObject.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
// Autogenerated by https://github.com/Mutagen-Modding/Mutagen.Bethesda.FormKeys

using Mutagen.Bethesda.Starfield;
using Mutagen.Bethesda.Plugins;

namespace Mutagen.Bethesda.FormKeys.Starfield;

public static partial class SFBGS004
{
public static partial class DefaultObject
{
private static FormLink<IDefaultObjectGetter> Construct(uint id) => new FormLink<IDefaultObjectGetter>(ModKey.MakeFormKey(id));
public static FormLink<IDefaultObjectGetter> VehicleKeyword_DO => Construct(0x18);
public static FormLink<IDefaultObjectGetter> VehicleDriverSeatKeyword_DO => Construct(0x1a);
public static FormLink<IDefaultObjectGetter> VehicleVascoSeatKeyword_DO => Construct(0x1e);
public static FormLink<IDefaultObjectGetter> VehicleCompanionSeatKeyword_DO => Construct(0x1f);
public static FormLink<IDefaultObjectGetter> VehicleThrottleStickInputCurve_DO => Construct(0x30);
public static FormLink<IDefaultObjectGetter> SpaceshipPartLinkedVehicleKeyword_DO => Construct(0x3a);
public static FormLink<IDefaultObjectGetter> VehicleShipLinkedRefKeyword_DO => Construct(0x3c);
public static FormLink<IDefaultObjectGetter> SpaceshipVehicleRecipeFilterKeywordDO => Construct(0x59);
public static FormLink<IDefaultObjectGetter> VehicleCollisionLayer_DO => Construct(0x2a4);
public static FormLink<IDefaultObjectGetter> VehicleDefaultPlayerVehicle_DO => Construct(0x315);
public static FormLink<IDefaultObjectGetter> StackIMODAlcoholKeyword_DO => Construct(0x31f);
public static FormLink<IDefaultObjectGetter> VehicleDriverPerk_DO => Construct(0x329);
public static FormLink<IDefaultObjectGetter> VehicleDriverDamageReductionFactorAV_DO => Construct(0x32a);
}
}
51 changes: 51 additions & 0 deletions Mutagen.Bethesda.FormKeys.Starfield/SFBGS004/DialogBranch.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
// Autogenerated by https://github.com/Mutagen-Modding/Mutagen.Bethesda.FormKeys

using Mutagen.Bethesda.Starfield;
using Mutagen.Bethesda.Plugins;

namespace Mutagen.Bethesda.FormKeys.Starfield;

public static partial class SFBGS004
{
public static partial class DialogBranch
{
private static FormLink<IDialogBranchGetter> Construct(uint id) => new FormLink<IDialogBranchGetter>(ModKey.MakeFormKey(id));
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0 => Construct(0x2e0);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE001 => Construct(0x30b);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE000 => Construct(0x30c);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE002 => Construct(0x30d);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE000DUPLICATE000 => Construct(0x30e);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE004 => Construct(0x310);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE003 => Construct(0x311);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE006 => Construct(0x318);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE005 => Construct(0x319);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE008 => Construct(0x31b);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE007 => Construct(0x31c);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE010 => Construct(0x31d);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE009 => Construct(0x31e);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE012 => Construct(0x320);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE011 => Construct(0x321);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE014 => Construct(0x32b);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE013 => Construct(0x32c);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE016 => Construct(0x32e);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE015 => Construct(0x32f);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE018 => Construct(0x330);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE017 => Construct(0x331);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE020 => Construct(0x335);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE019 => Construct(0x336);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE022 => Construct(0x337);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE021 => Construct(0x338);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE024 => Construct(0x33a);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE023 => Construct(0x33b);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE026 => Construct(0x348);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE025 => Construct(0x349);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE027 => Construct(0x34a);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE025DUPLICATE000 => Construct(0x34b);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE029 => Construct(0x34c);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE028 => Construct(0x34d);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE031 => Construct(0x34f);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE030 => Construct(0x350);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE033 => Construct(0x35a);
public static FormLink<IDialogBranchGetter> SFBGS004_COM_Companion_VehicleDialogueNewBranch0DUPLICATE032 => Construct(0x35b);
}
}
Loading

0 comments on commit 3fcc39b

Please sign in to comment.