diff --git a/ZeroSpace/ZeroSpace.Model/GeneralItems.g.cs b/ZeroSpace/ZeroSpace.Model/GeneralItems.g.cs
new file mode 100644
index 0000000..fe36956
--- /dev/null
+++ b/ZeroSpace/ZeroSpace.Model/GeneralItems.g.cs
@@ -0,0 +1,138 @@
+//
+namespace ZeroSpace.Model;
+
+public static class GeneralItems
+{
+ public static readonly GeneralItemData ArandiPenumbra = new(
+ Id: "ArandiPenumbra",
+ Name: "Arandi Penumbra",
+ Levels: ["Unlocks construction of Arandi Penumbra and production of mercenaries from it.", "Increase mercenary health +15% and damage +15%", "Increase mercenary compound limit by 1.", "Increase mercenary health +30% and damage +30%", "Increase mercenary compound limit by 1."],
+ LimitedToMerc: "Arandi",
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData ElderbastionShell = new(
+ Id: "ElderbastionShell",
+ Name: "Elderbastion Shell",
+ Levels: ["Gives you access to the wall building. +15% vitals for buildings.", "+30% vitals for buildings.", "+45% vitals for buildings.", "+60% vitals for buildings.", "+75% vitals for buildings."],
+ LimitedToMerc: null,
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData EnigmaticCapacitor = new(
+ Id: "EnigmaticCapacitor",
+ Name: "Enigmatic Capacitor",
+ Levels: ["-5% unit ability cooldowns.", "-10% unit ability cooldowns.", "-15% unit ability cooldowns.", "-20% unit ability cooldowns.", "-25% unit ability cooldowns."],
+ LimitedToMerc: null,
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData FreeCorsairMercenaryOutpost = new(
+ Id: "FreeCorsairMercenaryOutpost",
+ Name: "Free Corsair Mercenary Outpost",
+ Levels: ["Unlocks construction of Free Corsair Mercernary Outpost and production of mercenaries from it.", "Increase mercenary health +15% and damage +15%", "Increase mercenary compound limit by 1.", "Increase mercenary health +30% and damage +30%", "Increase mercenary compound limit by 1."],
+ LimitedToMerc: "Free Corsair",
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData GensisCore = new(
+ Id: "GensisCore",
+ Name: "Gensis Core",
+ Levels: ["+1 unit health regeneration per second.", "+2 unit health regeneration per second.", "+3 unit health regeneration per second.", "+4 unit health regeneration per second.", "+5 unit health regeneration per second."],
+ LimitedToMerc: null,
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData LightweightAlloys = new(
+ Id: "LightweightAlloys",
+ Name: "Lightweight alloys",
+ Levels: ["+10% unit movement speed.", "+20% unit movement speed.", "+30% unit movement speed.", "+40% unit movement speed.", "+50% unit movement speed."],
+ LimitedToMerc: null,
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData MarranBulwark = new(
+ Id: "MarranBulwark",
+ Name: "Marran Bulwark",
+ Levels: ["Unlocks construction of Marran Bulwark and production of mercenaries from it.", "Increase mercenary health +15% and damage +15%", "Increase mercenary compound limit by 1.", "Increase mercenary health +30% and damage +30%", "Increase mercenary compound limit by 1."],
+ LimitedToMerc: "Marran",
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData RenewalMatrix = new(
+ Id: "RenewalMatrix",
+ Name: "Renewal Matrix",
+ Levels: ["5x faster hero and harvester respawn rate.", "10x faster hero and harvester respawn rate."],
+ LimitedToMerc: null,
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData SilentHollow = new(
+ Id: "SilentHollow",
+ Name: "Silent Hollow",
+ Levels: ["Unlocks construction of Deep One and production of mercenaries from it.", "Increase mercenary health +15% and damage +15%", "Increase mercenary compound limit by 1.", "Increase mercenary health +30% and damage +30%", "Increase mercenary compound limit by 1."],
+ LimitedToMerc: "Enrandi",
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData StarhunterScopes = new(
+ Id: "StarhunterScopes",
+ Name: "Starhunter Scopes",
+ Levels: ["+0.5 attack range to army units", "+0.75 attack range to army units", "+1 attack range to army units", "+1.25 attack range to army units", "+1.5 attack range to army units"],
+ LimitedToMerc: null,
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData TempleOfAnqas = new(
+ Id: "TempleOfAnqas",
+ Name: "Temple of Anqas",
+ Levels: ["Unlocks construction of Cha'kru Temple of Anqas and production of mercenaries from it.", "Increase mercenary health +15% and damage +15%", "Increase mercenary compound limit by 1.", "Increase mercenary health +30% and damage +30%", "Increase mercenary compound limit by 1."],
+ LimitedToMerc: "Cha'Kru Kingdom",
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData TempleOfStars = new(
+ Id: "TempleOfStars",
+ Name: "Temple of Stars",
+ Levels: ["Unlocks construction of Cha'kru Temple of Stars and production of mercenaries from it.", "Increase mercenary health +15% and damage +15%", "Increase mercenary compound limit by 1.", "Increase mercenary health +30% and damage +30%", "Increase mercenary compound limit by 1."],
+ LimitedToMerc: null,
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData ValkaruWarVault = new(
+ Id: "ValkaruWarVault",
+ Name: "Valkaru War Vault",
+ Levels: ["Unlocks construction of Valkaru War Vault and production of mercenaries from it.", "Increase mercenary health +15% and damage +15%", "Increase mercenary compound limit by 1.", "Increase mercenary health +30% and damage +30%", "Increase mercenary compound limit by 1."],
+ LimitedToMerc: "Valkaru",
+ ImageFileName: null,
+ Body: "");
+
+ public static readonly GeneralItemData XolRelicOutpost = new(
+ Id: "XolRelicOutpost",
+ Name: "Xol Relic Outpost",
+ Levels: ["Ancient Xol Master relic. Calls Xol mercenaries to fight for you.", "Unlock Molten Xyther", "Unlock Molten Synapse", "Unlock Molten Aegis", "Can build additional Xol Relic Outpost"],
+ LimitedToMerc: null,
+ ImageFileName: null,
+ Body: "");
+
+ public static IReadOnlyList All { get; } =
+ [
+ ArandiPenumbra,
+ ElderbastionShell,
+ EnigmaticCapacitor,
+ FreeCorsairMercenaryOutpost,
+ GensisCore,
+ LightweightAlloys,
+ MarranBulwark,
+ RenewalMatrix,
+ SilentHollow,
+ StarhunterScopes,
+ TempleOfAnqas,
+ TempleOfStars,
+ ValkaruWarVault,
+ XolRelicOutpost,
+ ];
+
+ public static IReadOnlyDictionary ByName { get; } =
+ All.ToDictionary(static item => item.Name, StringComparer.OrdinalIgnoreCase);
+}