Clan & Progression

Magic Items

Books, hammers, potions, snacks, and utility items: every magic item in the game, each carrying a typed effect describing exactly what it does.


Namespaces

import { magicItems } from 'clash-of-clans-data'

magicItems().books().get() // MagicBook[]
magicItems().hammers().get() // MagicHammer[]
magicItems().potions().get() // MagicPotion[]
magicItems().snacks().get() // MagicSnack[]
magicItems().utilities().get() // MagicUtility[]

Books (5)

bookOfFighting · bookOfBuilding · bookOfSpells · bookOfHeroes · bookOfEverything

Instantly complete an ongoing upgrade queue.

import { magicItems } from 'clash-of-clans-data'

const bookOfHeroes = magicItems().books().bookOfHeroes().first()!
console.log(bookOfHeroes.effect) // { type: 'instant-complete', appliesTo: 'heroes-and-pets' }

Hammers (4)

hammerOfFighting · hammerOfBuilding · hammerOfSpells · hammerOfHeroes

Instantly upgrade a single unit or building to the next level.

import { magicItems } from 'clash-of-clans-data'

const troopHammers = magicItems().hammers().byAppliesTo('troops').get()
MethodSignatureDescription
byAppliesTobyAppliesTo(appliesTo: 'troops' | 'buildings' | 'spells' | 'heroes-and-pets')Filter by the upgrade queue the hammer applies to.

Potions (8)

builderPotion · researchPotion · petPotion · heroPotion · powerPotion · resourcePotion · clockTowerPotion · superPotion

Time-limited boosts: build/research/pet speed, unit level, resource collection, Clock Tower activation, or a single troop's Super Troop status.

import { magicItems } from 'clash-of-clans-data'

const heroPotion = magicItems().potions().heroPotion().first()!
console.log(heroPotion.effect) // { type: 'unit-level-boost', boostTo: 'max-town-hall-level', ... }

const timeReductionPotions = magicItems()
  .potions()
  .byEffectType('time-reduction')
  .get()
MethodSignatureDescription
byEffectTypebyEffectType(type: MagicPotion['effect']['type'])Filter by effect type.

Snacks (5)

builderBite · studySoup · mightyMorsel · powerPancakes · clanCastleCake

Smaller, shorter-duration versions of the equivalent potions: see Calculators for the time math behind builderBite and studySoup.

import { magicItems } from 'clash-of-clans-data'

const builderBite = magicItems().snacks().builderBite().first()!
MethodSignatureDescription
byEffectTypebyEffectType(type: MagicSnack['effect']['type'])Filter by effect type.

Utilities (3)

shovelOfObstacles · builderStarJar · wallRing

One-off utility effects: moving an obstacle, resetting the Builder Base star bonus, or upgrading a single wall piece without spending resources.

import { magicItems } from 'clash-of-clans-data'

const wallRing = magicItems().utilities().wallRing().first()!
console.log(wallRing.effect) // { type: 'wall-upgrade', ... }
MethodSignatureDescription
byEffectTypebyEffectType(type: MagicUtility['effect']['type'])Filter by effect type.

The MagicItemEffect union

Every magic item's effect field is a discriminated union keyed on type, so narrowing on effect.type gives you the exact effect shape:

type MagicItemEffect =
  | TimeReductionEffect
  | CombatBoostEffect
  | ClanCastleEffect
  | InstantCompleteEffect
  | InstantUpgradeEffect
  | UnitLevelBoostEffect
  | ResourceCollectorBoostEffect
  | ClockTowerBoostEffect
  | SuperTroopEffect
  | WallUpgradeEffect
  | ObstacleMoveEffect
  | StarBonusResetEffect
import { magicItems } from 'clash-of-clans-data'

for (const item of magicItems().potions().get()) {
  if (item.effect.type === 'unit-level-boost') {
    console.log(`${item.name} boosts for ${item.effect.durationHours}h`)
  }
}

Next steps

Previous
Calculators