From 8065b9bd902922f3015fccdc6b122db8cd5efa99 Mon Sep 17 00:00:00 2001 From: LocalIdentity Date: Sun, 31 May 2026 07:50:27 +1000 Subject: [PATCH] Move tables into alphabetical order Based on the errors generated by the project No longer has any errors when using generate:watch --- dat-schema/2_02_Ascendancy.gql | 48 +-- dat-schema/3_01_War_for_the_Atlas.gql | 10 +- dat-schema/3_02_Bestiary.gql | 31 +- dat-schema/3_03_Incursion.gql | 40 +-- dat-schema/3_04_Delve.gql | 10 +- dat-schema/3_05_Betrayal.gql | 12 +- dat-schema/3_07_Legion.gql | 16 +- dat-schema/3_08_Blight.gql | 14 +- dat-schema/3_11_Harvest.gql | 20 +- dat-schema/3_12_Heist.gql | 30 +- dat-schema/3_15_Expedition.gql | 34 +- dat-schema/3_17_Archnemesis.gql | 10 +- dat-schema/3_19_Lake_of_Kalandra.gql | 20 +- dat-schema/3_20_Sanctum.gql | 36 +- dat-schema/3_22_Trial_of_the_Ancestors.gql | 24 +- dat-schema/3_24_Necropolis.gql | 12 +- dat-schema/3_25_Settlers_of_Kalguur.gql | 18 +- dat-schema/3_26_Mercenaries.gql | 8 +- dat-schema/3_27_Keepers_of_the_Flame.gql | 22 +- dat-schema/3_28_Mirage.gql | 8 +- dat-schema/_Core.gql | 396 ++++++++++---------- dat-schema/poe2/_Core.gql | 397 ++++++++++----------- 22 files changed, 606 insertions(+), 610 deletions(-) diff --git a/dat-schema/2_02_Ascendancy.gql b/dat-schema/2_02_Ascendancy.gql index ab00a37..9f94731 100644 --- a/dat-schema/2_02_Ascendancy.gql +++ b/dat-schema/2_02_Ascendancy.gql @@ -13,6 +13,29 @@ type LabyrinthBonusItems { LabyrinthName: string } +type LabyrinthCraftOptions { + Id: string + CraftFamily: LabyrinthCraftOptionFamily + Text: string + Script: string + ScriptArgument: string + HASH16: u16 + _: bool + Tier: LabyrinthCraftOptionTiers + _: bool + Achievement: [AchievementItems] + _: bool + SoundEffect: SoundEffects + _: i32 +} + +enum LabyrinthCraftOptionFamily @indexing(first: 0) { _ } + +type LabyrinthCraftOptionTiers { + Id: string + CraftIcon: string +} + type LabyrinthExclusionGroups { Id: string } @@ -130,27 +153,4 @@ type LabyrinthTrinkets { LabyrinthSecretsKey: [LabyrinthSecrets] Buff_BuffDefinitionsKey: BuffDefinitions Buff_StatValues: [i32] -} - -enum LabyrinthCraftOptionFamily @indexing(first: 0) { _ } - -type LabyrinthCraftOptions { - Id: string - CraftFamily: LabyrinthCraftOptionFamily - Text: string - Script: string - ScriptArgument: string - HASH16: u16 - _: bool - Tier: LabyrinthCraftOptionTiers - _: bool - Achievement: [AchievementItems] - _: bool - SoundEffect: SoundEffects - _: i32 -} - -type LabyrinthCraftOptionTiers { - Id: string - CraftIcon: string -} +} \ No newline at end of file diff --git a/dat-schema/3_01_War_for_the_Atlas.gql b/dat-schema/3_01_War_for_the_Atlas.gql index 7de7e42..b15aad9 100644 --- a/dat-schema/3_01_War_for_the_Atlas.gql +++ b/dat-schema/3_01_War_for_the_Atlas.gql @@ -4,13 +4,13 @@ type ElderBossArenas { AchievementItemsKeys: [AchievementItems] } +type ElderGuardians { + Id: string + MapIcon: string +} + type ElderMapBossOverride { WorldAreasKey: WorldAreas @unique MonsterVarietiesKeys: [MonsterVarieties] TerrainMetadata: string @files(ext: [".ot", ".otc"]) } - -type ElderGuardians { - Id: string - MapIcon: string -} diff --git a/dat-schema/3_02_Bestiary.gql b/dat-schema/3_02_Bestiary.gql index ab6980f..c52ad0d 100644 --- a/dat-schema/3_02_Bestiary.gql +++ b/dat-schema/3_02_Bestiary.gql @@ -66,21 +66,6 @@ type BestiaryNets { IsEnabled: bool } -type BestiaryRecipeComponent { - Id: string @unique - MinLevel: i32 - BestiaryFamiliesKey: BestiaryFamilies - BestiaryGroupsKey: BestiaryGroups - ModsKey: Mods - BestiaryCapturableMonstersKey: BestiaryCapturableMonsters - BeastRarity: Rarity - BestiaryGenusKey: BestiaryGenus -} - -type BestiaryRecipeCategories { - Id: string - Text: string -} type BestiaryRecipes @tags(list: ["item:recipe", "crafting"]) { Id: string @unique @@ -98,6 +83,22 @@ type BestiaryRecipes @tags(list: ["item:recipe", "crafting"]) { FlaskMod: Mods } +type BestiaryRecipeCategories { + Id: string + Text: string +} + +type BestiaryRecipeComponent { + Id: string @unique + MinLevel: i32 + BestiaryFamiliesKey: BestiaryFamilies + BestiaryGroupsKey: BestiaryGroups + ModsKey: Mods + BestiaryCapturableMonstersKey: BestiaryCapturableMonsters + BeastRarity: Rarity + BestiaryGenusKey: BestiaryGenus +} + type NetTiers { BaseItemTypesKey: BaseItemTypes Tier: i32 diff --git a/dat-schema/3_03_Incursion.gql b/dat-schema/3_03_Incursion.gql index d8664e0..2f0fa05 100644 --- a/dat-schema/3_03_Incursion.gql +++ b/dat-schema/3_03_Incursion.gql @@ -17,18 +17,6 @@ type IncursionBrackets { _: i32 } -type IncursionChestRewards @tags(list: ["item:droptable"]) { - IncursionRoomsKey: IncursionRooms - IncursionChestsKeys: [IncursionChests] - ChestMarkerMetadata: string @files(ext: [".ot", ".otc"]) - HASH32: u32 - RuthlessIncursionChestsKeys: [IncursionChests] - _: i32 - _: i32 - _: i32 - _: i32 -} - type IncursionChests { Id: string @unique ChestsKey: Chests @@ -39,14 +27,16 @@ type IncursionChests { _: i32 } -type IncursionRoomBossFightEvents { - Room: IncursionRooms - _: string - _: string - _: string - _: string - _: string - TurretMonster: MonsterVarieties +type IncursionChestRewards @tags(list: ["item:droptable"]) { + IncursionRoomsKey: IncursionRooms + IncursionChestsKeys: [IncursionChests] + ChestMarkerMetadata: string @files(ext: [".ot", ".otc"]) + HASH32: u32 + RuthlessIncursionChestsKeys: [IncursionChests] + _: i32 + _: i32 + _: i32 + _: i32 } type IncursionRooms @tags(list: ["item:itemized"]) { @@ -73,6 +63,16 @@ type IncursionRooms @tags(list: ["item:itemized"]) { _: [Mods] } +type IncursionRoomBossFightEvents { + Room: IncursionRooms + _: string + _: string + _: string + _: string + _: string + TurretMonster: MonsterVarieties +} + type IncursionUniqueUpgradeComponents @tags(list: ["item:recipe", "item:unique"]) { BaseUnique: Words UpgradeCurrency: BaseItemTypes diff --git a/dat-schema/3_04_Delve.gql b/dat-schema/3_04_Delve.gql index 70f9a3a..bbf8901 100644 --- a/dat-schema/3_04_Delve.gql +++ b/dat-schema/3_04_Delve.gql @@ -28,11 +28,6 @@ type DelveCatchupDepths { Depth: i32 } -type DelveCraftingModifierDescriptions { - Id: string @unique - Description: string -} - type DelveCraftingModifiers @tags(list: ["crafting"]) { BaseItemTypesKey: BaseItemTypes AddedModsKeys: [Mods] @@ -58,6 +53,11 @@ type DelveCraftingModifiers @tags(list: ["crafting"]) { _: bool } +type DelveCraftingModifierDescriptions { + Id: string @unique + Description: string +} + type DelveCraftingTags { TagsKey: Tags ItemClass: string diff --git a/dat-schema/3_05_Betrayal.gql b/dat-schema/3_05_Betrayal.gql index 998fbad..1d27d61 100644 --- a/dat-schema/3_05_Betrayal.gql +++ b/dat-schema/3_05_Betrayal.gql @@ -150,6 +150,12 @@ type SafehouseBYOCrafting @tags(list: ["crafting"]) { Craft: BYOCrafting } +type SafehouseCraftingSpreeCurrencies { + Id: string @unique + BaseItemTypesKey: BaseItemTypes + HasSpecificBaseItem: bool +} + type SafehouseCraftingSpreeType { Id: string Currencies: [SafehouseCraftingSpreeCurrencies] @@ -160,12 +166,6 @@ type SafehouseCraftingSpreeType { _: i32 } -type SafehouseCraftingSpreeCurrencies { - Id: string @unique - BaseItemTypesKey: BaseItemTypes - HasSpecificBaseItem: bool -} - type Scarabs { Type: ScarabTypes Items: [BaseItemTypes] diff --git a/dat-schema/3_07_Legion.gql b/dat-schema/3_07_Legion.gql index c51a4f8..c14de1b 100644 --- a/dat-schema/3_07_Legion.gql +++ b/dat-schema/3_07_Legion.gql @@ -25,14 +25,6 @@ type LegionBalancePerLevel { _: i32 } -type LegionChestTypes { - _: MonsterVarieties - Chest: Chests - HardmodeChest: Chests - _: i32 - Faction: LegionFactions -} - type LegionChestCounts { LegionFactionsKey: LegionFactions LegionRanksKey: LegionRanks @@ -44,6 +36,14 @@ type LegionChestCounts { _: i32 } +type LegionChestTypes { + _: MonsterVarieties + Chest: Chests + HardmodeChest: Chests + _: i32 + Faction: LegionFactions +} + type LegionFactions { Id: string @unique SpawnWeight: i32 diff --git a/dat-schema/3_08_Blight.gql b/dat-schema/3_08_Blight.gql index af6ac1b..2dc6901 100644 --- a/dat-schema/3_08_Blight.gql +++ b/dat-schema/3_08_Blight.gql @@ -106,13 +106,6 @@ type BlightTopologyNodes { _: i32 } -type BlightTowerAuras { - Id: i32 @unique - BuffDefinitionsKey: BuffDefinitions - _: i32 - MiscAnimatedKey: MiscAnimated -} - type BlightTowers { Id: string @unique Name: string @@ -130,6 +123,13 @@ type BlightTowers { _: bool } +type BlightTowerAuras { + Id: i32 @unique + BuffDefinitionsKey: BuffDefinitions + _: i32 + MiscAnimatedKey: MiscAnimated +} + type BlightTowersPerLevel { BlightTowersKey: BlightTowers _: i32 diff --git a/dat-schema/3_11_Harvest.gql b/dat-schema/3_11_Harvest.gql index 84f953a..80c7869 100644 --- a/dat-schema/3_11_Harvest.gql +++ b/dat-schema/3_11_Harvest.gql @@ -1,10 +1,5 @@ enum HarvestColours @indexing(first: 0) { _ } -type HarvestCraftOptionIcons { - Id: string @unique - DDSFile: string @file(ext: ".dds") -} - type HarvestCraftOptions @tags(list: ["crafting"]) { Id: string @unique Text: string @@ -24,6 +19,11 @@ type HarvestCraftOptions @tags(list: ["crafting"]) { _: i32 } +type HarvestCraftOptionIcons { + Id: string @unique + DDSFile: string @file(ext: ".dds") +} + type HarvestCraftTiers { Id: string @unique FrameImage: string @@ -42,6 +42,11 @@ type HarvestInfrastructure { ClientStringsKey: ClientStrings } +type HarvestLifeScalingPerLevel { + Level: i32 + MoreLife: i32 +} + type HarvestPerLevelValues { Level: i32 _: i32 @@ -57,11 +62,6 @@ type HarvestPerLevelValues { _: i32 } -type HarvestLifeScalingPerLevel { - Level: i32 - MoreLife: i32 -} - type HarvestSeeds { Id: string Monster: MonsterVarieties diff --git a/dat-schema/3_12_Heist.gql b/dat-schema/3_12_Heist.gql index 8b2cedf..879c402 100644 --- a/dat-schema/3_12_Heist.gql +++ b/dat-schema/3_12_Heist.gql @@ -62,6 +62,13 @@ type HeistBalancePerLevel { enum HeistBlueprintWindowTypes @indexing(first: 0) { _ } +type HeistChests { + ChestsKey: Chests + Weight: i32 + HeistAreasKey: [HeistAreas] + HeistChestTypesKey: HeistChestTypes +} + type HeistChestRewardTypes { Id: string @unique Art: string @@ -77,13 +84,6 @@ type HeistChestRewardTypes { _: i32 } -type HeistChests { - ChestsKey: Chests - Weight: i32 - HeistAreasKey: [HeistAreas] - HeistChestTypesKey: HeistChestTypes -} - enum HeistChestTypes @indexing(first: 0) { _ } type HeistChokepointFormation { @@ -230,6 +230,14 @@ type HeistNPCDialogue { _: i32 } +type HeistNPCStats { + StatsKey: Stats + _: bool + _: bool + _: bool + _: bool +} + type HeistNPCs { NPCsKey: NPCs MonsterVarietiesKey: MonsterVarieties @@ -253,14 +261,6 @@ type HeistNPCs { Inventory: Inventories } -type HeistNPCStats { - StatsKey: Stats - _: bool - _: bool - _: bool - _: bool -} - type HeistObjectives { BaseItemType: BaseItemTypes @unique Scaling: f32 diff --git a/dat-schema/3_15_Expedition.gql b/dat-schema/3_15_Expedition.gql index 78a66e1..ce421c9 100644 --- a/dat-schema/3_15_Expedition.gql +++ b/dat-schema/3_15_Expedition.gql @@ -39,6 +39,17 @@ type ExpeditionCurrency @tags(list: ["item:def"]) { LootSound: SoundEffects } +type ExpeditionDeals { + Id: i32 + Function: string @unique + Arguments: string + TextAudio: NPCTextAudio + Description: string @localized + BuyAchievements: [AchievementItems] + NPCShop: NPCShop + DealFamily: ExpeditionDealFamilies +} + enum ExpeditionDealFamilies @indexing(first: 1) { REROLL_PREFIXES_BEST REROLL_SUFFIXES_BEST @@ -64,17 +75,6 @@ enum ExpeditionDealFamilies @indexing(first: 1) { REMOVE_ALL_SUFFIXES } -type ExpeditionDeals { - Id: i32 - Function: string @unique - Arguments: string - TextAudio: NPCTextAudio - Description: string @localized - BuyAchievements: [AchievementItems] - NPCShop: NPCShop - DealFamily: ExpeditionDealFamilies -} - type ExpeditionFactions { Id: string @unique Name: string @@ -119,12 +119,6 @@ enum ExpeditionRelicModCategories @indexing(first: 0) { REWARD_PACK_SIZE } -type ExpeditionRelicMods { - Mod: Mods - Categories: [ExpeditionRelicModCategories] - DestroyAchievements: [AchievementItems] -} - type ExpeditionRelics { Id: string @unique Name: string @@ -134,6 +128,12 @@ type ExpeditionRelics { MaxLevel: i32 } +type ExpeditionRelicMods { + Mod: Mods + Categories: [ExpeditionRelicModCategories] + DestroyAchievements: [AchievementItems] +} + type ExpeditionStorageLayout { Id: string StoredItem: BaseItemTypes diff --git a/dat-schema/3_17_Archnemesis.gql b/dat-schema/3_17_Archnemesis.gql index cbf35c4..2c8c49a 100644 --- a/dat-schema/3_17_Archnemesis.gql +++ b/dat-schema/3_17_Archnemesis.gql @@ -7,11 +7,6 @@ type ArchnemesisMetaRewards { MaxLevel: i32 } -type ArchnemesisModComboAchievements { - Achievement: AchievementItems - Mods: [ArchnemesisMods] -} - type ArchnemesisMods { Mod: Mods Name: string @localized @@ -22,6 +17,11 @@ type ArchnemesisMods { _: bool } +type ArchnemesisModComboAchievements { + Achievement: AchievementItems + Mods: [ArchnemesisMods] +} + type ArchnemesisModVisuals { Id: string @unique MiscAnimated: MiscAnimated diff --git a/dat-schema/3_19_Lake_of_Kalandra.gql b/dat-schema/3_19_Lake_of_Kalandra.gql index 79714b4..b6d1c13 100644 --- a/dat-schema/3_19_Lake_of_Kalandra.gql +++ b/dat-schema/3_19_Lake_of_Kalandra.gql @@ -20,16 +20,6 @@ type LakeMetaOptionsUnlockText { Text: string @localized } -type LakeRoomCompletion { - Room: LakeRooms - _: i32 - _: i32 - Achievements: [AchievementItems] - _: [i32] - _: [_] # All rows empty - _: i32 -} - type LakeRooms @tags(list: ["item:itemized"]) { Id: string ARMFiles: [string] @file(ext: ".arm") @@ -54,6 +44,16 @@ type LakeRooms @tags(list: ["item:itemized"]) { _: bool } +type LakeRoomCompletion { + Room: LakeRooms + _: i32 + _: i32 + Achievements: [AchievementItems] + _: [i32] + _: [_] # All rows empty + _: i32 +} + type StampChoice { Id: string @unique Room: LakeRooms diff --git a/dat-schema/3_20_Sanctum.gql b/dat-schema/3_20_Sanctum.gql index 2166dc8..0f338cb 100644 --- a/dat-schema/3_20_Sanctum.gql +++ b/dat-schema/3_20_Sanctum.gql @@ -15,12 +15,6 @@ type SanctumDefenceIcons { Description: string } -type SanctumDeferredRewardCategories { - Item: BaseItemTypes - NamePlural: string - ScriptReward: string -} - type SanctumDeferredRewards { Id: string DeferralIcon: string @@ -29,6 +23,12 @@ type SanctumDeferredRewards { Count: i32 } +type SanctumDeferredRewardCategories { + Item: BaseItemTypes + NamePlural: string + ScriptReward: string +} + type SanctumFloors { Id: string Area: WorldAreas @@ -50,18 +50,6 @@ type SanctumLifeScalingPerLevel { MoreLife: i32 } -type SanctumPersistentEffectCategories { - Id: string - Frame: string - Popup: string - Glow: string - Curse: bool - Boon: bool - Icon: string - Name: string - Deferral: bool -} - type SanctumPersistentEffects { Id: string Stats: [Stats] @@ -88,6 +76,18 @@ type SanctumPersistentEffects { HASH16: i32 } +type SanctumPersistentEffectCategories { + Id: string + Frame: string + Popup: string + Glow: string + Curse: bool + Boon: bool + Icon: string + Name: string + Deferral: bool +} + type SanctumRooms { Id: string ArmFile: string diff --git a/dat-schema/3_22_Trial_of_the_Ancestors.gql b/dat-schema/3_22_Trial_of_the_Ancestors.gql index b79fe28..0c3ecd0 100644 --- a/dat-schema/3_22_Trial_of_the_Ancestors.gql +++ b/dat-schema/3_22_Trial_of_the_Ancestors.gql @@ -94,12 +94,6 @@ type AncestralTrialShopSlotEntries { _: bool } -type AncestralTrialTribeOpinions { - SourceTribe: AncestralTrialTribes - TargetTribe: AncestralTrialTribes - Opinion: AncestralTrialOpinionTypes -} - type AncestralTrialTribes { Id: string @unique NPCHub: NPCs @@ -123,12 +117,10 @@ type AncestralTrialTribes { NPCArena: NPCs } -type AncestralTrialUnitPositions { - Id: string - _: i32 - _: i32 - _: i32 - _: i32 +type AncestralTrialTribeOpinions { + SourceTribe: AncestralTrialTribes + TargetTribe: AncestralTrialTribes + Opinion: AncestralTrialOpinionTypes } type AncestralTrialUnits { @@ -145,6 +137,14 @@ type AncestralTrialUnits { Position: AncestralTrialUnitPositions } +type AncestralTrialUnitPositions { + Id: string + _: i32 + _: i32 + _: i32 + _: i32 +} + type ChieftainLifeScalingPerLevel { Level: i32 MoreLife: i32 diff --git a/dat-schema/3_24_Necropolis.gql b/dat-schema/3_24_Necropolis.gql index c07fc82..97f4362 100644 --- a/dat-schema/3_24_Necropolis.gql +++ b/dat-schema/3_24_Necropolis.gql @@ -53,18 +53,18 @@ type NecropolisPackAdditionalPacks { MonsterPack: MonsterPacks } -type NecropolisPackImplicitClass { - Id: string - MoreImplicit: NecropolisPackImplicits - LessImplicit: NecropolisPackImplicits -} - type NecropolisPackImplicits { Id: string Text: string Icon: string } +type NecropolisPackImplicitClass { + Id: string + MoreImplicit: NecropolisPackImplicits + LessImplicit: NecropolisPackImplicits +} + type NecropolisPackMods { Mod: Mods Tier: NecropolisPackModTiers diff --git a/dat-schema/3_25_Settlers_of_Kalguur.gql b/dat-schema/3_25_Settlers_of_Kalguur.gql index 8d31db7..0318b78 100644 --- a/dat-schema/3_25_Settlers_of_Kalguur.gql +++ b/dat-schema/3_25_Settlers_of_Kalguur.gql @@ -170,15 +170,6 @@ type VillageUniqueDisenchantValues @tags(list: ["item:droptable"]) { RuthlessValue: f32 } -type VillageUpgradeCategories { - Id: string - ScriptArgs: string - Name: string - Icon: string - Text: string - JobType: VillageJobTypes -} - # Removed 3.28.0h type VillageUpgrades { Category: VillageUpgradeCategories @@ -195,6 +186,15 @@ type VillageUpgrades { UpgradeTextAudio: NPCTextAudio } +type VillageUpgradeCategories { + Id: string + ScriptArgs: string + Name: string + Icon: string + Text: string + JobType: VillageJobTypes +} + type VillageBaseStats { Stat: Stats StatValue: i32 diff --git a/dat-schema/3_26_Mercenaries.gql b/dat-schema/3_26_Mercenaries.gql index 900776f..6b6727b 100644 --- a/dat-schema/3_26_Mercenaries.gql +++ b/dat-schema/3_26_Mercenaries.gql @@ -70,10 +70,6 @@ type MercenaryRenownLevels { _: i32 } -type MercenarySkillFamilies { - Id: string -} - type MercenarySkills { Id: GrantedEffects SupportCount: MercenarySupportCounts @@ -88,6 +84,10 @@ type MercenarySkills { HouseIcon: string } +type MercenarySkillFamilies { + Id: string +} + type MercenarySupportCounts { Id: string } diff --git a/dat-schema/3_27_Keepers_of_the_Flame.gql b/dat-schema/3_27_Keepers_of_the_Flame.gql index a6d8745..7fd31e4 100644 --- a/dat-schema/3_27_Keepers_of_the_Flame.gql +++ b/dat-schema/3_27_Keepers_of_the_Flame.gql @@ -53,12 +53,6 @@ type BrequelFruitTypes { _: rid } -type BrequelGraftGrantedSkillLevels { - AreaLevel: i32 - SkillLevel: i32 - RequiredLevel: i32 -} - type BrequelGrafts { Id: string @unique Arm: string @@ -67,12 +61,23 @@ type BrequelGrafts { SkillAnimation: string } +type BrequelGraftGrantedSkillLevels { + AreaLevel: i32 + SkillLevel: i32 + RequiredLevel: i32 +} + type BrequelGraftInventoryLayout { Inventory: Inventories QuestFlag: QuestFlags _: i32 } +type BrequelGraftSkillStats { + GraftStat: Stats @unique + PlayerStat: Stats +} + type BrequelGraftTypes { BaseItemType: BaseItemTypes @unique AOFileLeftArm: string @file(ext: ".ao") @@ -83,11 +88,6 @@ type BrequelGraftTypes { Achievement: AchievementItems } -type BrequelGraftSkillStats { - GraftStat: Stats @unique - PlayerStat: Stats -} - type BrequelItemResourceValues { FleshgraftLevel: i32 GraftbloodStorage: i32 diff --git a/dat-schema/3_28_Mirage.gql b/dat-schema/3_28_Mirage.gql index 43e256f..03e13eb 100644 --- a/dat-schema/3_28_Mirage.gql +++ b/dat-schema/3_28_Mirage.gql @@ -1,7 +1,3 @@ -type FaridunWishFamilies { - Id: string -} - type FaridunWishes { Id: string _: i32 @@ -19,6 +15,10 @@ type FaridunWishes { _: i32 } +type FaridunWishFamilies { + Id: string +} + type FaridunLifeScalingPerLevel { Level: i32 MoreLife: i32 diff --git a/dat-schema/_Core.gql b/dat-schema/_Core.gql index a2f8fc4..b11e4cf 100644 --- a/dat-schema/_Core.gql +++ b/dat-schema/_Core.gql @@ -9,26 +9,6 @@ type AtlasTrees { UnlockObjective: string } -type AchievementItemRewards @tags(list: ["mtx:reward"]) { - AchievementItemsKey: AchievementItems - Rewards: MtxTypeGameSpecific - Message: string - Id: string -} - -type AchievementItems { - Id: string @unique - _: i32 - _: i32 - Name: string - CompletionsRequired: i32 - AchievementsKey: Achievements - _: bool - _: bool - _: bool - _: bool -} - type Achievements { Id: string @unique Description: string @@ -50,6 +30,26 @@ type Achievements { _: string } +type AchievementItems { + Id: string @unique + _: i32 + _: i32 + Name: string + CompletionsRequired: i32 + AchievementsKey: Achievements + _: bool + _: bool + _: bool + _: bool +} + +type AchievementItemRewards @tags(list: ["mtx:reward"]) { + AchievementItemsKey: AchievementItems + Rewards: MtxTypeGameSpecific + Message: string + Id: string +} + type AchievementSetRewards @tags(list: ["mtx:reward"]) { SetId: AchievementSetsDisplay @ref(column: "Id") AchievementsRequired: i32 @@ -121,11 +121,6 @@ type ActiveSkillType { FlagStat: Stats } -type ActiveSkillRequirementIcons { - Id: string - AOFile: string @file(ext: ".ao") -} - type ActiveSkillRequirements { GrantedEffect: GrantedEffects BuffDefinition: BuffDefinitions @@ -136,6 +131,11 @@ type ActiveSkillRequirements { Icon: ActiveSkillRequirementIcons } +type ActiveSkillRequirementIcons { + Id: string + AOFile: string @file(ext: ".ao") +} + type Acts { Id: string @unique Part: i32 @@ -312,14 +312,6 @@ type ApplyDamageFunctions { _: bool } -type ArchetypeRewards @tags(list: ["item:reward"]) { - Id: string @unique - _: rid - Archetype: [Archetypes] - Gem: BaseItemTypes - BK2File: string @file(ext: ".bk2") -} - type Archetypes { Id: string CharactersKey: Characters @@ -339,6 +331,14 @@ type Archetypes { _: bool } +type ArchetypeRewards @tags(list: ["item:reward"]) { + Id: string @unique + _: rid + Archetype: [Archetypes] + Gem: BaseItemTypes + BK2File: string @file(ext: ".bk2") +} + type AreaInfluenceDoodads { StatsKey: Stats StatValue: i32 @@ -772,6 +772,14 @@ type BuffTemplates { _: Stats } +type BuffVisualOrbs { + Id: string @unique + BuffVisualOrbTypesKey: BuffVisualOrbTypes + BuffVisualOrbArtKeys: [BuffVisualOrbArt] + Player_BuffVisualOrbArtKeys: [BuffVisualOrbArt] + BuffVisualOrbArtKeys2: [BuffVisualOrbArt] +} + type BuffVisualOrbArt { Id: string @unique MiscAnimated: MiscAnimated @@ -790,14 +798,6 @@ type BuffVisualOrbArt { _: i32 } -type BuffVisualOrbs { - Id: string @unique - BuffVisualOrbTypesKey: BuffVisualOrbTypes - BuffVisualOrbArtKeys: [BuffVisualOrbArt] - Player_BuffVisualOrbArtKeys: [BuffVisualOrbArt] - BuffVisualOrbArtKeys2: [BuffVisualOrbArt] -} - type BuffVisualOrbTypes { Id: string @unique _: f32 @@ -850,6 +850,8 @@ type BuffVisualsArtVariations { _: i32 } +enum BuffVisualSets @indexing(first: 0) { _ } + type BuffVisualSetEntries { Id: string @unique _: i32 @@ -857,8 +859,6 @@ type BuffVisualSetEntries { _: i32 } -enum BuffVisualSets @indexing(first: 0) { _ } - type BuiltInItemFilters { Id: string @unique Name: string @@ -896,8 +896,6 @@ type CharacterPanelDescriptionModes { FormatString_Negative: string } -enum CharacterPanelStatContexts @indexing(first: 0) { _ } - type CharacterPanelStats { Id: string @unique Text: string @@ -912,6 +910,8 @@ type CharacterPanelStats { _: bool } +enum CharacterPanelStatContexts @indexing(first: 0) { _ } + type CharacterPanelTabs { Id: string @unique _: i32 @@ -1468,17 +1468,17 @@ type DisplayMinionMonsterType { MonsterVarietiesKey: MonsterVarieties @unique } +type DivinationBuffTemplates { + Buff: BuffTemplates + DivCardArt: DivinationCardArt +} + type DivinationCardStashTabLayout { StoredItem: BaseItemTypes @unique IsInGame: bool IsEnabled: bool } -type DivinationBuffTemplates { - Buff: BuffTemplates - DivCardArt: DivinationCardArt -} - type Doors { Id: string @unique _: bool @@ -2147,8 +2147,6 @@ type GrantedEffectStatSetsPerLevel { FloatStatsValues: [f32] } -enum GroundEffectEffectTypes @indexing(first: 0) { _ } - type GroundEffects { GroundEffectTypesKey: GroundEffectTypes _: i32 @@ -2175,6 +2173,8 @@ type GroundEffects { _: bool } +enum GroundEffectEffectTypes @indexing(first: 0) { _ } + type GroundEffectTypes { Id: string @unique _: i32 @@ -2332,12 +2332,6 @@ type Inventories { enum InventoryType @indexing(first: 0) { _ } -type ItemClassCategories { - Id: string @unique - Text: string - _: rid # All rows empty -} - type ItemClasses @tags(list: ["crafting"]) { Id: string @unique Name: string @@ -2372,6 +2366,12 @@ type ItemClasses @tags(list: ["crafting"]) { _: bool } +type ItemClassCategories { + Id: string @unique + Text: string + _: rid # All rows empty +} + enum ItemClassFlags @indexing(first: 0) { WEAPON ONE_HAND @@ -2393,13 +2393,6 @@ type ItemConditions { MaxLevel: i32 } -type ItemCostPerLevel { - BaseItem: BaseItemTypes - Level: i32 - Cost: ItemCosts - CostHardmode: ItemCosts -} - type ItemCosts { Id: string Cost1Currencies: [BaseItemTypes] @@ -2413,8 +2406,25 @@ type ItemCosts { RuthlessWithGold: [i32] } +type ItemCostPerLevel { + BaseItem: BaseItemTypes + Level: i32 + Cost: ItemCosts + CostHardmode: ItemCosts +} + enum ItemCreationTemplateCustomAction @indexing(first: 0) { _ } +type ItemExperiencePerLevel { + ItemExperienceType: ItemExperienceTypes + ItemCurrentLevel: i32 + Experience: i32 +} + +type ItemExperienceTypes { + Id: string @unique +} + type ItemFrameType { Id: string _: bool @@ -2432,16 +2442,6 @@ type ItemFrameType { _: i32 } -type ItemExperienceTypes { - Id: string @unique -} - -type ItemExperiencePerLevel { - ItemExperienceType: ItemExperienceTypes - ItemCurrentLevel: i32 - Experience: i32 -} - type ItemisedVisualEffect { Mtx: MtxTypeGameSpecific VisualEffect: ItemVisualEffect @@ -2971,19 +2971,6 @@ type MapSeriesTiers { MirageTier: i32 } -type MapStashSpecialTypeEntries { - Id: string - _: i32 - MapItem: BaseItemTypes - Name: string @localized - _: i32 - IsShaperGuardian: bool - IsElderGuardian: bool - ElderGuardian: ElderGuardians - Conqueror: AtlasExiles - ItemVisualIdentity: ItemVisualIdentity -} - type MapStashSpecialSubStashGroup { Id: string BaseItemTypes: BaseItemTypes @@ -2997,6 +2984,19 @@ type MapStashSpecialSubStashGroup { _: MapStashSpecialSubStashGroup } +type MapStashSpecialTypeEntries { + Id: string + _: i32 + MapItem: BaseItemTypes + Name: string @localized + _: i32 + IsShaperGuardian: bool + IsElderGuardian: bool + ElderGuardian: ElderGuardians + Conqueror: AtlasExiles + ItemVisualIdentity: ItemVisualIdentity +} + type MapStashUniqueMapInfo { UniqueMap: UniqueMaps BaseItem: BaseItemTypes @@ -3012,18 +3012,18 @@ type MapStatConditions { _: bool } -type MapTierAchievements { - Id: string @unique - AchievementItemsKey: [AchievementItems] - MapTiers: [i32] -} - type MapTiers { Tier: i32 Level: i32 Level2: i32 } +type MapTierAchievements { + Id: string @unique + AchievementItemsKey: [AchievementItems] + MapTiers: [i32] +} + type Melee { ActiveSkill: ActiveSkills _: i32 @@ -3602,6 +3602,14 @@ type MonsterGroupEntries { enum MonsterGroupNames @indexing(first: 0) { _ } +type MonsterHeights { + MonsterVariety: MonsterVarieties + _: f32 + MonsterHeightBracket: MonsterHeightBrackets + _: i32 + _: i32 +} + type MonsterHeightBrackets { Id: string _: i32 @@ -3617,14 +3625,6 @@ type MonsterHeightBrackets { _: bool } -type MonsterHeights { - MonsterVariety: MonsterVarieties - _: f32 - MonsterHeightBracket: MonsterHeightBrackets - _: i32 - _: i32 -} - type MonsterMapBossDifficulty { MapLevel: i32 BossLifePercentIncrease: i32 @@ -4116,23 +4116,23 @@ type NPCDivinationWindowVisuals { DivinationWindowVisual: DivinationWindowVisuals } -type NPCVendorDialogueConditions { +type NPCVendorDialogue { Id: string @unique - Rarity: Rarity - ItemClass: ItemClasses + NPC: [NPCs] + NPCAudio: NPCTextAudio + DialogueCondition: [NPCVendorDialogueConditions] _: i32 - _: rid # All rows empty _: i32 - Words: Words } -type NPCVendorDialogue { +type NPCVendorDialogueConditions { Id: string @unique - NPC: [NPCs] - NPCAudio: NPCTextAudio - DialogueCondition: [NPCVendorDialogueConditions] + Rarity: Rarity + ItemClass: ItemClasses _: i32 + _: rid # All rows empty _: i32 + Words: Words } type NPCFollowerVariations { @@ -4285,17 +4285,17 @@ type Omens { BaseItemType: BaseItemTypes } +type OnKillAchievements { + MonsterVarietiesKey: MonsterVarieties + GameStat: GameStats +} + type OneTimeEvents { Id: string @unique QuestFlag: QuestFlags WorldArea: WorldAreas } -type OnKillAchievements { - MonsterVarietiesKey: MonsterVarieties - GameStat: GameStats -} - enum Orientations @indexing(first: 0) { _ } type PackExtrasFromStats { @@ -4395,17 +4395,6 @@ type PassiveOverrideLimits { _: bool } -type PassiveSkillMasteryGroups { - Id: string @unique - MasteryEffects: [PassiveSkillMasteryEffects] - InactiveIcon: string @file(ext: ".dds") - ActiveIcon: string @file(ext: ".dds") - ActiveEffectImage: string - _: bool - SoundEffect: SoundEffects - MasteryCountStat: Stats -} - type PassiveSkillMasteryEffects { Id: string HASH16: u16 @@ -4417,6 +4406,17 @@ type PassiveSkillMasteryEffects { GrantedEffect: GrantedEffectsPerLevel } +type PassiveSkillMasteryGroups { + Id: string @unique + MasteryEffects: [PassiveSkillMasteryEffects] + InactiveIcon: string @file(ext: ".dds") + ActiveIcon: string @file(ext: ".dds") + ActiveEffectImage: string + _: bool + SoundEffect: SoundEffects + MasteryCountStat: Stats +} + type PassiveSkills { Id: string @unique Icon_DDSFile: string @file(ext: ".dds") @@ -4745,22 +4745,6 @@ type QuestItems { _: i32 } -type QuestRewardOffers { - Id: string - QuestKey: Quest - QuestFlag: QuestFlags - _: i32 - RewardWindowTake: ClientStrings - _: bool - _: bool - RewardWindowTitle: ClientStrings - _: bool - _: bool - _: bool - _: bool - _: rid # All rows empty -} - type QuestRewards @tags(list: ["item:reward"]) { RewardOffer: QuestRewardOffers _: i32 @@ -4784,7 +4768,21 @@ type QuestRewards @tags(list: ["item:reward"]) { _: [_] # All rows empty } -enum QuestStateCalculation @indexing(first: 0) { _ } +type QuestRewardOffers { + Id: string + QuestKey: Quest + QuestFlag: QuestFlags + _: i32 + RewardWindowTake: ClientStrings + _: bool + _: bool + RewardWindowTitle: ClientStrings + _: bool + _: bool + _: bool + _: bool + _: rid # All rows empty +} type QuestStates { Quest: Quest @@ -4807,6 +4805,8 @@ type QuestStates { _: string } +enum QuestStateCalculation @indexing(first: 0) { _ } + type QuestStaticRewards { QuestFlag: QuestFlags _: i32 @@ -5002,20 +5002,6 @@ type SkillArtVariations { Mtx: [MtxTypeGameSpecific] } -type SkillGemInfo { - Id: string @unique - Description: string - VideoURL1: string - SkillGemsKey: SkillGems - VideoURL2: string - CharactersKeys: [Characters] -} - -type SkillGemGoldPricePerQuality { - Quality: i32 - Price: i32 -} - type SkillGems @tags(list: ["item:def"]) { BaseItemTypesKey: BaseItemTypes @unique StrengthRequirementPercent: i32 @@ -5038,6 +5024,20 @@ type SkillGems @tags(list: ["item:def"]) { GemVariants: [GemEffects] } +type SkillGemGoldPricePerQuality { + Quality: i32 + Price: i32 +} + +type SkillGemInfo { + Id: string @unique + Description: string + VideoURL1: string + SkillGemsKey: SkillGems + VideoURL2: string + CharactersKeys: [Characters] +} + enum SkillMines @indexing(first: 0) { _ } type SkillMineVariations { @@ -5252,12 +5252,6 @@ enum StatInterpolationTypes @indexing(first: 1) { EXPONENTIAL } -type StatsAffectingGeneration { - Stat: Stats - StatValue: i32 - _: bool -} - type Stats @tags(list: ["crafting"]) { Id: string @unique _: bool @@ -5282,6 +5276,12 @@ type Stats @tags(list: ["crafting"]) { DotFlag: [VirtualStatContextFlags] } +type StatsAffectingGeneration { + Stat: Stats + StatValue: i32 + _: bool +} + enum StatSemantics @indexing(first: 1) { PERCENT OVERRIDE_VALUE @@ -6012,6 +6012,19 @@ type BattlePassTracks { _: string } +type BossKillEvent { + Id: string + QuestFlag: QuestFlags + AreaLevel: i32 + Monster: MonsterVarieties + _: rid # All rows empty + _: i32 + QuestFlag2: QuestFlags + _: i32 + _: i32 + _: i32 +} + # Added 3.20 type BreachArtVariations { Id: string @unique @@ -6041,19 +6054,6 @@ type Breachstones { UpgradeCurrency: BaseItemTypes } -type BossKillEvent { - Id: string - QuestFlag: QuestFlags - AreaLevel: i32 - Monster: MonsterVarieties - _: rid # All rows empty - _: i32 - QuestFlag2: QuestFlags - _: i32 - _: i32 - _: i32 -} - # Added 3.22 type ConditionalAchievements { Achievement: AchievementItems @unique @@ -6591,21 +6591,6 @@ type MicrotransactionChargeVariations { FrenzyChargeVisual: BuffVisuals } -# Added 3.19 -type MicrotransactionConditionalApparitionEvents { - EventId: i32 - Apparition: MicrotransactionConditionalApparitions @unique - _: f32 - _: NPCTextAudio - _: bool - _: i32 - _: i32 - _: rid # All rows empty - _: rid # All rows empty - _: i32 - _: i32 -} - # Added 3.19 type MicrotransactionConditionalApparitions { Id: string @unique @@ -6622,6 +6607,21 @@ type MicrotransactionConditionalApparitions { _: bool } +# Added 3.19 +type MicrotransactionConditionalApparitionEvents { + EventId: i32 + Apparition: MicrotransactionConditionalApparitions @unique + _: f32 + _: NPCTextAudio + _: bool + _: i32 + _: i32 + _: rid # All rows empty + _: rid # All rows empty + _: i32 + _: i32 +} + # Added 3.21 type MicrotransactionEquippedIconVariations { Id: MtxTypeGameSpecific @unique @@ -6897,6 +6897,12 @@ type StatisticTrackingMicrotransactions { _: bool } +type StatisticTrackingMicrotransactionCounterType { + Id: string @unique + _: string + Name: string @localized +} + # Added 3.23 type StatisticTrackingMicrotransactionsStatistics { Id: StatisticTrackingMicrotransactions @unique @@ -6910,12 +6916,6 @@ type StatisticTrackingMicrotransactionsStatistics { Type: StatisticTrackingMicrotransactionCounterType } -type StatisticTrackingMicrotransactionCounterType { - Id: string @unique - _: string - Name: string @localized -} - # Added 3.20 type StatsFromSkillStats { StatChance: Stats diff --git a/dat-schema/poe2/_Core.gql b/dat-schema/poe2/_Core.gql index a334eec..1839f93 100644 --- a/dat-schema/poe2/_Core.gql +++ b/dat-schema/poe2/_Core.gql @@ -37,21 +37,6 @@ type ActionTypes { _: bool } -# Added 0.1 -type ActiveSkillRequirements { - GrantedEffect: GrantedEffects @unique - BuffDefinition: BuffDefinitions - _: i32 - _: i32 - _: rid # All rows empty - _: rid # All rows empty - Stat: Stats - _: bool - _: bool - _: i32 - _: bool -} - type ActiveSkills { Id: string @unique DisplayedName: string @@ -95,6 +80,21 @@ type ActiveSkills { _: string } +# Added 0.1 +type ActiveSkillRequirements { + GrantedEffect: GrantedEffects @unique + BuffDefinition: BuffDefinitions + _: i32 + _: i32 + _: rid # All rows empty + _: rid # All rows empty + Stat: Stats + _: bool + _: bool + _: i32 + _: bool +} + type ActiveSkillWeaponRequirement { Id: string @unique @@ -137,16 +137,16 @@ type AddBuffToTargetVarieties { _: bool } -type AddMapStatGealAllowedStats { - Stat: Stats -} - type AdditionalLifeScaling { IntId: i32 ID: string @unique DatFile: string @file(ext: ".dat") } +type AddMapStatGealAllowedStats { + Stat: Stats +} + type AdditionalMonsterPacksFromStats { StatsKey: Stats _: i32 @@ -1297,26 +1297,6 @@ type ChargeVariations { Animation: MiscAnimated } -type ChestEffects { - Id: string @unique - Normal_EPKFile: string @file(ext: ".epk") - Normal_Closed_AOFile: string @file(ext: ".ao") - Normal_Open_AOFile: string @file(ext: ".ao") - Magic_EPKFile: string @file(ext: ".epk") - Unique_EPKFile: string @file(ext: ".epk") - Rare_EPKFile: string @file(ext: ".epk") - Magic_Closed_AOFile: string @file(ext: ".ao") - Unique_Closed_AOFile: string @file(ext: ".ao") - Rare_Closed_AOFile: string @file(ext: ".ao") - Magic_Open_AOFile: string @file(ext: ".ao") - Unique_Open_AOFile: string @file(ext: ".ao") - Rare_Open_AOFile: string @file(ext: ".ao") - Normal_Open_EPKFile: string @file(ext: ".epk") - Magic_Open_EPKFile: string @file(ext: ".epk") - Rare_Open_EPKFile: string @file(ext: ".epk") - Unique_Open_EPKFile: string @file(ext: ".epk") -} - type Chests { Id: string @unique _: bool @@ -1368,6 +1348,26 @@ type Chests { _: [_] # All rows empty } +type ChestEffects { + Id: string @unique + Normal_EPKFile: string @file(ext: ".epk") + Normal_Closed_AOFile: string @file(ext: ".ao") + Normal_Open_AOFile: string @file(ext: ".ao") + Magic_EPKFile: string @file(ext: ".epk") + Unique_EPKFile: string @file(ext: ".epk") + Rare_EPKFile: string @file(ext: ".epk") + Magic_Closed_AOFile: string @file(ext: ".ao") + Unique_Closed_AOFile: string @file(ext: ".ao") + Rare_Closed_AOFile: string @file(ext: ".ao") + Magic_Open_AOFile: string @file(ext: ".ao") + Unique_Open_AOFile: string @file(ext: ".ao") + Rare_Open_AOFile: string @file(ext: ".ao") + Normal_Open_EPKFile: string @file(ext: ".epk") + Magic_Open_EPKFile: string @file(ext: ".epk") + Rare_Open_EPKFile: string @file(ext: ".epk") + Unique_Open_EPKFile: string @file(ext: ".epk") +} + type ChooseOneUniqueNPCs { NPC: NPCs QuestFlag: QuestFlags @@ -1906,16 +1906,6 @@ type EndgameMapAtlasTowers { FortressAtlas: [EndgameMapAtlas] } -type EndgameMapBiomeGroundTypes { - Id: string - _: string @file(ext: ".gt") - _: string @file(ext: ".gt") - _: string @file(ext: ".gt") - _: string @file(ext: ".gt") - _: string @file(ext: ".gt") - _: string @file(ext: ".gt") -} - type EndgameMapBiomes { Id: string @unique _: f32 @@ -1936,6 +1926,16 @@ type EndgameMapBiomes { GroundType: EndgameMapBiomeGroundTypes } +type EndgameMapBiomeGroundTypes { + Id: string + _: string @file(ext: ".gt") + _: string @file(ext: ".gt") + _: string @file(ext: ".gt") + _: string @file(ext: ".gt") + _: string @file(ext: ".gt") + _: string @file(ext: ".gt") +} + type EndgameMapCompletionQuests { Id: string @unique RequiredTier: i32 @@ -2074,12 +2074,6 @@ type EndgameMapObjectives { MiniMapIcon: MinimapIcons } -type EndgameMapPinIcons { - Id: string @unique - Icon1: string - Icon2: string -} - type EndgameMapPins { Id: string @unique UnavailablePin: MiscAnimated @@ -2095,6 +2089,12 @@ type EndgameMapPins { AudioAnimation: MiscAnimated } +type EndgameMapPinIcons { + Id: string @unique + Icon1: string + Icon2: string +} + # Added 0.5 type EndgameMapRevealTypes { Id: string @@ -3316,12 +3316,6 @@ type HudVisualsFromStat { HudESVisual: HudEnergyShieldVisuals } -# Added 0.4 -type IncubatorBaseRequiredKillsPerLevel { - Level: i32 @unique - RequiredKills: i32 -} - # Added 0.1 type Incubators @tags(list: ["item:def"]) { BaseItemType: BaseItemTypes @unique @@ -3334,6 +3328,12 @@ type Incubators @tags(list: ["item:def"]) { _: [i32] } +# Added 0.4 +type IncubatorBaseRequiredKillsPerLevel { + Level: i32 @unique + RequiredKills: i32 +} + # Added 0.4 type Incursion2CorruptionCurrencies { BaseItemType: BaseItemTypes @unique @@ -3383,19 +3383,6 @@ type Incursion2MutatedUniqueModsClient { Mods: [Mods] } -# Added 0.4 -type Incursion2RoomPerLevel { - Room: Incursion2Rooms - Level: i32 - Id: string @unique - Description: string @localized - Name: string @localized - Icon_DDSFile: string @file(ext: ".dds") - Mod: Mods - ModValues: [i32] - Description2: string -} - # Added 0.4 type Incursion2Rooms { Id: string @unique @@ -3411,6 +3398,19 @@ type Incursion2Rooms { RewardUnlockStat: Stats } +# Added 0.4 +type Incursion2RoomPerLevel { + Room: Incursion2Rooms + Level: i32 + Id: string @unique + Description: string @localized + Name: string @localized + Icon_DDSFile: string @file(ext: ".dds") + Mod: Mods + ModValues: [i32] + Description2: string +} + # Added 0.4 type Incursion2TempleLevelPerCharacterLevel { CharacterLevel: i32 @unique @@ -3752,6 +3752,12 @@ type ItemVisualHeldBodyModel { _: string } +type ItemVisualsReplacedWithStat { + BaseItemType: BaseItemTypes + Stat: Stats + VisualIdentity: ItemVisualIdentity +} + # Added 0.1 type ItemVisualReplacement { Id: BaseItemTypes @unique @@ -3759,12 +3765,7 @@ type ItemVisualReplacement { ItemVisualIdentity: ItemVisualIdentity } -type ItemVisualsReplacedWithStat { - BaseItemType: BaseItemTypes - Stat: Stats - VisualIdentity: ItemVisualIdentity -} - +# Added 0.5 type KalguuranGemLevelCurrency { BaseItemType: BaseItemTypes GemLevel: i32 @@ -3997,6 +3998,23 @@ type MapCurrencyInventoryLayout { _: MapCurrencyInventoryLayout } +type MapDevices { + Id: string + MiscObject: MiscObjects + _: i32 + _: string + _: string + _: [i32] + _: bool + _: i32 + _: bool + _: i32 + _: i32 + _: i32 + _: [i32] + HideoutDoodad: HideoutDoodads +} + # Added 0.1 type MapDeviceRecipes @tags(list: ["item:recipe"]) { Id: string @unique @@ -4016,23 +4034,6 @@ type MapDeviceRecipes @tags(list: ["item:recipe"]) { _: bool } -type MapDevices { - Id: string - MiscObject: MiscObjects - _: i32 - _: string - _: string - _: [i32] - _: bool - _: i32 - _: bool - _: i32 - _: i32 - _: i32 - _: [i32] - HideoutDoodad: HideoutDoodads -} - type MapFragmentMods { BaseItemType: BaseItemTypes @unique Mods: [Mods] @@ -5086,11 +5087,6 @@ type NPCMaster { MasterMissionOnCompletionStat: Stats } -type NPCPortraitAOOverrides { - Id: string - NPCPortrait: NPCPortraits -} - type NPCPortraits { Name: string @unique PortraitFile: string @@ -5102,6 +5098,11 @@ type NPCPortraits { _: bool } +type NPCPortraitAOOverrides { + Id: string + NPCPortrait: NPCPortraits +} + type NPCShopGamblerVisualIdentity { BaseItemType: BaseItemTypes VisualIdentity: [ItemVisualIdentity] @@ -5688,15 +5689,6 @@ type PrimalAvatarVarieties { _: f32 } -type ProjectileOverrides { - Id: string - _: [string] @file(ext: ".ao") - _: string @file(ext: ".ao") - _: [string] @file(ext: ".ao") - ItemVisualIdentity: ItemVisualIdentity - _: string @file(ext: ".fmt") -} - type Projectiles { Id: string @unique @files(ext: [".ot", ".otc"]) AOFiles: [string] @file(ext: ".ao") @@ -5743,6 +5735,15 @@ type Projectiles { _: bool } +type ProjectileOverrides { + Id: string + _: [string] @file(ext: ".ao") + _: string @file(ext: ".ao") + _: [string] @file(ext: ".ao") + ItemVisualIdentity: ItemVisualIdentity + _: string @file(ext: ".fmt") +} + type Quest { Id: string @unique Act: i32 @@ -5768,14 +5769,6 @@ type QuestFlagVisuals { ItemVisualIdentity: ItemVisualIdentity } -type QuestItemNPCAudio { - QuestItem: QuestItems - NPCAudio1: NPCTextAudio - NPCAudio2: [NPCTextAudio] - QuestFlag: QuestFlags -} - - type QuestItems { BaseItemType: BaseItemTypes @unique TriggeredQuestFlag: QuestFlags @@ -5795,23 +5788,11 @@ type QuestItems { BuffVisual: BuffVisuals } - -type QuestRewardOffers { - Id: string - QuestKey: Quest +type QuestItemNPCAudio { + QuestItem: QuestItems + NPCAudio1: NPCTextAudio + NPCAudio2: [NPCTextAudio] QuestFlag: QuestFlags - _: i32 - RewardWindowTake: ClientStrings - _: bool - _: bool - RewardWindowTitle: ClientStrings - _: bool - _: bool - _: bool - _: bool - _: rid # All rows empty - _: rid # All rows empty - _: i32 } # Added 0.1 @@ -5850,6 +5831,23 @@ type QuestRewards @tags(list: ["item:reward"]) { _: bool } +type QuestRewardOffers { + Id: string + QuestKey: Quest + QuestFlag: QuestFlags + _: i32 + RewardWindowTake: ClientStrings + _: bool + _: bool + RewardWindowTitle: ClientStrings + _: bool + _: bool + _: bool + _: bool + _: rid # All rows empty + _: rid # All rows empty + _: i32 +} type QuestRewardType { Id: string @unique @@ -6025,13 +6023,6 @@ type RitualStashTabLayout { MiniIcon: string # mini icon in top left corner } -# Added 0.2 -type RogueExileModBonuses { - Mod: Mods @unique - Stats: [Stats] - StatsValues: [i32] -} - # Added 0.1 type RogueExiles { MonsterVarietiesKey: MonsterVarieties @unique @@ -6059,6 +6050,13 @@ type RogueExiles { _: i32 } +# Added 0.2 +type RogueExileModBonuses { + Mod: Mods @unique + Stats: [Stats] + StatsValues: [i32] +} + type Rulesets { Id: string _: [Rulesets] @@ -6167,14 +6165,6 @@ type ShapeShiftBoneSizes { Size: f32 } -# Added 0.1 -type ShapeShiftFormClones { - ShapeShiftForm: ShapeShiftForms @unique - MonsterImmobile: MonsterVarieties - AfterImageEffect: string - PlayerEffect: string -} - type ShapeShiftForms { Id: string @unique AOFile: string @file(ext: ".ao") @@ -6204,6 +6194,13 @@ type ShapeShiftForms { Name: string } +# Added 0.1 +type ShapeShiftFormClones { + ShapeShiftForm: ShapeShiftForms @unique + MonsterImmobile: MonsterVarieties + AfterImageEffect: string + PlayerEffect: string +} # Added 0.1 type ShapeShiftTransformData { @@ -6498,7 +6495,7 @@ type StrongboxPacks { MonsterPack: MonsterPacks @unique } -type StrongBoxVarieties { +type StrongboxVarieties { Strongbox: Strongboxes _: rid AOFile: string @@ -6527,14 +6524,6 @@ type SocketableStashTabSubGroup { FirstPage: bool } -# Added 0.3 -type SoulCoreLimits { - Id: string @unique - Limit: i32 - Text: string @localized - _: bool -} - # Added 0.1 type SoulCores { BaseItemType: BaseItemTypes @unique @@ -6551,13 +6540,12 @@ type SoulCores { _: bool } - -# Added 0.4 -type SoulCoreStatCategories { +# Added 0.3 +type SoulCoreLimits { Id: string @unique - TargetItemClasses: [ItemClasses] - Display: string @localized - _: i32 + Limit: i32 + Text: string @localized + _: bool } # Added 0.4 @@ -6570,6 +6558,14 @@ type SoulCoreStats { BondedStatsValues: [i32] } +# Added 0.4 +type SoulCoreStatCategories { + Id: string @unique + TargetItemClasses: [ItemClasses] + Display: string @localized + _: i32 +} + # Added 0.4 type SoulCoreTypes { Id: string @unique @@ -6735,11 +6731,6 @@ type SurgeEffectPackArtVariations { _: bool } -type SupportGemFamily { - Id: string @unique - Text: string @localized -} - type SupportGems { SkillGem: SkillGems @unique _: i32 @@ -6752,6 +6743,11 @@ type SupportGems { _: bool } +type SupportGemFamily { + Id: string @unique + Text: string @localized +} + type SupportGemSocketedVisualIdentity { Id: string @unique BackingIcon: string @@ -7244,37 +7240,6 @@ type WieldableClasses { _: i32 } -# Added 0.1 -type WorldAreaLeagueChances { - Id: string @unique - _: i32 - _: i32 - _: i32 - _: i32 - _: i32 - _: i32 - _: i32 - _: i32 # ShrineChance? - _: i32 # ShrineChance? - _: i32 - _: i32 - _: i32 - _: i32 # EssenceChance? - _: i32 # EssenceChance? - _: i32 - AbyssChance: i32 - _: i32 - _: i32 - _: i32 - _: i32 - _: i32 - _: i32 # StrongboxChance? - _: i32 # StrongboxChance? - StoneCirclesChance: i32 - VaalTempleChance: i32 # Fate of the Vaal league - ExpeditionChance: i32 -} - type WorldAreas { Id: string Name: string @@ -7360,6 +7325,36 @@ type WorldAreas { _: [i32] } +# Added 0.1 +type WorldAreaLeagueChances { + Id: string @unique + _: i32 + _: i32 + _: i32 + _: i32 + _: i32 + _: i32 + _: i32 + _: i32 # ShrineChance? + _: i32 # ShrineChance? + _: i32 + _: i32 + _: i32 + _: i32 # EssenceChance? + _: i32 # EssenceChance? + _: i32 + AbyssChance: i32 + _: i32 + _: i32 + _: i32 + _: i32 + _: i32 + _: i32 # StrongboxChance? + _: i32 # StrongboxChance? + StoneCirclesChance: i32 + VaalTempleChance: i32 # Fate of the Vaal league + ExpeditionChance: i32 +} # Added 0.3 type WorldDescriptionButton {