Gear, Troops & Research

Chief Gear

The six Chief Gear slots, the shared upgrade table that every piece progresses through, and the set bonus of each tier.

Every equipped piece uses the same table, so a ChiefGearLevel is an upgrade step and not a named item. Use it to look up the materials, stat gain, power, and score of each step. This page covers chiefGearSlots(), chiefGear(), chiefGearSetBonuses(), and chiefGearSetBonus(). To turn one gear material into another, see Chief Gear converter. To plan a full upgrade, see the Chief Gear calculator.


Types

ChiefGearSlot

FieldTypeDescription
idstringStable identifier, such as cap
namestringDisplay name
troopTypeChiefGearTroopTypeLancer, Infantry, or Marksman
imagesRecord<ChiefGearRarity, string>One icon for each rarity: Common, Rare, Epic, Mythic, Legendary

ChiefGearLevel

FieldTypeDescription
idstringStable identifier, such as common-star-0
ordernumberPosition in the table, from 1
namestringDisplay name, such as Common Star 0
tierstringTier label, such as Epic or LegendaryT3
tierIdstringThe tier in kebab case, such as epic-t1. It is the id of the tier in chiefGearSetBonuses()
starsnumberStar position in the tier. Restarts in each tier
stagenumberStage position in the tier. Restarts in each tier
materialsChiefGearMaterial[]Item ids from items() and the amount needed for the step
troopsDeploymentCapacitynumber?Deployment capacity gained. Absent for the first 26 rows
statTotalPercentnumberTotal stat bonus at this step
powerTotalnumberTotal power at this step
scorenumberGear score that the step to this row adds

The 14 tiers are Common, Rare, Epic, EpicT1, Mythic, MythicT1, MythicT2, Legendary, and LegendaryT1 to LegendaryT6.

ChiefGearMaterial

FieldTypeDescription
itemIdstringAn id from items()
amountnumberAmount needed

The materials are Hardened Alloy, Polishing Solution, Design Plans, and Lunar Amber.

ChiefGearSetBonusTier

FieldTypeDescription
idstringThe tier in kebab case. Matches level.tierId
namestringDisplay name, such as Mythic T1
percentnumberSet bonus percent for the tier

ChiefGearSetBonus

FieldTypeDescription
pieces3 | 6Pieces the bonus needs
stat'Defense' | 'Attack'Stat the bonus raises
percentnumberBonus percent. 0 when the bonus is not active
tierIdstring?Tier that gives the bonus. Absent when the bonus is not active

chiefGearSetBonus() returns ChiefGearSetBonuses, an object with a threePiece and a sixPiece field of this type.


Factories

import {
  chiefGearSlots,
  chiefGear,
  chiefGearSetBonuses,
} from 'whiteout-survival-data'

chiefGearSlots() // all 6 slots
chiefGear() // all 150 upgrade steps
chiefGearSetBonuses() // all 14 tier set bonuses

chiefGearSlots(source) // wrap a pre-filtered array

chiefGearSlots() holds Cap, Watch, Coat, Pants, Ring, and Weapon. Cap and Watch buff Lancer, Coat and Pants buff Infantry, and Ring and Weapon buff Marksman.


Filters

MethodSignatureDescription
chiefGearSlots().byTroopType(type)byTroopType(troopType: ChiefGearTroopType)Slots that buff Lancer, Infantry, or Marksman
chiefGear().byTier(tier)byTier(tier: string)Rows with exactly this tier label

byTier('Epic') does not match EpicT1.

chiefGearSetBonuses() has the terminal methods only.


Helpers

FunctionReturnsDescription
chiefGearRarity(tier)ChiefGearRarityRemoves the T suffix from a tier label and returns the base rarity
chiefGearImage(slot, level)stringThe slot icon that matches the base rarity of a level
chiefGearSetBonus(levelIds)ChiefGearSetBonusesThe 3 piece and 6 piece set bonuses of the pieces a chief wears

chiefGearSetBonus(levelIds) takes the ids of the chiefGear() levels of the pieces worn, at most 6. It throws Error for an unknown level id and RangeError when more than 6 ids are given.

The constant CHIEF_GEAR_SET_BONUS holds the two rules: 3 pieces for Defense, 6 pieces for Attack, on infantry, lancer, and marksman.


Terminal methods

MethodReturnsDescription
.get()T[]All results
.first()T | undefinedFirst result
.find(id)T | undefinedFind by id
.findByName(name)T | undefinedCase-insensitive exact name match
.search(query)T[]Case-insensitive partial name match
.count()numberNumber of results

T is ChiefGearSlot for chiefGearSlots(), ChiefGearLevel for chiefGear(), and ChiefGearSetBonusTier for chiefGearSetBonuses().


Examples

import {
  chiefGear,
  chiefGearImage,
  chiefGearSetBonus,
  chiefGearSetBonuses,
  chiefGearSlots,
} from 'whiteout-survival-data'

// Slots that buff Infantry
chiefGearSlots().byTroopType('Infantry').get() // Coat, Pants

// Every row of the Epic tier
chiefGear().byTier('Epic').count() // 4

// Materials for one upgrade step
chiefGear().find('common-star-0')?.materials
// [{ itemId: 'hardened-alloy', amount: 1500 }, { itemId: 'polishing-solution', amount: 15 }]

// Icon of a slot at the rarity of a level
const cap = chiefGearSlots().find('cap')
const level = chiefGear().find('epic-t1-star-0')
if (cap && level) chiefGearImage(cap, level) // '/images/chief-gear/Cap-Epic.png'

// Set bonus of one tier
chiefGearSetBonuses().find('mythic-t1') // { id: 'mythic-t1', name: 'Mythic T1', percent: 8 }

// Set bonuses of the six pieces a chief wears
const sets = chiefGearSetBonus([
  'mythic-t1-star-0',
  'mythic-t1-star-1',
  'mythic-t1-star-2',
  'epic-star-0',
  'epic-star-0',
  'epic-star-0',
])
sets.threePiece // { pieces: 3, stat: 'Defense', percent: 8, tierId: 'mythic-t1' }
sets.sixPiece // { pieces: 6, stat: 'Attack', percent: 0 }

Notes

troopsDeploymentCapacity starts at Mythic T2 star 3 stage 1, so the first 26 rows leave it unset.

A piece changes its look at the 5 rarity points only, not at each of the 150 rows. Every sub-tier uses the icon of its base rarity. The star and stage counters are a UI overlay and not separate images.

The score is what events count. A whole level scores 1,125 and 1,875 for the two Common levels, 3,000 to 5,440 for Rare, 3,230 to 4,085 for Epic, 6,250 for every Mythic level, and 9,560 for Legendary up to T3. From Legendary T4 it is 15,560, 15,400, or 15,390. The steps that lead to a level split its score evenly. The score does not depend on power.

Set bonus

A chief that wears 3 pieces of the same quality gets a Defense bonus for Infantry, Lancer, and Marksman. A chief that wears all 6 pieces of the same quality also gets an Attack bonus for all three. Each tier has one value, and the 3 piece bonus and the 6 piece bonus have the same value.

TierPercent
Common5
Rare5.5
Epic6
Epic T16.5
Mythic7
Mythic T18
Mythic T29
Legendary10
Legendary T112
Legendary T214
Legendary T316
Legendary T418
Legendary T520
Legendary T622

Some set bonus values are assumptions

The values of Mythic T1 (8), Mythic T2 (9), Legendary T1 (12), and Legendary T2 (14) were read in the game. The other values are assumptions. The step is 1 from Mythic T1 to Mythic T2 and 2 from Legendary T1 to Legendary T2, and the other values continue that rise. Check them in the game before you rely on them.

The calculation rules are also assumptions. Pieces count by the tier of their level, so two levels of one tier match. The 3 piece bonus uses the highest tier that has at least 3 pieces. The 6 piece bonus needs all 6 pieces in one tier. A higher tier does not count toward a lower one.


Next steps

Previous
Pets