diff --git a/src/SoapstoneLib/SoapstoneLib/KnownServer.cs b/src/SoapstoneLib/SoapstoneLib/KnownServer.cs index 2dd89c68b..b7377515b 100644 --- a/src/SoapstoneLib/SoapstoneLib/KnownServer.cs +++ b/src/SoapstoneLib/SoapstoneLib/KnownServer.cs @@ -14,19 +14,24 @@ namespace SoapstoneLib public sealed class KnownServer { /// - /// Standard server info for DSMapStudio. + /// Standard server info for DSMapStudio and DSMapStudio fork Smithbox. /// - public static readonly KnownServer DSMapStudio = new KnownServer(22720, "DSMapStudio"); + public static readonly KnownServer DSMapStudio = new KnownServer(22720, "DSMapStudio", "Smithbox"); /// - /// Standard server info for Smithbox. + /// Alternate name for DSMapstudio/Smithbox server info. /// - public static readonly KnownServer Smithbox = new KnownServer(22721, "Smithbox"); + public static readonly KnownServer Smithbox = DSMapStudio; /// - /// Expected local process name of this server. This usually matches the exe name. + /// An expected local process name of this server. This usually matches the exe name. /// - public string ProcessName { get; } + public string ProcessName => ProcessNames.FirstOrDefault(); + + /// + /// All expected local process names of this server. This usually matches the exe name. + /// + public IReadOnlyList ProcessNames { get; } /// /// Standard port for this server to run at. A different one may be selected if it's busy. @@ -40,18 +45,18 @@ public sealed class KnownServer /// Otherwise, the port is used directly, if non-zero. The port is also preferred /// if there are multiple ports associated with the given process name. /// - public KnownServer(ushort portHint, string processName) + public KnownServer(ushort portHint, params string[] processNames) { - if (portHint == 0 && processName == null) + if (portHint == 0 && processNames.Length == 0) { throw new ArgumentException($"One of process or port must be provided in KnownServer"); } PortHint = portHint; - ProcessName = processName; + ProcessNames = processNames.ToList().AsReadOnly(); } /// - public override string ToString() => $"KnownServer[PortHint={PortHint},ProcessName={ProcessName}]"; + public override string ToString() => $"KnownServer[PortHint={PortHint},ProcessNames={string.Join(",", ProcessNames)}]"; /// /// Try to find a running server using heuristic info. @@ -67,10 +72,14 @@ internal bool FindServer(out int realPort) MIB_TCP6ROW_OWNER_PID[] rows6 = GetAllTcpConnections(); // If process is given, always try to use it, and fail if not present - if (ProcessName != null) + if (ProcessNames.Count > 0) { - Process[] processes = Process.GetProcessesByName(ProcessName); - if (processes.Length == 0) + List processes = new(); + foreach (string name in ProcessNames) + { + processes.AddRange(Process.GetProcessesByName(name)); + } + if (processes.Count == 0) { return false; } diff --git a/src/SoapstoneLib/SoapstoneLib/SoulsFmg.Data.cs b/src/SoapstoneLib/SoapstoneLib/SoulsFmg.Data.cs index f205c3931..cdf211378 100644 --- a/src/SoapstoneLib/SoapstoneLib/SoulsFmg.Data.cs +++ b/src/SoapstoneLib/SoapstoneLib/SoulsFmg.Data.cs @@ -20,6 +20,7 @@ public static partial class SoulsFmg public enum FmgLanguage { Unspecified, + Arabic, AsiaEnglish, BrazilPortuguese, BritishEnglish, @@ -68,8 +69,16 @@ public enum FmgType AccessoryName_DLC2, AccessoryName_Patch, ActionButtonText, + ActionButtonText_DLC1, + ActionButtonText_DLC2, + ArchiveContent, + ArchiveName, ArtsCaption, + ArtsCaption_DLC1, + ArtsCaption_DLC2, ArtsName, + ArtsName_DLC1, + ArtsName_DLC2, BloodMsg, BloodMsg_DLC1, BloodMsg_DLC2, @@ -80,6 +89,8 @@ public enum FmgType BloodMsgWordCategory, BonfireMenu, BonfireName, + BoosterInfo, + BoosterName, CauseOfDeath, CharaMaking, CharaName, @@ -92,7 +103,13 @@ public enum FmgType EventText_DLC2, EventText_Patch, EventTextForMap, + EventTextForMap_DLC1, + EventTextForMap_DLC2, EventTextForTalk, + EventTextForTalk_DLC1, + EventTextForTalk_DLC2, + FCSInfo, + FCSName, FeatureCaption, FeatureInfo, FeatureName, @@ -100,6 +117,8 @@ public enum FmgType GameDialogues_DLC1, GameDialogues_DLC2, GameKeyGuide, + GameKeyGuide_DLC1, + GameKeyGuide_DLC2, GameLineHelp, GameLineHelp_DLC1, GameLineHelp_DLC2, @@ -116,20 +135,34 @@ public enum FmgType GameSystemMessageXboxOne_DLC1, GameSystemMessageXboxOne_DLC2, GemCaption, + GemCaption_DLC1, + GemCaption_DLC2, GemEffect, + GemEffect_DLC1, + GemEffect_DLC2, GemInfo, + GemInfo_DLC1, + GemInfo_DLC2, GemName, + GemName_DLC1, + GemName_DLC2, GemPrefix, + GeneratorInfo, + GeneratorName, GoodsCaption, GoodsCaption_DLC1, GoodsCaption_DLC2, GoodsCaption_Patch, GoodsDialog, + GoodsDialog_DLC1, + GoodsDialog_DLC2, GoodsInfo, GoodsInfo_DLC1, GoodsInfo_DLC2, GoodsInfo_Patch, GoodsInfo2, + GoodsInfo2_DLC1, + GoodsInfo2_DLC2, GoodsName, GoodsName_DLC1, GoodsName_DLC2, @@ -145,7 +178,11 @@ public enum FmgType LineHelp, LineHelp_Patch, LoadingText, + LoadingText_DLC1, + LoadingText_DLC2, LoadingTitle, + LoadingTitle_DLC1, + LoadingTitle_DLC2, MagicCaption, MagicCaption_DLC1, MagicCaption_DLC2, @@ -162,8 +199,16 @@ public enum FmgType MenuGeneralText_Patch, MenuOther, MenuOther_Patch, + MissionName, + MissionObjective, + MissionPlaceName, + MissionSummary, MovieSubtitle, + MovieSubtitle_DLC1, + MovieSubtitle_DLC2, NetworkMessage, + NetworkMessage_DLC1, + NetworkMessage_DLC2, NpcMenu, NpcName, NpcName_DLC1, @@ -180,11 +225,14 @@ public enum FmgType ProtectorCaption_DLC2, ProtectorCaption_Patch, ProtectorInfo, + ProtectorInfo_DLC1, + ProtectorInfo_DLC2, ProtectorInfo_Patch, ProtectorName, ProtectorName_DLC1, ProtectorName_DLC2, ProtectorName_Patch, + RankerProfile, Skills, StaffRoll, SystemMessageDC, @@ -196,19 +244,29 @@ public enum FmgType TalkMsg_DLC2, TalkMsg_Patch, TalkMsgFemalePCAlt, + TalkMsgFemalePCAlt_DLC1, + TalkMsgFemalePCAlt_DLC2, TextDisplayTagList, TextEmbedImageNameWindows, TitleFlow, TitleMenu, TosWindows, TutorialBody, + TutorialBody_DLC1, + TutorialBody_DLC2, TutorialTitle, + TutorialTitle_DLC1, + TutorialTitle_DLC2, WeaponCaption, WeaponCaption_DLC1, WeaponCaption_DLC2, WeaponCaption_Patch, WeaponEffect, + WeaponEffect_DLC1, + WeaponEffect_DLC2, WeaponInfo, + WeaponInfo_DLC1, + WeaponInfo_DLC2, WeaponInfo_Patch, WeaponName, WeaponName_DLC1, @@ -1717,101 +1775,315 @@ internal static bool TryGetFmgGameInfo(FromSoftGame game, out FmgGameInfo info) ByType = new() { [FmgType.AccessoryCaption] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.AccessoryCaption, FmgType.AccessoryCaption, "AccessoryCaption", 27), + [FmgType.AccessoryCaption_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.AccessoryCaption_DLC1, FmgType.AccessoryCaption, "AccessoryCaption_dlc01", 318), + [FmgType.AccessoryCaption_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.AccessoryCaption_DLC2, FmgType.AccessoryCaption, "AccessoryCaption_dlc02", 418), [FmgType.AccessoryInfo] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.AccessoryInfo, FmgType.AccessoryInfo, "AccessoryInfo", 23), + [FmgType.AccessoryInfo_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.AccessoryInfo_DLC1, FmgType.AccessoryInfo, "AccessoryInfo_dlc01", 317), + [FmgType.AccessoryInfo_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.AccessoryInfo_DLC2, FmgType.AccessoryInfo, "AccessoryInfo_dlc02", 417), [FmgType.AccessoryName] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.AccessoryName, FmgType.AccessoryName, "AccessoryName", 13), + [FmgType.AccessoryName_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.AccessoryName_DLC1, FmgType.AccessoryName, "AccessoryName_dlc01", 316), + [FmgType.AccessoryName_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.AccessoryName_DLC2, FmgType.AccessoryName, "AccessoryName_dlc02", 416), [FmgType.ActionButtonText] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.ActionButtonText, FmgType.ActionButtonText, "ActionButtonText", 32), + [FmgType.ActionButtonText_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.ActionButtonText_DLC1, FmgType.ActionButtonText, "ActionButtonText_dlc01", 365), + [FmgType.ActionButtonText_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.ActionButtonText_DLC2, FmgType.ActionButtonText, "ActionButtonText_dlc02", 465), [FmgType.ArtsCaption] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ArtsCaption, FmgType.ArtsCaption, "ArtsCaption", 43), + [FmgType.ArtsCaption_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ArtsCaption_DLC1, FmgType.ArtsCaption, "ArtsCaption_dlc01", 332), + [FmgType.ArtsCaption_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ArtsCaption_DLC2, FmgType.ArtsCaption, "ArtsCaption_dlc02", 432), [FmgType.ArtsName] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ArtsName, FmgType.ArtsName, "ArtsName", 42), + [FmgType.ArtsName_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ArtsName_DLC1, FmgType.ArtsName, "ArtsName_dlc01", 331), + [FmgType.ArtsName_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ArtsName_DLC2, FmgType.ArtsName, "ArtsName_dlc02", 431), [FmgType.BloodMsg] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.BloodMsg, FmgType.BloodMsg, "BloodMsg", 2), + [FmgType.BloodMsg_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.BloodMsg_DLC1, FmgType.BloodMsg, "BloodMsg_dlc01", 361), + [FmgType.BloodMsg_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.BloodMsg_DLC2, FmgType.BloodMsg, "BloodMsg_dlc02", 461), [FmgType.EventTextForMap] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.EventTextForMap, FmgType.EventTextForMap, "EventTextForMap", 34), + [FmgType.EventTextForMap_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.EventTextForMap_DLC1, FmgType.EventTextForMap, "EventTextForMap_dlc01", 367), + [FmgType.EventTextForMap_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.EventTextForMap_DLC2, FmgType.EventTextForMap, "EventTextForMap_dlc02", 467), [FmgType.EventTextForTalk] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.EventTextForTalk, FmgType.EventTextForTalk, "EventTextForTalk", 33), + [FmgType.EventTextForTalk_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.EventTextForTalk_DLC1, FmgType.EventTextForTalk, "EventTextForTalk_dlc01", 366), + [FmgType.EventTextForTalk_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.EventTextForTalk_DLC2, FmgType.EventTextForTalk, "EventTextForTalk_dlc02", 466), [FmgType.GameDialogues] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameDialogues, FmgType.GameDialogues, "GR_Dialogues", 204), + [FmgType.GameDialogues_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameDialogues_DLC1, FmgType.GameDialogues, "GR_Dialogues_dlc01", 372), + [FmgType.GameDialogues_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameDialogues_DLC2, FmgType.GameDialogues, "GR_Dialogues_dlc02", 472), [FmgType.GameKeyGuide] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameKeyGuide, FmgType.GameKeyGuide, "GR_KeyGuide", 202), + [FmgType.GameKeyGuide_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameKeyGuide_DLC1, FmgType.GameKeyGuide, "GR_KeyGuide_dlc01", 370), + [FmgType.GameKeyGuide_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameKeyGuide_DLC2, FmgType.GameKeyGuide, "GR_KeyGuide_dlc02", 470), [FmgType.GameLineHelp] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameLineHelp, FmgType.GameLineHelp, "GR_LineHelp", 201), + [FmgType.GameLineHelp_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameLineHelp_DLC1, FmgType.GameLineHelp, "GR_LineHelp_dlc01", 369), + [FmgType.GameLineHelp_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameLineHelp_DLC2, FmgType.GameLineHelp, "GR_LineHelp_dlc02", 469), [FmgType.GameMenuText] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameMenuText, FmgType.GameMenuText, "GR_MenuText", 200), + [FmgType.GameMenuText_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameMenuText_DLC1, FmgType.GameMenuText, "GR_MenuText_dlc01", 368), + [FmgType.GameMenuText_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameMenuText_DLC2, FmgType.GameMenuText, "GR_MenuText_dlc02", 468), [FmgType.GameSystemMessageWindows] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameSystemMessageWindows, FmgType.GameSystemMessageWindows, "GR_System_Message_win64", 203), + [FmgType.GameSystemMessageWindows_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameSystemMessageWindows_DLC1, FmgType.GameSystemMessageWindows, "GR_System_Message_win64_dlc01", 371), + [FmgType.GameSystemMessageWindows_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.GameSystemMessageWindows_DLC2, FmgType.GameSystemMessageWindows, "GR_System_Message_win64_dlc02", 471), [FmgType.GemCaption] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemCaption, FmgType.GemCaption, "GemCaption", 37), + [FmgType.GemCaption_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemCaption_DLC1, FmgType.GemCaption, "GemCaption_dlc01", 324), + [FmgType.GemCaption_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemCaption_DLC2, FmgType.GemCaption, "GemCaption_dlc02", 424), [FmgType.GemEffect] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemEffect, FmgType.GemEffect, "GemEffect", 45), + [FmgType.GemEffect_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemEffect_DLC1, FmgType.GemEffect, "GemEffect_dlc01", 334), + [FmgType.GemEffect_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemEffect_DLC2, FmgType.GemEffect, "GemEffect_dlc02", 434), [FmgType.GemInfo] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemInfo, FmgType.GemInfo, "GemInfo", 36), + [FmgType.GemInfo_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemInfo_DLC1, FmgType.GemInfo, "GemInfo_dlc01", 323), + [FmgType.GemInfo_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemInfo_DLC2, FmgType.GemInfo, "GemInfo_dlc02", 423), [FmgType.GemName] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemName, FmgType.GemName, "GemName", 35), + [FmgType.GemName_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemName_DLC1, FmgType.GemName, "GemName_dlc01", 322), + [FmgType.GemName_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GemName_DLC2, FmgType.GemName, "GemName_dlc02", 422), [FmgType.GoodsCaption] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsCaption, FmgType.GoodsCaption, "GoodsCaption", 24), + [FmgType.GoodsCaption_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsCaption_DLC1, FmgType.GoodsCaption, "GoodsCaption_dlc01", 321), + [FmgType.GoodsCaption_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsCaption_DLC2, FmgType.GoodsCaption, "GoodsCaption_dlc02", 421), [FmgType.GoodsDialog] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsDialog, FmgType.GoodsDialog, "GoodsDialog", 41), + [FmgType.GoodsDialog_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsDialog_DLC1, FmgType.GoodsDialog, "GoodsDialog_dlc01", 330), + [FmgType.GoodsDialog_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsDialog_DLC2, FmgType.GoodsDialog, "GoodsDialog_dlc02", 430), [FmgType.GoodsInfo] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsInfo, FmgType.GoodsInfo, "GoodsInfo", 20), + [FmgType.GoodsInfo_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsInfo_DLC1, FmgType.GoodsInfo, "GoodsInfo_dlc01", 320), + [FmgType.GoodsInfo_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsInfo_DLC2, FmgType.GoodsInfo, "GoodsInfo_dlc02", 420), [FmgType.GoodsInfo2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsInfo2, FmgType.GoodsInfo2, "GoodsInfo2", 46), + [FmgType.GoodsInfo2_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsInfo2_DLC1, FmgType.GoodsInfo2, "GoodsInfo2_dlc01", 335), + [FmgType.GoodsInfo2_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsInfo2_DLC2, FmgType.GoodsInfo2, "GoodsInfo2_dlc02", 435), [FmgType.GoodsName] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsName, FmgType.GoodsName, "GoodsName", 10), + [FmgType.GoodsName_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsName_DLC1, FmgType.GoodsName, "GoodsName_dlc01", 319), + [FmgType.GoodsName_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.GoodsName_DLC2, FmgType.GoodsName, "GoodsName_dlc02", 419), [FmgType.LoadingText] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.LoadingText, FmgType.LoadingText, "LoadingText", 206), + [FmgType.LoadingText_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.LoadingText_DLC1, FmgType.LoadingText, "LoadingText_dlc01", 374), + [FmgType.LoadingText_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.LoadingText_DLC2, FmgType.LoadingText, "LoadingText_dlc02", 474), [FmgType.LoadingTitle] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.LoadingTitle, FmgType.LoadingTitle, "LoadingTitle", 205), + [FmgType.LoadingTitle_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.LoadingTitle_DLC1, FmgType.LoadingTitle, "LoadingTitle_dlc01", 373), + [FmgType.LoadingTitle_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.LoadingTitle_DLC2, FmgType.LoadingTitle, "LoadingTitle_dlc02", 473), [FmgType.MagicCaption] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.MagicCaption, FmgType.MagicCaption, "MagicCaption", 29), + [FmgType.MagicCaption_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.MagicCaption_DLC1, FmgType.MagicCaption, "MagicCaption_dlc01", 327), + [FmgType.MagicCaption_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.MagicCaption_DLC2, FmgType.MagicCaption, "MagicCaption_dlc02", 427), [FmgType.MagicInfo] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.MagicInfo, FmgType.MagicInfo, "MagicInfo", 28), + [FmgType.MagicInfo_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.MagicInfo_DLC1, FmgType.MagicInfo, "MagicInfo_dlc01", 326), + [FmgType.MagicInfo_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.MagicInfo_DLC2, FmgType.MagicInfo, "MagicInfo_dlc02", 426), [FmgType.MagicName] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.MagicName, FmgType.MagicName, "MagicName", 14), + [FmgType.MagicName_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.MagicName_DLC1, FmgType.MagicName, "MagicName_dlc01", 325), + [FmgType.MagicName_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.MagicName_DLC2, FmgType.MagicName, "MagicName_dlc02", 425), [FmgType.MovieSubtitle] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.MovieSubtitle, FmgType.MovieSubtitle, "MovieSubtitle", 3), + [FmgType.MovieSubtitle_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.MovieSubtitle_DLC1, FmgType.MovieSubtitle, "MovieSubtitle_dlc01", 362), + [FmgType.MovieSubtitle_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.MovieSubtitle_DLC2, FmgType.MovieSubtitle, "MovieSubtitle_dlc02", 462), [FmgType.NetworkMessage] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.NetworkMessage, FmgType.NetworkMessage, "NetworkMessage", 31), + [FmgType.NetworkMessage_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.NetworkMessage_DLC1, FmgType.NetworkMessage, "NetworkMessage_dlc01", 364), + [FmgType.NetworkMessage_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.NetworkMessage_DLC2, FmgType.NetworkMessage, "NetworkMessage_dlc02", 464), [FmgType.NpcName] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.NpcName, FmgType.NpcName, "NpcName", 18), + [FmgType.NpcName_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.NpcName_DLC1, FmgType.NpcName, "NpcName_dlc01", 328), + [FmgType.NpcName_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.NpcName_DLC2, FmgType.NpcName, "NpcName_dlc02", 428), [FmgType.PlaceName] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.PlaceName, FmgType.PlaceName, "PlaceName", 19), + [FmgType.PlaceName_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.PlaceName_DLC1, FmgType.PlaceName, "PlaceName_dlc01", 329), + [FmgType.PlaceName_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.PlaceName_DLC2, FmgType.PlaceName, "PlaceName_dlc02", 429), [FmgType.ProtectorCaption] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ProtectorCaption, FmgType.ProtectorCaption, "ProtectorCaption", 26), + [FmgType.ProtectorCaption_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ProtectorCaption_DLC1, FmgType.ProtectorCaption, "ProtectorCaption_dlc01", 315), + [FmgType.ProtectorCaption_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ProtectorCaption_DLC2, FmgType.ProtectorCaption, "ProtectorCaption_dlc02", 415), [FmgType.ProtectorInfo] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ProtectorInfo, FmgType.ProtectorInfo, "ProtectorInfo", 22), + [FmgType.ProtectorInfo_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ProtectorInfo_DLC1, FmgType.ProtectorInfo, "ProtectorInfo_dlc01", 314), + [FmgType.ProtectorInfo_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ProtectorInfo_DLC2, FmgType.ProtectorInfo, "ProtectorInfo_dlc02", 414), [FmgType.ProtectorName] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ProtectorName, FmgType.ProtectorName, "ProtectorName", 12), + [FmgType.ProtectorName_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ProtectorName_DLC1, FmgType.ProtectorName, "ProtectorName_dlc01", 313), + [FmgType.ProtectorName_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.ProtectorName_DLC2, FmgType.ProtectorName, "ProtectorName_dlc02", 413), [FmgType.TalkMsg] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TalkMsg, FmgType.TalkMsg, "TalkMsg", 1), + [FmgType.TalkMsg_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TalkMsg_DLC1, FmgType.TalkMsg, "TalkMsg_dlc01", 360), + [FmgType.TalkMsg_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TalkMsg_DLC2, FmgType.TalkMsg, "TalkMsg_dlc02", 460), [FmgType.TalkMsgFemalePCAlt] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TalkMsgFemalePCAlt, FmgType.TalkMsgFemalePCAlt, "TalkMsg_FemalePC_Alt", 4), + [FmgType.TalkMsgFemalePCAlt_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TalkMsgFemalePCAlt_DLC1, FmgType.TalkMsgFemalePCAlt, "TalkMsg_FemalePC_Alt_dlc01", 363), + [FmgType.TalkMsgFemalePCAlt_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TalkMsgFemalePCAlt_DLC2, FmgType.TalkMsgFemalePCAlt, "TalkMsg_FemalePC_Alt_dlc02", 463), [FmgType.TextEmbedImageNameWindows] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TextEmbedImageNameWindows, FmgType.TextEmbedImageNameWindows, "TextEmbedImageName_win64", 209), [FmgType.TosWindows] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TosWindows, FmgType.TosWindows, "ToS_win64", 210), [FmgType.TutorialBody] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TutorialBody, FmgType.TutorialBody, "TutorialBody", 208), + [FmgType.TutorialBody_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TutorialBody_DLC1, FmgType.TutorialBody, "TutorialBody_dlc01", 376), + [FmgType.TutorialBody_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TutorialBody_DLC2, FmgType.TutorialBody, "TutorialBody_dlc02", 476), [FmgType.TutorialTitle] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TutorialTitle, FmgType.TutorialTitle, "TutorialTitle", 207), + [FmgType.TutorialTitle_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TutorialTitle_DLC1, FmgType.TutorialTitle, "TutorialTitle_dlc01", 375), + [FmgType.TutorialTitle_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Menu, FmgType.TutorialTitle_DLC2, FmgType.TutorialTitle, "TutorialTitle_dlc02", 475), [FmgType.WeaponCaption] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponCaption, FmgType.WeaponCaption, "WeaponCaption", 25), + [FmgType.WeaponCaption_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponCaption_DLC1, FmgType.WeaponCaption, "WeaponCaption_dlc01", 312), + [FmgType.WeaponCaption_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponCaption_DLC2, FmgType.WeaponCaption, "WeaponCaption_dlc02", 412), [FmgType.WeaponEffect] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponEffect, FmgType.WeaponEffect, "WeaponEffect", 44), + [FmgType.WeaponEffect_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponEffect_DLC1, FmgType.WeaponEffect, "WeaponEffect_dlc01", 333), + [FmgType.WeaponEffect_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponEffect_DLC2, FmgType.WeaponEffect, "WeaponEffect_dlc02", 433), [FmgType.WeaponInfo] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponInfo, FmgType.WeaponInfo, "WeaponInfo", 21), + [FmgType.WeaponInfo_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponInfo_DLC1, FmgType.WeaponInfo, "WeaponInfo_dlc01", 311), + [FmgType.WeaponInfo_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponInfo_DLC2, FmgType.WeaponInfo, "WeaponInfo_dlc02", 411), [FmgType.WeaponName] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponName, FmgType.WeaponName, "WeaponName", 11), + [FmgType.WeaponName_DLC1] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponName_DLC1, FmgType.WeaponName, "WeaponName_dlc01", 310), + [FmgType.WeaponName_DLC2] = new FmgKeyInfo(FromSoftGame.EldenRing, FmgCategory.Item, FmgType.WeaponName_DLC2, FmgType.WeaponName, "WeaponName_dlc02", 410), }, Overrides = new() { - + [FmgType.AccessoryCaption] = new List { FmgType.AccessoryCaption_DLC2, FmgType.AccessoryCaption_DLC1 }, + [FmgType.AccessoryInfo] = new List { FmgType.AccessoryInfo_DLC2, FmgType.AccessoryInfo_DLC1 }, + [FmgType.AccessoryName] = new List { FmgType.AccessoryName_DLC2, FmgType.AccessoryName_DLC1 }, + [FmgType.ActionButtonText] = new List { FmgType.ActionButtonText_DLC2, FmgType.ActionButtonText_DLC1 }, + [FmgType.ArtsCaption] = new List { FmgType.ArtsCaption_DLC2, FmgType.ArtsCaption_DLC1 }, + [FmgType.ArtsName] = new List { FmgType.ArtsName_DLC2, FmgType.ArtsName_DLC1 }, + [FmgType.BloodMsg] = new List { FmgType.BloodMsg_DLC2, FmgType.BloodMsg_DLC1 }, + [FmgType.EventTextForMap] = new List { FmgType.EventTextForMap_DLC2, FmgType.EventTextForMap_DLC1 }, + [FmgType.EventTextForTalk] = new List { FmgType.EventTextForTalk_DLC2, FmgType.EventTextForTalk_DLC1 }, + [FmgType.GameDialogues] = new List { FmgType.GameDialogues_DLC2, FmgType.GameDialogues_DLC1 }, + [FmgType.GameKeyGuide] = new List { FmgType.GameKeyGuide_DLC2, FmgType.GameKeyGuide_DLC1 }, + [FmgType.GameLineHelp] = new List { FmgType.GameLineHelp_DLC2, FmgType.GameLineHelp_DLC1 }, + [FmgType.GameMenuText] = new List { FmgType.GameMenuText_DLC2, FmgType.GameMenuText_DLC1 }, + [FmgType.GameSystemMessageWindows] = new List { FmgType.GameSystemMessageWindows_DLC2, FmgType.GameSystemMessageWindows_DLC1 }, + [FmgType.GemCaption] = new List { FmgType.GemCaption_DLC2, FmgType.GemCaption_DLC1 }, + [FmgType.GemEffect] = new List { FmgType.GemEffect_DLC2, FmgType.GemEffect_DLC1 }, + [FmgType.GemInfo] = new List { FmgType.GemInfo_DLC2, FmgType.GemInfo_DLC1 }, + [FmgType.GemName] = new List { FmgType.GemName_DLC2, FmgType.GemName_DLC1 }, + [FmgType.GoodsCaption] = new List { FmgType.GoodsCaption_DLC2, FmgType.GoodsCaption_DLC1 }, + [FmgType.GoodsDialog] = new List { FmgType.GoodsDialog_DLC2, FmgType.GoodsDialog_DLC1 }, + [FmgType.GoodsInfo] = new List { FmgType.GoodsInfo_DLC2, FmgType.GoodsInfo_DLC1 }, + [FmgType.GoodsInfo2] = new List { FmgType.GoodsInfo2_DLC2, FmgType.GoodsInfo2_DLC1 }, + [FmgType.GoodsName] = new List { FmgType.GoodsName_DLC2, FmgType.GoodsName_DLC1 }, + [FmgType.LoadingText] = new List { FmgType.LoadingText_DLC2, FmgType.LoadingText_DLC1 }, + [FmgType.LoadingTitle] = new List { FmgType.LoadingTitle_DLC2, FmgType.LoadingTitle_DLC1 }, + [FmgType.MagicCaption] = new List { FmgType.MagicCaption_DLC2, FmgType.MagicCaption_DLC1 }, + [FmgType.MagicInfo] = new List { FmgType.MagicInfo_DLC2, FmgType.MagicInfo_DLC1 }, + [FmgType.MagicName] = new List { FmgType.MagicName_DLC2, FmgType.MagicName_DLC1 }, + [FmgType.MovieSubtitle] = new List { FmgType.MovieSubtitle_DLC2, FmgType.MovieSubtitle_DLC1 }, + [FmgType.NetworkMessage] = new List { FmgType.NetworkMessage_DLC2, FmgType.NetworkMessage_DLC1 }, + [FmgType.NpcName] = new List { FmgType.NpcName_DLC2, FmgType.NpcName_DLC1 }, + [FmgType.PlaceName] = new List { FmgType.PlaceName_DLC2, FmgType.PlaceName_DLC1 }, + [FmgType.ProtectorCaption] = new List { FmgType.ProtectorCaption_DLC2, FmgType.ProtectorCaption_DLC1 }, + [FmgType.ProtectorInfo] = new List { FmgType.ProtectorInfo_DLC2, FmgType.ProtectorInfo_DLC1 }, + [FmgType.ProtectorName] = new List { FmgType.ProtectorName_DLC2, FmgType.ProtectorName_DLC1 }, + [FmgType.TalkMsg] = new List { FmgType.TalkMsg_DLC2, FmgType.TalkMsg_DLC1 }, + [FmgType.TalkMsgFemalePCAlt] = new List { FmgType.TalkMsgFemalePCAlt_DLC2, FmgType.TalkMsgFemalePCAlt_DLC1 }, + [FmgType.TutorialBody] = new List { FmgType.TutorialBody_DLC2, FmgType.TutorialBody_DLC1 }, + [FmgType.TutorialTitle] = new List { FmgType.TutorialTitle_DLC2, FmgType.TutorialTitle_DLC1 }, + [FmgType.WeaponCaption] = new List { FmgType.WeaponCaption_DLC2, FmgType.WeaponCaption_DLC1 }, + [FmgType.WeaponEffect] = new List { FmgType.WeaponEffect_DLC2, FmgType.WeaponEffect_DLC1 }, + [FmgType.WeaponInfo] = new List { FmgType.WeaponInfo_DLC2, FmgType.WeaponInfo_DLC1 }, + [FmgType.WeaponName] = new List { FmgType.WeaponName_DLC2, FmgType.WeaponName_DLC1 }, }, ByFmgName = new() { + ["AccessoryCaption_dlc01"] = new List { FmgType.AccessoryCaption_DLC1 }, + ["AccessoryCaption_dlc02"] = new List { FmgType.AccessoryCaption_DLC2 }, ["AccessoryCaption"] = new List { FmgType.AccessoryCaption }, + ["AccessoryInfo_dlc01"] = new List { FmgType.AccessoryInfo_DLC1 }, + ["AccessoryInfo_dlc02"] = new List { FmgType.AccessoryInfo_DLC2 }, ["AccessoryInfo"] = new List { FmgType.AccessoryInfo }, + ["AccessoryName_dlc01"] = new List { FmgType.AccessoryName_DLC1 }, + ["AccessoryName_dlc02"] = new List { FmgType.AccessoryName_DLC2 }, ["AccessoryName"] = new List { FmgType.AccessoryName }, + ["ActionButtonText_dlc01"] = new List { FmgType.ActionButtonText_DLC1 }, + ["ActionButtonText_dlc02"] = new List { FmgType.ActionButtonText_DLC2 }, ["ActionButtonText"] = new List { FmgType.ActionButtonText }, + ["ArtsCaption_dlc01"] = new List { FmgType.ArtsCaption_DLC1 }, + ["ArtsCaption_dlc02"] = new List { FmgType.ArtsCaption_DLC2 }, ["ArtsCaption"] = new List { FmgType.ArtsCaption }, + ["ArtsName_dlc01"] = new List { FmgType.ArtsName_DLC1 }, + ["ArtsName_dlc02"] = new List { FmgType.ArtsName_DLC2 }, ["ArtsName"] = new List { FmgType.ArtsName }, + ["BloodMsg_dlc01"] = new List { FmgType.BloodMsg_DLC1 }, + ["BloodMsg_dlc02"] = new List { FmgType.BloodMsg_DLC2 }, ["BloodMsg"] = new List { FmgType.BloodMsg }, + ["EventTextForMap_dlc01"] = new List { FmgType.EventTextForMap_DLC1 }, + ["EventTextForMap_dlc02"] = new List { FmgType.EventTextForMap_DLC2 }, ["EventTextForMap"] = new List { FmgType.EventTextForMap }, + ["EventTextForTalk_dlc01"] = new List { FmgType.EventTextForTalk_DLC1 }, + ["EventTextForTalk_dlc02"] = new List { FmgType.EventTextForTalk_DLC2 }, ["EventTextForTalk"] = new List { FmgType.EventTextForTalk }, + ["GemCaption_dlc01"] = new List { FmgType.GemCaption_DLC1 }, + ["GemCaption_dlc02"] = new List { FmgType.GemCaption_DLC2 }, ["GemCaption"] = new List { FmgType.GemCaption }, + ["GemEffect_dlc01"] = new List { FmgType.GemEffect_DLC1 }, + ["GemEffect_dlc02"] = new List { FmgType.GemEffect_DLC2 }, ["GemEffect"] = new List { FmgType.GemEffect }, + ["GemInfo_dlc01"] = new List { FmgType.GemInfo_DLC1 }, + ["GemInfo_dlc02"] = new List { FmgType.GemInfo_DLC2 }, ["GemInfo"] = new List { FmgType.GemInfo }, + ["GemName_dlc01"] = new List { FmgType.GemName_DLC1 }, + ["GemName_dlc02"] = new List { FmgType.GemName_DLC2 }, ["GemName"] = new List { FmgType.GemName }, + ["GoodsCaption_dlc01"] = new List { FmgType.GoodsCaption_DLC1 }, + ["GoodsCaption_dlc02"] = new List { FmgType.GoodsCaption_DLC2 }, ["GoodsCaption"] = new List { FmgType.GoodsCaption }, + ["GoodsDialog_dlc01"] = new List { FmgType.GoodsDialog_DLC1 }, + ["GoodsDialog_dlc02"] = new List { FmgType.GoodsDialog_DLC2 }, ["GoodsDialog"] = new List { FmgType.GoodsDialog }, + ["GoodsInfo_dlc01"] = new List { FmgType.GoodsInfo_DLC1 }, + ["GoodsInfo_dlc02"] = new List { FmgType.GoodsInfo_DLC2 }, ["GoodsInfo"] = new List { FmgType.GoodsInfo }, + ["GoodsInfo2_dlc01"] = new List { FmgType.GoodsInfo2_DLC1 }, + ["GoodsInfo2_dlc02"] = new List { FmgType.GoodsInfo2_DLC2 }, ["GoodsInfo2"] = new List { FmgType.GoodsInfo2 }, + ["GoodsName_dlc01"] = new List { FmgType.GoodsName_DLC1 }, + ["GoodsName_dlc02"] = new List { FmgType.GoodsName_DLC2 }, ["GoodsName"] = new List { FmgType.GoodsName }, + ["GR_Dialogues_dlc01"] = new List { FmgType.GameDialogues_DLC1 }, + ["GR_Dialogues_dlc02"] = new List { FmgType.GameDialogues_DLC2 }, ["GR_Dialogues"] = new List { FmgType.GameDialogues }, + ["GR_KeyGuide_dlc01"] = new List { FmgType.GameKeyGuide_DLC1 }, + ["GR_KeyGuide_dlc02"] = new List { FmgType.GameKeyGuide_DLC2 }, ["GR_KeyGuide"] = new List { FmgType.GameKeyGuide }, + ["GR_LineHelp_dlc01"] = new List { FmgType.GameLineHelp_DLC1 }, + ["GR_LineHelp_dlc02"] = new List { FmgType.GameLineHelp_DLC2 }, ["GR_LineHelp"] = new List { FmgType.GameLineHelp }, + ["GR_MenuText_dlc01"] = new List { FmgType.GameMenuText_DLC1 }, + ["GR_MenuText_dlc02"] = new List { FmgType.GameMenuText_DLC2 }, ["GR_MenuText"] = new List { FmgType.GameMenuText }, + ["GR_System_Message_win64_dlc01"] = new List { FmgType.GameSystemMessageWindows_DLC1 }, + ["GR_System_Message_win64_dlc02"] = new List { FmgType.GameSystemMessageWindows_DLC2 }, ["GR_System_Message_win64"] = new List { FmgType.GameSystemMessageWindows }, + ["LoadingText_dlc01"] = new List { FmgType.LoadingText_DLC1 }, + ["LoadingText_dlc02"] = new List { FmgType.LoadingText_DLC2 }, ["LoadingText"] = new List { FmgType.LoadingText }, + ["LoadingTitle_dlc01"] = new List { FmgType.LoadingTitle_DLC1 }, + ["LoadingTitle_dlc02"] = new List { FmgType.LoadingTitle_DLC2 }, ["LoadingTitle"] = new List { FmgType.LoadingTitle }, + ["MagicCaption_dlc01"] = new List { FmgType.MagicCaption_DLC1 }, + ["MagicCaption_dlc02"] = new List { FmgType.MagicCaption_DLC2 }, ["MagicCaption"] = new List { FmgType.MagicCaption }, + ["MagicInfo_dlc01"] = new List { FmgType.MagicInfo_DLC1 }, + ["MagicInfo_dlc02"] = new List { FmgType.MagicInfo_DLC2 }, ["MagicInfo"] = new List { FmgType.MagicInfo }, + ["MagicName_dlc01"] = new List { FmgType.MagicName_DLC1 }, + ["MagicName_dlc02"] = new List { FmgType.MagicName_DLC2 }, ["MagicName"] = new List { FmgType.MagicName }, + ["MovieSubtitle_dlc01"] = new List { FmgType.MovieSubtitle_DLC1 }, + ["MovieSubtitle_dlc02"] = new List { FmgType.MovieSubtitle_DLC2 }, ["MovieSubtitle"] = new List { FmgType.MovieSubtitle }, + ["NetworkMessage_dlc01"] = new List { FmgType.NetworkMessage_DLC1 }, + ["NetworkMessage_dlc02"] = new List { FmgType.NetworkMessage_DLC2 }, ["NetworkMessage"] = new List { FmgType.NetworkMessage }, + ["NpcName_dlc01"] = new List { FmgType.NpcName_DLC1 }, + ["NpcName_dlc02"] = new List { FmgType.NpcName_DLC2 }, ["NpcName"] = new List { FmgType.NpcName }, + ["PlaceName_dlc01"] = new List { FmgType.PlaceName_DLC1 }, + ["PlaceName_dlc02"] = new List { FmgType.PlaceName_DLC2 }, ["PlaceName"] = new List { FmgType.PlaceName }, + ["ProtectorCaption_dlc01"] = new List { FmgType.ProtectorCaption_DLC1 }, + ["ProtectorCaption_dlc02"] = new List { FmgType.ProtectorCaption_DLC2 }, ["ProtectorCaption"] = new List { FmgType.ProtectorCaption }, + ["ProtectorInfo_dlc01"] = new List { FmgType.ProtectorInfo_DLC1 }, + ["ProtectorInfo_dlc02"] = new List { FmgType.ProtectorInfo_DLC2 }, ["ProtectorInfo"] = new List { FmgType.ProtectorInfo }, + ["ProtectorName_dlc01"] = new List { FmgType.ProtectorName_DLC1 }, + ["ProtectorName_dlc02"] = new List { FmgType.ProtectorName_DLC2 }, ["ProtectorName"] = new List { FmgType.ProtectorName }, + ["TalkMsg_dlc01"] = new List { FmgType.TalkMsg_DLC1 }, + ["TalkMsg_dlc02"] = new List { FmgType.TalkMsg_DLC2 }, + ["TalkMsg_FemalePC_Alt_dlc01"] = new List { FmgType.TalkMsgFemalePCAlt_DLC1 }, + ["TalkMsg_FemalePC_Alt_dlc02"] = new List { FmgType.TalkMsgFemalePCAlt_DLC2 }, ["TalkMsg_FemalePC_Alt"] = new List { FmgType.TalkMsgFemalePCAlt }, ["TalkMsg"] = new List { FmgType.TalkMsg }, ["TextEmbedImageName_win64"] = new List { FmgType.TextEmbedImageNameWindows }, ["ToS_win64"] = new List { FmgType.TosWindows }, + ["TutorialBody_dlc01"] = new List { FmgType.TutorialBody_DLC1 }, + ["TutorialBody_dlc02"] = new List { FmgType.TutorialBody_DLC2 }, ["TutorialBody"] = new List { FmgType.TutorialBody }, + ["TutorialTitle_dlc01"] = new List { FmgType.TutorialTitle_DLC1 }, + ["TutorialTitle_dlc02"] = new List { FmgType.TutorialTitle_DLC2 }, ["TutorialTitle"] = new List { FmgType.TutorialTitle }, + ["WeaponCaption_dlc01"] = new List { FmgType.WeaponCaption_DLC1 }, + ["WeaponCaption_dlc02"] = new List { FmgType.WeaponCaption_DLC2 }, ["WeaponCaption"] = new List { FmgType.WeaponCaption }, + ["WeaponEffect_dlc01"] = new List { FmgType.WeaponEffect_DLC1 }, + ["WeaponEffect_dlc02"] = new List { FmgType.WeaponEffect_DLC2 }, ["WeaponEffect"] = new List { FmgType.WeaponEffect }, + ["WeaponInfo_dlc01"] = new List { FmgType.WeaponInfo_DLC1 }, + ["WeaponInfo_dlc02"] = new List { FmgType.WeaponInfo_DLC2 }, ["WeaponInfo"] = new List { FmgType.WeaponInfo }, + ["WeaponName_dlc01"] = new List { FmgType.WeaponName_DLC1 }, + ["WeaponName_dlc02"] = new List { FmgType.WeaponName_DLC2 }, ["WeaponName"] = new List { FmgType.WeaponName }, }, ByBinderID = new() @@ -1861,9 +2133,247 @@ internal static bool TryGetFmgGameInfo(FromSoftGame game, out FmgGameInfo info) [208] = new List { FmgType.TutorialBody }, [209] = new List { FmgType.TextEmbedImageNameWindows }, [210] = new List { FmgType.TosWindows }, + [310] = new List { FmgType.WeaponName_DLC1 }, + [311] = new List { FmgType.WeaponInfo_DLC1 }, + [312] = new List { FmgType.WeaponCaption_DLC1 }, + [313] = new List { FmgType.ProtectorName_DLC1 }, + [314] = new List { FmgType.ProtectorInfo_DLC1 }, + [315] = new List { FmgType.ProtectorCaption_DLC1 }, + [316] = new List { FmgType.AccessoryName_DLC1 }, + [317] = new List { FmgType.AccessoryInfo_DLC1 }, + [318] = new List { FmgType.AccessoryCaption_DLC1 }, + [319] = new List { FmgType.GoodsName_DLC1 }, + [320] = new List { FmgType.GoodsInfo_DLC1 }, + [321] = new List { FmgType.GoodsCaption_DLC1 }, + [322] = new List { FmgType.GemName_DLC1 }, + [323] = new List { FmgType.GemInfo_DLC1 }, + [324] = new List { FmgType.GemCaption_DLC1 }, + [325] = new List { FmgType.MagicName_DLC1 }, + [326] = new List { FmgType.MagicInfo_DLC1 }, + [327] = new List { FmgType.MagicCaption_DLC1 }, + [328] = new List { FmgType.NpcName_DLC1 }, + [329] = new List { FmgType.PlaceName_DLC1 }, + [330] = new List { FmgType.GoodsDialog_DLC1 }, + [331] = new List { FmgType.ArtsName_DLC1 }, + [332] = new List { FmgType.ArtsCaption_DLC1 }, + [333] = new List { FmgType.WeaponEffect_DLC1 }, + [334] = new List { FmgType.GemEffect_DLC1 }, + [335] = new List { FmgType.GoodsInfo2_DLC1 }, + [360] = new List { FmgType.TalkMsg_DLC1 }, + [361] = new List { FmgType.BloodMsg_DLC1 }, + [362] = new List { FmgType.MovieSubtitle_DLC1 }, + [363] = new List { FmgType.TalkMsgFemalePCAlt_DLC1 }, + [364] = new List { FmgType.NetworkMessage_DLC1 }, + [365] = new List { FmgType.ActionButtonText_DLC1 }, + [366] = new List { FmgType.EventTextForTalk_DLC1 }, + [367] = new List { FmgType.EventTextForMap_DLC1 }, + [368] = new List { FmgType.GameMenuText_DLC1 }, + [369] = new List { FmgType.GameLineHelp_DLC1 }, + [370] = new List { FmgType.GameKeyGuide_DLC1 }, + [371] = new List { FmgType.GameSystemMessageWindows_DLC1 }, + [372] = new List { FmgType.GameDialogues_DLC1 }, + [373] = new List { FmgType.LoadingTitle_DLC1 }, + [374] = new List { FmgType.LoadingText_DLC1 }, + [375] = new List { FmgType.TutorialTitle_DLC1 }, + [376] = new List { FmgType.TutorialBody_DLC1 }, + [410] = new List { FmgType.WeaponName_DLC2 }, + [411] = new List { FmgType.WeaponInfo_DLC2 }, + [412] = new List { FmgType.WeaponCaption_DLC2 }, + [413] = new List { FmgType.ProtectorName_DLC2 }, + [414] = new List { FmgType.ProtectorInfo_DLC2 }, + [415] = new List { FmgType.ProtectorCaption_DLC2 }, + [416] = new List { FmgType.AccessoryName_DLC2 }, + [417] = new List { FmgType.AccessoryInfo_DLC2 }, + [418] = new List { FmgType.AccessoryCaption_DLC2 }, + [419] = new List { FmgType.GoodsName_DLC2 }, + [420] = new List { FmgType.GoodsInfo_DLC2 }, + [421] = new List { FmgType.GoodsCaption_DLC2 }, + [422] = new List { FmgType.GemName_DLC2 }, + [423] = new List { FmgType.GemInfo_DLC2 }, + [424] = new List { FmgType.GemCaption_DLC2 }, + [425] = new List { FmgType.MagicName_DLC2 }, + [426] = new List { FmgType.MagicInfo_DLC2 }, + [427] = new List { FmgType.MagicCaption_DLC2 }, + [428] = new List { FmgType.NpcName_DLC2 }, + [429] = new List { FmgType.PlaceName_DLC2 }, + [430] = new List { FmgType.GoodsDialog_DLC2 }, + [431] = new List { FmgType.ArtsName_DLC2 }, + [432] = new List { FmgType.ArtsCaption_DLC2 }, + [433] = new List { FmgType.WeaponEffect_DLC2 }, + [434] = new List { FmgType.GemEffect_DLC2 }, + [435] = new List { FmgType.GoodsInfo2_DLC2 }, + [460] = new List { FmgType.TalkMsg_DLC2 }, + [461] = new List { FmgType.BloodMsg_DLC2 }, + [462] = new List { FmgType.MovieSubtitle_DLC2 }, + [463] = new List { FmgType.TalkMsgFemalePCAlt_DLC2 }, + [464] = new List { FmgType.NetworkMessage_DLC2 }, + [465] = new List { FmgType.ActionButtonText_DLC2 }, + [466] = new List { FmgType.EventTextForTalk_DLC2 }, + [467] = new List { FmgType.EventTextForMap_DLC2 }, + [468] = new List { FmgType.GameMenuText_DLC2 }, + [469] = new List { FmgType.GameLineHelp_DLC2 }, + [470] = new List { FmgType.GameKeyGuide_DLC2 }, + [471] = new List { FmgType.GameSystemMessageWindows_DLC2 }, + [472] = new List { FmgType.GameDialogues_DLC2 }, + [473] = new List { FmgType.LoadingTitle_DLC2 }, + [474] = new List { FmgType.LoadingText_DLC2 }, + [475] = new List { FmgType.TutorialTitle_DLC2 }, + [476] = new List { FmgType.TutorialBody_DLC2 }, + }, + ToLanguageEnum = new() + { + ["araae"] = FmgLanguage.Arabic, + ["deude"] = FmgLanguage.German, + ["engus"] = FmgLanguage.English, + ["frafr"] = FmgLanguage.French, + ["itait"] = FmgLanguage.Italian, + ["jpnjp"] = FmgLanguage.Japanese, + ["korkr"] = FmgLanguage.Korean, + ["polpl"] = FmgLanguage.Polish, + ["porbr"] = FmgLanguage.BrazilPortuguese, + ["rusru"] = FmgLanguage.Russian, + ["spaar"] = FmgLanguage.Spanish, + ["spaes"] = FmgLanguage.SpainSpanish, + ["thath"] = FmgLanguage.Thai, + ["zhocn"] = FmgLanguage.SimplifiedChinese, + ["zhotw"] = FmgLanguage.TraditionalChinese, + }, + FromLanguageEnum = new() + { + [FmgLanguage.Arabic] = "araae", + [FmgLanguage.German] = "deude", + [FmgLanguage.English] = "engus", + [FmgLanguage.French] = "frafr", + [FmgLanguage.Italian] = "itait", + [FmgLanguage.Japanese] = "jpnjp", + [FmgLanguage.Korean] = "korkr", + [FmgLanguage.Polish] = "polpl", + [FmgLanguage.BrazilPortuguese] = "porbr", + [FmgLanguage.Russian] = "rusru", + [FmgLanguage.Spanish] = "spaar", + [FmgLanguage.SpainSpanish] = "spaes", + [FmgLanguage.Thai] = "thath", + [FmgLanguage.SimplifiedChinese] = "zhocn", + [FmgLanguage.TraditionalChinese] = "zhotw", + }, + }, + [FromSoftGame.ArmoredCore6] = new FmgGameInfo + { + ByType = new() + { + [FmgType.ArchiveContent] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.ArchiveContent, FmgType.ArchiveContent, "アーカイブ内容", 66), + [FmgType.ArchiveName] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.ArchiveName, FmgType.ArchiveName, "アーカイブ名", 65), + [FmgType.BoosterInfo] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.BoosterInfo, FmgType.BoosterInfo, "ブースター説明", 39), + [FmgType.BoosterName] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.BoosterName, FmgType.BoosterName, "ブースター名", 38), + [FmgType.EventText] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.EventText, FmgType.EventText, "イベントテキスト", 30), + [FmgType.FCSInfo] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.FCSInfo, FmgType.FCSInfo, "FCS説明", 42), + [FmgType.FCSName] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.FCSName, FmgType.FCSName, "FCS名", 41), + [FmgType.GameDialogues] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.GameDialogues, FmgType.GameDialogues, "FNR_ダイアログ", 204), + [FmgType.GameKeyGuide] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.GameKeyGuide, FmgType.GameKeyGuide, "FNR_キーガイド", 202), + [FmgType.GameLineHelp] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.GameLineHelp, FmgType.GameLineHelp, "FNR_一行ヘルプ", 201), + [FmgType.GameMenuText] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.GameMenuText, FmgType.GameMenuText, "FNR_メニューテキスト", 200), + [FmgType.GameSystemMessageWindows] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.GameSystemMessageWindows, FmgType.GameSystemMessageWindows, "FNR_システムメッセージ_win64", 203), + [FmgType.GeneratorInfo] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.GeneratorInfo, FmgType.GeneratorInfo, "ジェネレーター説明", 36), + [FmgType.GeneratorName] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.GeneratorName, FmgType.GeneratorName, "ジェネレーター名", 35), + [FmgType.GoodsName] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.GoodsName, FmgType.GoodsName, "アイテム名", 10), + [FmgType.LoadingText] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.LoadingText, FmgType.LoadingText, "ローディングテキスト", 208), + [FmgType.LoadingTitle] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.LoadingTitle, FmgType.LoadingTitle, "ローディングタイトル", 207), + [FmgType.MenuContext] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.MenuContext, FmgType.MenuContext, "項目ヘルプ", 205), + [FmgType.MissionName] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.MissionName, FmgType.MissionName, "ミッション名", 60), + [FmgType.MissionObjective] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.MissionObjective, FmgType.MissionObjective, "ミッション目標", 62), + [FmgType.MissionPlaceName] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.MissionPlaceName, FmgType.MissionPlaceName, "ミッション地点名", 63), + [FmgType.MissionSummary] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.MissionSummary, FmgType.MissionSummary, "ミッション概要", 61), + [FmgType.MovieSubtitle] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.MovieSubtitle, FmgType.MovieSubtitle, "ムービー字幕", 3), + [FmgType.NpcName] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.NpcName, FmgType.NpcName, "NPC名", 18), + [FmgType.ProtectorInfo] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.ProtectorInfo, FmgType.ProtectorInfo, "防具説明", 22), + [FmgType.ProtectorName] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.ProtectorName, FmgType.ProtectorName, "防具名", 12), + [FmgType.RankerProfile] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.RankerProfile, FmgType.RankerProfile, "ランカープロフィール", 50), + [FmgType.TalkMsg] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.TalkMsg, FmgType.TalkMsg, "会話", 1), + [FmgType.TextEmbedImageNameWindows] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.TextEmbedImageNameWindows, FmgType.TextEmbedImageNameWindows, "テキスト埋込イメージ名_win64", 210), + [FmgType.TutorialBody] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.TutorialBody, FmgType.TutorialBody, "チュートリアル本文", 74), + [FmgType.TutorialTitle] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Menu, FmgType.TutorialTitle, FmgType.TutorialTitle, "チュートリアルタイトル", 73), + [FmgType.WeaponInfo] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.WeaponInfo, FmgType.WeaponInfo, "武器説明", 21), + [FmgType.WeaponName] = new FmgKeyInfo(FromSoftGame.ArmoredCore6, FmgCategory.Item, FmgType.WeaponName, FmgType.WeaponName, "武器名", 11), + }, + Overrides = new() + { + + }, + ByFmgName = new() + { + ["FCS名"] = new List { FmgType.FCSName }, + ["FCS説明"] = new List { FmgType.FCSInfo }, + ["FNR_キーガイド"] = new List { FmgType.GameKeyGuide }, + ["FNR_システムメッセージ_win64"] = new List { FmgType.GameSystemMessageWindows }, + ["FNR_ダイアログ"] = new List { FmgType.GameDialogues }, + ["FNR_メニューテキスト"] = new List { FmgType.GameMenuText }, + ["FNR_一行ヘルプ"] = new List { FmgType.GameLineHelp }, + ["NPC名"] = new List { FmgType.NpcName }, + ["アーカイブ内容"] = new List { FmgType.ArchiveContent }, + ["アーカイブ名"] = new List { FmgType.ArchiveName }, + ["アイテム名"] = new List { FmgType.GoodsName }, + ["イベントテキスト"] = new List { FmgType.EventText }, + ["ジェネレーター名"] = new List { FmgType.GeneratorName }, + ["ジェネレーター説明"] = new List { FmgType.GeneratorInfo }, + ["チュートリアルタイトル"] = new List { FmgType.TutorialTitle }, + ["チュートリアル本文"] = new List { FmgType.TutorialBody }, + ["テキスト埋込イメージ名_win64"] = new List { FmgType.TextEmbedImageNameWindows }, + ["ブースター名"] = new List { FmgType.BoosterName }, + ["ブースター説明"] = new List { FmgType.BoosterInfo }, + ["ミッション名"] = new List { FmgType.MissionName }, + ["ミッション地点名"] = new List { FmgType.MissionPlaceName }, + ["ミッション概要"] = new List { FmgType.MissionSummary }, + ["ミッション目標"] = new List { FmgType.MissionObjective }, + ["ムービー字幕"] = new List { FmgType.MovieSubtitle }, + ["ランカープロフィール"] = new List { FmgType.RankerProfile }, + ["ローディングタイトル"] = new List { FmgType.LoadingTitle }, + ["ローディングテキスト"] = new List { FmgType.LoadingText }, + ["会話"] = new List { FmgType.TalkMsg }, + ["武器名"] = new List { FmgType.WeaponName }, + ["武器説明"] = new List { FmgType.WeaponInfo }, + ["防具名"] = new List { FmgType.ProtectorName }, + ["防具説明"] = new List { FmgType.ProtectorInfo }, + ["項目ヘルプ"] = new List { FmgType.MenuContext }, + }, + ByBinderID = new() + { + [1] = new List { FmgType.TalkMsg }, + [3] = new List { FmgType.MovieSubtitle }, + [10] = new List { FmgType.GoodsName }, + [11] = new List { FmgType.WeaponName }, + [12] = new List { FmgType.ProtectorName }, + [18] = new List { FmgType.NpcName }, + [21] = new List { FmgType.WeaponInfo }, + [22] = new List { FmgType.ProtectorInfo }, + [30] = new List { FmgType.EventText }, + [35] = new List { FmgType.GeneratorName }, + [36] = new List { FmgType.GeneratorInfo }, + [38] = new List { FmgType.BoosterName }, + [39] = new List { FmgType.BoosterInfo }, + [41] = new List { FmgType.FCSName }, + [42] = new List { FmgType.FCSInfo }, + [50] = new List { FmgType.RankerProfile }, + [60] = new List { FmgType.MissionName }, + [61] = new List { FmgType.MissionSummary }, + [62] = new List { FmgType.MissionObjective }, + [63] = new List { FmgType.MissionPlaceName }, + [65] = new List { FmgType.ArchiveName }, + [66] = new List { FmgType.ArchiveContent }, + [73] = new List { FmgType.TutorialTitle }, + [74] = new List { FmgType.TutorialBody }, + [200] = new List { FmgType.GameMenuText }, + [201] = new List { FmgType.GameLineHelp }, + [202] = new List { FmgType.GameKeyGuide }, + [203] = new List { FmgType.GameSystemMessageWindows }, + [204] = new List { FmgType.GameDialogues }, + [205] = new List { FmgType.MenuContext }, + [207] = new List { FmgType.LoadingTitle }, + [208] = new List { FmgType.LoadingText }, + [210] = new List { FmgType.TextEmbedImageNameWindows }, }, ToLanguageEnum = new() { + ["araae"] = FmgLanguage.Arabic, ["deude"] = FmgLanguage.German, ["engus"] = FmgLanguage.English, ["frafr"] = FmgLanguage.French, @@ -1881,6 +2391,7 @@ internal static bool TryGetFmgGameInfo(FromSoftGame game, out FmgGameInfo info) }, FromLanguageEnum = new() { + [FmgLanguage.Arabic] = "araae", [FmgLanguage.German] = "deude", [FmgLanguage.English] = "engus", [FmgLanguage.French] = "frafr",