diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 985c8bc7c89..84f91e35720 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -2647,9 +2647,10 @@ void ObjectMgr::LoadItemTemplates() if (std::vector const* itemSpecOverrides = sDB2Manager.GetItemSpecOverrides(sparse->ID)) { for (ItemSpecOverrideEntry const* itemSpecOverride : *itemSpecOverrides) - itemTemplate.Specializations[0].insert(itemSpecOverride->SpecID); + if (ChrSpecializationEntry const* specialization = sChrSpecializationStore.LookupEntry(itemSpecOverride->SpecID)) + itemTemplate.Specializations[0].set(ItemTemplate::CalculateItemSpecBit(specialization)); - itemTemplate.Specializations[1] = itemTemplate.Specializations[0]; + itemTemplate.Specializations[1] |= itemTemplate.Specializations[0]; } else {