diff --git a/src/constants/accessories.js b/src/constants/accessories.js
index fc2b7002a2..09273cb8f2 100644
--- a/src/constants/accessories.js
+++ b/src/constants/accessories.js
@@ -90,6 +90,7 @@ const accessoryUpgrades = [
["SCAVENGER_TALISMAN", "SCAVENGER_RING", "SCAVENGER_ARTIFACT"],
["EMERALD_RING", "EMERALD_ARTIFACT"],
["MINERAL_TALISMAN", "GLOSSY_MINERAL_TALISMAN"],
+ ["HASTE_RING", "HASTE_ARTIFACT"],
];
const ignoredAccessories = [
diff --git a/src/stats/missing.js b/src/stats/missing.js
index 47be842ff1..4854980e07 100644
--- a/src/stats/missing.js
+++ b/src/stats/missing.js
@@ -158,7 +158,10 @@ export async function getMissingAccessories(calculated, packs) {
output.magical_power = {
accessories: activeAccessories.reduce((a, b) => a + helper.getMagicalPower(b.rarity, helper.getId(b)), 0),
- abiphone: abiphoneContacts ? Math.floor(abiphoneContacts / 2) : 0,
+ abiphone:
+ abiphoneContacts && calculated.items.accessories.accessory_ids.find((a) => a.id === "ABICASE")
+ ? Math.floor(abiphoneContacts / 2)
+ : 0,
rift_prism: riftPrism ? 11 : 0,
hegemony: hegemonyArtifact ? helper.getMagicalPower(hegemonyArtifact.rarity, hegemonyArtifact.id) : 0,
};
diff --git a/views/sections/stats/items/accessories.ejs b/views/sections/stats/items/accessories.ejs
index 899a0d2385..8fa1d52f85 100644
--- a/views/sections/stats/items/accessories.ejs
+++ b/views/sections/stats/items/accessories.ejs
@@ -107,7 +107,7 @@ function itemIcon(item, classes) { %>
3 MP × <%= rarities.special.amount %> Accs. = <%= rarities.special.magical_power.toLocaleString() %> MP
5 MP × <%= rarities.very_special.amount %> Accs. = <%= rarities.very_special.magical_power.toLocaleString() %> MP
- <% if (calculated.accessories.magical_power.abiphone) { %>
+ <% if (calculated.accessories.magical_power.abiphone && items.accessories.accessory_ids.find((a) => a.id === "ABICASE")) { %>
Abicase = +<%= calculated.accessories.magical_power.abiphone %> MP
<% } %>