Gear — SHD.build admin

EQUIPMENT DEFINITION REGISTRY

GEAR

Configure slot, progression, base survivability ranges, and compatible brands.

TOTAL GEAR{data.gear.length}All definitions
ACTIVE{data.gear.filter((item) => Number(item.active) === 1).length}Available to builder
SLOTS{new Set(data.gear.map((item) => item.slot)).size}/6Slots represented
BRAND SETS{data.brands.length}Compatibility options
{#if editing}

{editing.id ? 'MODIFY GEAR' : 'NEW GEAR'}

{editing.id ? editing.name : 'GEAR DEFINITION'}

HPBASE HEALTH
ARBASE ARMOR
COMPATIBLE BRAND SETSSELECT AT LEAST TWO
{editing.brandIds.length} SELECTED
{#each data.brands as brand}{/each}
{#if editing.slot === 'Backpack' || editing.slot === 'Body Armor'}
{editing.slot.toUpperCase()} TALENTSSELECT AT LEAST ONE · REQUIRED
{editing.talentIds.length} SELECTED
{#each gearTalents(editing.slot) as talent}{/each}
{#if gearTalents(editing.slot).length === 0}

Create an active {editing.slot} talent before adding gear for this slot.

{/if} {/if} {#if data.brands.length < 2}

Create at least two active brand sets before adding gear.

{/if} {#if form?.gearError}

{form.gearError}

{/if}
{#if editing.id}{/if}
{/if}
GEARSLOTPROGRESSIONBASE RANGESBRAND SETSSTATE
{#each data.gear as item}
{item.name}{item.talentIds.length ? `${item.talentIds.length} TALENT${item.talentIds.length === 1 ? '' : 'S'}` : item.id.slice(0, 8).toUpperCase()}
{item.slot}T{item.tier} · LVL {item.level}HP {item.base_health_min}–{item.base_health_max}{#if item.base_armor_min !== null} · AR {item.base_armor_min}–{item.base_armor_max}{/if}{item.brandIds.length} COMPATIBLE{Number(item.active) === 1 ? 'ACTIVE' : 'ARCHIVED'}
{:else}
NO GEAR REGISTEREDAdd the first gear definition after configuring at least two brand sets.
{/each}